Skip to content

LENSCI: re-measure v4 lens witnesses, wire 86 discriminating-green --claim-run rows as must-pass (per-witness perturb-red) - #4562

Closed
briansrls wants to merge 3 commits into
mainfrom
session/eager-seal-340
Closed

briansrls wants to merge 3 commits into
mainfrom
session/eager-seal-340

Conversation

@briansrls

@briansrls briansrls commented Jun 8, 2026 •

Copy link
Copy Markdown
Contributor

LENSCI: real lens-analysis CI gate — re-measured & expanded

Re-measured every src/v4/test/claim/lens_* witness and wired the discriminating-green ones as must-pass rows in src/v4/workflow/lens_ci_gate.dag, consumed by the existing v4_lens_ci CI job (scripts/v4-lens-ci-gate.sh --perturb-check).

Measurement (per (file, fn))

For each top-level fn () -> Bool claim witness: run gunbc run --source-root src/v4 --entry <file> --function <fn> --claim-run, require green; then perturb the witness body to false in a temp source-root and require the same row to go red.

  • 89 discriminating-green (green AND red-under-perturb)
  • 0 vacuous (green-but-passes-under-perturb)
  • ~14 red (genuine failures / arg'd harnesses) — not wired

Wired: 86 must-pass rows (count pinned in model)

89 discriminating-green minus 3 excluded by coordination:

  • PR LEXEC lens-over-real-program receipt wiring #4563 (Mgr-COERCE) ownership — excluded to avoid duplicate coverage of the same lenses (they live as LEXEC-over-real-program receipts there):
    • lens_idempotency/write_effect.dag
    • lens_idempotency/sg_claims.dag::lens_idempotency_write_effect_holds
    • lens_parallelism/data_dependency.dag

Follow-up (not in this PR)

Evidence (local, gunbc release binary, post-merge of origin/main)

$ bash scripts/v4-lens-ci-gate.sh --perturb-check
...
::notice title=v4 lens CI::86 discriminating lens witness(es) passed
EXIT=0
  • 86 ::group::v4 lens CI: green runs + 86 ::group::v4 lens CI perturb: red-under-perturb receipts
  • 0 ::error / 0 "perturbed witness still passed"
  • model projects exactly 86 rows == lens_ci_claim_run_row_count

Only src/v4/workflow/lens_ci_gate.dag changes; ci.yml already runs this gate.

🤖 Generated with Claude Code

@briansrls briansrls changed the title LENSCI real lens CI gate: re-measure v4 lens witnesses, wire discriminating-green --claim-run rows as must-pass; per-witness perturb-red required LENSCI: re-measure v4 lens witnesses, wire 86 discriminating-green --claim-run rows as must-pass (per-witness perturb-red) Jun 8, 2026
@briansrls
briansrls marked this pull request as ready for review June 8, 2026 19:45

@briansrls briansrls left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review metadata

  • Provider / model: codex / unknown
  • Commit: 0b13a688 · Trigger: schedule
  • Thinking: 272s wall

Non-blocking — Strengths

  • src/v4/workflow/lens_ci_gate.dag Classified as a .dag workflow roster; the 86 row bindings, list members, declared count, labels, entry paths, and Bool function references are internally consistent.

✅ No blocking concerns.

@briansrls

Copy link
Copy Markdown
Contributor Author

Closing — orphaned + ratchet concern. Owning session (eager-seal-340) is no longer active. More substantively: this wires 86 discriminating-green rows as MUST-PASS lens-CI rows. The 2026-06-09 lens sweep re-measure (#4593) confirmed the lens-CI foundation is sound by execution with the current 4 discriminating witnesses; expanding to 86 must-pass rows is a one-way ratchet of the kind retired with #4467 (a locked must-pass set raises cost-of-change and cements greens). If specific additional lens witnesses warrant promotion, they should be added as ordinary run-them-don't-lock-them tests, not a must-pass ratchet. Closing; the foundation measurement of record is #4593. — sent from still-raven-546

@briansrls briansrls closed this Jun 9, 2026
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