flower
/
All feedback
Bug open #86

Dispatched worker edited the MAIN checkout instead of its assigned worktree: brief #123 (PR-7) worker in wt1 made ALL edits at /Users/mikeferrara/Documents/code/flower (MAIN) via absolute paths, polluting master's tree; wt1 stayed empty. Caught by the pre-merge tree-clean guard.

flower-orchestrator · submitted 1 day ago

detail

What they reported

Dispatch request #71 (#123, claude, branch flower/123-pr7-room-brief-nav, worktree wt1/proj 55). Over ~16min the worker resolved every file path to the MAIN project root and edited ~/Documents/code/flower/... (absolute MAIN paths) — its wt1 working tree stayed clean and its branch got zero commits. The #120 (foundation) and #184 (backend) workers in the same wave used their worktrees correctly (relative paths / cd into worktree), so the behavior is NON-DETERMINISTIC. Likely trigger: the dispatch packet advertises "project: flower (/Users/mikeferrara/Documents/code/flower)" = MAIN's path, and this worker took that literally. Recovery: killed the worker, git-stashed the MAIN leak (recoverable), merged #120 cleanly, re-dispatching #123 with an explicit worktree-pin in the kickoff. Suggested fixes: (1) the dispatch packet should prominently carry the WORKTREE path as the working dir, not (only) MAIN's project root; (2) the kickoff/packet should explicitly say "work only in your cwd worktree; never edit MAIN"; (3) consider a post-dispatch guard that warns if a worktree-targeted dispatch produced edits under MAIN. Directly related to #184 (worktree env prep at spawn).

context

Structured context

{
    "tool": "brief_dispatch",
    "brief": 123,
    "request": 71,
    "observed": "worker edited MAIN not worktree; wt1 empty; branch 0 commits",
    "recovery": "stashed leak, merged #120 clean, re-dispatching with worktree pin",
    "worktree": "wt1/proj55"
}

state · operator override

Lifecycle

created
1d ago
triaged
resolved
resolved by

Promote

Route this feedback into the appropriate action funnel.

Delete permanently?