Skip to content

roadmap: frozen roadmap-base.yaml snapshot + two gate changes (S1b of #6185) — GATE CHANGE - #6250

Merged
noahgift merged 2 commits into
mainfrom
feat/roadmap-base-s1b-v9
Oct 24, 2026
Merged

noahgift merged 2 commits into
mainfrom
feat/roadmap-base-s1b-v9

Conversation

@noahgift

Copy link
Copy Markdown
Member

GATE CHANGE (two guards). Supersedes #6249 (main's roadmap moved, so its snapshot was stale; linear re-cut onto main dd6d507, 2 commits, both PMAT-6185).

  1. docs/roadmaps/roadmap-base.yaml: byte copy of docs/roadmaps/roadmap.yaml at main.
  2. R7 in scripts/check_comparator_pin_citations.sh loosens R1 for the ONE pair roadmap.yaml -> roadmap-base.yaml: the copy must carry EXACTLY the pin of the HISTORICAL roadmap.yaml ledger row, every line a byte-copy. Rows C20-C25; mutants drop-copy-rule, any-copy-line, drop-class-filter, widen-scope, membership-only; self-test 43/43.
  3. Completion-citation guard (check_roadmap_completion_is_cited.sh) leaves the base out of the count ONLY while roadmap.yaml is in scope and holds every id the base holds (content-bound, not a path waiver; judged normally if roadmap.yaml is removed or the base has an extra id). Three case rows plus mutants path-waiver, drop-subset-test, no-live-requirement run INSIDE the self-test (41/41).
  4. Both declared in the PMAT-6185 notes and docs/audits/quorum-PMAT-6185-R1-pin-cites.md (A/B ruling, NOT the sign-off).

Known residual: a copy of a historical line skips R3/R6; a re-pin dropping a citing line needs the base re-cut. Follow-up: the step removing the tracked roadmap.yaml moves its ledger row onto the base (C24); the completion guard then judges the base automatically.

Needs: non-author sign-off bound to the FINAL commit.

keep-open: S2-S4 follow under #6185.

🤖 Generated with Claude Code

t and others added 2 commits October 24, 2026 09:48
…data, Refs #6185)

A byte copy of docs/roadmaps/roadmap.yaml at main dd6d507; rule 3 and aggregate --check pass.

PMAT-Ticket: PMAT-6185
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…t-bound completion exemption (GATE CHANGE, Refs #6185)

Two gate changes for the frozen roadmap-base.yaml, declared in the PMAT-6185 notes and
docs/audits/quorum-PMAT-6185-R1-pin-cites.md (A/B ruling, not the sign-off):
1. check_comparator_pin_citations.sh R7 loosens R1 for the one pair roadmap.yaml -> roadmap-base.yaml; the copy
   must carry EXACTLY the historical roadmap.yaml row's pin. Rows C20-C25, mutants drop-copy-rule, any-copy-line,
   drop-class-filter, widen-scope, membership-only; 43/43.
2. check_roadmap_completion_is_cited.sh leaves the base out of the count only while roadmap.yaml is in scope and
   holds every id the base holds. 3 case rows plus mutants path-waiver, drop-subset-test, no-live-requirement
   run inside the self-test (41/41).

PMAT-Ticket: PMAT-6185
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

§13.11 rung 1 — quorum shadow verdict

S13-SHADOW pr=6250 head=d8ab4b78b42b94327f5ea31748702357bc25340e verdict=REFUSE class=Q1 arm_rc=1

Shadow mode: this records a verdict and merges nothing. A refusal
to arm is not a block (§13 adds zero rows to §7) — the pull request is
exactly as green as it was.

@noahgift

Copy link
Copy Markdown
Member Author

quorum-review (AD-04): three PASS — agreed (auto_merge: checked=true was_armed=false disarmed=false)

{
 "ticket": "PMAT-6185",
 "head": "d8ab4b78b42b94327f5ea31748702357bc25340e",
 "width": 3,
 "executor": "agy",
 "agreed": true,
 "auto_merge": {
  "checked": true,
  "was_armed": false,
  "disarmed": false,
  "note": "auto-merge not armed"
 },
 "lanes": [
  {
   "lane": 1,
   "verdict": "PASS",
   "findings": 4
  },
  {
   "lane": 2,
   "verdict": "PASS",
   "findings": 5
  },
  {
   "lane": 3,
   "verdict": "PASS",
   "findings": 0
  }
 ]
}

@noahgift

Copy link
Copy Markdown
Member Author

quorum-review (AD-04): three PASS — agreed (auto_merge: checked=true was_armed=false disarmed=false)

{
 "ticket": "PMAT-1955",
 "head": "d8ab4b78b42b94327f5ea31748702357bc25340e",
 "width": 3,
 "executor": "agy",
 "agreed": true,
 "auto_merge": {
  "checked": true,
  "was_armed": false,
  "disarmed": false,
  "note": "auto-merge not armed"
 },
 "lanes": [
  {
   "lane": 1,
   "verdict": "PASS",
   "findings": 5
  },
  {
   "lane": 2,
   "verdict": "PASS",
   "findings": 4
  },
  {
   "lane": 3,
   "verdict": "PASS",
   "findings": 0
  }
 ]
}

@noahgift

Copy link
Copy Markdown
Member Author

SEAT (1st seat, non-author, aprender-w5032) bound to d8ab4b7. patch-id 6195c3159c81c4f8a741c7037c5be9e105bb6054. Formal quorum PASS×3 (handoff/quorum-6250-d8ab4b78b4-PASS.json). pr-light run 40075685710 on intel-clean-room-16 attempt=1, with ci/gate, gate, workspace-test green at this head. Local on this head: check_roadmap_completion_is_cited.sh PASS and --self-test 41/41 (mutants path-waiver, drop-subset-test, no-live-requirement killed), check_comparator_pin_citations.sh PASS, check_roadmap_diff_additive.sh PASS (reserialised=0), fragment guard PASS. Frozen-base exemption is content-bound (base ids ⊆ roadmap.yaml ids), not a path waiver.

🤖 Generated with Claude Code

@noahgift noahgift left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

PASS d8ab4b7 (non-author 2nd seat, GATE). patch-id 6195c3159c81 d8ab4b7 (equals w5032's). Measured at this head: docs/roadmaps/roadmap-base.yaml is byte-identical (cmp) to roadmap.yaml at the merge-base and at origin/main dd6d507; the only edits to existing files are the PMAT-6185 notes in the fragment and its aggregate row; aggregate --check ok (397 fragments). check_comparator_pin_citations.sh --self-test 43/43 and the real run PASS; check_roadmap_completion_is_cited.sh --self-test PASS and the real run PASS (no new uncited completion). Read the two gate changes: R7 loosens R1 for the single pair roadmap.yaml -> roadmap-base.yaml only; the completion exemption is content-bound (the base is excluded only while roadmap.yaml is in scope and holds every base id), and its own rows show the base is judged when roadmap.yaml is removed or the base holds an extra id. Residual: the subset test compares ids, not status, so a live entry's status governs those ids; that is the stated design, and the base is held immutable by rule 3 of check_roadmap_fragment_required.sh. No waiver, no third state.

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