system_notification fires before background agent has completed
- Dominant language
- Shell
- Stars
- 11.2k
- Forks
- 1.9k
- Avg merge
- 14h 16m
- Merged PRs (30d)
- 6
Description
### Describe the bug
When two or more background agents are launched simultaneously (parallel tool calls in a single orchestrator turn), system_notification fires before the agent has actually started or long before the task is complete.
If the orchestrator trusts system_notification alone and immediately reads output files, it will find them missing and may misinterpret this as agent failure, triggering unnecessary reruns.
**Workaround:** Do not trust system_notification alone. Upon receipt, call read_agent and verify status: completed before acting on results
### Affected version
GitHub Copilot CLI 1.0.49
### Steps to reproduce the behavior
1. Capture a baseline timestamp (T0) immediately before launching agents.
2. In a single orchestrator response, launch two general-purpose background agents in parallel:
- Alpha: records START timestamp → sleep 120 → records END → writes /tmp/test_alpha.txt → records FILE_WRITTEN
- Beta: same flow with sleep 90, writes /tmp/test_beta.txt
3. On each system_notification, immediately record T_notify and check whether the output file exists.
4. Continue polling until the files actually appear, then compare timestamps.
### Expected behavior
system_notification arrives after the agent has finished its task and written its output (T_notify ≥ T_written).
### Actual behavior
system_notification fires before the agent has actually started or long before the task is complete.
Contributor guide
Assessment
This issue has not been assessed yet.