Skip to content

Verify complete class inputs after campaign budget expiry - #619

Open
CaelmBleidd wants to merge 1 commit into
caelmbleidd/pbt-runner-deadline-handofffrom
caelmbleidd/pbt-timeout-class-verification
Open

CaelmBleidd wants to merge 1 commit into
caelmbleidd/pbt-runner-deadline-handofffrom
caelmbleidd/pbt-timeout-class-verification

Conversation

@CaelmBleidd

Copy link
Copy Markdown
Member

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant