fix(agents): the waiting brief matches the harness (v0.448.2) - #836
Merged
Merged
Conversation
Foreground sleep is blocked by claude-code and the 5-minute cache premise is gone (fleet cache writes are ~100% 1h), so the brief now teaches run_in_background / Monitor instead of a sleep poll loop. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #834 (which made
Monitorgoverned — this brief now recommends it).Two false premises, both measured
for i in $(seq 1 12); do … sleep 5; done. claude-code now REFUSES a foreground sleep:Blocked: sleep N followed by …. To wait for a condition, use Monitor with an until-loop… Do not chain shorter sleeps to work around this block.Fleet transcripts show agents hitting that block repeatedly.ephemeral_1hvs 0ephemeral_5m(~8.8k responses), expresstech ~20k vs 12, instawp all 1h. The "one 10-minute wait costs more than twenty polls" claim doesn't hold.long-running-thing &→run_in_background: true("No&needed", survives across turns, notifies on exit); the 2-minute limit is now a kill or an auto-background depending on build.Kept: the ~2-minute foreground cut-off, "make each wait earn its turn", "do not read this as batch less", the SINGLE-call scoping, both-lane wiring.
The retired TTL argument (with its original measurement) is preserved in the source comment so it isn't reinstated later.
waiting-brief-test.cjsupdated to pin the NEW claims and to assert the 5-minute argument does not come back;context-injection-test.cjslearns thattimeout_msis a tool field, not a tool.🤖 Generated with Claude Code