You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
session-flow: spawned workers stall waiting on their own background work #6413
In the 2026-10-04 CI-performance session, spawned general-purpose workers ended their turn to "wait on background work" five separate times: a flaky-test fixer, the standards merge driver, the ci-workflows/medley driver, and the dotfiles/provisioning worker (twice). The harness then reported "waiting on its own background work". Nothing notifies the worker when that work finishes, so each one sat idle until the coordinator sent a SendMessage telling it to poll in the foreground.
/session-flow:orchestrate imperative 4 already says a background command is not a wait. But that text reaches a worker only if the coordinator pastes it into the brief, and these briefs did not carry it.
Ask
Make the rule reach workers without depending on the coordinator's memory. For example:
a short "waiting" clause that orchestrate worker export always includes and that dispatching skills inject into every brief: poll in the foreground with a bounded loop, or return what you have; never end the turn to wait on your own background job;
and/or a coordinator-side check that turns the harness's "waiting on its own background work" notice into an automatic poll-in-foreground nudge.
Evidence
Session dba79e68-af19-4ecc-a0ce-69d8b1dbefbb: five task notifications reading "This agent has not reported yet: it is waiting on its own background work", each cleared by a manual SendMessage.
Owner decision (2026-10-11): Add a clause to what /session-flow:orchestrate worker exports telling workers not to end their turn waiting on their own background jobs; no coordinator-side nudge for now.
Recorded by the coordinating agent session with the owner's approval. Removing needs-human; implementation is queued and will link its branch here.
Type: Task Summary: Make every /session-flow:orchestrate worker export, compact included, carry a one-line rule against ending the turn to wait on the worker's own background work.
Current behavior:
The full worker export emits the seven imperatives verbatim, and imperative 4 already says a background command the worker started is not a wait. worker compact emits headlines only and drops that sentence, so a compact worker brief carries no waiting rule.
Desired behavior:
Both worker and worker compact exports include one line between the rails: poll in the foreground with a bounded loop, or return what you have; never end the turn to wait on your own background job.
handoff exports are unchanged.
Key interfaces:
Worker export shape: one added line in full and compact forms.
Acceptance criteria:
The export-modes section states the line is inserted in worker and worker compact exports.
The compact rule no longer drops it.
A changelog entry or fragment for session-flow passes scripts/check-changelog-fragments.sh.
Out of scope:
A coordinator-side nudge on the harness's waiting notice (declined by the owner).
Injecting the line from other dispatching skills.
This was generated by AI during backlog shaping.Held, not admitted: this brief is drafted and checked, but the issue lane would stop on it today. It is admitted, by adding agent-ready, once the lane can run the skill-quality check scripts (Automation Lanes' PR #7912). Held under the owner's 2026-10-18 lane-narrowing course correction.
Activity
github-actions commentedon Oct 5, 2026
Thanks for the report. Automated triage handed this issue to a maintainer.
Automated triage. A maintainer reviews it.
kyle-sexton commentedon Oct 11, 2026
Owner decision (2026-10-11): Add a clause to what /session-flow:orchestrate worker exports telling workers not to end their turn waiting on their own background jobs; no coordinator-side nudge for now.
Recorded by the coordinating agent session with the owner's approval. Removing
needs-human; implementation is queued and will link its branch here.kyle-sexton commentedon Oct 18, 2026
Agent Brief
Type: Task
Summary: Make every
/session-flow:orchestrate workerexport, compact included, carry a one-line rule against ending the turn to wait on the worker's own background work.Current behavior:
The full worker export emits the seven imperatives verbatim, and imperative 4 already says a background command the worker started is not a wait.
worker compactemits headlines only and drops that sentence, so a compact worker brief carries no waiting rule.Desired behavior:
workerandworker compactexports include one line between the rails: poll in the foreground with a bounded loop, or return what you have; never end the turn to wait on your own background job.handoffexports are unchanged.Key interfaces:
Acceptance criteria:
scripts/check-changelog-fragments.sh.Out of scope:
This was generated by AI during backlog shaping. Held, not admitted: this brief is drafted and checked, but the issue lane would stop on it today. It is admitted, by adding
agent-ready, once the lane can run the skill-quality check scripts (Automation Lanes' PR #7912). Held under the owner's 2026-10-18 lane-narrowing course correction.fix(session-flow): worker exports carry a no-idle-wait line