Skip to content

CI budgets: repair #6246 rebase regression (rust gate 10m->45m, warm 15m->45m, derived backstops) - #6338

Merged
briansrls merged 4 commits into
mainfrom
fix/rust-gate-budget-drift
Jul 7, 2026
Merged

briansrls merged 4 commits into
mainfrom
fix/rust-gate-budget-drift

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Jul 6, 2026 •

Copy link
Copy Markdown
Contributor

What

The #6246 rebase restored old CI budget values while keeping the new notes that document larger, receipt-backed values — an authority self-contradiction (value vs its own note):

authority value shipped by #6246 its own note says receipt
gunbc_ci_rust_gate_step_timeout_minutes 10 45m interim nextest killed mid-run at the 30m cap (job 85319650284: reconcile ~22m before main); prior: clippy in-flight at 15m kill
gunbc_ci_rust_sccache_warm_step_timeout_minutes 15 45m PRs 6286/6274/6290 timed out at 15m under cold-cache fallback

Live consequence: every rust_tests run now false-kills at the 10m gate step. Receipt: PR #6337 job 85487003660 — step timeout at exactly 10m00s, zero test output survived the kill. Main has no post-#6246 run yet; its next one hits the same wall.

Fix

Values restored to their own notes' numbers (45/45); ci.yml + falsifier.yml regenerated via generated_artifact_gate::main_wet so derived values move together: rust_tests job backstop 40→105, falsifier job 155→170 (+ falsifier's stale build-command drift repaired by the same regen). Floor-step 10m and the era-5 step-level semantics from #6246 are left untouched — this repairs only the two values that contradict their own receipts.

Deliberately excluded (found by the same regen, reported to operator separately)

  • DESIGN.md: regenerating it deletes the operator's 2026-07-05 §5 ruling text (no-escape-hatches / factory-model / review-bar) — design_document.dag is stale behind the hand-authored authority doc. Shipping that regen would regress an operator ruling; left at committed state pending an operator re-sync ruling.
  • .gitignore exception line (unrelated drift).

🤖 Generated with Claude Code

…ust gate/warm values, re-derive backstops

The #6246 rebase restored OLD budget values while keeping the NEW notes
that document larger receipt-backed values:
- gunbc_ci_rust_gate_step_timeout_minutes: 10 -> 45. Its own note: nextest
  killed mid-run at the 30m cap (receipt job 85319650284: warm 14m38s,
  reconcile 1339s before main, nextest in-flight at kill); prior 30m
  receipt: clippy in-flight at 15m kill.
- gunbc_ci_rust_sccache_warm_step_timeout_minutes: 15 -> 45. Its own note:
  PRs 6286/6274/6290 timed out at 15m under cold-cache fallback.

Live consequence repaired: every rust_tests run false-killed at the 10m
gate step (receipt: PR #6337 job 85487003660, step timeout at exactly 10m,
zero test output). Values were one config edit below their own receipts.

ci.yml + falsifier.yml regenerated via generated_artifact_gate::main_wet -
derived values move together (rust_tests job backstop 40 -> 105, falsifier
job 155 -> 170 + its stale build-command drift repaired by the same regen).

Deliberately NOT swept in from the same regen (pre-existing drift, reported
separately): DESIGN.md - regenerating it DROPS the operator's 2026-07-05
section-5 ruling text (escape hatches / factory model / review bar) because
design_document.dag is stale behind the hand-authored authority doc; and a
.gitignore exception line. Both left at their committed state.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@gunbai-bot
gunbai-bot Bot marked this pull request as ready for review July 6, 2026 22:07
@briansrls
briansrls force-pushed the fix/rust-gate-budget-drift branch from ee817f4 to 1ed2bba Compare July 6, 2026 22:07
@gunbai-bot gunbai-bot Bot changed the title complexity lens enforcement CI budgets: repair #6246 rebase regression (rust gate 10m->45m, warm 15m->45m, derived backstops) Jul 6, 2026
…derive disposition prose to 106m sum

Both cursor findings verified real and fixed:
- warm 45->46: witness_warm_step_budgeted_separately_from_gate asserts
  warm strictly > gate; witness_rust_tests_yaml_has_observable_warm_step_before_gate
  pins the emitted 'timeout-minutes: 46' before the gate step. Both now
  green by execution. git -S receipt: #6246's own branch carried
  'fix(ci): restore rust gate step budgets that regressed to 10m'
  (303d379, warm=46/gate=45) - the squash dropped it; this restores
  the intended state.
- disposition prose 40m/15+10+5+5+5 -> 106m/46+45+5+5+5 (single authority:
  prose re-derived with the carriers, warm>gate separation named).

ci.yml regenerated via main_wet (warm 46, derived rust_tests backstop 106).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@gunbai-bot

gunbai-bot Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor Author

Composer review (36107) — both findings verified and fixed in 049e903dab

  1. warm=46 restored — confirmed against the enrolled serializer witnesses: witness_warm_step_budgeted_separately_from_gate asserts warm > gate strictly, and witness_rust_tests_yaml_has_observable_warm_step_before_gate pins the emitted timeout-minutes: 46 immediately before the gate step. Both green by execution on this branch now. Also confirmed your history claim: InterfaceSummary v0: std carrier + first consumer #6246's own branch carried 303d37932d "fix(ci): restore rust gate step budgets that regressed to 10m" (warm=46/gate=45) — the final squash dropped exactly that restore, which is the regression this PR repairs.
  2. Disposition prose re-derived — gunbc_ci_job_timeout_policy_disposition now reads 106m = 46+45+5+5+5 with the warm>gate separation named, instead of the stale 40m/15+10+5+5+5.

ci.yml regenerated via main_wet: warm step 46, derived rust_tests job backstop 105→106.

— sent from sunny-wren-799

briansrls and others added 2 commits July 6, 2026 22:37
…ved, keep 6339 gate-note drift history

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@gunbai-bot

gunbai-bot Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor Author

Post-#6339 delta (after merging main): #6339 restored gate=45 only and reproduced the warm prose-data drift (warm left at 15 while its own note says 45m) — main is still red on the enrolled serializer witness pinning emitted timeout-minutes: 46 before the gate step. This PR's remaining delta: warm=46 (witness-pinned, strictly > gate), backstop re-derived 106m = 46+45+5+5+5, falsifier.yml drift repair (45m build, 170m job, --bin narrowing). #6339's gate-note drift-history addendum kept verbatim. Serializer witnesses green by execution on the merged tree. Note for the record: an auto-commit pushed the mid-resolution tree with conflict markers as 7de0be5; resolved and superseded by the follow-up commit — do not review 7de0be5 in isolation.

— sent from sunny-wren-799

@gunbai-bot

gunbai-bot Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor Author

CI status disposition: the failing check is the ci job's floor step ("gunbc ci (.dag witnesses + gates)") killed at its 10m step budget — the by-design era-4 state per the #6323 re-ruling (whole-tree floor exceeds the 10m cap on main today; the restore target is era-3 step-RED once the compile-clean scoping wall dissolves it). This PR touches only rust/falsifier budget carriers, not the floor. Per the operator ruling, merge basis for the current era = approvals + rust_tests + mergeable: both providers approve, mergeable=CLEAN, and rust_tests is in flight as the first live run under the restored 46/45/106 budgets — that's the check to watch.

— sent from sunny-wren-799

@briansrls
briansrls merged commit 2b3ad04 into main Jul 7, 2026
2 of 3 checks passed
@briansrls
briansrls deleted the fix/rust-gate-budget-drift branch July 7, 2026 00:44
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