@oevery/rsp 2.0.3 → 3.1.0-beta.0
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 +214 -61
- package/README.zh-CN.md +196 -59
- package/bin/rsp.mjs +2 -2
- package/dist/chunk-QLXIDVKK.mjs +2618 -0
- package/dist/cli.mjs +2466 -1230
- package/dist/entry-LAPR3TNI.mjs +966 -0
- package/dist/locale-HT44UIUP.mjs +21 -0
- package/package.json +13 -4
- package/rules/rsp-rules.md +63 -95
- package/skills/rsp/SKILL.md +164 -119
- 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 +53 -0
- package/skills/rsp-release-docs/SKILL.md +120 -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,52 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: rsp-implement
|
|
3
|
+
description: Implement exactly one selected, ready RSP Change within explicit mutation authority. Use when the user asks to implement or fix tracked work and requires code/tests plus truthful Tasks, Blockers, and fresh verification evidence; never infer Git, publication, review, TDD, or diagnosis authority.
|
|
4
|
+
license: MIT
|
|
5
|
+
metadata:
|
|
6
|
+
author: oevery
|
|
7
|
+
version: "2026.07.24.1"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# RSP Implement
|
|
11
|
+
|
|
12
|
+
Implement one selected Change and return facts.
|
|
13
|
+
|
|
14
|
+
## Select and inspect
|
|
15
|
+
|
|
16
|
+
Require an explicit WorkRef or one unambiguous focus marker. A Group Brief is context, not executable work. Stop when selection, readiness, product authority, acceptance, or required decisions are unresolved.
|
|
17
|
+
|
|
18
|
+
Read nearest instructions, Core or fallback, Change and Brief, relevant Specs and decisions, worktree, then the smallest owning code/test chain. Use normal repository discovery; do not guess owners.
|
|
19
|
+
|
|
20
|
+
## Preserve authority
|
|
21
|
+
|
|
22
|
+
Identify outcome, owners, verification, and pre-existing work. Modify only Change requirements, Tasks, Verify, and Blockers. Preserve unrelated modified, staged, and untracked work. Stop when overlap would discard, guess, or rewrite pre-existing intent.
|
|
23
|
+
|
|
24
|
+
Git delivery, publication, deployment, approval, and out-of-scope deletion require separate explicit authority. For conflicts, inspect base/ours/theirs, preserve unrelated work, resolve only evidenced scope, rerun checks, and stop before staging, continuing, aborting, or committing. Verify named findings first.
|
|
25
|
+
|
|
26
|
+
## Classify implementation evidence
|
|
27
|
+
|
|
28
|
+
Classify evidence before mutation and after failure:
|
|
29
|
+
|
|
30
|
+
- An unexplained failure returns `rsp-diagnose` when available; otherwise return Core's manual diagnosis fallback.
|
|
31
|
+
- Return `rsp-tdd` only when test-first work is explicitly required by the user, selected Change, or project instructions, or a concrete changed risk makes pre-mutation RED materially safer; use Core's manual TDD fallback when unavailable. Behavior being testable, a test being possible, or the work being a fix is not sufficient by itself.
|
|
32
|
+
- Continue ordinary implementation by default when diagnosis does not apply, the required behavior, cause, or edit is sufficiently evidenced, and no explicit or concrete-risk TDD gate is met.
|
|
33
|
+
|
|
34
|
+
Diagnosis precedes TDD. Do not invoke another Skill from inside this Skill. If evidence changes the route, stop mutation and return the next action, evidence, and same selected Change. Do not reproduce either discipline inside Implement or invoke review or delivery.
|
|
35
|
+
|
|
36
|
+
## Implement and verify
|
|
37
|
+
|
|
38
|
+
Implement the smallest complete slice. Update Tasks after outcomes exist; keep unresolved issues in Blockers.
|
|
39
|
+
|
|
40
|
+
After final mutation, run required Change checks and narrower risk checks. Fresh verification is required, but a new test is only one evidence option; prefer the cheapest decisive existing test, static check, build, or acceptance evidence. Record command, scope, result, and omissions. Prior runs are stale; failed or unavailable verification cannot support completion. Rerun after relevant edits.
|
|
41
|
+
|
|
42
|
+
Keep a new test only when it protects observable behavior or a real boundary, adds distinct future confidence, avoids duplicate or implementation-detail coverage, and has proportionate maintenance cost. Otherwise remove the disposable test, fixture, and helper before completion, then use smallest sufficient final evidence. User, Change, and project retention requirements remain authoritative.
|
|
43
|
+
|
|
44
|
+
Record concise fresh evidence when Change Verify owns it. Do not create a receipt store or mandate one shell wrapper.
|
|
45
|
+
|
|
46
|
+
## Return ownership
|
|
47
|
+
|
|
48
|
+
Report whether the Change is completed, partial, blocked before implementation, verification-failed, verification-unavailable, or verification-blocked. Use failed for an exercised defect; use unavailable when a missing tool, dependency, service, credential, or environment prevents execution. Use blocked only when scoped checks pass but a required gate fails solely from a confirmed pre-existing or out-of-scope baseline defect; never waive affected gates.
|
|
49
|
+
|
|
50
|
+
When work remains, follow Core's response-versus-artifact language boundary and return `WorkRef`, `Authority`, `Current state`, `Changed artifacts`, `Fresh verification`, `Blockers`, and `Next action`. They are not durable truth; persistence requires explicit path authority.
|
|
51
|
+
|
|
52
|
+
Claim completion only when required Tasks and checks pass and no blocker remains. Do not claim review, archive, Git delivery, or release unless separately performed with explicit authority.
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: rsp-manage
|
|
3
|
+
description: Continue one explicitly requested focused RSP Change through genuinely independent bounded slices or interruption recovery while keeping ordinary work on existing Core and Discipline paths.
|
|
4
|
+
license: MIT
|
|
5
|
+
metadata:
|
|
6
|
+
author: oevery
|
|
7
|
+
version: "2026.07.24.1"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# RSP Manage
|
|
11
|
+
|
|
12
|
+
Manage one focused Change only after the user explicitly requests managed continuation. Keep RSP artifacts as durable truth and process data transient.
|
|
13
|
+
|
|
14
|
+
## Qualify before mutation
|
|
15
|
+
|
|
16
|
+
Require one focused, ready Change and sufficient mutation authority. Snapshot the user authority, nearest instructions and context, Group Brief when present, Change, relevant Specs and Decisions, current RSP status, and worktree once.
|
|
17
|
+
|
|
18
|
+
Activate only for at least two non-overlapping mutation scopes with independent verification, genuinely long authorized continuation, or interruption recovery whose stale-evidence cost justifies orchestration. A small single slice, tightly coupled scopes, or host worker availability alone is ineligible. On decline, make no mutation, create no dispatch envelope, receipt, budget, or controller state, and return the exact Core or Discipline next action without executing it.
|
|
19
|
+
|
|
20
|
+
Identify allowed mutations, required verification, unavailable acceptance, and lifecycle, Git, publication, deployment, approval, or other external-action boundaries. Preserve unrelated work. Unless the user sets a tighter limit, allow at most four worker dispatches and one corrective retry for the whole run.
|
|
21
|
+
|
|
22
|
+
## Dispatch only real work
|
|
23
|
+
|
|
24
|
+
Send an internal compact envelope only to a worker that will execute an eligible slice:
|
|
25
|
+
|
|
26
|
+
```md
|
|
27
|
+
- WorkRef: <focused Change>
|
|
28
|
+
- Objective: <one observable slice>
|
|
29
|
+
- Authority: <exact inputs and allowed mutations>
|
|
30
|
+
- Return: <changed artifacts, decisive verification, omissions, and stop boundary>
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Parallelize only non-overlapping mutation scopes with independent verification. Keep overlapping mutations and dependent verification sequential. Workers receive no implied focus, lifecycle, durable-write, Git, publication, deployment, approval, or cleanup authority.
|
|
34
|
+
|
|
35
|
+
For each slice choose the cheapest decisive focused check. Run at most one broader integration gate, and only when combined mutations create integration risk or project authority requires it. Do not multiply checks per worker or retain disposable process tests.
|
|
36
|
+
|
|
37
|
+
## Continue from current evidence
|
|
38
|
+
|
|
39
|
+
After each return inspect the actual diff and freshly observed verification. Accept a slice only when the owned output exists, decisive checks pass, omissions are named, and the Change still owns the result. Continue only after positive progress.
|
|
40
|
+
|
|
41
|
+
Use the one corrective retry only when new evidence identifies an in-scope correction. Otherwise stop at the failure. Inspect current worktree and evidence after returns, but reread stable authority only during interruption recovery or when evidenced authority or worktree drift could invalidate the snapshot.
|
|
42
|
+
|
|
43
|
+
Treat handoffs as transient pointers, never project truth. During recovery, reread current authority and referenced evidence, return changed or unverifiable completion to pending, and enforce the remaining finite limits. Never create durable controller status, retry graphs, receipts, or parallel lifecycle state.
|
|
44
|
+
|
|
45
|
+
## Preserve artifact and authority boundaries
|
|
46
|
+
|
|
47
|
+
Keep dispatch details, retry history, limits, and process chronology out of Changes, Specs, Decision Records, and the user-facing final result. Update the selected Change only with converged requirements, completed outcomes, decisive evidence, omissions, and real blockers. Durable facts and rationale still use Core's normal artifact-routing decision.
|
|
48
|
+
|
|
49
|
+
Treat archive guidance as advisory unless the run has explicit lifecycle-closeout authority and Core has completed its durable decision. Archive never grants Git or publication authority.
|
|
50
|
+
|
|
51
|
+
Stop at an unresolved owner decision, unavailable service, credential, device, environment, or human acceptance; missing external-action authority; verification without an evidenced in-scope correction; drift; or exhausted limits. Do not route around the boundary.
|
|
52
|
+
|
|
53
|
+
Return only completed and pending slices, fresh verification, omissions, the real boundary owner, and one next action. Do not expose dispatch, retry, or budget chronology and do not claim archive, Git, publication, deployment, approval, or human acceptance that was not completed under explicit authority.
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: rsp-release-docs
|
|
3
|
+
description: Prepare and audit evidence-based changelogs, release notes, and migration notes. Use when drafting or updating release documentation, reviewing an Unreleased section, summarizing a version range, deciding references or omissions, or checking that release prose matches shipped behavior and repository conventions.
|
|
4
|
+
license: MIT
|
|
5
|
+
metadata:
|
|
6
|
+
author: oevery
|
|
7
|
+
version: "2026.07.22.1"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# RSP Release Docs
|
|
11
|
+
|
|
12
|
+
Build one release evidence ledger, then project it into the repository's release surfaces. Treat Git history as navigation, not product truth.
|
|
13
|
+
|
|
14
|
+
## Establish authority
|
|
15
|
+
|
|
16
|
+
Resolve requirements in this order:
|
|
17
|
+
|
|
18
|
+
1. Follow the user's explicit scope, audience, language, format, reference, and mutation requirements.
|
|
19
|
+
2. Follow the applicable instruction hierarchy; nearer project instructions override broader host or personal defaults.
|
|
20
|
+
3. Follow existing release-tool configuration.
|
|
21
|
+
4. Preserve the target artifact's current structure, terminology, and language.
|
|
22
|
+
5. Match prior published releases and tag, link, and tracker conventions.
|
|
23
|
+
6. Apply the defaults in this Skill only where the repository is silent.
|
|
24
|
+
|
|
25
|
+
Use the higher-precedence source when two sources conflict. Ask one focused question only when the unresolved choice would materially change the public result. Read [convention discovery](references/convention-discovery.md) when locating or reconciling repository and personal conventions. Persist a preference only when the user explicitly authorizes its project or personal instruction owner.
|
|
26
|
+
|
|
27
|
+
Completion criterion: name the release range, target version or draft state, audience, output surfaces, language, link style, and allowed mutations from observed authority.
|
|
28
|
+
|
|
29
|
+
## Select the branch
|
|
30
|
+
|
|
31
|
+
- **Audit:** inspect existing release prose and return findings without editing.
|
|
32
|
+
- **Prepare:** draft requested artifacts; for a formal release, always include release notes. Update a changelog only when the repository owns one or the user requests one. Include migration guidance whenever users must act.
|
|
33
|
+
- **Finalize:** replace Unreleased markers, dates, comparison links, or draft labels only when the release identity is confirmed.
|
|
34
|
+
|
|
35
|
+
Publication is a separate branch. Preparing prose never grants commit, tag, push, release creation, registry publication, deployment, deletion, or approval authority.
|
|
36
|
+
|
|
37
|
+
Completion criterion: every requested surface has one disposition: draft, update, audit only, not applicable, or blocked by a named decision.
|
|
38
|
+
|
|
39
|
+
## Collect evidence
|
|
40
|
+
|
|
41
|
+
Inspect the smallest sufficient set:
|
|
42
|
+
|
|
43
|
+
- previous release tag or user-supplied base and the target ref;
|
|
44
|
+
- commits and net diff in the release range;
|
|
45
|
+
- PRs, issues, tracked Changes, changesets, news fragments, and release PRs when available;
|
|
46
|
+
- public API, CLI, configuration, packaging, migration, security, and operator-facing changes;
|
|
47
|
+
- existing changelog, prior release notes, migration guides, version files, and release configuration;
|
|
48
|
+
- fresh verification and known acceptance gaps when the release claims compatibility or readiness; label archived evidence with its observed revision or date instead of presenting it as current.
|
|
49
|
+
|
|
50
|
+
Use diffs and direct consumers to verify behavior. Use commit messages and labels to locate intent. Prefer accepted work artifacts and public documentation for business meaning. Reconcile disagreements explicitly instead of choosing the most convenient source.
|
|
51
|
+
|
|
52
|
+
Completion criterion: every commit and every relevant tracked item in the range is represented by evidence or has an explicit exclusion reason.
|
|
53
|
+
|
|
54
|
+
## Build the release ledger
|
|
55
|
+
|
|
56
|
+
Create a working ledger before writing prose. Keep it in the response or temporary work unless the repository already owns release fragments or the user authorizes a path.
|
|
57
|
+
|
|
58
|
+
For each net change record:
|
|
59
|
+
|
|
60
|
+
- evidence identifiers and links;
|
|
61
|
+
- user-visible or operator-visible outcome;
|
|
62
|
+
- affected audience;
|
|
63
|
+
- breaking, deprecation, security, compatibility, or migration impact;
|
|
64
|
+
- changelog disposition;
|
|
65
|
+
- release-note disposition;
|
|
66
|
+
- reference choice;
|
|
67
|
+
- exclusion or uncertainty, if any.
|
|
68
|
+
|
|
69
|
+
Collapse multiple commits into one outcome. Omit changes added and reverted within the same range. Fold fixes to never-released behavior into the final feature description. Keep internal work out unless it changes public behavior, packaging, compatibility, security, operations, or release integrity.
|
|
70
|
+
|
|
71
|
+
Completion criterion: the ledger describes the net released state rather than commit chronology, and every exclusion is intentional.
|
|
72
|
+
|
|
73
|
+
## Project the artifacts
|
|
74
|
+
|
|
75
|
+
Read [output contracts](references/output-contracts.md) before creating a new format, preparing a major or breaking release, or producing more than one surface.
|
|
76
|
+
|
|
77
|
+
### Changelog
|
|
78
|
+
|
|
79
|
+
Write a concise cumulative record of notable outcomes. Preserve existing categories; otherwise use Keep a Changelog categories and omit empty sections. Put breaking changes and required action first. Describe behavior, not implementation mechanics.
|
|
80
|
+
|
|
81
|
+
### Release notes
|
|
82
|
+
|
|
83
|
+
Write a release-specific narrative for the observed audience. Lead with the most important outcomes, make required action prominent, include compatibility or known limitations when evidenced, and link to the full changelog or comparison range. Do not merely duplicate the changelog.
|
|
84
|
+
|
|
85
|
+
### Migration notes
|
|
86
|
+
|
|
87
|
+
State who is affected, required actions in order, changed defaults or removed surfaces, compatibility window, validation steps, and rollback or support path when known. Use a separate guide when the instructions would overwhelm the release notes.
|
|
88
|
+
|
|
89
|
+
Completion criterion: every statement maps to the ledger, each surface serves its distinct audience and lifetime, and terminology remains consistent across surfaces.
|
|
90
|
+
|
|
91
|
+
## Apply reference policy
|
|
92
|
+
|
|
93
|
+
Follow repository policy first. Otherwise:
|
|
94
|
+
|
|
95
|
+
1. Add a version-level compare or tag link.
|
|
96
|
+
2. Prefer PR links for implementation context.
|
|
97
|
+
3. Prefer issue or tracked-work links for rationale and migration context.
|
|
98
|
+
4. Use commit links when no better semantic anchor exists, exact provenance matters, or the user requires them.
|
|
99
|
+
|
|
100
|
+
Do not force a reference onto every bullet. Use stable public links only; keep private tracker identifiers out of public prose unless the repository already exposes them.
|
|
101
|
+
|
|
102
|
+
Completion criterion: references add useful context without turning the artifact into a Git log or exposing private information.
|
|
103
|
+
|
|
104
|
+
## Audit before returning
|
|
105
|
+
|
|
106
|
+
Check all of the following:
|
|
107
|
+
|
|
108
|
+
- range and version identity are consistent across artifacts;
|
|
109
|
+
- every ledger item is included or intentionally excluded;
|
|
110
|
+
- no claim exceeds implementation or verification evidence;
|
|
111
|
+
- verification counts, package identities, and compatibility claims name their observed revision or date when they were not refreshed in the current run;
|
|
112
|
+
- breaking, migration, deprecation, security, and known-limit information is prominent where applicable;
|
|
113
|
+
- user-visible net outcomes are not fragmented by commit;
|
|
114
|
+
- links, dates, headings, language, and terminology match observed conventions;
|
|
115
|
+
- changelog and release notes agree without becoming copies;
|
|
116
|
+
- working-tree edits stay within authorized files.
|
|
117
|
+
|
|
118
|
+
Return the release range, artifacts drafted or changed, coverage and exclusions, unresolved decisions, validation performed, and whether any external release action occurred.
|
|
119
|
+
|
|
120
|
+
Completion criterion: the result is evidence-complete, convention-compatible, and truthful about omissions and publication state.
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# Convention discovery
|
|
2
|
+
|
|
3
|
+
Use this reference when a repository may have personal, project, tool, or historical release conventions. Discover; do not introduce a new configuration file merely to satisfy this Skill.
|
|
4
|
+
|
|
5
|
+
## Authority sources
|
|
6
|
+
|
|
7
|
+
Inspect only relevant, non-secret sources:
|
|
8
|
+
|
|
9
|
+
1. Current user instructions, including requested audience, language, tone, links, output paths, and whether edits are allowed.
|
|
10
|
+
2. Applicable instructions, with the nearest project instruction winning over broader host or personal defaults.
|
|
11
|
+
3. Project release documents such as `CONTRIBUTING.md`, maintainer guides, or a documented release checklist.
|
|
12
|
+
4. Existing target artifacts such as `CHANGELOG.md`, `NEWS.md`, release-note templates, upgrade guides, or an in-app What's New source.
|
|
13
|
+
5. Release configuration and package scripts.
|
|
14
|
+
6. Recent published releases and tags.
|
|
15
|
+
|
|
16
|
+
Do not scan unrelated home-directory configuration. Do not print tokens, registry credentials, private URLs, authorization headers, or hidden release secrets. When a named config may contain secrets, inspect only the keys needed to identify release behavior. Keep a newly stated preference session-local unless the user explicitly authorizes an existing project or personal instruction owner.
|
|
17
|
+
|
|
18
|
+
## Common configuration signals
|
|
19
|
+
|
|
20
|
+
Look for these only when present or relevant:
|
|
21
|
+
|
|
22
|
+
- `.github/release.yml`, Release Drafter, or GitHub Release templates;
|
|
23
|
+
- release-please manifest/configuration;
|
|
24
|
+
- `.changeset/config.json` and changeset fragments;
|
|
25
|
+
- Towncrier, Changie, or similar news fragments;
|
|
26
|
+
- `cliff.toml`, conventional-changelog, semantic-release, or commit-and-tag-version configuration;
|
|
27
|
+
- monorepo package boundaries and per-package changelogs;
|
|
28
|
+
- package scripts, CI release workflows, and version files;
|
|
29
|
+
- tracker labels such as breaking, feature, fix, skip-changelog, or security.
|
|
30
|
+
|
|
31
|
+
Treat generated release notes and automation output as evidence inventories. Human-facing claims still require semantic review.
|
|
32
|
+
|
|
33
|
+
## Adaptation decisions
|
|
34
|
+
|
|
35
|
+
Resolve these dimensions independently:
|
|
36
|
+
|
|
37
|
+
| Dimension | Evidence to prefer |
|
|
38
|
+
| --- | --- |
|
|
39
|
+
| Audience | Explicit request, established release surface, prior releases |
|
|
40
|
+
| Language | Explicit request, nearest project instruction, target artifact, prior published releases, conversation |
|
|
41
|
+
| Voice | Existing artifact and product terminology |
|
|
42
|
+
| Categories | Existing artifact/config; Keep a Changelog only as fallback |
|
|
43
|
+
| Version and tags | Confirmed target, manifests, release config, prior tags |
|
|
44
|
+
| References | Existing links and tracker policy; generic hierarchy only as fallback |
|
|
45
|
+
| Output paths | Existing release owner or explicit path authority |
|
|
46
|
+
| Detail | Audience needs, release risk, and existing cadence |
|
|
47
|
+
|
|
48
|
+
Personal preferences refine the project format where compatible. Project-owned parsers, schemas, and release contracts win when a stylistic preference would break them. Report the conflict when the user must choose.
|
|
49
|
+
|
|
50
|
+
For language specifically, apply the table order without reordering it: an explicit surface-specific request wins; otherwise follow the nearest project instruction, then that target artifact's established language, then prior published releases, and finally the conversation language.
|
|
51
|
+
|
|
52
|
+
## Repository shapes
|
|
53
|
+
|
|
54
|
+
- **Library or SDK:** emphasize public API, compatibility, deprecation, migration, runtime support, and precise references.
|
|
55
|
+
- **Application:** emphasize visible workflows, changed defaults, operator action, rollout, and known limitations.
|
|
56
|
+
- **CLI:** emphasize command/flag/config semantics, output contracts, migration, and shell compatibility.
|
|
57
|
+
- **Monorepo:** determine the released unit before collecting evidence; avoid mixing unrelated packages.
|
|
58
|
+
- **GitHub-Releases-only project:** draft release notes without creating `CHANGELOG.md` unless requested.
|
|
59
|
+
- **Fragment-based project:** use accepted fragments as semantic evidence, then verify the net diff and release boundary.
|
|
60
|
+
|
|
61
|
+
## Conflict examples
|
|
62
|
+
|
|
63
|
+
- If the user requests Chinese release notes but `CHANGELOG.md` is consistently English, keep the changelog English and draft the release notes in Chinese unless the user explicitly asks to translate both.
|
|
64
|
+
- If the user requests commit IDs but prior releases use PR links, preserve PR links and add commit links only for exact provenance unless the user explicitly overrides the project style.
|
|
65
|
+
- If a tool requires two synchronized formats, update both from one ledger while preserving each parser's syntax.
|
|
@@ -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.
|