@oevery/rsp 2.0.4 → 3.1.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +195 -62
- package/README.zh-CN.md +177 -60
- package/bin/rsp.mjs +2 -2
- package/dist/chunk-QLXIDVKK.mjs +2618 -0
- package/dist/cli.mjs +1997 -1355
- package/dist/entry-LAPR3TNI.mjs +966 -0
- package/dist/locale-HT44UIUP.mjs +21 -0
- package/package.json +14 -4
- package/rules/rsp-rules.md +63 -91
- package/skills/rsp/SKILL.md +149 -60
- package/skills/rsp-address-review/SKILL.md +61 -0
- package/skills/rsp-design/SKILL.md +48 -0
- package/skills/rsp-design/references/domain-modeling.md +11 -0
- package/skills/rsp-design/references/module-seams.md +11 -0
- package/skills/rsp-design/references/reversible-exploration.md +19 -0
- package/skills/rsp-diagnose/SKILL.md +46 -0
- package/skills/rsp-implement/NOTICE.md +27 -0
- package/skills/rsp-implement/SKILL.md +52 -0
- package/skills/rsp-manage/SKILL.md +55 -0
- package/skills/rsp-release-docs/SKILL.md +167 -0
- package/skills/rsp-release-docs/references/convention-discovery.md +65 -0
- package/skills/rsp-release-docs/references/output-contracts.md +115 -0
- package/skills/rsp-review/SKILL.md +98 -0
- package/skills/rsp-shape/SKILL.md +65 -0
- package/skills/rsp-shape/references/complex-shaping.md +30 -0
- package/skills/rsp-shape/references/deep-clarification.md +29 -0
- package/skills/rsp-tdd/SKILL.md +48 -0
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
# Output contracts
|
|
2
|
+
|
|
3
|
+
Use these as fallbacks. Preserve an established repository format whenever it exists.
|
|
4
|
+
|
|
5
|
+
The generic baseline is Keep a Changelog 1.1.0 for cumulative structure and Semantic Versioning 2.0.0 for version meaning. Treat Conventional Commits, forge-generated notes, and label-based categorization as evidence inventories rather than finished prose.
|
|
6
|
+
|
|
7
|
+
## Release evidence ledger
|
|
8
|
+
|
|
9
|
+
Maintain a temporary table or equivalent structured notes:
|
|
10
|
+
|
|
11
|
+
| Evidence | Net outcome | Audience | Risk/action | Changelog | Release notes | Reference | Exclusion/uncertainty |
|
|
12
|
+
| --- | --- | --- | --- | --- | --- | --- | --- |
|
|
13
|
+
| PR, issue, Change, commits, diff, docs, verification | What users receive | Users, developers, operators, maintainers | Breaking, migration, security, compatibility, none | Section or omit | Section or omit | PR, issue, work item, commit, compare | Reason or owner decision |
|
|
14
|
+
|
|
15
|
+
The ledger is an analysis device, not a new project state store. Persist it only when the repository already owns release fragments or the user authorizes a destination.
|
|
16
|
+
|
|
17
|
+
## Default changelog shape
|
|
18
|
+
|
|
19
|
+
```markdown
|
|
20
|
+
# Changelog
|
|
21
|
+
|
|
22
|
+
## [Unreleased]
|
|
23
|
+
|
|
24
|
+
## [3.0.0] - YYYY-MM-DD
|
|
25
|
+
|
|
26
|
+
### Added
|
|
27
|
+
|
|
28
|
+
- Add a user-visible capability. ([#123])
|
|
29
|
+
|
|
30
|
+
### Changed
|
|
31
|
+
|
|
32
|
+
- **Breaking:** Change an existing contract. See the [migration guide].
|
|
33
|
+
|
|
34
|
+
### Fixed
|
|
35
|
+
|
|
36
|
+
- Prevent an observable failure in a supported workflow. ([abc1234])
|
|
37
|
+
|
|
38
|
+
[Unreleased]: https://github.com/OWNER/REPO/compare/v3.0.0...HEAD
|
|
39
|
+
[3.0.0]: https://github.com/OWNER/REPO/compare/v2.0.0...v3.0.0
|
|
40
|
+
[#123]: https://github.com/OWNER/REPO/pull/123
|
|
41
|
+
[abc1234]: https://github.com/OWNER/REPO/commit/abc1234...
|
|
42
|
+
[migration guide]: https://example.com/migration
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Use Added, Changed, Deprecated, Removed, Fixed, and Security as fallback categories. Omit empty categories. Do not add an Unreleased section when the established project intentionally does not use one.
|
|
46
|
+
|
|
47
|
+
## Default release-note shape
|
|
48
|
+
|
|
49
|
+
```markdown
|
|
50
|
+
# Version 3.0.0
|
|
51
|
+
|
|
52
|
+
One short paragraph explaining the release's purpose and who benefits.
|
|
53
|
+
|
|
54
|
+
## Highlights
|
|
55
|
+
|
|
56
|
+
- Outcome and benefit, grouped by capability rather than commit.
|
|
57
|
+
|
|
58
|
+
## Breaking changes and migration
|
|
59
|
+
|
|
60
|
+
- Who is affected, what action is required, and where to find the full guide.
|
|
61
|
+
|
|
62
|
+
## Other changes
|
|
63
|
+
|
|
64
|
+
- Notable improvements and fixes that matter to this audience.
|
|
65
|
+
|
|
66
|
+
## Compatibility and known limitations
|
|
67
|
+
|
|
68
|
+
- Supported environments, verified coverage, and explicit non-claims.
|
|
69
|
+
|
|
70
|
+
**Full changelog:** https://github.com/OWNER/REPO/compare/v2.0.0...v3.0.0
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Omit inapplicable sections. Prefer three to seven scannable themes for a typical release; group small visible fixes without hiding high-impact items. Include contributors when the established release surface values attribution.
|
|
74
|
+
|
|
75
|
+
## Migration contract
|
|
76
|
+
|
|
77
|
+
For each required action, answer:
|
|
78
|
+
|
|
79
|
+
1. Who is affected?
|
|
80
|
+
2. What old behavior or surface changes?
|
|
81
|
+
3. What must they do, in what order?
|
|
82
|
+
4. What compatibility window or deadline applies?
|
|
83
|
+
5. How can they verify success?
|
|
84
|
+
6. What rollback, recovery, or support path exists?
|
|
85
|
+
|
|
86
|
+
Keep a short summary in release notes and link a dedicated guide when the procedure is long, conditional, or operationally risky.
|
|
87
|
+
|
|
88
|
+
## Reference rules
|
|
89
|
+
|
|
90
|
+
- Add one compare or tag link for the release range when the forge supports it.
|
|
91
|
+
- Prefer PR links for reviewable implementation context.
|
|
92
|
+
- Prefer issue or tracked-work links for rationale and migration context.
|
|
93
|
+
- Prefer commit links for exact fixes, backports, audit provenance, projects without PRs, or explicit user policy.
|
|
94
|
+
- Keep references optional per bullet; a link must earn its visual cost.
|
|
95
|
+
|
|
96
|
+
## Net-release examples
|
|
97
|
+
|
|
98
|
+
- Five commits build one new capability: write one outcome.
|
|
99
|
+
- A feature is added and reverted before release: omit it.
|
|
100
|
+
- A bug is found and fixed before users receive the new feature: fold the final behavior into the feature item.
|
|
101
|
+
- An internal refactor changes no public, packaging, security, or operator behavior: exclude it and record the reason in the coverage audit.
|
|
102
|
+
- A dependency update changes the minimum runtime or bundled behavior: include the observable compatibility impact, not the dependency housekeeping.
|
|
103
|
+
|
|
104
|
+
## Integrity gate
|
|
105
|
+
|
|
106
|
+
Before finalizing, require:
|
|
107
|
+
|
|
108
|
+
- complete range coverage with explicit exclusions;
|
|
109
|
+
- traceable claims and no inferred readiness;
|
|
110
|
+
- archived verification labeled as historical, with a fresh finalization gate when the release range has advanced;
|
|
111
|
+
- matching versions, dates, tags, and links;
|
|
112
|
+
- visible breaking and migration action;
|
|
113
|
+
- no leaked private identifiers or secrets;
|
|
114
|
+
- no external publication implied by a draft;
|
|
115
|
+
- a diff limited to authorized release artifacts.
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: rsp-review
|
|
3
|
+
description: Review an RSP-tracked code, document, or mixed change against a fixed comparison scope and project authorities. Use for read-only findings before fixes, durable review, archive, or delivery; keep Code and Document states separate and never implement, commit, publish, or approve.
|
|
4
|
+
license: MIT
|
|
5
|
+
metadata:
|
|
6
|
+
author: oevery
|
|
7
|
+
version: "2026.07.22.3"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# RSP Review
|
|
11
|
+
|
|
12
|
+
Review one fixed change scope without modifying it. Be concise, separate Code and Document judgment, and emit one deduplicated report.
|
|
13
|
+
|
|
14
|
+
## Fix scope and authority
|
|
15
|
+
|
|
16
|
+
Resolve before judging:
|
|
17
|
+
|
|
18
|
+
- one immutable comparison point or explicit fixed file set;
|
|
19
|
+
- reviewed files, including relevant untracked files named by the user;
|
|
20
|
+
- the selected Change and, for grouped work, its Group Brief;
|
|
21
|
+
- nearest project instructions and only relevant Specs and Decision Records;
|
|
22
|
+
- any caller-supplied implementation summary.
|
|
23
|
+
|
|
24
|
+
Do not switch branches or mutate the worktree to discover scope. If the comparison point is unavailable, report the review as blocked. If multiple focus markers or authorities select different intent, name the conflict, mark dependent pipelines blocked, and do not guess. Continue only pipelines whose inputs remain authoritative.
|
|
25
|
+
|
|
26
|
+
The user request fixes the requested outcome and allowed operations subject to nearest project instructions. The selected Change defines the intended delta, Specs define stable current facts, and Decision Records define lasting rationale. Implementation and tests are evidence, not authority for missing requirements. Report missing authority instead of inventing a rule, acceptance criterion, or preference.
|
|
27
|
+
|
|
28
|
+
## Classify the scope
|
|
29
|
+
|
|
30
|
+
- **Code:** executable code, tests, configuration, scripts, schemas, executable prompts, Skills, commands, hooks, and workflows.
|
|
31
|
+
- **Document:** requirements, plans, Changes, Specs, Decision Records, ADRs, explanatory documentation, and user-facing documentation.
|
|
32
|
+
|
|
33
|
+
Determine applicability only from artifacts inside the fixed comparison scope. A Change, Spec, instruction, implementation file, or test read only as authority or evidence is not thereby a reviewed artifact. Run each applicable pipeline; return `skipped` for a pipeline with no reviewed artifacts even when authority of that kind was inspected, and never return `clean` for authority-only documents. When such authority is missing, ambiguous, or conflicting, record it in Review Scope, Coverage, and Verdict; do not emit a Finding owned by a skipped pipeline. An executable document may need both; merge evidence for the same underlying issue into one cross-artifact finding.
|
|
34
|
+
|
|
35
|
+
Inspect in a bounded order: fixed status/diff, selected authority, then only the smallest direct behavior chain and tests needed to resolve a concrete question. Stop when every applicable pipeline can be judged. Do not search unrelated files or broaden authority merely to fill Coverage or Findings.
|
|
36
|
+
|
|
37
|
+
## Review Code
|
|
38
|
+
|
|
39
|
+
Check in this order:
|
|
40
|
+
|
|
41
|
+
1. Safety and correctness: reachable bugs, data loss, security violations, invalid state transitions, broken contracts, unsafe failures, and regressions.
|
|
42
|
+
2. Change and Spec fidelity: observable behavior against explicit intent and stable facts.
|
|
43
|
+
3. Project standards: only rules established by nearest instructions or authoritative local conventions.
|
|
44
|
+
4. Production reachability — hard gate before completing a seam-dependent Finding: when a Finding or suggested correction depends on an adapter, wrapper, validator, normalizer, or similar seam, name the direct production caller, compare its actual callee with that seam, and verify that the changed production consumer actually reaches that seam. Put the comparison in Evidence or Coverage. If the live path bypasses the seam, report the bypass and do not present an isolated seam fix as sufficient.
|
|
45
|
+
5. Regression evidence — hard gate before `clean`: for every changed Code artifact, compare public return and failure behavior at the comparison point with the reviewed diff. Changing failure delivery between throw/rejection, sentinel values, `null`, status codes, or result objects is always a failure-contract change, even when implementation matches the selected Change. Without a focused test or other explicit verification evidence, emit a Finding and return `issues_found`. Absence of a new test is not actionable by itself: apply the simple deterministic-correction exception when the public behavior shape is preserved and no risky branch, state transition, concurrency, persistence, security behavior, or failure delivery changes, even though the corrected value differs. The exception never applies to a failure-contract change.
|
|
46
|
+
6. Simplicity: unnecessary abstraction, duplication, indirection, dependency, or scope expansion with a concrete smaller alternative; never trade away required behavior.
|
|
47
|
+
|
|
48
|
+
Anchor each Finding to changed lines or the smallest behavior chain. State a realistic trigger and impact. Do not report formatting, naming, generated output, taste, or hypothetical cleanup without authority or demonstrated downside.
|
|
49
|
+
|
|
50
|
+
## Review Documents
|
|
51
|
+
|
|
52
|
+
Classify each document by its semantic role: requirement/Change, implementation plan, Spec, Decision Record/ADR, or explanatory/user documentation. Then check:
|
|
53
|
+
|
|
54
|
+
1. Authority and traceability of claims and decisions.
|
|
55
|
+
2. Internal and cross-artifact coherence, including current implementation facts.
|
|
56
|
+
3. Completeness and ambiguity: undefined terms, unverifiable completion, and choices disguised as decisions. Report an unresolved product, operational, rollback, migration, or completion choice as an ambiguity Finding when no authority resolves it; ask for owner judgment and mark a dependent result blocked only when the choice prevents coherent review.
|
|
57
|
+
4. Feasibility of named paths, interfaces, sequencing, safety, migration, and executable verification, at the detail appropriate to the document role.
|
|
58
|
+
5. Scope and concision: scope leakage, duplicate authority, unrelated requirements, or verbosity hiding a contract.
|
|
59
|
+
|
|
60
|
+
Before the Document verdict, enumerate every unresolved choice in each changed document. Any unresolved product, operational, rollback, migration, ownership, or completion choice must either have resolving authority or produce an ambiguity Finding; do not stop after finding other defects.
|
|
61
|
+
|
|
62
|
+
Anchor Findings to the smallest heading or claim. Do not apply code-style or test-coverage rules to semantic documents, auto-fix meaning, or rewrite prose for taste.
|
|
63
|
+
|
|
64
|
+
## Report
|
|
65
|
+
|
|
66
|
+
Render headings, field labels, explanations, and verdict prose in the language explicitly requested by the user; otherwise follow nearest project instructions, then the conversation language. Treat the shape below as semantic field order rather than fixed English wording: translate its human-facing labels when the output language differs. Preserve paths, commands, identifiers, WorkRefs, severity labels `P0`-`P3`, and the values `issues_found`, `clean`, `skipped`, and `blocked` unchanged.
|
|
67
|
+
|
|
68
|
+
Use this shape:
|
|
69
|
+
|
|
70
|
+
```md
|
|
71
|
+
## <localized Review Scope heading>
|
|
72
|
+
- <localized Comparison label>: <fixed ref, range, or file set>
|
|
73
|
+
- <localized Intent label>: <authorities, missing, or ambiguous>
|
|
74
|
+
- <localized Code label>: <issues_found | clean | skipped | blocked>
|
|
75
|
+
- <localized Document label>: <issues_found | clean | skipped | blocked>
|
|
76
|
+
- <localized Excluded label>: <paths and reasons, or none>
|
|
77
|
+
|
|
78
|
+
## <localized Findings heading>
|
|
79
|
+
### [P0-P3] <title>
|
|
80
|
+
- <localized Artifact kind label>: <code | document | cross-artifact>
|
|
81
|
+
- <localized Axis label>: <pipeline axis>
|
|
82
|
+
- <localized Location label>: <path:line or precise section>
|
|
83
|
+
- <localized Authority label>: <authority or observed invariant>
|
|
84
|
+
- <localized Evidence label>: <conflicting behavior or text>
|
|
85
|
+
- <localized Impact label>: <real consequence>
|
|
86
|
+
- <localized Suggested action label>: <smallest correction; no edit>
|
|
87
|
+
- <localized Confidence label>: <high | medium | low>
|
|
88
|
+
|
|
89
|
+
## <localized Coverage heading>
|
|
90
|
+
- <checked and unverified scope, including non-actionable missing coverage>
|
|
91
|
+
|
|
92
|
+
## <localized Verdict heading>
|
|
93
|
+
<blocked | findings | clean, with the smallest next action>
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
Omit Finding entries when none exist. `clean` means an applicable pipeline was reviewed with no actionable issue; `skipped` means no applicable artifacts; `blocked` means required scope or authority was unavailable. Deduplicate one underlying issue across pipelines, then order by severity and path. Use P0 for critical security/data/breakage, P1 for normal-path contract failure, P2 for a meaningful edge or maintenance risk, and P3 only for narrow actionable improvement.
|
|
97
|
+
|
|
98
|
+
Return a report only. Do not edit files, apply fixes, change focus, create RSP artifacts, switch branches, stage, commit, push, open a PR, publish, delete, trigger external review, or approve. Later actions require separate explicit authority.
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: rsp-shape
|
|
3
|
+
description: Shape or rigorously challenge unclear non-trivial work into one executable RSP Change or a justified shallow Change Group without implementing it.
|
|
4
|
+
license: MIT
|
|
5
|
+
metadata:
|
|
6
|
+
author: oevery
|
|
7
|
+
version: "2026.07.24.1"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# RSP Shape
|
|
11
|
+
|
|
12
|
+
Do not implement the shaped work.
|
|
13
|
+
|
|
14
|
+
Follow Core's response-versus-artifact language boundary.
|
|
15
|
+
|
|
16
|
+
## Establish the boundary
|
|
17
|
+
|
|
18
|
+
Read the request, authority, Core or fallback, Change and Brief, then only decisive evidence.
|
|
19
|
+
|
|
20
|
+
A request to shape, create, or refine a Change grants artifact authority unless no-edit; advice does not. If creation focuses it, preserve the exact prior focus and restore it immediately unless selection was requested. Shaping grants no other authority to focus, implement, archive, edit durable truth, or mutate Git; preserve unrelated work.
|
|
21
|
+
|
|
22
|
+
Return the request directly to implementation when it is tiny and concrete or the selected Change is already ready. Do not rewrite settled work for style or completeness.
|
|
23
|
+
|
|
24
|
+
## Resolve material ambiguity
|
|
25
|
+
|
|
26
|
+
Inspect the repository before asking. Ask only for an owner decision whose answer can change behavior, data, interfaces, compatibility, safety, ownership, migration, or acceptance. Ask the smallest useful question set and write only authorized answers into the Change.
|
|
27
|
+
|
|
28
|
+
Read [deep clarification](references/deep-clarification.md) when the user explicitly asks for rigorous challenge, a high-risk dependent decision remains, or one bounded design question returns to Shape. Prefer the installed `rsp-design` capability; otherwise use its compact fallback against the same WorkRef.
|
|
29
|
+
|
|
30
|
+
Never invent a product decision. When a material choice or mutation authority remains unresolved, leave the work open and report the single highest-impact blocker.
|
|
31
|
+
|
|
32
|
+
## Choose the owner
|
|
33
|
+
|
|
34
|
+
Read [complex shaping](references/complex-shaping.md) before choosing the owner when material clarification needs more than one round, several direct slices share one completion contract, or independently closable owners converge on terminal delivery.
|
|
35
|
+
|
|
36
|
+
Prefer one ordinary Change. Use a shallow Group only when at least two direct children are independently implementable, verifiable, focusable, and archivable while sharing one goal or completion contract. A shared completion contract gates Group closure, not each child's archive unless that child declares the dependency. Keep membership in Brief `Slices`, exact prerequisites in child `Blockers`, and derived readiness in CLI output. Do not create another hierarchy or tracker.
|
|
37
|
+
|
|
38
|
+
Follow the core RSP protocol for exact Change and Group structure. Keep one observable outcome per Change:
|
|
39
|
+
|
|
40
|
+
- `Proposal`: outcome, scope, and non-goals;
|
|
41
|
+
- `Spec`: observable requirements and acceptance scenarios;
|
|
42
|
+
- `Design`: affected boundaries, constraints, and settled choices;
|
|
43
|
+
- `Tasks`: executable implementation steps;
|
|
44
|
+
- `Verify`: final decisive evidence proving the outcome;
|
|
45
|
+
- `Blockers`: exact dependencies and unresolved external decisions, or `none`.
|
|
46
|
+
|
|
47
|
+
Plan a new test only when it protects observable behavior or a real boundary, adds distinct future confidence, avoids duplicate or implementation-detail coverage, and costs proportionately. Otherwise prefer smallest sufficient evidence and keep probes temporary.
|
|
48
|
+
|
|
49
|
+
A Change is a convergent current-plan/final-evidence snapshot, not an append-only execution log. Replace superseded evidence; keep process evidence in the response. Before archive, compress it to outcome, design, tasks, decisive verification, gaps, and risks.
|
|
50
|
+
|
|
51
|
+
Use domain language. Mention AI or agents only as real product actors, consumers, interfaces, or constraints—not authors or execution narrators.
|
|
52
|
+
|
|
53
|
+
## Apply the Shape Ready gate
|
|
54
|
+
|
|
55
|
+
A Change is ready only when:
|
|
56
|
+
|
|
57
|
+
- outcome, non-goals, and acceptance are concrete;
|
|
58
|
+
- product and mutation authority are settled;
|
|
59
|
+
- affected boundaries and material constraints are known;
|
|
60
|
+
- no hidden assumption can change implementation or acceptance;
|
|
61
|
+
- Tasks are executable without performing them;
|
|
62
|
+
- Verify proves the result without process chronology; Blockers are truthful;
|
|
63
|
+
- one Change or a justified shallow Group is the smallest sufficient owner.
|
|
64
|
+
|
|
65
|
+
After authorized mutation, run the project focused RSP check when available. Return WorkRef, changed artifacts, validation, and the next implementation action or blocker.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Complex shaping
|
|
2
|
+
|
|
3
|
+
Read this reference only when material clarification needs more than one round, several direct slices share one completion contract, or independently closable owners converge on terminal delivery.
|
|
4
|
+
|
|
5
|
+
## Close material decisions
|
|
6
|
+
|
|
7
|
+
List unresolved owner decisions by implementation impact. Ask one to three related questions, write authorized answers into their owning Change sections, and reapply the Shape Ready gate. Repeat only while another material decision remains. If one cannot be settled, keep it in `Blockers` and return it as the next owner decision.
|
|
8
|
+
|
|
9
|
+
Use an installed interview or grilling capability only when the work boundary is known, the remaining choice is high-risk, and the user selects deeper exploration. Consume its settled decisions afterward; it owns no RSP state.
|
|
10
|
+
|
|
11
|
+
## Choose a complex owner
|
|
12
|
+
|
|
13
|
+
Keep cohesive work in one Change when it has one consistency and verification boundary.
|
|
14
|
+
|
|
15
|
+
Use a shallow Group when at least two direct children are independently implementable, verifiable, focusable, and archivable. The Brief explains the shared goal, constraints, slices, aggregate completion, and durable outcomes. Child Changes own implementation tasks, verification, and exact `requires` edges. Group completion gates closing the Brief; it does not prevent a child from archiving unless that child declares the dependency.
|
|
16
|
+
|
|
17
|
+
Use an Overall Delivery Change when independently closable semantic owners converge on terminal versioning, packaging, migration, authorization, or publication. It remains an ordinary six-section Change:
|
|
18
|
+
|
|
19
|
+
- Proposal, Spec, and Design name the terminal outcome, upstream owners, aggregate completion contract, and static ownership map;
|
|
20
|
+
- Tasks and Verify contain only terminal delivery operations;
|
|
21
|
+
- references point to upstream outcomes without copying their tasks, checks, progress, or live status;
|
|
22
|
+
- exact prerequisites remain ordinary Change `Blockers`.
|
|
23
|
+
|
|
24
|
+
A permission needed only for a later external task belongs in that task and its constraints. Promote it to an active `Blocker` only when it prevents the next executable work; do not block versioning, packaging, or other authorized preparation prematurely.
|
|
25
|
+
|
|
26
|
+
Do not add a nested Group, delivery-map file, phase entity, or persisted wave plan. If one existing Change or Group already owns the complete outcome, return that owner unchanged.
|
|
27
|
+
|
|
28
|
+
## Completion criterion
|
|
29
|
+
|
|
30
|
+
Finish complex shaping when the smallest sufficient owner is selected, every direct slice or upstream owner has one clear boundary, dependencies live only in child or terminal Change `Blockers`, no live state is duplicated, and every executable Change passes the ordinary Shape Ready gate.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Deep clarification
|
|
2
|
+
|
|
3
|
+
Read this reference only when the user explicitly asks for rigorous challenge, or normal shaping leaves a high-risk decision whose dependent choices remain unresolved.
|
|
4
|
+
|
|
5
|
+
## Establish the fact boundary
|
|
6
|
+
|
|
7
|
+
Inspect the available code, tests, project instructions, Specs, and Decision Records before questioning the owner. Name the unresolved decision and the implementation consequence that makes it material.
|
|
8
|
+
|
|
9
|
+
## RSP design return
|
|
10
|
+
|
|
11
|
+
When `rsp-design` is available, it is the canonical domain or module design capability for an RSP-tracked question. Otherwise use an equivalent project-selected capability or Core's compact manual design fallback. Return one bounded design task containing:
|
|
12
|
+
|
|
13
|
+
- the unresolved design question;
|
|
14
|
+
- authoritative project inputs by path;
|
|
15
|
+
- the expected existing artifact or decision output;
|
|
16
|
+
- its permitted mutation boundary;
|
|
17
|
+
- the same returning WorkRef.
|
|
18
|
+
|
|
19
|
+
The selected capability owns only the design analysis, while existing project documents retain domain and architecture authority. Consume its settled result and evidence on return, then resume Shape against the same Change.
|
|
20
|
+
|
|
21
|
+
## Traverse one decision at a time
|
|
22
|
+
|
|
23
|
+
Ask exactly one owner decision per turn. Include a recommended answer grounded in inspected facts and the material tradeoff it resolves. After each answer, continue only along that decision's dependencies and derive available facts from the repository.
|
|
24
|
+
|
|
25
|
+
When no material dependent decision remains, summarize the resulting behavior, boundaries, and acceptance contract, then ask the owner to confirm shared understanding. Keep all artifacts unchanged until that confirmation. After confirmation, write only authorized decisions into their existing RSP owners and reapply the Shape Ready gate.
|
|
26
|
+
|
|
27
|
+
## Completion criterion
|
|
28
|
+
|
|
29
|
+
Finish the deep branch when every material dependent decision is either owner-confirmed or recorded as one explicit blocker, the project design task has returned to the same WorkRef when used, and no artifact changed before shared understanding was confirmed.
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: rsp-tdd
|
|
3
|
+
description: Drive one clear testable behavior owned by a selected RSP Change through observed RED, minimal GREEN, safe REFACTOR, and fresh verification. Use when test-first evidence is the selected next action; return unexplained failures to diagnosis and all results to the same Change.
|
|
4
|
+
license: MIT
|
|
5
|
+
metadata:
|
|
6
|
+
author: oevery
|
|
7
|
+
version: "2026.07.24.1"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# RSP TDD
|
|
11
|
+
|
|
12
|
+
Implement one clear behavior test-first, follow Core's response-versus-artifact language boundary, and return evidence to its selected Change.
|
|
13
|
+
|
|
14
|
+
## Establish the cycle
|
|
15
|
+
|
|
16
|
+
Require one selected, ready Change, clear observable behavior, test and production mutation authority, and an executable focused check. Read project authority, current worktree state, and the smallest owning production/test seam.
|
|
17
|
+
|
|
18
|
+
Stop when behavior or acceptance is unclear, mutation authority is missing, an existing symptom has an unexplained cause, the execution environment is unavailable, or a baseline failure cannot be separated. Return the same Change, evidence, and one needed next action.
|
|
19
|
+
|
|
20
|
+
## RED
|
|
21
|
+
|
|
22
|
+
Add the smallest focused test at the real owning seam. Run it before production mutation and observe the expected missing or incorrect behavior.
|
|
23
|
+
|
|
24
|
+
RED is not a syntax, fixture, environment, or unrelated baseline failure. A passing test disproves the premise; refine it or stop without production mutation. An unexplained failure returns to diagnosis, not a guessed regression test.
|
|
25
|
+
|
|
26
|
+
## GREEN
|
|
27
|
+
|
|
28
|
+
Make the minimum production change for GREEN, preserve scope, and rerun the same command. An unexplained failure returns to diagnosis without speculative widening.
|
|
29
|
+
|
|
30
|
+
## REFACTOR
|
|
31
|
+
|
|
32
|
+
Refactor only after GREEN for a concrete local improvement; rerun the focused check. Otherwise skip it.
|
|
33
|
+
|
|
34
|
+
## Retain or remove the test
|
|
35
|
+
|
|
36
|
+
Keep the test only when it protects observable behavior or a real boundary, adds distinct future confidence beyond existing checks, avoids implementation-detail coupling or duplicate coverage, and has proportionate maintenance cost. A user, Change, or project requirement to retain the test remains authoritative.
|
|
37
|
+
|
|
38
|
+
Otherwise treat it as a disposable probe: remove it before completion, verify that no disposable fixture or helper remains, and run the cheapest decisive existing check against the final production state. A removed probe is process evidence, not final verification; when automation is insufficient, record applicable manual or environment evidence.
|
|
39
|
+
|
|
40
|
+
## Verify and return
|
|
41
|
+
|
|
42
|
+
After cleanup, run fresh required Change checks and narrow risk checks. Failure or unavailability cannot support completion. Update Tasks and Verify with final decisive evidence, omissions, and unresolved risk rather than a chronological test transcript; keep unresolved issues in Blockers.
|
|
43
|
+
|
|
44
|
+
Return to the same selected Change with WorkRef, final state, artifacts, fresh checks, omissions, Tasks, Blockers, and one next action; do not create parallel lifecycle state or recursively invoke another Skill.
|
|
45
|
+
|
|
46
|
+
When work remains, use Core's compact continuation fields in order: `WorkRef`, `Authority`, `Current state`, `Changed artifacts`, `Fresh verification`, `Blockers`, and `Next action`. Reopen authority, inspect drift, and refresh verification before resuming; continuation is not durable truth.
|
|
47
|
+
|
|
48
|
+
Git staging, commit, push, publication, deployment, review, archive, and approval remain separate actions requiring their own authority.
|