v1.21.0 — the SessionEnd budget no host gave, and the watchdog that held the pipe - #22
Merged
Merged
Conversation
…eld the pipe Codex 0.157 printed `clamping SessionEnd hook timeout to 3s in …/agent-sync/…/hooks.json` at every session start. The hook declared 20 s; Codex clamps a SessionEnd handler to 3 s, and Claude Code sizes its SessionEnd wait from the largest handler timeout. - hooks.json declares timeout 3; check_hooks_manifest refuses more, with a self-test plant of the shipped 20 - `release --held` gives back everything the run holds in ONE process; session-end.sh runs it under a 2 s limit instead of whoami plus one release process per key - run_limited's bash fallback (stock macOS has no timeout/gtimeout) left an orphan `sleep` holding the caller's pipe, so $(run_limited 10 …) and `| sed` waited the full limit. session-end took 10.4 s for three leases. The watchdog now polls kill -0 in 0.1 s steps with its stdio on /dev/null Gate: npm test EXIT=0 — validate PASS v1.21.0, SELF-TEST PASS (62 fixtures), claim cell 27, session hooks 13 (7 new), installer 11. Co-Authored-By: Claude Opus 5.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.
Codex 0.157 printed
clamping SessionEnd hook timeout to 3s in …/agent-sync/…/hooks.jsonat every session start. The hook declared 20 s; Codex clamps a SessionEnd handler to 3 s,
and Claude Code sizes its SessionEnd wait from the largest handler timeout.
plant of the shipped 20
release --heldgives back everything the run holds in ONE process; session-end.shruns it under a 2 s limit instead of whoami plus one release process per key
sleepholding the caller's pipe, so $(run_limited 10 …) and| sedwaited the fulllimit. session-end took 10.4 s for three leases. The watchdog now polls kill -0 in
0.1 s steps with its stdio on /dev/null
Gate: npm test EXIT=0 — validate PASS v1.21.0, SELF-TEST PASS (62 fixtures), claim cell
27, session hooks 13 (7 new), installer 11.
🤖 Generated with Claude Code