Repository navigation
Description
Parent
Refs #7555. Source: PLAN Phase 21, topic poteto-review. Thread: discipline and principles.
Depends on
- config-cascade: settings resolution and convention home #7571 Settings resolution and convention home
- marketplace: pstack recheck and listing budget #7588 This marketplace (pstack recheck before placing re-mapped principle parts)
Outcome
/discipline:reuse-or-replace owns the paved-path file that plan, implement and review read; pstack's
principles live as reasoned sentences in the phase-skill steps that apply them, with no principles
plugin.
Decisions
/discipline:reuse-or-replaceowns the paved-path file; plan, implement and review read it
automatically (D59, Q21). Origin: ours.- lever-check gains a codemod-first migration row;
lever_scopedefault stays deterministic (Q15,
Q28). - pstack's 24 principles: 36 parts placed as reasoned sentences in the phase-skill step that applies
them, fallback when discipline is off; no standalone principle skills, no principles plugin;
disciplines plus the standards README are the index (D58, Q174, Q175). Origin: Lauren's
principles, placed by ours. /discipline:wait-whatbody shortened only if an eval shows equal or better (Q542).- K39 acceptance eval: a non-engineer's one-line ticket yields paved-path code (D59, Q29).
- Rejected: the architecture lens owning paved-path entries; standalone principle skills; Lauren's
load-each-principle-and-name-it (needs the parked citation rule, Q178); sharpen as a playbook
chapter. - Research tags: K39 eval and dogfood run (Q29); wait-what cut with and without eval (Q542); pstack
recheck re-maps pstack: restate four overspecified principles as reasoning, not rules cursor/plugins#633 principles (Q557).
Key interfaces
From the design's module layout: "discipline: /discipline:reuse-or-replace owns the paved-path
file; lever-check gains a codemod-first row; pstack principles placed in phase skills, no principles
plugin. sharpen deferred."
Slices, filed when this phase starts: paved-path-and-lever-check, principle-placement,
k39-and-wait-what-evals.
Done when
- The principle-parts script's output, attached to the placement slice, reports
unplaced parts: 0. - The K39 and wait-what eval slices each carry a
Probe result:comment. - Every slice sub-issue is closed by a merged PR.
Out of scope
- The
sharpenskill and the name-the-principle rule (parked items).
Remainder (2026-11-03)
Agent choice, not an owner answer. The principle-parts check on #12155 deferred parts 4c, 4e and 4f of principle-encode-lessons-in-structure to #7573 and /corrections:gather, but #7573's body never names them, and #9161 folded gather into /corrections:codify's note and group actions without placing them. No other issue owns them, so they stay with this issue, whose done-when counts parts, and a deferral to an issue that does not own them is not a placement. Today the count threshold (default 2, plugins/corrections/skills/codify/SKILL.md:52-63) and the group action's hand-off to codify (plugins/corrections/skills/codify/actions/group.md:50-54) do the mechanics, but no step gives the reason in a sentence. Upstream later cut these three parts from the skill (cursor/plugins#571); the quotes below are from the version decision 58 mapped (cursor/plugins at 00b14f1df3), so this issue needs nothing outside the repository.
- Part 4c ("When you catch yourself writing the same instruction a second time") is a reasoned sentence in
plugins/corrections/skills/codify/actions/note.md, Consent section: an agent that writes the same instruction or correction a second time appends a note, because a second occurrence shows a prose rule did not hold. - Part 4e ("decide if it's a one-off or a pattern. Route it ... Close the loop: don't just record; apply now or create a concrete todo") is a reasoned sentence in
plugins/corrections/skills/codify/SKILL.md, section 3 (Place the lesson by scope): a one-off stays anoterow, a recurring mistake gets a check, a mistake that holds for every repository becomes a team standard, and recording a lesson is not the end: it ends in a proposed check, a placed rule or a filed work item, because a lesson that is only recorded is not acted on. Codify still proposes and never builds a rung. - Part 4f ("Acknowledging without recording", "Recording without routing") is a reasoned sentence in
plugins/corrections/skills/codify/actions/note.md, opening paragraph: a correction the agent only acknowledges is lost when the session ends, and a note thatgroupnever routes to/corrections:codifychanges nothing. -
docs/upstream/cursor-pstack.md's principle-parts check lists 4c, 4e and 4f as placed, with their homes, and no longer names corrections: new plugin with /corrections:codify #7573 as their owner.
Metadata
Metadata
Assignees
Labels
Type
Fields
Work status
Activity
github-actions commentedon Oct 16, 2026
Proposed work class: none
Size: Large
Complexity: Medium
Uncertainty: Knowable
Flags: none
Blocked by: none
Understood: this is a tracking issue under #7555.
/discipline:reuse-or-replacewould own the paved-path file that plan, implement and review read. pstack's 24 principles (36 parts) would be placed as reasoned sentences in the phase-skill steps that apply them. lever-check would gain a codemod-first row.The intent and decisions are already written out, so I have no open questions. The work spans three slices (paved-path-and-lever-check, principle-placement, k39-and-wait-what-evals), so it needs splitting. It also depends on #7571 and #7588. Neither appears in the open-issue list I was given, so I could not confirm whether they are still open. No likely duplicates found.
Automated triage. A maintainer reviews it.
12 remaining items
github-actions commentedon Nov 3, 2026
melodic-automation-lanes commentedon Nov 3, 2026
The work-resolve-issue lane stopped on this issue (
split-required): the issue's Size is too large for one run, and intake's split (owner Q93) files its sub-issues.Its Size is too large for one run: intake splits it into sub-issues (owner Q93).
It removed
agent-readyandstatus: ready, so the hourly triage sweep sends it back through intake triage, and it waits on no decision from a person.Run: https://github.com/melodic-software/claude-code-plugins/actions/runs/41575103967