fix(I-26): spec_conformance.sh — a §12 expiry is the Expires marker, never the first date in the cell; rows past expiry are RED (the §4 andon); derived_expiries.json regenerated (row 1 → 2026-09-19) (PMAT-974, #2889) - #3009
Merged
Conversation
Pmat-Ticket: PMAT-974
…he first date in a §12 cell, not the Expires marker, and an expired row is never RED (S0-2) Pmat-Ticket: PMAT-974
…never the first date in the cell; rows past expiry are RED (the §4 andon, SPEC_CONFORMANCE_TODAY for the case table); derived_expiries.json regenerated: row 1 expires 2026-09-19 and rows 13/15/18/19 derive from it (PMAT-974, #2889) Pmat-Ticket: PMAT-974
… is the expiry and expired rows are RED (invariant + FALSIFY-PP-LLAMA-001-CONFORMANCE-011) (PMAT-974, #2889) Pmat-Ticket: PMAT-974
…e rows Pmat-Ticket: PMAT-974
noahgift
enabled auto-merge
September 6, 2026 07:22
|
§13.11 rung 1 — quorum shadow verdict Shadow mode: this records a verdict and merges nothing. A refusal |
This was referenced Sep 6, 2026
noahgift
disabled auto-merge
September 7, 2026 11:53
check_roadmap_diff_additive.sh reported base id(s) missing at head: this branch forked before they landed on main, and a plain update takes one side of the file whole. Resolved as main's roadmap plus this branch's own new entries, each at its sorted slot among same-prefix peers. The other three roadmap guards pass on the result. Pmat-Ticket: PMAT-1098 Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
noahgift
enabled auto-merge
September 13, 2026 06:24
github-merge-queue
Bot
removed this pull request from the merge queue due to a conflict with the base branch
Sep 13, 2026
check_roadmap_diff_additive.sh reported base id(s) missing at head: this branch forked before they landed on main, and a plain update takes one side of the file whole. Resolved as main's roadmap plus this branch's own new entries, each at its sorted slot among same-prefix peers. The other three roadmap guards pass on the result. Pmat-Ticket: PMAT-1098 Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PP-066 DAG row I-26 (issue #2889; S0-2's expiry finding; epic #2873; ticket PMAT-974; owner spec-owner; receipt
docs/audits/impl-PMAT-974-receipt.md,status: partialuntil merged).The defect (S0-2): the PP-29 scanner took the FIRST date in a §12 root cell — master row 1's "lambda witness taken 2026-09-02" — and ignored its
Expires **2026-09-19**marker;derived_expiries.jsonput row 1 (and rows 13/15/18/19, derived from it) at 2026-09-02. Five rows sat past expiry at HEAD and nothing was RED: the §4 andon was not wired.What lands: the expiry is the
Expires YYYY-MM-DDmarker, never the first date (scripts/lib/spec_conformance.py); a non-discharged row past its derived expiry is RED inspec_conformance.sh(SPEC_CONFORMANCE_TODAYpins the clock for the case table);evidence/parity/derived_expiries.jsonregenerated by the script's own--write— row 1 expires 2026-09-19, rows 13/15/19 derive from it, 18 from 15.--selftestrowsexpiry_marker_winsandexpired_row_is_red(RED first at c37fe3b; 42 rows green after). Contract: an invariant underexpiries_derive_from_the_dagandFALSIFY-PP-LLAMA-001-CONFORMANCE-011incontracts/pp-llama-001-spec-conformance-v1.yaml(existing contract).Acceptance, re-run by the orchestrator on 69d6a5a
bash scripts/spec_conformance.sh --selftest(carriesexpiry_marker_winsandexpired_row_is_red)bash scripts/spec_conformance.shat HEAD (real clock) — non-zero iff a non-discharged row is past expirypython3overevidence/parity/derived_expiries.json: row 1 → 2026-09-19; 13/15/19 ← 1; 18 ← 15bashrs lint(0 errors) ·pv validate·pv lint·check_contract_test_binding.sh·check_contract_enforcement.sh·check_no_claim_literals.sh·check_perf_claims_cite_receipts.sh·check_roadmap_diff_additive.sh·check_readme_claims.shMutation — RED, then restored GREEN:
EXPIRES_MARKERreplaced by a bare date regex →expiry_marker_wins BROKE: expected 2026-09-19 got [2026-09-02]; restored → green.Finding: with the marker honoured, master rows 1, 13, 15, 18 and 19 all expire 2026-09-19 — thirteen days out; the andon now fires the day after (D-4: master dates stand). Receipt for this PR itself: advisory, not produced (driver A1).