Skip to content

build: compile the ordeal crates optimized in the dev profile - #1706

Merged
avrabe merged 1 commit into
mainfrom
ci-coverage-deadline
Nov 12, 2026
Merged

avrabe merged 1 commit into
mainfrom
ci-coverage-deadline

Conversation

@avrabe

@avrabe avrabe commented Nov 12, 2026 •

Copy link
Copy Markdown
Contributor

Since ordeal 0.36.0 (#1705), "Rust-test Line Coverage" is red on main
1757f10: under llvm-cov instrumentation the I64Popcnt expansion
certification in crates/synth-backend/tests/i64_expansion_certification.rs
returns "ordeal returned unknown (wall-clock deadline 300000 ms)".

Bisected upstream (pulseengine/ordeal#308): the step is 0.31.0 -> 0.32.0,
which made ordeal's trusted term check run on every verdict. That check is
deliberate and stays; making it cheaper is ordeal#283.

synth spends nearly all of this test inside ordeal, which the dev profile
built unoptimized. [profile.dev.package.{ordeal,ordeal-lrat,ordeal-cert}]
now sets opt-level = 3. Same host, default 300 s deadline:

shipped_expansions_certify before after
debug cargo test 64.4 s 15.1 s
cargo llvm-cov test 71.6 s 19.1 s

I64Popcnt certifies unsat, LRAT-checked, in both. The deadline is not
touched (an earlier version of this PR raised it for the coverage job; this
replaces that). Only dependency build settings change: no synth code
generation, no release profile. synth-verify 276/0, clippy and fmt clean,
cc_sweep 55/0, Cargo.lock unchanged (--locked).

Refs #1705

This is a red-main fix opened ahead of the drain order. The optimized-dependency suggestion and the upstream bisection come from the ordeal side (ordeal#308).

🤖 Generated with Claude Code

https://claude.ai/code/session_01YJK5LZZEkV5smCY1jKn18L

@avrabe
avrabe force-pushed the ci-coverage-deadline branch from 8ddb64c to c3de0b6 Compare November 12, 2026 07:36
Since ordeal 0.36.0 (#1705), "Rust-test Line Coverage" is red on main
1757f10: under llvm-cov instrumentation the I64Popcnt expansion
certification in crates/synth-backend/tests/i64_expansion_certification.rs
returns "ordeal returned unknown (wall-clock deadline 300000 ms)".

Bisected upstream (pulseengine/ordeal#308): the step is 0.31.0 -> 0.32.0,
which made ordeal's trusted term check run on every verdict. That check is
deliberate and stays; making it cheaper is ordeal#283.

synth spends nearly all of this test inside ordeal, which the dev profile
built unoptimized. [profile.dev.package.{ordeal,ordeal-lrat,ordeal-cert}]
now sets opt-level = 3. Same host, default 300 s deadline:

  shipped_expansions_certify   before    after
  debug cargo test              64.4 s   15.1 s
  cargo llvm-cov test           71.6 s   19.1 s

I64Popcnt certifies unsat, LRAT-checked, in both. The deadline is not
touched (an earlier version of this PR raised it for the coverage job; this
replaces that). Only dependency build settings change: no synth code
generation, no release profile. synth-verify 276/0, clippy and fmt clean,
cc_sweep 55/0, Cargo.lock unchanged (--locked).

Refs #1705

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YJK5LZZEkV5smCY1jKn18L
@avrabe
avrabe force-pushed the ci-coverage-deadline branch from c3de0b6 to 5e7b660 Compare November 12, 2026 07:59
@avrabe avrabe changed the title ci: raise the ordeal deadline for the line-coverage job only build: compile the ordeal crates optimized in the dev profile Nov 12, 2026
@codecov

codecov Bot commented Nov 12, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@avrabe
avrabe merged commit 5dc4e28 into main Nov 12, 2026
80 of 81 checks passed
@avrabe
avrabe deleted the ci-coverage-deadline branch November 12, 2026 10:49
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