Repository navigation
fix: refuse invalid quality-loop round budgets - #28
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.
An agent invoking
iterate.mjscould receive exit0 without any judgment for zero, negative or nonnumeric round budgets, or after a failed judgment with a fractional budget. Validate a positive safe integer before work starts, reject explicit empty/missing values, and preserve the omitted one-round default. Update the guided documentation and affected tour citations.Validation: independent source/simplification review approved the five-file change. Independent runtime replay passed15/15 frozen scenarios; substituting only the original iterator failed all9 admission cases while6 control scenarios still passed. A separate paired1.5 case reproduced original failed judgment followed by exit0; the patch refused it before any child call. Controls cover exact exhaustion, recovery, absent-verdict failure, four separate concurrent jobs and twelve sequential history appends.
Local and Linux CI passed44 tests,49 syntax checks,36 tour/34 prose citations and the committed evidence proof. CI also passed the existing bundled smoke render (286,290 bytes); its checkout tree matches the reviewed commit. Synthetic judgments prove iterator control, not rubric/provider quality, production, same-output concurrent writes or practical large-budget endurance. No dependency, lock, workflow, model or visual changes.