Skip to content

fix(ci): stop the nightly 100K Rust recall gate from timing out - #1305

Merged
cyberlife-coder merged 2 commits into
developfrom
fix/nightly-100k-recall-timeout
Jul 2, 2026
Merged

cyberlife-coder merged 2 commits into
developfrom
fix/nightly-100k-recall-timeout

Conversation

@cyberlife-coder

Copy link
Copy Markdown
Owner

Summary

Cherry-picks #1302's diff onto a Git-Flow-compliant branch/identity — the original PR's own body flagged that it would fail the branch-prefix and AI-attribution governance gates (same situation as #1289 → #1295).

  • Every run of the nightly "Scheduled Rust 100K recall (Fast/Balanced/Accurate/Perfect)" job has been cancelled at its 60-minute timeout since it was added on 2026-06-24 — 8 consecutive failures (runs fix: code review — split oversized files + 3 bug fixes #307–docs: add Docker quick start to README #351), the gate has never once produced a pass/fail signal.
  • Root cause: (1) scale_recall_100k.rs built a fresh 100K-vector HNSW index from scratch in each of 4 separate #[test] fns instead of sharing the fixture (4x cost multiplier), and (2) the CI step ran cargo test without --release — debug-mode HNSW insert/search at 100K vectors is an order of magnitude slower.
  • Merges the four tests into one (scale_100k_recall_all_qualities) that builds the fixture once and asserts all four per-mode thresholds, and adds --release to the CI invocation.

Test plan

  • Re-ran locally (release, --ignored): 14.4s total (previously never completed within the 60-minute CI budget). All four thresholds hold: Fast 0.9450 (≥0.90), Balanced 0.9730 (≥0.95), Accurate 0.9970 (≥0.98), Perfect 1.0000 (=1.00)
  • cargo fmt -p velesdb-core --check — clean
  • cargo clippy -p velesdb-core --test scale_recall_100k --release --features persistence -- -D warnings -D clippy::pedantic — clean
  • Pre-commit hook (full workspace fmt/clippy/tests/SAFETY/TODO) passed

Closes #1302 (superseded — see that PR for the original CI audit that found this).

Every run of the nightly "Scheduled Rust 100K recall (Fast/Balanced/
Accurate/Perfect)" job has been cancelled at its 60-minute timeout since
it was added on 2026-06-24 (8 consecutive failures, runs #307-#351) — the
gate has never once produced a pass/fail signal.

Two compounding issues: (1) scale_recall_100k.rs built a fresh 100K-vector
HNSW index from scratch in each of 4 separate #[test] fns instead of
sharing the fixture, a 4x cost multiplier; (2) the CI step ran cargo test
without --release, and debug-mode HNSW insert/search at 100K vectors is an
order of magnitude slower.

Merges the four tests into one that builds the fixture once and asserts
all four per-mode thresholds, and adds --release to the CI invocation.
Verified locally (release, --ignored): 14.4s total, all four thresholds
hold at the same values as before (Fast 0.945/Balanced 0.973/Accurate
0.997/Perfect 1.000).
@codacy-production

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

@cyberlife-coder
cyberlife-coder merged commit 560fba1 into develop Jul 2, 2026
36 checks passed
@cyberlife-coder
cyberlife-coder deleted the fix/nightly-100k-recall-timeout branch July 2, 2026 16:55
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