Repository navigation
fix: enforce fleet root verdict and context integrity - #5281
Merged
Merged
Conversation
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.
Fleet roots could report success without a reason verified against the active recipe, or continue and resume after losing context. This change makes the final fleet verdict authoritative and treats context loss as a terminal failure for the failed dispatch identity.
The strict envelope checker and scripts/e2e/ are unchanged. Update the supporting prompts, docs, protocol fakes, field ledgers, generated hook artifacts, and focused regressions with the behavior.
Validation: every part independently passed the configured task test-local-gate. The final gate reported 51,665 passed, 618 skipped, 29 xfailed. Final pre-commit run --all-files passed, and the worktree is clean.
Native probes verified the Claude Code 2.1.285 threshold veto and context-limit path, plus the production decoder against an actual Claude Code 2.1.291 compacted control transcript. Codex maximum-window coverage uses its v2 protocol schema fixtures; no live maximum-window incident was captured.
Outstanding live verification: a genuine interactive Claude Code 2.1.291 idle probe ran for 3,800 seconds without emitting an idle PreCompact event. The idle-triggered veto remains unverified; source/settings/model/quota/cache diagnostics did not identify a concrete failed precondition. No idle pass is claimed. All probe processes were stopped and joined.
Closes #5272.