Repository navigation
Description
Parent #7589's done-when reads "The principle-parts script's output, attached to the placement slice, reports unplaced parts: 0"; this is that slice. Q177, which the owner accepted 2026-10-15 (poteto-review decision row 105), makes the script a one-off: it lists which decision-58 parts and standards no phase-skill step names, its output is attached to the issue, and there is no CI check. Per AGENTS.md, one-off tooling stays out of the repository. A host runs this because the script lives in the session's .work/ and the lane cannot keep it. It runs after slices S1 to S6 merge.
Counting rule. The Issue Triage session decided this under the owner's standing direction; it is not an owner decision. unplaced parts counts only parts with no phase-skill step naming them and no recorded disposition. Decision 58 marks some parts "gated: lands only with observed-stumble evidence or a with-and-without eval"; a gated part with no such evidence, and a part whose destination another open parent owns, is listed under deferred: with its reason and issue instead. The dispositions known when this slice was filed:
- deferred, gated by decision 58 with no evidence: 1c, 3h, 6h, 8j, 19d;
- deferred, gated per refactor(pstack): cut marginal sections from four skills cursor/plugins#634 (Q557): 24i;
- deferred to corrections: new plugin with /corrections:codify #7573, which owns the corrections plugin and
/corrections:gather: 4c, 4e, 4f; - recorded, not placed: 1b (decision 58 keeps the two-failed-fixes premise stop in
/debugging:debugonly); - recorded, placed in another form: 2h (the architecture conventions lens,
plugins/architecture/skills/improve/actions/conventions.md:20-25, architecture: boundaries and conventions lenses #7590 closed).
Done when
- A one-off script, kept uncommitted, reads origin/main at a named commit and checks each of the 36 decision-58 parts. For each part it prints:
- the part's ID;
- its disposition: placed with
file:line, recorded (with its reason), deferred (with its reason and issue), or unplaced; - each
docs/standards/file that no phase-skill step names.
- A comment on this issue gives:
- the commit read;
- the script's full output in a collapsed block;
- a
deferred:list naming each deferred part with its reason and issue; - a line
unplaced parts: <n>, where<n>counts only the unplaced parts under the counting rule above.
- When
<n>is not 0, the comment names each unplaced part and the slice or issue that will place it. - A PR records the conclusion and closes this issue: it adds, directly after the attribution table's principle rows in
docs/upstream/cursor-pstack.md(:92-102), a paragraph giving the commit read, thedeferred:list and theunplaced parts: <n>line, and commits no script.
Out of scope
- Committing the script or adding a CI check (Q177).
Parent: #7589
Metadata
Metadata
Assignees
Labels
Type
Fields
Work status
Activity
github-actions commentedon Nov 2, 2026
github-actions commentedon Nov 2, 2026
melodic-automation-lanes commentedon Nov 2, 2026
The work-resolve-issue lane stopped on this issue (
host-only): the run reports the work needs a host run the lane cannot make.It added
host-runand removedagent-ready: an agent run on a host builds it, and it waits on no decision from a person.In the run's words:
What the run says it did not do:
Run: https://github.com/melodic-software/claude-code-plugins/actions/runs/41385661960
To hand it back to the lane, remove
host-runand addagent-readyagain.github-actions commentedon Nov 2, 2026
Intake triage did not triage this issue after 2 dispatches, so the sweep no longer dispatches it and labeled it needs-triage for a maintainer. Triage it by hand, and read the runs for why intake did not:
github-actions commentedon Nov 2, 2026
Proposed work class: work-class: scoped
Basis: automated intake triage; the lanes App applied this class.
Size: Small
Complexity: Low
Uncertainty: Known
Flags: none
Blocked by: none
Understood: run a one-off, uncommitted principle-parts script against a named origin/main commit, post its output and the
unplaced parts: <n>count here, then open a PR adding a paragraph todocs/upstream/cursor-pstack.mdthat closes this issue. The script run needs a host session, so the lane cannot do it. The issue already sets out the counting rule, the known dispositions and the done-when. Nothing is missing. I found no duplicate among the open issues. The issue says the run comes after slices S1 to S6 merge.Automated triage, applied by the lanes App.
kyle-sexton commentedon Nov 2, 2026
kyle-sexton commentedon Nov 2, 2026
Principle-parts check: unplaced parts: 0
b000bb5ce748035feee0f12975a6f36abe125170.principles-map.md, 2026-10-14, sha2567fa6c0ad5730d53fa2959793cc5ea72165ceecf102cc7aefabe536bf578d63a0; a session-local poteto-review file, not in the repository).docs/contracts/{loop-lane,enforcement-ladder,type-discipline}; eval directories excluded. 13 placed citations were read back at the commit and each names its part.deferred:
1c (attack-the-premise): gated by decision 58, no stumble or eval evidence, issue: none (decision 58 gate)
3h (build-the-lever): gated by decision 58, no stumble or eval evidence, issue: none (decision 58 gate)
4c (encode-lessons-in-structure): corrections plugin and /corrections:gather own it, #7573
4e (encode-lessons-in-structure): corrections plugin and /corrections:codify own it, #7573
4f (encode-lessons-in-structure): corrections plugin and /corrections:gather own it, #7573
6h (experience-first): gated by decision 58, no stumble or eval evidence, issue: none (decision 58 gate)
8j (fix-root-causes): gated by decision 58, no stumble or eval evidence, issue: none (decision 58 gate)
19d (redesign-from-first-principles): gated by decision 58, no stumble or eval evidence, issue: none (decision 58 gate)
24i (type-system-discipline): gated per cursor/plugins#634 (Q557), issue: none (gated per cursor/plugins#634, Q557)
unplaced parts: 0
Notes:
plugins/developer-experience/skills/build-cli/reference/cli-contract.md:28), which no discipline: paved-path file and principle placement #7589 slice added. Not counting a contract row as a phase-skill step would move 12f todeferred:(gated, no evidence); the count stays 0.Script output