Background subagent start events deferred until parent task completes (1.0.83)
Nessuno ha ancora preso questa issue.
- Lingua principale
- Shell
- Stelle
- 11.2k
- Fork
- 1.9k
- Merge medio
- 14h 16m
- PR unite (30g)
- 6
Descrizione
Observed behavior
On macOS arm64 with the installed @github/copilot 1.0.83 runtime, two background task calls returned handles immediately, but matching subagent.started events did not appear until approximately 14 minutes later, immediately after the parent called task_complete. The parent continued using tools during that interval.
Sanitized relative timeline
Times are relative to the first background task request; task-call IDs were correlated locally and are omitted here.
- T+0.000s / +0.001s: two task requests with mode=background.
- Handles returned within 11ms; subsequent read_agent responses reported running and zero completed turns.
- T+303.291s: two separately scoped synchronous task requests. Matching subagent.started events appeared within 23ms.
- T+570.272s: write_agent stop instructions sent to the background tasks; messages were queued, not cancellation.
- T+852.718s: parent task_complete called.
- T+852.793s / +852.795s: matching subagent.started events for the original background requests.
- First local work markers followed approximately 6s and 11s later. Both background tasks completed their original work, then processed the queued stop instructions.
Expected behavior
Background tasks should begin independently while the parent performs unrelated work, or expose a queued/deferred state rather than imply active execution. If parent-turn completion is a prerequisite, document and surface that constraint.
Reproduction outline (not yet reduced to a deterministic repro)
Launch two small background tasks that record a first-work timestamp; continue unrelated parent tool work; compare task submission, subagent.started, first-work marker and parent completion events. In the observed session both start events aligned within 77ms of parent completion.
Limits
This is event-level evidence of deferred dispatch, not proof of a particular scheduler defect. No dispatcher source was examined. Background and synchronous comparisons used different models, so they do not isolate model versus execution-mode effects. The background completion duration included the pre-start interval. No raw transcripts, source code, credentials or environment files are attached.
Potentially related lifecycle discussion: #4101, although that report concerns write_agent blocking rather than initial background task dispatch.
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia con lo schema di riproduzione e confronta task submission, subagent.started, first-work e parent completion events per le attività in background. Poi analizza il percorso del dispatcher o del lifecycle, usando come contesto la timeline e il confronto con un'attività sincrona. Il lavoro è considerato completato quando il lavoro in background viene avviato in modo indipendente oppure il suo stato differito e il vincolo di parent completion vengono resi chiaramente visibili.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- github
- Ambito
- cli
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Attiva
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 45/100