docs: close S-E round-4 fidelity watch-list W-5 (park-record contract) + W-10 (P2b withdrawal in the umbrella kickoff) - #1256
Merged
Conversation
added 2 commits
August 7, 2026 12:55
…te (W-5) Closes the arch-v2 S-E round-4 fidelity watch-list item W-5: a stage kickoff pairs a `## §2 Permitted files` allowlist with the §4c park-don't-guess contract, but no §2 revision enumerated an artefact where a fired PARK — or the propagation of its correction — could be recorded, so the S-E session edited both its own kickoff and the design spec, outside the allowlist. Verified across all 6 unique kickoff revisions: none lists `.claude/orchestrator-prompts/*` or `docs/superpowers/specs/*`. Resolution is REUSE, not new machinery. A fired PARK is recorded in the park payload (`manualReviewRequired` / `blocked_external` + `blockedReason`, `questions.ts:85-93`) and in the stage PR body's `## Parked questions` — already an acceptance-package section under spec D4, already stubbed at `.github/pull_request_template.md:53`, already routed by `.claude/skills/dispatcher/SKILL.md:280`. Propagating a PARK's *correction* into a spec, an ADR, or any kickoff is a separate owner commit on that artefact (precedent PR #1252 for specs; `kickoff-staging-placement.md §1` for kickoffs), never part of the stage PR. So §2 needs no new entry — it needs to say so. Encoded in `/pipeline` §5, which already owns the kickoff-side park precondition ("kickoff MUST carry §4c park-don't-guess", `.claude/skills/pipeline/SKILL.md:313`), with the canonical §2 clause for kickoff authors to copy and a new anti-pattern `#park-record-outside-the-allowlist` carrying its falsifier. There is no stage-kickoff template file in the repo (`Permitted files` appears in zero files outside `.claude/orchestrator-prompts/`), so the skill that states the kickoff contract is the encoding target; minting a template would fork a second source for ~20 already-authored kickoffs (`#sync-by-copy-paste`). Prior-art: skipped — doc-only convention statement inside an existing skill; reuses the PR-body and park-payload channels that already ship, no new capability
…E charter (W-10) Closes the arch-v2 S-E round-4 fidelity watch-list item W-10. The S-E charter row still listed "local-shadow pre-push check" as a live deliverable (kickoff:260) after P2b was withdrawn on 2026-08-07: the shipped client MERGES array settings (`project ∪ local`), so the superset assert is green-by-construction — `#hope-as-gate`. Evidence: `docs/meta-factory/research-patches/2026-08-06-claudemd-overlay-semantics-verdict.md` §3-§4; the spec's own four statement sites were struck through in the sibling owner commit #1252. Per spec §3 row P4 the umbrella kickoff is a planning-session-owned surface, closed by an umbrella bookkeeping commit rather than by the S-E stage PR (whose §2 permitted-files set names neither the kickoff nor the spec) — the same conformant shape #1252 used for the spec. Annotation mirrors that commit's style: strikethrough + dated WITHDRAWN + the do-not-rebuild pointer, and carries forward the unclaimed inverse hazard (a local file ADDING excludes to hide always-on rules), which no stage currently owns. Prior-art: skipped — doc-only umbrella-kickoff bookkeeping recording an already-made withdrawal; no new capability
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.
Summary
Closes the two loose ends left by the round-4 fidelity audit of PR #1237 (merged as
1cb8fc8641). Two atomic commits, both on planning-session-owned surfaces.W-5 — KICKOFF-AMBIGUOUS, decided and encoded. A stage kickoff pairs a
## §2 Permitted filesallowlist with the §3a/§4c park-don't-guess contract, but no §2 revision enumerated an artefact where a fired PARK — or the propagation of its correction — could be recorded, so the S-E session edited both its own kickoff and the design spec, outside the allowlist. Verified across all 6 unique kickoff revisions: none lists.claude/orchestrator-prompts/*ordocs/superpowers/specs/*.The decision is REUSE of channels that already ship, not new machinery:
manualReviewRequired/blocked_external+blockedReasonstating «Option A → consequence X / Option B → consequence Y»packages/core/../cli/questions.ts:85-93(detection)## Parked questionssection.github/pull_request_template.md:53; acceptance-package section per spec D4 (docs/superpowers/specs/2026-07-23-acceptance-contour-design.md:67); routed by.claude/skills/dispatcher/SKILL.md:280.claude/rules/kickoff-staging-placement.md:28So
## §2 Permitted filesneeds no new entry — it needs to say that recording a PARK is not a file write. Encoded in/pipeline§5 (.claude/skills/pipeline/SKILL.md:315), which already owns the kickoff-side park precondition, together with the canonical §2 clause for kickoff authors to copy and a new anti-pattern#park-record-outside-the-allowlistwith its falsifier.Honest note on the encoding target. There is no stage-kickoff template file in this repo —
Permitted filesappears in zero files outside.claude/orchestrator-prompts/(grep -rln "Permitted files" | grep -v orchestrator-prompts→ empty), and.claude/skills/pipeline/templates/holds onlymeta-kickoff.template.md+state.md.template. The §2/§3a shape propagates by copy between kickoffs. Minting a template now would fork a second source for ~20 already-authored kickoffs (#sync-by-copy-paste), so the skill that already states the kickoff contract is the encoding target.W-10 — umbrella bookkeeping.
.claude/orchestrator-prompts/arch-v2-context-pipeline/kickoff.md:260still listed the withdrawn P2b deliverable ("local-shadow pre-push check"). Annotated with the same strikethrough + dated-WITHDRAWN + do-not-rebuild shape the sibling spec-owner commit #1252 used, and carrying forward the unclaimed inverse hazard (a local file adding excludes to hide always-on rules). Per spec §3 row P4 this is a planning-session-owned surface closed by an umbrella bookkeeping commit, not by S-E.Provenance
n/a — not a stage PR. No kickoff governs this change and nothing was factory-dispatched; it is a planning-session change on two planning-session-owned surfaces. Base
origin/staging3df8fb07d1; inputs are the PR #1237 round-4 fidelity watch-list items W-5 and W-10.Review findings
Own cold-QA pass over the branch diff (T19), no sub-agent dispatched (none requested). Verification run on this host:
npx vitest run packages/core/principles→ 37 files, 352 passed | 1 skipped.make self-audit→ green; link-check 96 OK / 0 errors; always-on 48671 B within ceiling 54000 B.bash scripts/run-local-ci-sweep.sh→ 3 gates passed (md-ci-only,format-check,byte-identical).gh pr list --state open→ no PR touches either file; aif queue → no in-flight task on this umbrella.Fidelity verdict
FIDELITY: skipped — not a stage PR: no kickoff governs this change, so no Basis artefact exists for agents/fidelity-auditor.md to audit the diff against
Parked questions
none — no fork fired while authoring. (Dogfood note: this PR is itself the conformant shape the W-5 decision prescribes — the umbrella-kickoff correction rides a separate owner commit rather than a stage PR.)
§1.7 Self-discipline check (REQUIRED if PR touches discipline-bearing files)
§1.7 Forward-check applied
.claude/rules/build-first-reuse-default.md:1— verdict REUSE, not BUILD: both record channels already ship (.github/pull_request_template.md:53,.claude/skills/dispatcher/SKILL.md:280). No new artefact, no dependency, no module → not a capability commit perCLAUDE.md«What is a capability commit?»; both commits carry thePrior-art: skipped — …hatch with ≥20-char rationale..claude/rules/rule-enforcement-channel-selection.md:31— detectability axis: «did the author state the park-record clause in §2» is judgment at authoring time, so the delivery is prose in the skill that authors kickoffs, not a gate (#gate-where-judgment-needed). The mechanically-checkable half is captured as the anti-pattern's falsifier for review time..claude/rules/attention-is-not-a-mechanism.md:26— honest scope: this closes the ambiguity (§2 said nothing), not the detection (nothing blocks a stage session that edits outside its allowlist). Stated as a falsifier rather than claimed as a gate..claude/rules/no-paid-llm-in-ci.md— zero CI mechanism added, zero API-billed calls..claude/rules/doc-authority-hierarchy.md:21—.claude/skills/pipeline/SKILL.md:21already declares «§0 invocation through §11 failures»; the new §5 prose falls inside it, so no header amendment. Kickoffs stay tracked-but-header-exempt per that rule's §2..claude/rules/language-discipline.md:9— both edits are repo artefacts, authored in English..claude/rules/kickoff-staging-placement.md:28— the umbrella-kickoff edit rides its own staging PR before any further dispatch, which is the rule's binding sequence.§1.7 Backward-check applied
Class of this change = statements of the stage-kickoff §2/park contract, and statements of the withdrawn P2b deliverable. Enumerated by
grep -rn "Parked questions"andgrep -rn "P2b\|local-shadow"over the tracked tree (worktrees excluded):.claude/skills/dispatcher/SKILL.md:280— SWEPT-CLEAN. Already names the## Parked questionsPR channel; the new clause points at it rather than re-describing it, so no#two-prompts-drift..github/pull_request_template.md:53— SWEPT-CLEAN. The section stub already exists; no edit needed, which is what makes this REUSE rather than BUILD..claude/skills/arch/SKILL.md:101— SWEPT-CLEAN. The factory-bound row already routes umbrellas to/pipeline; adding a duplicate clause there would be#sync-by-copy-paste..claude/rules/kickoff-staging-placement.md:32— SWEPT-CLEAN. Samepaths:scope, orthogonal concern (merge timing, not §2 content); cited as the kickoff-correction route, not amended.docs/superpowers/specs/2026-08-06-pipeline-token-economy-design.md— SWEPT-CLEAN, no edit. All four P2b statement sites were struck through by the sibling owner commit spec(token-economy): P2b withdrawal recorded at every statement site (owner commit per S-E fidelity r4 W-9) #1252; re-touching them here would duplicate that commit..claude/orchestrator-prompts/arch-v2-context-pipeline-s-e/kickoff.md:55,60,122,124— GAP-FOUND, deliberately NOT actioned. It still carries P2b as a live deliverable and the overturned replace-per-key overlay model. S-E has merged (PR arch-v2 S-E: L1 budget gate + config-assertion asserts + InstructionsLoaded verification (fidelity GO — round 4) #1237), and.claude/orchestrator-prompts/README.mddeclares prompts append-only audit-trail artefacts («do not edit after the umbrella PR is open»). Retro-editing a closed dispatch input would rewrite the record the fidelity audit was run against. Surfaced, not silently swept.CLAUDE.mdPR strategy).Self-application (T15). The decision is dogfooded by this PR: the umbrella-kickoff correction is a separate owner commit rather than a stage-PR rider, and
## Parked questionsabove is filled for real. The W-5 clause was derived by reading the shipped channels (questions.ts, the PR template,dispatcher/SKILL.md, spec D4) rather than from recall —source-before-shape.md:1reuse surface.