Repository navigation
Conversation
…hase Native storage carriers took their deadline from HACK_COMPOSE_STARTUP_TIMEOUT_MS, and guard storage proofs consumed the start deadline of up/restart. On loaded hosted runners storage preparation alone exceeded a 15 s start budget (native-config-down-hooks) and a dozen build/spawn guard proofs exhausted the 90 s start budget (native-config-build). - HACK_NATIVE_STORAGE_TIMEOUT_MS (default 90 s, 1-600 s) bounds each storage carrier; it is never derived from the start budget. - Guard storage proofs during native up/restart extend the start deadline by their monotonic elapsed time instead of consuming it. - A refusal that finds its carrier budget exhausted reports the closed effect reason storage-budget, and the summary names the variable. - Unrecorded command group absence uses a monotonic deadline; a fake-clock test pins its probe-budget refusal (kills mutation M6). - Network acceptance: named 75-minute whole-run budget that gates command starts only, so it never kills an in-flight carrier command. - Build/down-hooks scenarios get measured command budgets and log closed per-command storage timings. Refs HACK-1324, HACK-1320, HACK-1321 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The slowest of 42 hosted passes (2113-3343 s) used 93% of the old 60-minute budget; 80 minutes keeps 1.44x that pass inside the 150-minute shard job. Refs HACK-1320 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This PR's own hosted run passed in 3494 s, 97% of the old 60-minute budget and 73% of the 80-minute one. 90 minutes keeps 1.55x the slowest of 44 measured passes and stays inside the 150-minute shard job. Refs HACK-1320 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…uard exclusion Guard storage proofs extend the up/restart start deadline instead of consuming it, but their sum had no bound. The excluded total is now capped at 16 x HACK_NATIVE_STORAGE_TIMEOUT_MS or 1 hour, whichever is smaller: the deadline moves at most that far, a proof that would start past the cap is refused before it runs, and a proof that ends past it refuses the phase with a closed, value-free error whose effect reason is storage-budget. Add a command-level failure-injection test for the start.excludeStorage wiring. The Docker stand-in reads the CLI's own phase trace and delays the carrier dependency check only while a guard.storage span is open, so the guard proof outlasts a 3 s start budget. It fails with the wrap removed. Add unit tests for the cap, each failing under mutation, and document the per-proof bound, the phase cap and how the two variables interact. Co-Authored-By: Claude Opus 5.5 <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.
Integration gate for merge batch b35: origin/next + #375 (HACK-1324, HACK-1320, HACK-1321). Tree 29542676. Closed after the batch squashes.
🤖 Generated with Claude Code
Need help on this PR? Tag
@codesmith-botwith what you need.