Skip to content

Reject invalid run timeouts before touching inputs or saved reports - #49

Merged
Jacob-Met merged 1 commit into
mainfrom
fix/run-timeout-admission-f5c43297f890
Oct 8, 2026
Merged

Jacob-Met merged 1 commit into
mainfrom
fix/run-timeout-admission-f5c43297f890

Conversation

@Jacob-Met

Copy link
Copy Markdown
Owner

Problem

testpilot run --timeout accepted NaN, infinities, overflowing float text, zero and negative durations. Nine actual CLI witnesses entered the normal no-changes path and replaced all four existing review outputs instead of rejecting the invalid configuration. Invalid limits could also wait on an unclosed stdin diff before being rejected.

Change

Validate the run timeout during argument parsing with a positive finite float converter. Invalid limits now return argparse exit 2 before input readers, client construction, pytest or report publication. Fractional seconds, scientific notation and the existing 60-second default remain supported.

The only product code edits are the math import, private converter and run --timeout type/help. Recheck and sandbox behavior remain unchanged. Removing those three spans reproduces the complete current-parent CLI; removing the new README paragraph reproduces its complete parent, including PR42's raw Git-diff guidance.

Validation

  • New actual-CLI tests: baseline 9 failed / 5 passed; candidate 14/14 passed, including real scripted generation and pytest for default and explicit positive limits.
  • Independent receiving: original baseline 11 passed / 9 failed; candidate 20/20 on both the original parent and current cec50d8df4499ba509615e179d82ef3861379bd2 composition. These include output preservation and admission before stdin EOF.
  • The broader seven-module native run reached 35 passing progress dots before its 160-second outer limit. It remains recorded as incomplete.
  • The remaining 16 collected tests were explicitly resumed: 15 passed, one existing optional-coverage skip, 13 subtests passed. That native interpreter lacks coverage; this is not a completed full-suite claim.
  • All 31 published blobs match the native packet's pins, and all 1,295 unowned parent leaves are unchanged.

Exact source, original failures, raw logs, receivers, current-source proofs and claim limits are preserved under docs/receiving/cli-timeout-f5c43297f890/. The existing hosted CI remains unchanged and will qualify the offered PR.

Cohort f5c43297f890; existing cancellation, comparison/history, paired-regression and hunk-admission scopes remain with their current owners.

Require a positive finite CLI timeout, preserve the 60-second default and PR42 Git acquisition, and retain actual before/after and independent receiving evidence.
@Jacob-Met
Jacob-Met merged commit 513f174 into main Oct 8, 2026
1 check passed

Copy link
Copy Markdown
Owner Author

Actual merge and full-suite receiving

This PR merged as 513f17454af378ee042ccd29dc930ef332a48734, parents e5b7ac4a00704c0fad0c5d70da0aaafa40a722df + reviewed 65c5c2e7d3f42a21f65affdecca932ae3b22df61, actual tree ffded624f1e44bed9e10872dfb795dae2dda1a46.

The other owner's diff-hunk admission landed just before merge. The actual composed CLI blob is 53b9436ca572c0cb9e9a10e32252197bdd9ffd98; removing only this PR's math import, timeout admission helper and run argument delta recovers the complete actual-parent CLI blob 50dc65e609ede9fc0358b3f46178cac4c2fe1e06. All 30 other offered files match and all 1,395 unrelated actual-parent leaves, modes and types are preserved.

Actual merged-main CI passed: 453 tests and 25 subtests in 96.33 seconds. Run37829253368 / job113490010847 logs the checkout SHA513f174 above and the complete passing pytest summary. The earlier offered-PR run's 409 tests plus 25 subtests qualified its older preview tree and remains distinct.

The native partial broad gate, earlier invalid-input report-overwrite failures, first README composition mistake and exact repairs remain retained. This closes source integration and actual-main verification for timeout admission.

@Jacob-Met
Jacob-Met deleted the fix/run-timeout-admission-f5c43297f890 branch October 19, 2026 02:58
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