Skip to content

plan-feature: lift citation pre-flight, surface gate, hypothesis interview, dual-reviewer Phase 5 - #37

Merged
jasperboerhof merged 3 commits into
mainfrom
lift/plan-feature
Sep 2, 2026
Merged

jasperboerhof merged 3 commits into
mainfrom
lift/plan-feature

Conversation

@jasperboerhof

Copy link
Copy Markdown
Contributor

Why

Re-sync plan-feature with kendo's .claude/skills/plan-feature as of 2026-08-27 (catalog-resync plan, row plan-feature). PRs #4/#5 lifted the older version with references/; this PR lifts everything added since.

What

  • Phase 1.4 pre-flight verification: ships scripts/verify-citations.sh and scripts/verify-citations.test.sh (executable). The test suite builds its own fixture repo in a temp dir, so it passes in any consumer (32 assertions, green).
  • Phase 1.6 Security & Cost Surface gate: new references/surface-questions.md, shared with the surface-reviewer agent. quality-gates.md becomes three gates.
  • PLAN.md template: new ## Planning Evidence, ## Sweep Inventory, ## Security & Cost Surface (six sub-rows); red-case lines in Testing Strategy; Site Docs Sync becomes an Update/N-A row table with a docs-mirror row.
  • Phase 2 rewritten as interview-with-hypotheses: dependency-ordered, self-serve before asking, lead with a stance, live glossary check.
  • Phase 5 spawns plan-reviewer + surface-reviewer in parallel (single message), then hands off to /wireframe. The inline 5b/5c wireframe steps are removed.
  • module-shape-lens.md: shallow-detection test, mandatory reckoning column, calibration evidence.
  • anti-patterns.md: "presenting your recommendation as settled" supersedes "leading questions"; citation-calibration section.
  • Phase 4d gains rows for Planning Evidence, Sweep Inventory, Surface, and hedge parentheticals.

Generalised

  • Root CONTEXT.md glossary read: "if the repo has a CONTEXT.md glossary at root, read it".
  • deptrac.yaml / tests/Arch/*.php / domain-structure.spec.ts lists: kept the catalog's "the repo's architecture rules" wording.
  • Issue keys in calibration stories (KD-0789, KD-1088, KD-1182, KD-1149, KD-1077, KD-1052, KD-0362, KD-0489, KD-0650) became "a past plan" / "the calibration plan"; kendo paths (Backlog.vue:560, GithubAppService, IssueWatcher) became neutral descriptions or <Vendor> placeholders.
  • ADR-0021 / phpstan-warroom-rules became "the repo's standing rule for convention enforcement"; L2 is "static-analysis rule".
  • PromptInjectionGuard::FRAMEWORK_TAGS, Stripe, Nightwatch: described by role (prompt-injection guard's framework-tag constant, billing provider, operator log).
  • site/public/llms-full.txt: "an LLM-facing text export of the docs, if the repo ships one".
  • Script: search roots and path prefixes configurable via CITATION_SEARCH_ROOTS / CITATION_PATH_PREFIXES, whole-repo fallback with prose/vendor exclusions.
  • acceptance-reviewer dropped from the PLAN.md consumer list; precedent-reviewer and surface-reviewer added.

Out of scope

  • references/plan-directory.md (kendo's docs/bugs/ root) belongs to the review-branch row.
  • references/decisions-template.md: placeholder-only difference, no drift.
  • Phase 0 issue lookup keeps the catalog's kendo://issues/{key} read plus the key-vs-ID warning.
  • README.md untouched.

Test plan

  • bash skills/plan-feature/scripts/verify-citations.test.sh — OK: all 32 assertions passed
  • grep -rn -i 'kendo\|KD-[0-9]\|CRIT-\|script\.nl\|warroom\|war room\|phpstan\|knip' skills/plan-feature — only pre-existing product/MCP-tool names (kendo://, mcp__kendo__*, "Kendo board") and untouched plan-directory.md examples
  • grep -rn 'acceptance-reviewer\|simplicity-reviewer\|silent-failure-hunter\|efficiency-hunter\|task-alignment-reviewer' skills/plan-feature — empty
  • Every references/ link in SKILL.md resolves

🤖 Generated with Claude Code

https://claude.ai/code/session_01UX7YHkAamvBe8Hh66f95b7

jasperboerhof and others added 3 commits September 2, 2026 19:38
Lifted from kendo .claude/skills/plan-feature/scripts (2026-07-28). The
resolver is unchanged in behaviour; the test suite now builds its own
fixture repository in a temp directory instead of resolving against the
host repo, so it passes in any consumer.

Generalised: path prefixes and symbol search roots are configurable via
CITATION_PATH_PREFIXES / CITATION_SEARCH_ROOTS, with a whole-repo fallback
(prose and vendor trees excluded) when no conventional source tree exists.
Issue-key references in the comments became "the calibration plan".

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UX7YHkAamvBe8Hh66f95b7
Lifted from kendo (2026-08-27): references/surface-questions.md is new;
quality-gates.md gains the Phase 1.6 security gate, its sycophancy guards,
and the Planning Evidence persistence rule.

Generalised: worked examples use neutral record/widget names; the
prompt-injection guard, billing provider, operator log and static-analysis
rule package are described by role, not by product; the escalation ladder
cites "the repo's standing rule for convention enforcement" instead of an
ADR number.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UX7YHkAamvBe8Hh66f95b7
…viewer Phase 5

Lifted from kendo .claude/skills/plan-feature (2026-08-27):
- Phase 1.4 pre-flight citation verification via scripts/verify-citations.sh
- Phase 1.6 Security & Cost Surface gate
- Phase 2 rewritten as interview-with-hypotheses (dependency order,
  self-serve before asking, live glossary check)
- Phase 4d rows for Planning Evidence, Sweep Inventory, Surface, red cases,
  hedge parentheticals
- Phase 5 spawns plan-reviewer + surface-reviewer in parallel, then hands
  off to /wireframe; the inline 5b/5c wireframe steps are gone
- plan-template.md: Planning Evidence, Sweep Inventory, Security & Cost
  Surface sections, red-case test lines, docs-mirror row
- module-shape-lens.md: shallow-detection test, reckoning column
- anti-patterns.md: settled-recommendation rule, citation calibration

Generalised: the root CONTEXT.md glossary read is conditional on the file
existing; arch-test file names became "the repo's architecture rules";
calibration stories drop issue keys and product paths; the docs mirror is
"an LLM-facing text export, if the repo ships one"; acceptance-reviewer is
no longer cited as a PLAN.md consumer.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UX7YHkAamvBe8Hh66f95b7
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Agent Review Requested Ask an agent to review this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant