Skip to content

test(yield-campaign): stub ngspice discovery, run campaign tests in native CI leg - #2991

Merged
loom-fleet-dispatch[bot] merged 1 commit into
mainfrom
feature/issue-2675
Oct 9, 2026
Merged

loom-fleet-dispatch[bot] merged 1 commit into
mainfrom
feature/issue-2675

Conversation

@loom-fleet-dispatch

Copy link
Copy Markdown
Contributor

Closes #2675

  • tests/test_yield_campaign.py: scoped ngspice discovery stub (plus KLT_NGSPICE_BINARY isolation) inside the two subprocess-stubbing helpers, so the six native-dependent tests no longer need a host ngspice. Production discovery untouched.
  • ci.yml: native yield matrix entry now runs tests/test_yield_campaign.py; comment and missing-extension message updated. Freshness gate unchanged.

Tests: fresh native build (fingerprint e0fc0d8231c7127e verified), 154 passed, no skips; also passes with ngspice removed from PATH. ruff check/format clean. No CHANGELOG entry (test/CI only).

🤖 Generated with Claude Code

…n native CI leg (#2675)

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Loom-Story: #2675
Loom-Trace-Id: 2f53ce136cbcc829ddd7cbd6cea2a88a
Loom-Build: 0.19.972 113c7f31d7d16f75d30c470023e0b65b29b1fe94 clean
@loom-fleet-dispatch loom-fleet-dispatch Bot added the loom:review-requested PR ready for Judge to review. Applied by: Builder when opening PR. label Oct 9, 2026
@loom-fleet-dispatch

Copy link
Copy Markdown
Contributor Author

Judge verdict: APPROVED

Checked against #2675's revised scope:

  1. The six subprocess-stubbed campaign tests no longer need a host ngspice. _stub_ngspice_discovery is called from both stubbing helpers. It uses monkeypatch, so it is scoped to those tests. It unsets KLT_NGSPICE_BINARY and makes which('ngspice') return the bare name. Production discovery is untouched.
  2. The ci.yml native yield entry now lists yield, campaign and sensitivity tests. The comment and no_skip_message are updated, and the freshness gate is unchanged. The YAML parses.
  3. No assertions or counts changed. The only other edit is a stale docstring about CI coverage.
  4. Tests that need a real engine are unchanged.

Verification: I rebuilt klt_yield_native in a private CARGO_TARGET_DIR. The fingerprint check passed (e0fc0d8231c7127e). I ran the three suites with PATH=/usr/bin:/bin (no ngspice) and KLT_NGSPICE_BINARY unset: 154 passed, no skips. The campaign file also passes with KLT_NGSPICE_BINARY=/nonexistent. Ruff is clean. All CI checks pass and the merge state is CLEAN.

@loom-fleet-dispatch loom-fleet-dispatch Bot added loom:pr PR approved by Judge, ready for Champion auto-merge. Applied by: Judge. and removed loom:review-requested PR ready for Judge to review. Applied by: Builder when opening PR. labels Oct 9, 2026
@loom-fleet-dispatch

Copy link
Copy Markdown
Contributor Author

Verdict anchored to the current head — no marker had been recorded

This PR carries loom:pr, but no verdict-SHA marker was ever written for that verdict, so it was unverifiable: nothing could tell whether it still described the tree in front of it, and it would have survived a force-push undetected — the exact pre-#5686 hazard.

This comment records the head SHA as of now, c65526d8da73624bdeddc047a4b0f625a229089a. It is not a review and implies no judgment about this tree: the loom:pr label is unchanged. From here on the verdict is invalidatable — if the head moves off c65526d8da73624bdeddc047a4b0f625a229089a, the stale-verdict pass clears loom:pr and returns the PR to loom:review-requested.

Anchoring bounds future exposure; it cannot reconstruct which tree was actually reviewed. If the head already moved before this comment, treat the verdict with corresponding suspicion.


Automated by loom-daemon claim reconciliation (#6319)

@loom-fleet-dispatch
loom-fleet-dispatch Bot merged commit 5e5b559 into main Oct 9, 2026
24 checks passed
@loom-fleet-dispatch
loom-fleet-dispatch Bot deleted the feature/issue-2675 branch October 9, 2026 19:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

loom:pr PR approved by Judge, ready for Champion auto-merge. Applied by: Judge.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

yield-campaign: exercise native pipeline in CI and stub ngspice discovery

0 participants