ci: give conformance explicit timeout budgets - #5073
Merged
maphew merged 1 commit intoJul 28, 2026
Conversation
The shared conformance entrypoint inherited Go's 10-minute default even though the embedded oracle regularly needs longer and dedicated jobs already budget at least 30 minutes. Give Tier 1 the maintained 30-minute budget, make Tier 2's existing 10-minute behavior explicit, and bound the outer workflow at 45 minutes. Test the exact Go argv, failure propagation from both tiers, and the outer workflow budget without sleeping through the real deadlines. Agent-Signature: codex-tui-gpt-5.6-sol-ultra on behalf of Ewen Cuthiell
maphew
approved these changes
Jul 26, 2026
maphew
left a comment
Contributor
There was a problem hiding this comment.
The three-tier nesting (30m oracle / 10m e2e / 45m outer) is exactly right, and citing the #4979 run that timed out at precisely the implicit 10m default made this trivially verifiable. The black-box tests pinning the exact argument vectors give the budgets teeth — future editors can't silently drop a -timeout — at the acceptable cost of those tests needing an update whenever conformance.sh's go invocations change shape. Approving; the patrol will merge on green.
claude-fable-5-medium on behalf of maphew
maphew
added a commit
that referenced
this pull request
Jul 28, 2026
…p entries (#5115) * fix(preflight): classify status checks latest-per-name, not raw rollup entries statusCheckRollup keeps every check run on the head SHA, including runs from cancelled or superseded check suites. A head whose earlier suite was cancelled carries stale CANCELLED/FAILURE entries forever next to the fresh green re-runs of the same checks, so preflight's raw count reports 'N status check(s) failed or require action' while GitHub itself says CLEAN — permanently blocking autonomous merges of green PRs (observed on #5073/#5074/#5076: 20 stale cancelled runs plus one stale gate failure alongside 80 green checks; each needed a manual merge). Collapse the rollup to the most recent entry per check name/context (completedAt, else startedAt/createdAt) before classifying, mirroring GitHub's own latest-per-name mergeability semantics. A genuinely failing or pending latest run still blocks; regression-tested both ways in the fake-gh harness, which now takes an injectable rollup via PR_ROLLUP. Agent-Signature: claude-fable-5-high on behalf of maphew Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P3JtQ3ukoVmfg6LCKcKBBh * fix(preflight): keep independent checks separate; handle gh zero-time exports Cross-vendor review findings on the latest-per-name dedupe: - Group by (__typename, workflowName, name/context), not name alone. A commit status and a check run sharing a name are independent required gates, and identically named jobs in different workflows must not collapse into one entry where a green run could mask the other workflow's red one. - gh exports absent CheckRun times as the Go zero time (0001-01-01...), which defeated the // fallback chain. Normalize zero/null times and pick the max of completed/started/created, so a fresh in-progress rerun supersedes an old completed failure and reports as pending. Regression tests for all three cases. Agent-Signature: claude-fable-5-high on behalf of maphew Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01P3JtQ3ukoVmfg6LCKcKBBh --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
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.
ci: give conformance explicit timeout budgets
Fixes #5070
What
timeout.
propagation from either tier.
Why
The standalone entrypoint inherited Go's ten-minute default even though the
embedded oracle regularly needs longer and the dedicated conformance jobs
already budget 30 minutes. PR #4979 run
29973997194timed out at exactly tenminutes while the same merge commit passed in the explicitly budgeted
conformance lane.
The three deadlines are intentionally nested:
The workflow placement is not a platform claim: these relative timeout and
failure-propagation semantics are host-independent. The exact-head standalone
Conformance result remains the required publication-time execution proof.
Validation
Exact candidate
131c17fdfcc5f814b198292421a36917e2e811c9passed:gofmt, andgit diff --check;The fresh exact-head
Conformance / Storage backend conformance (embedded Dolt oracle)pull-request job remains mandatory after publication.codex-tui-gpt-5.6-sol-ultra on behalf of Ewen Cuthiell