61 lines
3.9 KiB
Plaintext
61 lines
3.9 KiB
Plaintext
# #1050 C1 fix round — Round 6 caller coupling and production archive binding
|
|
|
|
BASE HEAD
|
|
- df705828a439c6795cd47c938ed7f838b956ebf3
|
|
- Reviews 114 (rev-security-02) and 115 (be-coder-06) independently reproduced the same caller-level mutant: ignoring arms_status in the workflow left the focused helper suite green.
|
|
- Both reviewers confirmed the production aggregation was correct and requested test reachability, not a logic rewrite.
|
|
- rev-974 separately deleted only the production e2e-install-test.sh .mosaic-test-work tar exclusion; the copied-selector suite remained green.
|
|
|
|
RED
|
|
- After adding the four-cell caller truth-table expectations but before creating the workflow helper:
|
|
bash tools/verify-greenfield-execution-coverage.test.sh => rc=1
|
|
The expected helper did not exist, so the test could not reach a passing aggregation implementation.
|
|
- Prior independent controls:
|
|
ignore-arms workflow mutant => rc=0 before this round (reviews 114/115)
|
|
delete-production-archive-exclusion mutant => rc=0 before this round (rev-974 exact-head sandbox)
|
|
|
|
IMPLEMENTATION
|
|
- Extracted the existing set +e / two checks / status capture / final OR into tools/verify-greenfield-execution-coverage-gate.sh without changing its semantics.
|
|
- .woodpecker/greenfield-install.yml now invokes that helper directly; its inline duplicate was removed.
|
|
- The focused suite invokes the same helper used by the workflow across all four cells:
|
|
cases PASS / arms FAIL => RED
|
|
cases FAIL / arms PASS => RED
|
|
both FAIL => both diagnostic outputs and RED
|
|
both PASS => GREEN
|
|
- The archive-purity test now first locates the production checkout-archive command in tools/e2e-install-test.sh and requires its .mosaic-test-work exclusion, then proves the exclusion's archive effect.
|
|
- GREENFIELD_COVERAGE_GATE and GREENFIELD_E2E_INSTALLER are test-only subject injection seams used to prove the requested mutants; production paths remain the defaults.
|
|
|
|
MUTATION CONTROLS
|
|
- ignore-arms aggregation helper => focused suite rc=1
|
|
- ignore-cases aggregation helper => focused suite rc=1
|
|
- always-RED aggregation helper => focused suite rc=1
|
|
- delete only production .mosaic-test-work archive exclusion => focused suite rc=1
|
|
- restored production subjects => greenfield execution coverage tests passed
|
|
- final mutant workspace: /tmp/c1-round6-final-mutants.u0ZaL6
|
|
- logs: /tmp/c1-round6-final-gate-ignore-arms.log, /tmp/c1-round6-final-gate-ignore-cases.log, /tmp/c1-round6-final-gate-always-red.log, /tmp/c1-round6-final-archive-mutant.log
|
|
|
|
FENCED FILES
|
|
- tools/e2e-install-test.sh HEAD/worktree SHA-256: a93113565aa69f2c6f3d792b78251021bb3bbe3f7813d5fed547ab0099fa3b98 (byte-identical)
|
|
- tools/fixtures/greenfield-expected-red.tsv HEAD/worktree SHA-256: baae06c664d0ab7ffe4c32ec106bfcb6f9dd74b46461d3c4440b73dc582af1a2 (byte-identical)
|
|
- No per-case disposition or #869 wiring changed.
|
|
|
|
LOCAL BASELINES
|
|
- /home free before build: 11G
|
|
- bash -n focused scripts: PASS
|
|
- ShellCheck focused scripts: PASS
|
|
- bash tools/verify-greenfield-execution-coverage.test.sh: PASS
|
|
- pnpm test:installer: PASS
|
|
- pnpm typecheck: PASS (45/45)
|
|
- pnpm lint: PASS (25/25)
|
|
- pnpm format:check: PASS
|
|
- woodpecker-cli lint --strict .woodpecker/greenfield-install.yml: PASS
|
|
- git diff --check: PASS
|
|
|
|
INDEPENDENT REVIEW
|
|
- Codex code review: APPROVE, confidence 0.94, seven files reviewed, zero findings. It confirmed the workflow invokes the exact four-cell-tested helper, both diagnostics remain observable, and archive purity binds to the production selector.
|
|
- Codex security review: risk NONE, confidence 0.97, seven files reviewed, zero findings. It confirmed fail-closed behavior, quoted inputs, repository-controlled production arguments, and no new secret/injection/access-control exposure.
|
|
- The code-review sandbox could not execute the dynamic suite because its filesystem is read-only; the local measured baselines and mutation controls above provide dynamic evidence.
|
|
|
|
PENDING
|
|
- commit, queue guard, one lease-pinned push, provider attribution read-back
|