The rewritten test tolerated the interleaving where a fast command settles before the running turn's next pre-step claim. The notice is then folded into a step whose scripted reply is final, the turn closes with an empty next-step inbox, and the collection entries are never reached — a real timeout, not a tolerated ordering. The command now blocks on a sentinel the test creates only after the agent has gone idle, so the wake is the only path that can deliver the notice, and the test asserts exactly two turns. Also apply the review's smaller points: key the wake budget by Agent rather than object, register the budget-refill listener only under wakeup delivery, pin the schema default and rejection like reportDelivery does, record the retirement-window stranding as a Known Limitation, and cross-link the partial supersession both ways.
tasks/ — background-task capability family
English | 中文
This family gives long-running tools one owner-isolated background-task protocol for observation, cancellation, waiting, and completion notices.
| Package | Role | ctx key |
|---|---|---|
tasks/ |
Defines the task registry and lifecycle contract | ctx.tasks |
tasks-local/ |
Implements the process-local task registry | registers on ctx.tasks |
tool-tasks/ |
Exposes task control and completion notices to the model | registers on ctx.tools |
See the background-task runtime and task-registry decisions.
The subsystem reference — the id scheme, the owner-fenced contract, snapshots — is docs/subsystems/tasks.md; design in the background-task runtime and task-registry contract Agent Notes.