Repository navigation
Verify complete class inputs after campaign budget expiry - #619
Open
CaelmBleidd wants to merge 1 commit into
Open
CaelmBleidd wants to merge 1 commit into
CaelmBleidd wants to merge 1 commit into
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.
A normal PBT allocation timeout returns CLI exit 2 even when it leaves a complete captured input prefix; a bounded symbolic query can do the same after all completed inputs have been checked. The experiment caller previously stopped before native class replay for every exit 2. It now permits that replay attempt for structured budget outcomes with complete evidence, while preserving the original DEADLINE/TIMEOUT status and diagnostics.
The caller checks the saved property, source, Node command and original controls against the request, allowing their wire defaults. The budget exception requires zero omissions/pending inputs, exact completed/replayed input sets, matching grouped symbolic predictions, and admitted, timely HOLDS receipts. Unknown/unsupported/failed searches, unmatched targets, partial captures, missing or invalid artifacts, changed identities, outer kills and late results do not pass this exception. Existing confirmed original faults retain their exit-1 path.
Native original/counter equivalence and the same absolute total cutoff determine actual coverage credit. The CLI, native loop, allocations and reserves are unchanged.
Validation: 23 focused Python tests pass, including PBT-only and hybrid PBT timeouts, bounded symbolic timeouts, retained diagnostics, adversarial identity/prediction/capture cases, and late/failed/mismatched native receipts. Three positive regressions fail against the original #616 head. A read-only check of 24 saved request/artifact pairs finds matching identities and keeps the two cells with 56/92 unchecked symbolic inputs rejected. This check neither replays those inputs nor recomputes coverage or credit; a composed real-class preflight is separate.
Base: #616 at
560b23d494509d726be2a6347e948b45e7dbf1aa; the existing runtime dependency on #615 remains. Refs #618, #613, #354.