dispatch: invert surface-to-isolation mapping main vs worktree+branch #35
Labels
No labels
burndown-2026-06
sunday-sprint
coherence-core
consult
headless
interactive
P0
P1
P2
P3
P4
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
coilyco-flight-deck/cli-guard#35
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Consumer-driven by coilysiren/coily#145.
Isolation should track concurrency, not churn velocity. Today only the
interactivesurface uses a worktree, while the detached surfaces (headless,cascade) share the canonical checkout - exactly backwards, since the detached surfaces are the ones that fan out into multiple concurrent workers in one repo and race on a shared working tree/index.Invert the mapping in
cli-guard/dispatch:headless,cascade(detached, parallel) -> per-issue worktree+branch. Each worker gets its own isolated working dir; lands by merging its branch into main when green.interactive,consult(supervised, serial) -> run directly on the default branch in the canonical checkout. No worktree, no auto-merge dance; commit to main as the operator watches. Drops the--no-worktreeescape hatch.Worktree placement moves off
interactive.gointoworktree.goand ontorunDetached; reaping follows the detached surfaces.Landed on GitHub main as cli-guard
02f4153. Closing manually: the cli-guard GitHub and Forgejo remotes have diverged (see #36), so thecloses #35trailer pushed to GitHub did not reach this Forgejo issue. Consumer bump landed in coilysiren/coily#145.