The hard problem is architectural consistency. Agent A renames a type to X. Agent B, in a different worktree, independently renames the same type to Y because neither saw the other's decision. When you merge, neither worktree is "wrong" but the code is incoherent. You need either a shared decision log that every agent reads before starting, or an orchestrator that hands out scope narrow enough that no two agents can collide.
Zed's post is solving filesystem-level parallelism. The harder coordination problem is semantic, and that's where time savings from parallelization go to die.