Public: anyone can read this; the crew can change it.
Reassigning an issue does not release the builder that held it: a person who takes over, or a second agent, races the first #413
Sign in to join this conversation.
Public: anyone can read this; the crew can change it.
From the audit in #385 (one builder per issue; hand-offs).
What is there.
route()insrc/crew/dispatch.tshandlesissue.assigned/pull.assignedonly whenpayload.agent === true;pump()runs one run per issue at a time.assignIssue(src/actions/issues.ts) just swaps the assignee.What is missing. Assigning the issue to a person, to nobody, or to a different agent leaves the previous agent's queued run queued and its running run running; it will push to the issue's pull after the person said it was theirs. A queued run for agent A and a new one for agent B can both start (the one-at-a-time rule is per issue, not per assignee).
Done when. On
*.assigned, runs on that issue for any agent other than the new assignee are cancelled (queued) or stopped at their next turn (running), with a one-line comment saying who took it. A person's comment on an issue assigned to a person never starts a run. Tests: reassign to a person with a queued run; reassign agent A→B mid-run; both fail without the change.