Skip to content

ci: CI reliability — Miri timeout headroom + Verus on ubuntu-latest (v0.17.0, #509)#520

Merged
avrabe merged 4 commits into
mainfrom
ci/miri-timeout-headroom
Jun 10, 2026
Merged

ci: CI reliability — Miri timeout headroom + Verus on ubuntu-latest (v0.17.0, #509)#520
avrabe merged 4 commits into
mainfrom
ci/miri-timeout-headroom

Conversation

@avrabe

@avrabe avrabe commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

First v0.17.0 work: CI reliability (#509 theme). Two fixes so a fully-green-on-the-required-gates run stops showing red from infra flakiness on the self-hosted pool.

1. Miri timeout 30 → 45

The post-release main run went red solely because Miri timed out at 30 min on the lean-mem self-hosted runner while it was contended clearing the #509 backlog — every required gate was green and Rocq passed. Miri's own comment already called for this ("Revisit once we have a few green runs"). 45 min gives headroom without masking a real hang. Keeps the deliberate self-hosted runner.

2. Verus → ubuntu-latest + cachix (mirrors the green Rocq job)

Verus Proofs was perma-red at "Install Nix": the no-sudo daemonless DeterminateSystems installer (crafted for the self-hosted NoNewPrivileges runner) broke on a version bump and escalated to sudo, which fails there — the proofs never ran. Rocq does the identical Bazel+Nix work on ubuntu-latest with cachix/install-nix-action@v30 and is green. Verus now mirrors that exactly. Also removes the job's dependency on the self-hosted pool (a #509 resilience win). Stays continue-on-error (advisory) like Rocq.

Verification

Refs #509. Part of the v0.17.0 CI-reliability scope (REQ-215).

🤖 Generated with Claude Code

…n runs

The release-commit CI run went red solely because Miri timed out at 30 min on
the self-hosted lean-mem pool while it was contended clearing the #509 outage
backlog — every required gate (Format/Clippy/Test/Docs/YAML/Traceability) was
green, and Rocq proofs passed. Miri's own comment already anticipated this
("Revisit once we have a few green runs to set the budget closer to actual";
it was previously bumped 15→30 for the same lean-mem slowness).

45 min gives headroom on the lean-mem class without masking a real hang (a
genuine UB loop still trips the budget). Does not touch the deliberate
self-hosted runner choice.

Refs: #509
Trace: skip

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Performance Alert ⚠️

Possible performance regression was detected for benchmark 'Rivet Criterion Benchmarks'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 1.20.

Benchmark suite Current: b8355f1 Previous: 23b2495 Ratio
query/10000 305834 ns/iter (± 4393) 232555 ns/iter (± 3605) 1.32

This comment was automatically generated by workflow using github-action-benchmark.

@codecov

codecov Bot commented Jun 10, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

…rocq job

Verus Proofs was perma-red at the "Install Nix" step: the no-sudo daemonless
DeterminateSystems installer (crafted for the self-hosted NoNewPrivileges
runner) broke on a version bump and escalated to sudo, which fails there. The
proofs never even ran. Rocq does the identical Bazel+Nix work on ubuntu-latest
with cachix/install-nix-action@v30 and is green.

Move Verus to the same config: ubuntu-latest + cachix installer + nix_path.
Fixes the install, and removes the job's dependency on the self-hosted pool
(also a #509 resilience win). 16 GB hosted RAM is ample for the rivet Verus
specs; the lean-mem RAM headroom is no longer needed. Stays continue-on-error
(advisory) like rocq.

Refs: #509
Trace: skip
@avrabe avrabe changed the title ci(miri): bump timeout 30→45 so lean-mem contention doesn't fail green runs ci: CI reliability — Miri timeout headroom + Verus on ubuntu-latest (v0.17.0, #509) Jun 10, 2026
…st, Miri timeout) as v0.17.0 scope

Tracks the Miri+Verus CI-reliability fixes in this PR as the first v0.17.0
scope item (baseline v0.17.0-track), traced to REQ-051 (CI-enforced gates) and
the #509 resilience theme.

Trace: skip
@github-actions

github-actions Bot commented Jun 10, 2026

Copy link
Copy Markdown

📐 Rivet artifact delta

Change Count
Added 1
Removed 0
Modified 0
Downstream impacted (depth ≤ 5) 0

Graph

graph LR
  REQ_215["REQ-215"]:::added
  classDef added fill:#d4edda,stroke:#28a745,color:#155724
  classDef removed fill:#f8d7da,stroke:#dc3545,color:#721c24
  classDef modified fill:#fff3cd,stroke:#ffc107,color:#856404
  classDef overflow fill:#e2e3e5,stroke:#6c757d,color:#495057,stroke-dasharray: 3 3
Loading
Added
  • REQ-215

📎 Full HTML dashboard attached as workflow artifact rivet-delta-pr-520download from the workflow run.

Posted by rivet-delta workflow. The graph shows only changed artifacts; open the HTML dashboard (above) for full context.

…runner

Mirrors rocq (#299): with needs:[test] the ubuntu-latest Verus job sat blocked
behind the contended self-hosted rust-cpu test job. Decoupling lets it run
immediately on the always-available hosted runner.

Refs: #509
Trace: skip
@avrabe avrabe merged commit e60a3a9 into main Jun 10, 2026
26 of 27 checks passed
@avrabe avrabe deleted the ci/miri-timeout-headroom branch June 10, 2026 05:27
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