Verification Report: Native CI Ignore-Policy Coverage Correction
Status: LOCAL POST-D003 VERIFICATION PASSED — NATIVE RERUN PENDING
Date: 2026-08-14
Issue: https://git.terraphim.cloud/terraphim/terraphim-ai/issues/3222
Base: origin/main at 64748c58da4d9c97109cce5a2ee473c5ffe2a50d
Design/specification: docs/plans/design-native-ci-ignore-policy-3222.md
Summary
The approved two-file implementation passed strict RED→GREEN TDD, mutation testing, formatting, clippy, the workspace library baseline, and both package-default targeted suites. The live-Docker integration test remained ignored. No dependency, API, job, trigger, status-context, Docker, network-test, or branch-protection change was made.
Native-runner push and pull-request observations remain required before merge.
First Native PR Observation
Commit 71079d70331858e7b354746b7dc22ef86ee789bd ran on two independent native
runners. Both required contexts failed at the LLM package-default step after
preflight, fmt, clippy, build, workspace-lib, and the Gitea-runner targeted step
had passed. The live-Docker test remained ignored. Both logs reported:
strict_docker_sandbox_public_api_is_opaque ... FAILED
registry index was not found in any configuration: `terraphim`Trybuild generated its scratch manifest outside the repository and copied
workspace entries using registry = "terraphim", but nested Cargo could not
discover the repository's .cargo/config.toml. A fresh local target reproduced
the same failure. Supplying the non-secret
CARGO_REGISTRIES_TERRAPHIM_INDEX=sparse+https://git.terraphim.cloud/api/packages/terraphim/cargo/
to the outer test command made nested Cargo resolve the registry and all three
compile-fail fixtures pass in 251.25s. D003 tracks the command-contract repair.
Traceability
| Requirement | Implementation | Evidence | Status |
|---|---|---|---|
| Preserve workspace library baseline | Existing cargo test --workspace --lib --no-fail-fast remains exact | Final workspace-lib gate rc=0 | PASS |
| Execute Gitea-runner integration contracts | Targeted package-default workflow step | 53 lib + 21 integration passed; 39s | PASS |
| Execute LLM integration, trybuild, and rustdoc contracts | Targeted package-default workflow step | 38 passed, 1 ignored; 7 doctests passed; 18s | PASS |
| Keep live Docker test excluded | No --ignored or --include-ignored | Docker test explicitly reported ignored | PASS |
| Prevent targeted-step removal/mutation/duplication | Crate-root lib guard parses embedded workflow and pins exact counts | Initial RED failed left: 0, right: 1; final GREEN passed | PASS |
| Prevent extra/reordered direct Cargo-test steps | Guard asserts exact ordered direct-Cargo-test list | Temporary fourth-step mutation rejected | PASS |
| Reject scope-widening/ignored flags | Guard rejects --tests, --all-targets, --ignored, --include-ignored | Mutation failed on exact --include-ignored token | PASS |
| Keep targeted local runtime under 10 minutes | Package-default commands measured independently | 39s runner; 18s companion | PASS locally |
| Preserve workflow/job/context identity | No edits to workflow name, job id, or triggers | Exact diff inspection | PASS |
| Validate on authoritative native runner | Push and PR contexts on immutable PR SHA | Awaiting post-fix rerun on existing PR #3235 | PENDING |
TDD and Mutation Evidence
Initial RED
Command:
Observed against the unchanged workflow:
running 1 test
FAILED
assertion `left == right` failed
left: 0
right: 1
0 passed; 1 failed; 52 filtered outInitial GREEN
After adding the two targeted workflow commands:
running 1 test
1 passed; 0 failed; 52 filtered outMutation closure
Temporary fourth workflow step, never executed:
- run: cargo test -p terraphim_llm_runner -- --include-ignored- Before remediation: guard incorrectly passed, reproducing D001/D002.
- After remediation: guard failed with:
native CI cargo-test step must not include --include-ignored:
cargo test -p terraphim_llm_runner -- --include-ignored
0 passed; 1 failed; 52 filtered outThe workflow was then restored byte-for-byte. Restored SHA-256 matched the pre-mutation backup, and the focused guard returned GREEN.
D003 native hermeticity RED → GREEN
- Both first native contexts failed because trybuild's scratch manifest could
not discover the
terraphimregistry index. - A fresh local target reproduced the same manifest-parse failure.
- Supplying
CARGO_REGISTRIES_TERRAPHIM_INDEXmade all three trybuild fixtures pass on a cold target in 251.25s. - The guard contract was changed first and failed RED with
left: 0,right: 1against the unchanged workflow. - The one-line workflow prefix then made the focused guard GREEN and the full LLM package-default suite pass with the Docker test still ignored.
Final Local Gates
Executed sequentially on the final strengthened bytes:
RESULT fmt rc=0 elapsed_seconds=1
RESULT clippy rc=0 elapsed_seconds=34
RESULT workspace-lib rc=0 elapsed_seconds=271
RESULT gitea-runner rc=0 elapsed_seconds=39
RESULT llm-runner rc=0 elapsed_seconds=18
ALL_GATES_PASS 2026-08-14T21:58:27ZNon-vacuous package results:
terraphim_gitea_runner:
53 library passed
5 + 4 + 1 + 8 + 3 = 21 integration passed
0 ignored; 0 doctests
terraphim_llm_runner:
1 library passed
6 + 19 + 3 + 2 = 30 non-ignored integration passed
1 live-Docker integration test ignored
7 rustdoc compile_fail tests passed
total: 38 passed, 1 ignoredStatic Analysis and Review
cargo clippy --workspace --all-targets -- -D warnings: PASS.cargo fmt --all -- --check: PASS.git diff --check: PASS.ubsscanner: unavailable on this host; no result is claimed.- Independent Claude Opus structural review Round 1:
3/5, P0=0, P1=1, P2=6, REQUEST_CHANGES.- P1 local execution-evidence gap: CLOSED by final gates above; native PR evidence remains a merge gate.
- D001
--include-ignored: CLOSED with mutation evidence. - D002 ordered/exhaustive direct Cargo-test list: CLOSED.
- Documentation status/count/provenance findings: CLOSED by current design status/counts and this retained report.
- Round 2 closed all original findings at
5/5, P0=P1=P2=0 and authorized commit71079d70331858e7b354746b7dc22ef86ee789bd.
- Native validation of that commit exposed D003. Independent Round 3 reviewed
the D003 follow-up at
4/5, P0=0, P1=0, P2=1, REQUEST_CHANGES; its sole stale remaining-gates/timing documentation finding is corrected in this revision. Round 3 zero-finding confirmation remains required before the follow-up commit.
Defect Register
| ID | Description | Origin | Severity | Resolution | Status |
|---|---|---|---|---|---|
| D001 | --include-ignored bypassed forbidden-token scan | Phase 2.5 specification | P2 | Added token and mutation evidence | CLOSED |
| D002 | Extra/reordered direct Cargo-test commands were not rejected | Phase 2 test strategy | P2 | Assert exact ordered direct-Cargo-test list | CLOSED |
| D003 | Trybuild scratch Cargo could not discover the private registry index | Phase 1 environment assumption / Phase 2 command contract | P1 | Prefix the LLM workflow step with the non-secret registry-index environment variable; clean-target and full local gates pass | CLOSED LOCALLY / NATIVE RERUN PENDING |
Remaining Gates
- Independent structural review Round 3 confirmation on the D003 follow-up bytes at confidence 5/5, P0=P1=P2=0.
- Commit and push the reviewed exact bytes to the existing branch.
- Confirm existing PR #3235, which references #3222, picks up the follow-up head SHA.
- Verify branch head SHA equals remote and PR head SHA.
- Require native-ci push and pull-request contexts green on that exact SHA.
- Record native per-step durations; each targeted step must remain <=10 minutes.
- Do not merge until all required statuses and review gates pass.