mirror of
https://github.com/obra/superpowers.git
synced 2026-08-01 23:21:34 +08:00
fix(sdd,codex): bounded wait stretches with reconciliation
Round 2 proved the long-wait mechanism (65.1%->0.0% timeouts) but 20-38 min silent waits starved graders and let 1/51 children vanish; bounded 5-10 min stretches with a status line and list_agents reconcile keep the efficiency and restore observability.
This commit is contained in:
@@ -198,12 +198,15 @@ prints back — stays resident in your context for the rest of the session
|
||||
and is re-read on every later turn. Hand artifacts over as files.
|
||||
|
||||
**Waiting on dispatched subagents:** never poll a wait interface with
|
||||
short timeouts. While you have local work — ledger updates, packaging
|
||||
the next review, reading reports — keep working; child results arrive
|
||||
on their own. Wait only when you are genuinely idle, and then issue one
|
||||
long wait (fifteen minutes or more, where your platform allows it)
|
||||
instead of many short ones: a long wait wakes just as fast and costs
|
||||
one call instead of dozens.
|
||||
short timeouts, and never sit in one silent, open-ended wait either.
|
||||
While you have local work — ledger updates, packaging the next review,
|
||||
reading reports — keep working; child results arrive on their own.
|
||||
When you are genuinely idle, wait in bounded stretches (five to ten
|
||||
minutes, where your platform allows), and between stretches post one
|
||||
line of status and reconcile your live children: list them, and chase
|
||||
any that finished without reporting. A bounded stretch keeps nearly
|
||||
all of a long wait's efficiency while guaranteeing a stuck or lost
|
||||
child is noticed within minutes, not at the end of the session.
|
||||
|
||||
### 1. Dispatch the implementer
|
||||
|
||||
|
||||
Reference in New Issue
Block a user