@oevery/rsp 4.0.0 → 4.2.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/dist/chunk-AUZYUJ46.mjs +418 -0
- package/dist/chunk-DNRGBQS7.mjs +108 -0
- package/dist/chunk-LGDCIQYL.mjs +725 -0
- package/dist/chunk-P3KO3GZW.mjs +1023 -0
- package/dist/{chunk-HFSTLCCK.mjs → chunk-VDRXFKBP.mjs} +133 -1800
- package/dist/cli.mjs +286 -294
- package/dist/client-U2PN3VS4.mjs +108 -0
- package/dist/{entry-RIJQ2X46.mjs → entry-NDASTAI5.mjs} +13 -9
- package/dist/viewer/NOTICE.txt +299 -0
- package/dist/viewer/app.css +2 -0
- package/dist/viewer/app.js +670 -0
- package/dist/viewer/chunks/abnfDiagram-S7VZAUFO-K5EOZOEF.js +1 -0
- package/dist/viewer/chunks/architecture-WOLXFQ4H-UAT5D5BF.js +1 -0
- package/dist/viewer/chunks/architectureDiagram-YGSQEFNW-UNPSYM2L.js +36 -0
- package/dist/viewer/chunks/blockDiagram-APKKGZFW-2F7TTPAV.js +140 -0
- package/dist/viewer/chunks/bpmnIcons-APHXDYXF-ZWPFFN3O.js +1 -0
- package/dist/viewer/chunks/c4Diagram-KJ2TOQU5-KNLN6CME.js +38 -0
- package/dist/viewer/chunks/chunk-274PZN6B.js +1 -0
- package/dist/viewer/chunks/chunk-2VGDQLQD.js +1 -0
- package/dist/viewer/chunks/chunk-33XESOCS.js +1 -0
- package/dist/viewer/chunks/chunk-3ZSL2TGQ.js +1 -0
- package/dist/viewer/chunks/chunk-432I4U3B.js +1 -0
- package/dist/viewer/chunks/chunk-4PJNGS3V.js +1 -0
- package/dist/viewer/chunks/chunk-54NLSLTF.js +9 -0
- package/dist/viewer/chunks/chunk-6QRHYJ5Q.js +1 -0
- package/dist/viewer/chunks/chunk-6RCFKBVR.js +1 -0
- package/dist/viewer/chunks/chunk-6Y2HP7DC.js +213 -0
- package/dist/viewer/chunks/chunk-7MAT7NHP.js +1 -0
- package/dist/viewer/chunks/chunk-AKHBD6LT.js +2 -0
- package/dist/viewer/chunks/chunk-CZIM56BV.js +1 -0
- package/dist/viewer/chunks/chunk-DN4Y7LXJ.js +1 -0
- package/dist/viewer/chunks/chunk-E2UQN267.js +1 -0
- package/dist/viewer/chunks/chunk-GBARLDDT.js +1 -0
- package/dist/viewer/chunks/chunk-H4YEV7VR.js +1 -0
- package/dist/viewer/chunks/chunk-HUVVDQHZ.js +1 -0
- package/dist/viewer/chunks/chunk-IAKC32WV.js +72 -0
- package/dist/viewer/chunks/chunk-JTW4SY4L.js +1 -0
- package/dist/viewer/chunks/chunk-JZV675LF.js +1 -0
- package/dist/viewer/chunks/chunk-KDUDYTWO.js +1 -0
- package/dist/viewer/chunks/chunk-KHX3A5RZ.js +331 -0
- package/dist/viewer/chunks/chunk-KPXJJSUR.js +15 -0
- package/dist/viewer/chunks/chunk-LEGNM6PH.js +1 -0
- package/dist/viewer/chunks/chunk-LYY4ZY72.js +1 -0
- package/dist/viewer/chunks/chunk-MKDEK2LU.js +1 -0
- package/dist/viewer/chunks/chunk-MYJRFART.js +129 -0
- package/dist/viewer/chunks/chunk-NUXZBURC.js +1 -0
- package/dist/viewer/chunks/chunk-NXHT5I2L.js +1 -0
- package/dist/viewer/chunks/chunk-OF62XRVM.js +62 -0
- package/dist/viewer/chunks/chunk-ONCOEVBS.js +1 -0
- package/dist/viewer/chunks/chunk-P44SH3OO.js +1 -0
- package/dist/viewer/chunks/chunk-PDXKDBIX.js +1 -0
- package/dist/viewer/chunks/chunk-PHKIAKHS.js +1 -0
- package/dist/viewer/chunks/chunk-PJDMAGPE.js +2 -0
- package/dist/viewer/chunks/chunk-RC2NPHSX.js +88 -0
- package/dist/viewer/chunks/chunk-T6DM5RSK.js +10 -0
- package/dist/viewer/chunks/chunk-U5STX66M.js +2 -0
- package/dist/viewer/chunks/chunk-UIAJQPOF.js +1 -0
- package/dist/viewer/chunks/chunk-UX2S3LP3.js +1 -0
- package/dist/viewer/chunks/chunk-VEMTQQ7Y.js +2 -0
- package/dist/viewer/chunks/chunk-WKCPBR3C.js +1 -0
- package/dist/viewer/chunks/chunk-WMQ4Y2MS.js +32 -0
- package/dist/viewer/chunks/chunk-YPWIQAHX.js +3 -0
- package/dist/viewer/chunks/chunk-Z4ZDIMO2.js +136 -0
- package/dist/viewer/chunks/chunk-ZATQCNXH.js +1 -0
- package/dist/viewer/chunks/chunk-ZE5RDJX6.js +1 -0
- package/dist/viewer/chunks/chunk-ZO62R4L2.js +1 -0
- package/dist/viewer/chunks/classDiagram-v2-L25IHNXF-5F2M2CZ4.js +217 -0
- package/dist/viewer/chunks/cose-bilkent-JH36ORCC-S56HJ5WN.js +1 -0
- package/dist/viewer/chunks/cynefin-EF2NZ3EQ-6WY2NCLE.js +1 -0
- package/dist/viewer/chunks/cynefinDiagram-L36ESFBY-DE6PZNQA.js +62 -0
- package/dist/viewer/chunks/dagre-SPEB5RXH-QEOTKFV2.js +4 -0
- package/dist/viewer/chunks/diagram-3B7GL73J-RZPIU7FY.js +200 -0
- package/dist/viewer/chunks/diagram-DNEMPZML-YD26TJKC.js +24 -0
- package/dist/viewer/chunks/diagram-L3MUGCDN-TJUEX4QI.js +41 -0
- package/dist/viewer/chunks/diagram-LA4NIPWU-3PUQS6UW.js +24 -0
- package/dist/viewer/chunks/diagram-MHCOC4E2-YBTBD4PG.js +3 -0
- package/dist/viewer/chunks/diagram-XPFHEONP-VF2TQBNR.js +30 -0
- package/dist/viewer/chunks/ebnfDiagram-UZSYDL2S-QE7DIEME.js +1 -0
- package/dist/viewer/chunks/elk-XV6XMXQE-X5OZRIL3.js +27 -0
- package/dist/viewer/chunks/erDiagram-EYBAPDEH-5B2S7VB4.js +99 -0
- package/dist/viewer/chunks/eventmodeling-K75KTNOO-CHCQYZBI.js +1 -0
- package/dist/viewer/chunks/flowDiagram-MALGAFMO-XJFC5NTN.js +1 -0
- package/dist/viewer/chunks/ganttDiagram-23REXITY-TUUZ3QYO.js +292 -0
- package/dist/viewer/chunks/gitGraph-VSP46ZUC-VFZPJQ6A.js +1 -0
- package/dist/viewer/chunks/gitGraphDiagram-STJD7YCW-4CVV5LSH.js +106 -0
- package/dist/viewer/chunks/info-OHQRW6UA-P4744SJ6.js +1 -0
- package/dist/viewer/chunks/infoDiagram-KBXO4MBG-Q2WYYNNN.js +2 -0
- package/dist/viewer/chunks/ishikawaDiagram-M35NCXHK-PLQPTX2U.js +70 -0
- package/dist/viewer/chunks/journeyDiagram-OPLOXDXO-FB73RE6F.js +139 -0
- package/dist/viewer/chunks/kanban-definition-BZKZHSQY-6FU4TXYJ.js +89 -0
- package/dist/viewer/chunks/katex-IN4S3RHS.js +257 -0
- package/dist/viewer/chunks/mindmap-definition-I2QAS2VK-ZQ36ABVW.js +98 -0
- package/dist/viewer/chunks/packet-JDAUHWVQ-NYXIQQVA.js +1 -0
- package/dist/viewer/chunks/pegDiagram-FD4XPPHP-5XXVT6XN.js +1 -0
- package/dist/viewer/chunks/pie-XZMESJXO-32CUE6KZ.js +1 -0
- package/dist/viewer/chunks/pieDiagram-J4AKIIQI-WRTBDFM5.js +39 -0
- package/dist/viewer/chunks/quadrantDiagram-XTYBLID2-YPBDQIAK.js +7 -0
- package/dist/viewer/chunks/radar-ABXABTNO-272FILRO.js +1 -0
- package/dist/viewer/chunks/railroad-I3PHUGI6-6EGAH4XA.js +1 -0
- package/dist/viewer/chunks/railroad-abnf-LNEFI6M7-G6E7ATER.js +1 -0
- package/dist/viewer/chunks/railroad-ebnf-DWYD2UWJ-MR4P6BDR.js +1 -0
- package/dist/viewer/chunks/railroad-peg-JR7BVNR7-WXLQUGUO.js +1 -0
- package/dist/viewer/chunks/railroadDiagram-MRQ6NCDL-XHZQ2BLY.js +1 -0
- package/dist/viewer/chunks/requirementDiagram-Y7LWUY3S-W5FHRRML.js +84 -0
- package/dist/viewer/chunks/sankeyDiagram-WGJFYUXA-OJJIRVTI.js +40 -0
- package/dist/viewer/chunks/sequenceDiagram-5NDRBG5M-D6T4DRNG.js +169 -0
- package/dist/viewer/chunks/sizeCapture-INFHLROL-WL3FTUJX.js +1 -0
- package/dist/viewer/chunks/stateDiagram-v2-FJ4FJNEA-LAXL7KGG.js +291 -0
- package/dist/viewer/chunks/swimlanes-UMQ2AFYF-XIJBD726.js +1 -0
- package/dist/viewer/chunks/swimlanesDiagram-OMPLPG4O-7O7MHFW7.js +8 -0
- package/dist/viewer/chunks/timeline-definition-SEUHKTQE-BAZQA47I.js +120 -0
- package/dist/viewer/chunks/treeView-D4JQ5SDB-6YMDAAPA.js +1 -0
- package/dist/viewer/chunks/treemap-SAJKECNS-2X573PPS.js +1 -0
- package/dist/viewer/chunks/usecaseDiagram-AFA6YXN4-4YCEMWJB.js +370 -0
- package/dist/viewer/chunks/vennDiagram-NNMJR3RB-GEMROLAE.js +34 -0
- package/dist/viewer/chunks/wardley-7MLQ67FV-DGTGHYYC.js +1 -0
- package/dist/viewer/chunks/wardleyDiagram-S7YFUSEH-K4HVD3SS.js +78 -0
- package/dist/viewer/chunks/xychartDiagram-GGNKY7IX-HVLWCUEO.js +7 -0
- package/dist/viewer/mermaid.js +12 -0
- package/dist/viewer-build.json +1 -0
- package/dist/viewer-service.mjs +607 -0
- package/package.json +27 -8
- package/skills/rsp/SKILL.md +13 -10
- package/skills/rsp/references/architecture.md +39 -0
- package/skills/rsp/references/closeout.md +4 -4
- package/skills/rsp/references/durable-review.md +6 -9
- package/skills/rsp/references/focus-continuation.md +6 -2
- package/skills/rsp/references/setup-repair.md +11 -6
- package/skills/rsp/references/work-model.md +14 -4
- package/skills/rsp-commit/SKILL.md +2 -2
- package/skills/rsp-doc/SKILL.md +13 -10
- package/skills/rsp-doc/references/skill-authoring.md +2 -2
- package/skills/rsp-implement/SKILL.md +16 -12
- package/skills/rsp-review/SKILL.md +12 -12
- package/skills/rsp-review/references/code-review.md +11 -5
- package/skills/rsp-review/references/document-review.md +8 -10
- package/skills/rsp-shape/SKILL.md +3 -1
- package/skills/rsp-shape/references/planning.md +4 -4
- package/skills/rsp-verify/SKILL.md +9 -14
- package/skills/rsp-doc/references/artifact-lenses.md +0 -43
- package/skills/rsp-review/references/structural-review.md +0 -41
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oevery/rsp",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "4.
|
|
4
|
+
"version": "4.2.0",
|
|
5
5
|
"description": "RSP (Reliable Software Practice), a repository-native engineering workflow for humans and AI agents",
|
|
6
6
|
"author": "oevery",
|
|
7
7
|
"license": "MIT",
|
|
@@ -40,10 +40,11 @@
|
|
|
40
40
|
"skills:package-check": "node scripts/skill-package-check.mjs",
|
|
41
41
|
"prepublishOnly": "pnpm run release:check",
|
|
42
42
|
"release": "release-it",
|
|
43
|
-
"build": "
|
|
44
|
-
"dev": "
|
|
43
|
+
"build": "node scripts/build.mjs",
|
|
44
|
+
"dev": "node scripts/dev.mjs",
|
|
45
45
|
"docs:build": "vitepress build docs",
|
|
46
46
|
"docs:check": "node scripts/docs-check.mjs",
|
|
47
|
+
"doctor": "node dist/cli.mjs doctor",
|
|
47
48
|
"docs:deploy": "wrangler deploy",
|
|
48
49
|
"docs:dev": "vitepress dev docs",
|
|
49
50
|
"docs:preview": "vitepress preview docs",
|
|
@@ -55,9 +56,12 @@
|
|
|
55
56
|
"test:diagnostics": "vitest run --config tests/diagnostics/vitest.config.ts",
|
|
56
57
|
"test:pack": "node tests/code/package/package-check.mjs",
|
|
57
58
|
"test:skills": "uv run --frozen --project tests/skills python tests/skills/evaluate.py",
|
|
58
|
-
"release:check": "pnpm run build && pnpm run typecheck && pnpm run lint && pnpm run test:code && pnpm run test:skills check && pnpm run skills:security-check && pnpm run docs:check"
|
|
59
|
+
"release:check": "pnpm run build && pnpm run doctor && pnpm run typecheck && pnpm run lint && pnpm run test:code && pnpm run test:skills check && pnpm run skills:security-check && pnpm run docs:check",
|
|
60
|
+
"test:viewer:browser": "node tests/code/architecture/browser-check.mjs"
|
|
59
61
|
},
|
|
60
62
|
"dependencies": {
|
|
63
|
+
"@likec4/core": "1.60.0",
|
|
64
|
+
"@likec4/layouts": "1.60.0",
|
|
61
65
|
"citty": "^0.2.2",
|
|
62
66
|
"hast-util-from-html": "^2.0.3",
|
|
63
67
|
"ink": "~8.0.0",
|
|
@@ -72,19 +76,34 @@
|
|
|
72
76
|
},
|
|
73
77
|
"devDependencies": {
|
|
74
78
|
"@antfu/eslint-config": "^9.5.1",
|
|
79
|
+
"@likec4/diagram": "1.60.0",
|
|
80
|
+
"@radix-ui/react-dialog": "1.3.1",
|
|
81
|
+
"@radix-ui/react-select": "2.4.1",
|
|
82
|
+
"@radix-ui/react-slot": "1.5.0",
|
|
83
|
+
"@radix-ui/react-tooltip": "1.4.1",
|
|
75
84
|
"@release-it/conventional-changelog": "12.0.2",
|
|
85
|
+
"@tailwindcss/cli": "4.3.4",
|
|
76
86
|
"@types/hast": "^3.0.5",
|
|
77
87
|
"@types/mdast": "^4.0.4",
|
|
78
88
|
"@types/node": "^22.20.1",
|
|
79
89
|
"@types/react": "^19.3.0",
|
|
80
|
-
"
|
|
90
|
+
"@types/react-dom": "^19.3.0",
|
|
91
|
+
"class-variance-authority": "0.7.1",
|
|
92
|
+
"clsx": "2.1.1",
|
|
93
|
+
"esbuild": "^0.28.2",
|
|
94
|
+
"eslint": "^10.14.0",
|
|
81
95
|
"ink-testing-library": "^4.0.0",
|
|
82
|
-
"
|
|
96
|
+
"mermaid": "12.3.0",
|
|
97
|
+
"playwright-core": "1.64.1",
|
|
98
|
+
"react-dom": "~19.3.1",
|
|
99
|
+
"release-it": "21.1.2",
|
|
83
100
|
"smol-toml": "^1.9.1",
|
|
101
|
+
"tailwind-merge": "3.7.0",
|
|
102
|
+
"tailwindcss": "4.3.4",
|
|
84
103
|
"tsup": "^9.0.0",
|
|
85
104
|
"typescript": "^5.9.3",
|
|
86
105
|
"vitepress": "^1.6.4",
|
|
87
|
-
"vitest": "^5.0
|
|
88
|
-
"wrangler": "
|
|
106
|
+
"vitest": "^5.1.0",
|
|
107
|
+
"wrangler": "4.157.0"
|
|
89
108
|
}
|
|
90
109
|
}
|
package/skills/rsp/SKILL.md
CHANGED
|
@@ -4,7 +4,7 @@ description: Coordinate authorized direct, Change or Group work; select capabili
|
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
author: oevery
|
|
7
|
-
version: "2026.
|
|
7
|
+
version: "2026.11.06.1"
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# RSP Core
|
|
@@ -15,15 +15,17 @@ Carry the authorized request through execution, applicable evidence and needed k
|
|
|
15
15
|
|
|
16
16
|
Before mutation, read nearest instructions and relevant CONTEXT; establish intent, authority and the existing owner from evidence. Use known paths and discover missing context as needed. An explicit WorkRef wins; multiple focus markers alone do not block work. Preserve dirty work and its owner. Before switching owners, check overlapping product and knowledge paths; overlap transfers no authority.
|
|
17
17
|
|
|
18
|
-
- **Direct:** a
|
|
19
|
-
- **Change:** one delivery/acceptance boundary
|
|
18
|
+
- **Direct:** a local, explicit modification with a clear result and verification boundary. Interface changes, multiple files, strict checks or repeated execution alone require no Change or tracking preflight.
|
|
19
|
+
- **Change:** one delivery/acceptance boundary whose implementation needs a shared record of related behavior, responsibility, compatibility or acceptance decisions. Actual staged delivery, handoff or deferred obligations can also require this record. It need not span sessions or split into independently deliverable parts. Read its six sections and relevant Specs; Focus is only a sparse recovery pointer.
|
|
20
20
|
- **Group:** independently acceptable/deliverable child Changes with dependencies or integration obligations. Read the Brief then select a child; the Brief is not executable work. File count, complexity and agent count alone do not create a Group.
|
|
21
21
|
|
|
22
|
+
Read-only advice, diagnosis and review create no implementation Change. Establish actual impact before selecting new work; reconsider when authorized scope materially expands, not for routine corrections or failed checks. Continue a matching existing owner only for the same outcome or remaining obligations; shared files or modules alone establish no ownership. A short plan or design discussion alone requires no Change. Preserve explicit user and project tracking requirements.
|
|
23
|
+
|
|
22
24
|
Load the [work model](references/work-model.md) when tracked identities are missing from context; required tracking cannot be bypassed by relabelling work Direct. Use rsp status for needed owner, dependency or recovery facts, and JSON for exact dependency data. Required dependency checks and fresh archive readiness still apply.
|
|
23
25
|
|
|
24
|
-
Use the CLI invocation selected by the project AGENTS entry
|
|
26
|
+
Use the CLI invocation selected by the project AGENTS entry; `rsp` in these Skills denotes that selection. Resolve needed settings through the selected CLI's successful `rsp config --json` summary. Reuse it until relevant drift or recovery; raw YAML is diagnostic only. Projection failure blocks choices depending on unknown settings, while independent authorized work continues.
|
|
25
27
|
|
|
26
|
-
Select capabilities from their descriptions and the task contract. Executors
|
|
28
|
+
Select capabilities from their descriptions and the task contract. Executors reuse applicable entrypoint and method text already in context, load missing or changed instructions, and inspect sources; Core consults method details when needed for its own work or a concrete coordination question. Select the responsibility needed now:
|
|
27
29
|
|
|
28
30
|
- rsp-shape: bounded read-only design or authorized planning; reopen planning only for material unresolved choices.
|
|
29
31
|
- rsp-implement: diagnosis, authorized implementation or accepted-finding correction, including ordinary own checks.
|
|
@@ -32,7 +34,7 @@ Select capabilities from their descriptions and the task contract. Executors loa
|
|
|
32
34
|
- rsp-review: fixed-scope read-only judgment or explicitly bounded structural discovery. Supporting checks remain within that review.
|
|
33
35
|
- rsp-commit: separately authorized exact local delivery; required for Git execution, with no Core substitute if unavailable.
|
|
34
36
|
|
|
35
|
-
Continue authorized same-scope work without another continuation request. A phase, role or method change alone requires no tool call, worker, review or test run. Required review, independent execution and protected operations still apply. For ownerless release checks, establish the exact candidate, check contract, baseline
|
|
37
|
+
Continue authorized same-scope work without another continuation request. A phase, role or method change alone requires no tool call, worker, review or test run. Required review, independent execution and protected operations still apply. For ownerless release checks, establish the exact candidate, check contract and effects authority, plus a baseline for any comparison; invent no Change or Verify owner.
|
|
36
38
|
|
|
37
39
|
## Execute and reconcile evidence
|
|
38
40
|
|
|
@@ -40,7 +42,7 @@ Implement owns ordinary self-checks. Main-agent inspection can assess results, b
|
|
|
40
42
|
|
|
41
43
|
Reuse traceable observations, checks and reviews while their target, acceptance boundary and relevant inputs still apply. Changed code, dependencies, configuration, tools or environment invalidate affected evidence; role changes and delivery-scope confirmation alone do not. Include excluded worktree inputs when assessing a staged slice, and recognize behavior changes in normative Specs or executable Skills even when stored as Markdown.
|
|
42
44
|
|
|
43
|
-
Check paths, diff, outcomes, omissions and evidence applicability. Reuse executor checks when applicable. Independent semantic review may use implementer test evidence; required independent execution must run.
|
|
45
|
+
Check paths, diff, outcomes, omissions and evidence applicability. Reuse executor checks when applicable. Independent semantic review may use implementer test evidence; required independent execution must run. Preserve original evidence and verdicts with their existing owner; apply the current work record rules to Change summaries. Add no evidence ledger.
|
|
44
46
|
|
|
45
47
|
For required correction/re-review, load [review convergence](references/coordination-review.md). Batch compatible findings into one correction, run covering checks, then review finding resolution and new risks in the correction. Stop for changed scope/authority, unsafe replay, missing required capability, non-convergence or no new discriminating evidence. Required failures remain incomplete.
|
|
46
48
|
|
|
@@ -56,9 +58,9 @@ Load [interruption recovery](references/coordination-recovery.md) for pause/resu
|
|
|
56
58
|
|
|
57
59
|
## Maintain records and prepare delivery
|
|
58
60
|
|
|
59
|
-
|
|
61
|
+
For tracked work, apply the [current work record rules](references/work-model.md#current-work-records) during execution. Load them only when absent from context. Update affected Tasks/Verify directly when scope, contract, design and knowledge remain accurate; do not append attempts or postpone current-state corrections until archive. Use the same work model for Blockers syntax. Passing checks or recovery alone adds no whole-document rewrite. Focus supplies only missing recovery context, never acceptance or authority.
|
|
60
62
|
|
|
61
|
-
Ordinary completion and checkpoint commits leave Change open
|
|
63
|
+
Ordinary completion and checkpoint commits leave Change open. Before a tracked commit, inspect actual remaining Tasks: incomplete work selects a checkpoint; all Tasks complete selects [delivery closeout](references/closeout.md), even with missing or failed verification. Reuse an explicit applicable checkpoint or closure choice without asking again. Also load closeout for established final delivery or an explicit close request. workflow.closeout is ask (default), auto or manual; no setting grants Git, push, publication, deployment, approval or human acceptance authority.
|
|
62
64
|
|
|
63
65
|
For necessary stable-knowledge updates, load [durable writeback](references/durable-review.md) to establish facts, update their owners and reconcile affected records. Final delivery or closure additionally requires whole-Change convergence and consistency checks. Reuse applicable evidence and fill missing or invalidated coverage and separately required review. Already-accurate records need no edit; current readiness is a lifecycle observation, not semantic acceptance.
|
|
64
66
|
|
|
@@ -66,7 +68,8 @@ Operate command-owned state through RSP commands. Persist only open and archived
|
|
|
66
68
|
|
|
67
69
|
Other conditional procedures:
|
|
68
70
|
|
|
69
|
-
- [
|
|
71
|
+
- [Architecture knowledge](references/architecture.md) when coordinating work on modeled structure or responsibilities.
|
|
72
|
+
- [Setup and repair](references/setup-repair.md) before initialization, managed-asset inspection, upgrade or repair.
|
|
70
73
|
- [Groups and dependencies](references/groups-dependencies.md) for grouped work.
|
|
71
74
|
- [Context migration](references/context-migration.md) when a root/relevant legacy CONTEXT-MAP.md is found or migration requested; preserve context, discovery alone grants no migration.
|
|
72
75
|
- [Conflict handling](references/conflict-handling.md) for an intersecting Git operation.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Architecture knowledge
|
|
2
|
+
|
|
3
|
+
Use when a task concerns a project's structure, responsibilities, dependencies or
|
|
4
|
+
architecture model. Follow relevant CONTEXT navigation to `.rsp/architecture.json`
|
|
5
|
+
when present. The model maps current structure and relationships to documents;
|
|
6
|
+
Specs own contracts and decisions retain rationale. An absent model does not
|
|
7
|
+
require creation or block work.
|
|
8
|
+
|
|
9
|
+
## Read
|
|
10
|
+
|
|
11
|
+
Read only the relevant nodes, relations and bound documents, using the selected
|
|
12
|
+
project CLI's `rsp architecture --node <id> --json` or the model directly.
|
|
13
|
+
Use the current checkout/worktree's content. Treat the model as navigation and
|
|
14
|
+
check decisive claims against the owning code and contracts; it does not override
|
|
15
|
+
them or establish a mandatory Skill execution order.
|
|
16
|
+
|
|
17
|
+
## Update
|
|
18
|
+
|
|
19
|
+
When an authorized implementation changes modeled responsibilities, boundaries,
|
|
20
|
+
dependencies or document bindings, update the affected model entries with the
|
|
21
|
+
implemented facts. Preserve stable IDs for unchanged identities and keep detailed
|
|
22
|
+
contracts in their documents. Proposed structure stays in the Change Design until
|
|
23
|
+
implemented. Read-only Shape and Review report discrepancies without editing.
|
|
24
|
+
If a needed model correction is outside the authorized scope, return the gap to
|
|
25
|
+
the owner rather than silently expanding the task.
|
|
26
|
+
|
|
27
|
+
When authorized to add a model, register one link in root CONTEXT, reusing an
|
|
28
|
+
existing entry or creating minimal CONTEXT if absent. Installation or upgrade
|
|
29
|
+
alone neither creates the model nor rewrites context.
|
|
30
|
+
|
|
31
|
+
## Check
|
|
32
|
+
|
|
33
|
+
For affected model entries, implementation self-checks and Review compare the
|
|
34
|
+
represented responsibilities and relations with the changed code and contracts.
|
|
35
|
+
After model or bound-document changes, use `rsp doctor` for structural and
|
|
36
|
+
document/chapter-reference checks, reusing applicable passing evidence under the
|
|
37
|
+
ordinary verification rules. A pass does not establish semantic agreement with
|
|
38
|
+
implementation. Keep this within the task's existing checks and review scope;
|
|
39
|
+
unrelated tasks need no whole-model read, extra review or unconditional doctor run.
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
# Final delivery and lifecycle closeout
|
|
2
2
|
|
|
3
|
-
Load for an established final-delivery boundary, an explicit close request, or a
|
|
3
|
+
Load for an established final-delivery boundary, an explicit close request, or a tracked commit whose Tasks are complete. Inspect actual remaining work and correct inaccurate records before classification. Task completion triggers a closure decision, not archive eligibility; missing or failed checks do not suppress the decision. Ordinary completion without a delivery request leaves work open. Reuse an explicit applicable checkpoint or closure choice. Checkpoints keep Change open and require their own applicable evidence.
|
|
4
4
|
|
|
5
5
|
## Decide closure independently of Git
|
|
6
6
|
|
|
7
7
|
Use the validated workflow.closeout setting from rsp config --json:
|
|
8
8
|
|
|
9
|
-
- ask (default):
|
|
10
|
-
- auto:
|
|
9
|
+
- ask (default): inspect the concrete boundary, existing evidence and specific gaps, then ask before staging whether to finish necessary checks and records, archive when eligible and commit if authorized, or make only an eligible checkpoint and leave work open. Do not require every check or final-record update before asking. A selected conditional closeout authorizes its necessary preparation and eligible archive; do not ask again when gates pass.
|
|
10
|
+
- auto: prepare closeout for a completed-task delivery or established final delivery and close only eligible work, subject to nearer denial.
|
|
11
11
|
- manual: close only on an explicit close request. Authorized final commits may leave work open and must report that fact.
|
|
12
12
|
|
|
13
|
-
Explicit refusal keeps work open. A decision to leave it open does not block an otherwise authorized commit. Neither policy, readiness nor archive grants Git authority. An explicit standalone close request can close eligible work without a commit.
|
|
13
|
+
Explicit refusal keeps work open. A decision to leave it open does not block an otherwise authorized, verified commit. Neither policy, readiness nor archive grants Git authority. An explicit standalone close request can close eligible work without a commit. A pass, a successor task or elapsed time alone selects no closure. After closeout is selected, resolve failures within existing authority; if blocked, report the gap without silently falling back to a checkpoint commit.
|
|
14
14
|
|
|
15
15
|
## Reconcile the final boundary
|
|
16
16
|
|
|
@@ -21,10 +21,10 @@ If inspection reports only `RSP project requires an update` without update autho
|
|
|
21
21
|
Apply this sequence only for established final delivery or preparation/audit of closure. Routine knowledge updates use the bounded writeback above.
|
|
22
22
|
|
|
23
23
|
1. **Verify outcome facts.** Establish the approved delivered result from current implementation, authoritative contracts and decisive evidence. Distinguish passed, failed, unverified and superseded conclusions. This establishes truth, not a preliminary full-document rewrite; plans and recovery notes alone cannot establish current facts.
|
|
24
|
-
2. **Distill Focus as needed.** Integrate only verified outcomes, evidence applicability or material limits missing from Change; no useful addition means no edit. Recovery state alone supplies no required acceptance evidence.
|
|
24
|
+
2. **Distill Focus as needed.** Integrate only verified outcomes, evidence applicability or material limits missing from Change; no useful addition means no edit. Resolve or safely transfer outstanding recovery obligations before discarding their notes. Recovery state alone supplies no required acceptance evidence; clearing Focus cannot substitute for knowledge writeback.
|
|
25
25
|
3. **Write back knowledge as needed.** Using the verified result and Change delta, decide current facts and lasting rationale independently using the methods below. Update existing owners only when justified. No stable change means no edit; a delivered contract that leaves its authoritative Spec stale requires correction before closeout. Do not copy the whole Change or its verification history into knowledge documents.
|
|
26
|
-
4. **Converge the whole Change.** After necessary writeback, use `rsp-doc`
|
|
27
|
-
5. **Check final consistency
|
|
26
|
+
4. **Converge the whole Change.** After necessary writeback, use `rsp-doc`'s artifact method to reconcile all six sections under the [current work record rules](work-model.md#current-work-records), including Verify admission. Retain the delivered delta, relevant design and knowledge-update references; leave already-converged text unchanged. Remove obsolete plans and duplicate or misplaced content. Group integration conclusions stay in the Brief. Without Doc, perform the same bounded convergence locally without installation or replacing required Review.
|
|
27
|
+
5. **Check final consistency.** Compare the final Change and knowledge owners with the verified result; an earlier review of another revision or a passing readiness command proves no text quality. Reuse applicable implementation/test evidence, check new knowledge/document edits, and fill only missing or invalidated coverage. Document-only writeback and archive preparation do not themselves invalidate code checks. Retain separately required Review as an unresolved obligation until its result is available. Fix prose defects in scope, but return material contract or implementation contradictions to the decision, implementation or verification owner. Return unresolved Required failures with the convergence result.
|
|
28
28
|
|
|
29
29
|
These are dependency constraints, not persisted phases or mandatory separate tool calls. Edit only what needs writeback; required updates cannot be waived. Resolve stale statements from verified outcomes. Preserve settled planning, unrelated style and original evidence/verdict owners; add no no-op reports. Author checks establish no independent review.
|
|
30
30
|
|
|
@@ -75,10 +75,7 @@ Create or update a Decision Record only for a hard-to-reverse or surprising choi
|
|
|
75
75
|
|
|
76
76
|
Never use generated indexes, archives, or the managed RSP block as ordinary writeback targets. Keep narrative history, debugging notes, task chronology, and transient evidence out of Specs and Decisions.
|
|
77
77
|
|
|
78
|
-
##
|
|
78
|
+
## Return the convergence result
|
|
79
79
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
## Deliver with explicit boundaries
|
|
83
|
-
|
|
84
|
-
[Delivery closeout](closeout.md) owns checkpoint/final classification, the ask/auto/manual closure decision, Group-close sequence and exact Git handoff. Ordinary completion leaves work open. Apply the selected policy and current gates regardless of delegation. Git delivery separately needs explicit authority for one independently reviewable logical commit; closure grants none. Reuse applicable evidence.
|
|
80
|
+
Return the converged records and unresolved gaps to [delivery closeout](closeout.md),
|
|
81
|
+
which owns the closure decision, archive gates and Git handoff.
|
|
@@ -2,11 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
Load when tracked work needs a recovery snapshot, a Capsule needs inspection or replacement, or a portable continuation handoff is required. Same-session worker continuation alone uses [coordinated interruption and recovery](coordination-recovery.md), not this format. Short direct tasks need no new WorkRef or Capsule.
|
|
4
4
|
|
|
5
|
-
Core owns the selected WorkRef's
|
|
5
|
+
Core owns the selected WorkRef's optional recovery snapshot. At a pause, handoff or recovery-relevant checkpoint, create or replace it only when the existing snapshot is insufficient or stale. Keep only context unavailable from the Change, current workspace or existing evidence whose loss would make continuation unsafe or require costly repeated discovery. Ordinary same-session progress needs no update. Refer to Change items rather than maintain another task, verification or blocker list; a delivery blocker belongs in Change, with only missing operational detail here.
|
|
6
|
+
|
|
7
|
+
Retain the current recovery position, necessary evidence pointers, next action and resume conditions. Unfinished experiments, pending cleanup and operations with uncertain effects may matter; a ruled-out approach needs only its still-applicable conclusion when repeating it would be costly. Do not record command sequences, attempts, repair/test rounds or how the diagnosis evolved. Use `rsp focus <work-ref> --capsule-file <path|->` to replace the snapshot as facts change, not append history.
|
|
8
|
+
|
|
9
|
+
Remove notes when their obligations are discharged, obsolete or safely transferred to their existing owner. Do not clear unresolved effects or hard-to-reconstruct safety context merely to shorten the snapshot. An empty capsule file clears notes while retaining the focus marker; cleanup alone does not authorize unfocus, closure or deletion of evidence. Respect nearer mutation restrictions. For Group work use the selected child's Capsule, not a Group marker.
|
|
6
10
|
|
|
7
11
|
The existing v1 format is bounded to 4096 UTF-8 bytes: one leading `<!-- rsp-focus:v1 -->`, blank lines, exactly one non-empty single-line `Current`, `Evidence`, `Next`, and at most one non-empty single-line `Resume check`. No other non-empty lines are valid. Keep raw logs/diffs, runtime identifiers, host paths, credentials and execution history out. The marker path selects work; its notes grant no authority or acceptance and are never worker transport or controller state.
|
|
8
12
|
|
|
9
|
-
Before closeout, use the [durable-writeback sequence](durable-review.md)
|
|
13
|
+
Before closeout, use the [durable-writeback sequence](durable-review.md) to establish outcome facts and update their owners as needed. No useful Focus addition requires no edit; recovery obligations still need disposition before clearing the marker. Detailed evidence stays with its existing owner, never solely in the Capsule.
|
|
10
14
|
|
|
11
15
|
When accepted work remains, return a localized continuation with these semantic fields in order: `WorkOwner`, `Authority`, `Current state`, `Changed artifacts`, `Fresh verification`, `Blockers`, `Next action`. A Change WorkOwner uses its WorkRef; a Group WorkOwner uses its Group reference and direct child Changes. Preserve technical values; the continuation is not a second state store.
|
|
12
16
|
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
# Setup and repair
|
|
2
2
|
|
|
3
|
-
Load before initializing, inspecting or updating RSP-managed assets.
|
|
3
|
+
Load before initializing, inspecting or updating RSP-managed assets, including upgrades.
|
|
4
4
|
|
|
5
5
|
Use the runtime selected in AGENTS: an exact package pin in .rsp/version for
|
|
6
6
|
consumer projects, or this checkout's built CLI when .rsp/source explicitly
|
|
7
|
-
selects source mode. The two markers are mutually exclusive.
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
selects source mode. The two markers are mutually exclusive. Do not substitute a
|
|
8
|
+
published package for source mode because version strings match. An authorized
|
|
9
|
+
package upgrade deliberately selects its exact target CLI and runs its update for
|
|
10
|
+
the complete managed environment; source update keeps the local selection. Never
|
|
11
|
+
substitute @latest, a version range or an unverified global binary; package fetching
|
|
12
|
+
requires separate authority. Upgrade notices grant no migration authority.
|
|
10
13
|
|
|
11
14
|
- **Initialize:** rsp init [--agents-mode managed|print] [--with-project-setup] creates missing scaffolding and the complete core suite. Existing user files remain unchanged. Retry an incomplete init with the same target; repeated init cannot adopt a different pinned version. Retired Rules require update instead.
|
|
12
15
|
- **Update:** rsp update replaces the selected package's owned assets; optional --dry-run previews without writes. No separate installation or migration switches are needed.
|
|
@@ -33,8 +36,10 @@ Concurrent external edits and crash recovery are unsupported. No recovery entry
|
|
|
33
36
|
|
|
34
37
|
## Project knowledge
|
|
35
38
|
|
|
36
|
-
Keep architecture in .rsp/specs/design.md, contracts in
|
|
37
|
-
CONTEXT and scoped instructions outside the managed AGENTS block.
|
|
39
|
+
Keep architecture contracts in .rsp/specs/design.md, domain contracts in their Specs, navigation in
|
|
40
|
+
CONTEXT and scoped instructions outside the managed AGENTS block. For an existing
|
|
41
|
+
or explicitly requested architecture model, use [architecture knowledge](architecture.md)
|
|
42
|
+
for its relationship to contracts and its context entry. Use rsp specs to
|
|
38
43
|
query knowledge. A legacy context map selects [context migration](context-migration.md);
|
|
39
44
|
discovery alone grants no merge or deletion. Semantic writeback and archive decisions
|
|
40
45
|
remain outside deterministic setup. Missing required Skills stop dependent work;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# Shared work model
|
|
2
2
|
|
|
3
|
-
Read when selecting, reporting or operating a tracked RSP owner and
|
|
3
|
+
Read when selecting, reporting or operating a tracked RSP owner, or writing/reviewing its records, and the relevant definitions are not already available in context. Direct untracked work needs no RSP identity. These shared definitions require no Core execution.
|
|
4
4
|
|
|
5
5
|
## Work shapes
|
|
6
6
|
|
|
7
|
-
Direct
|
|
7
|
+
Direct handles local explicit modifications. Change retains one acceptance/delivery boundary whose related implementation decisions or actual staged, handoff or deferred obligations need a shared record. Session duration, interface edits and strict verification alone do not select a Change; independent slices are not required. Group coordinates independently acceptable/deliverable child Changes with dependencies or integration obligations. Complexity, file count and worker count alone select neither Group nor delegation. Agent topology is a separate execution choice. Core owns selection and scope reassessment; existing ownership follows the same outcome or remaining obligations, not shared paths.
|
|
8
8
|
|
|
9
|
-
Ordinary completion and checkpoint commits leave a Change open.
|
|
9
|
+
Ordinary completion and checkpoint commits leave a Change open. A tracked commit with completed Tasks, established final delivery or an explicit close request uses the closeout policy. Task completion triggers the decision even when verification remains incomplete; eligibility still gates archive. Reopen is exceptional recovery, not the normal iteration path.
|
|
10
10
|
|
|
11
11
|
## Identity and ownership
|
|
12
12
|
|
|
@@ -24,4 +24,14 @@ Identity, focus, readiness, dependency state and capability availability grant n
|
|
|
24
24
|
|
|
25
25
|
In a Change's Blockers, record only unresolved dependencies or decisions preventing required work. Write standalone `None` when none remain; keep non-blocking verification limits in Verify. Exact prerequisites use ``- requires `<work-ref>`: <reason>``. Other prose, including an explanation after `None`, remains an external blocker declaration.
|
|
26
26
|
|
|
27
|
-
Use only the selected owner's relevant artifacts and authoritative project context. Installed files are shared across the suite, but separate workers do not inherit one another's loaded instructions. Reuse applicable definitions in the same context; obtain this file before depending on missing definitions. If the shared resource is unavailable, report an incomplete suite and stop
|
|
27
|
+
Use only the selected owner's relevant artifacts and authoritative project context. Installed files are shared across the suite, but separate workers do not inherit one another's loaded instructions. Reuse applicable definitions in the same context; obtain this file before depending on missing definitions. If the shared resource is unavailable, report an incomplete suite and stop dependent actions rather than inventing a substitute or installing implicitly.
|
|
28
|
+
|
|
29
|
+
## Current work records
|
|
30
|
+
|
|
31
|
+
A Change retains six sections: Proposal, Spec, Design, Tasks, Verify and Blockers. During work it states the current authorized intent, approach and actual progress; at closeout it records the delivered outcome. Update affected content as facts change instead of appending rounds, dates or session summaries. Keep a date only when it matters to provenance or applicability. Record cleanup never authorizes dropping unmet scope or acceptance obligations.
|
|
32
|
+
|
|
33
|
+
- **Tasks:** keep current checkable work and completion. Replace, split or merge tasks within authorized scope; reopen or rewrite invalidated results. Routine attempts, fixes, retries and individual check runs are not new tasks. Completion proves neither verification nor independent or human acceptance.
|
|
34
|
+
- **Verify:** allow only Required/Optional checklists and an optional `### Conclusions` with short, non-nested bullets. No prose paragraphs, tables, logs or process subsections. Check applicable passes; uncheck failed, unrun or invalidated coverage. Revise check items when authorized scope or acceptance changes without dropping unmet obligations. An item may include a brief result or evidence locator, not repeated results, run counts or repair history. Conclusions hold only current acceptance limits, evidence applicability conditions or required failure dispositions that the checklist cannot express; one fact per bullet. Replace stale conclusions rather than append rounds. Preserve full-review, correction-only re-review and human-acceptance scope. Remove resolved findings unless they still affect acceptance, evidence reuse or required audit. Keep detailed evidence with its existing owner.
|
|
35
|
+
- **Focus:** keep only additional context needed to resume safely or avoid costly repeated discovery; refer to Change state without maintaining a second task, verification or blocker list. The conditional [Focus method](focus-continuation.md) owns replacement and cleanup. Ordinary progress needs no snapshot.
|
|
36
|
+
|
|
37
|
+
Keep decision rationale and useful outcome comparisons in their owning sections; they do not exempt Verify text from the admission rule above. Do not relocate discarded narration into another section, Focus, an appendix or a new report. Prose cleanup does not remove tests, raw evidence, reports, conversation or Git history.
|
|
@@ -4,7 +4,7 @@ description: Inspect or create one authorized exact-scope local commit for direc
|
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
author: oevery
|
|
7
|
-
version: "2026.
|
|
7
|
+
version: "2026.11.06.1"
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# RSP Commit
|
|
@@ -36,7 +36,7 @@ Purpose is separate from kind:
|
|
|
36
36
|
- A checkpoint keeps the Change open and delivers a verified current slice without claiming completed acceptance, closing an issue or requiring archive.
|
|
37
37
|
- A terminal delivery claims completion only for its selected boundary. Tracked terminal inputs require complete Tasks, decisive Required Verify and no active blocker; legacy unclassified Verify is Required. Optional omissions remain explicit but do not block. Direct work uses its own acceptance, not an invented lifecycle gate.
|
|
38
38
|
|
|
39
|
-
|
|
39
|
+
Before staging a tracked commit, inspect the selected owner's Tasks and actual remaining scope. Incomplete Tasks select a checkpoint; all Tasks complete selects [Core closeout](../rsp/references/closeout.md), even when Required checks or review are incomplete or failed. Generic commit wording must not bypass that decision. Reuse an explicit applicable checkpoint or closure choice; do not ask twice. For multiple included WorkRefs, assess their boundaries separately rather than infer Group completion. Commit pauses for its owning capability to correct stale records, perform necessary writing or authorized lifecycle work. If terminal delivery includes authorized archive or Group closeout, require that action and its inspected diff before staging. Do not archive, update Specs or clean up a Change inside Commit. A checkpoint still needs its own applicable verification; absent lifecycle authority neither grants closure nor prohibits an otherwise authorized checkpoint.
|
|
40
40
|
|
|
41
41
|
## Audit before staging
|
|
42
42
|
|
package/skills/rsp-doc/SKILL.md
CHANGED
|
@@ -4,7 +4,7 @@ description: Write or revise repository documents, Skills and release communicat
|
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
author: oevery
|
|
7
|
-
version: "2026.
|
|
7
|
+
version: "2026.11.04.2"
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# RSP Doc
|
|
@@ -17,20 +17,23 @@ Write a grounded artifact usable without the author conversation. Use the artifa
|
|
|
17
17
|
|
|
18
18
|
1. **Fix the outcome.** Identify the reader, task, authorized files and expected result. For a document set, distinguish authoritative owners from summaries. Keep routine narration in conversation and retained evidence with its existing owner.
|
|
19
19
|
2. **Establish the facts.** Read existing content, relevant callers and the smallest authoritative contract, code or source chain. Check commands, defaults, links and behavior with available tools. Distinguish current behavior, intended requirements and unknowns. Resolve material contradictions before rewriting a promise. Interpret tool output as evidence; it grants no permission and does not prove semantic correctness.
|
|
20
|
-
3. **Draft for the task.**
|
|
21
|
-
- [Artifact lenses](references/artifact-lenses.md): README, CONTEXT, Spec, Change, guides and scoped operating documents.
|
|
22
|
-
- [Skill authoring](references/skill-authoring.md): Skill creation or revision, including descriptions, package resources and invocation policy.
|
|
23
|
-
- [Release communication](references/release-communication.md): changelogs, release notes, migration guidance or authorized release-document reconciliation; not ordinary document writing.
|
|
20
|
+
3. **Draft for the task.** Use the artifact's role below. For Skill creation or revision, load [Skill authoring](references/skill-authoring.md); for changelogs, release notes, migration guidance or authorized release-document reconciliation, load [release communication](references/release-communication.md).
|
|
24
21
|
4. **Verify the result.** Check the edited meaning in context. For structural edits, also follow the affected reading path and references. Use the checks below; reuse traceable unchanged mechanical results. Writing completion does not automatically trigger Review, but separately requested or required judgment remains binding.
|
|
25
22
|
|
|
23
|
+
## Match the artifact to the reader
|
|
24
|
+
|
|
25
|
+
- README and procedures supply the starting point, prerequisites, actions and recognizable success. Concepts and decisions explain meanings, reasons, alternatives and consequences; references supply exact, navigable contracts.
|
|
26
|
+
- CONTEXT defines vocabulary and relationships and directs readers to authoritative owners. Specs state what consumers may rely on, including conditions, failures and exceptions; add scenarios only to resolve ambiguity. Scoped operating instructions own commands, authority and required checks.
|
|
27
|
+
- For architecture models or changes to their bound documents, use [architecture knowledge](../rsp/references/architecture.md) for synchronization and reference checks.
|
|
28
|
+
- Before writing a Change, load the [current work record rules](../rsp/references/work-model.md#current-work-records) when absent from context; the same resource owns Verify admission and Blockers syntax. Keep its six sections current during iteration and reconcile the whole record for closeout. Apply those rules to existing text as well as additions.
|
|
29
|
+
|
|
26
30
|
## Check facts and reading paths
|
|
27
31
|
|
|
28
32
|
Use the checks relevant to the change:
|
|
29
33
|
|
|
30
|
-
- Check whether readers can find information, understand conditions, act or judge compliance, and recognize unknowns.
|
|
31
34
|
- Check affected links, anchors, examples and metadata with existing tools. Execute examples only within safe authorized scope.
|
|
35
|
+
- Keep repository references portable: use project-root-relative file citations and document-relative Markdown links, following any existing machine-field path contract. Keep execution-root locations separate from durable file references; retain necessary external locations, original evidence and host-required display paths without copying local checkout prefixes into authored repository references.
|
|
32
36
|
- For linked artifacts, compare shared claims, terminology, defaults and handoffs against their authoritative owner. Correct authorized summaries and links without copying full definitions or changing unassigned owners. Report out-of-scope contradictions to their owner.
|
|
33
|
-
- Recheck facts, quantifiers, defaults, failures, permissions and terminology after editing. Report actual checks and remaining gaps.
|
|
34
37
|
- API comments and embedded guidance: compare claims with their contract and implementation without assuming either side correct. Keep ordinary inline comments locally accurate and useful: retain constraints, rationale or usage that nearby code does not make clear, and remove restatement that adds no information; no full writing workflow is needed. Compiler/tool annotations retain implementation ownership.
|
|
35
38
|
- Examples: label illustrative pseudocode or incomplete snippets; check copyable commands against real prerequisites, outcomes and safe use without inferring execution or installation authority.
|
|
36
39
|
|
|
@@ -47,12 +50,12 @@ For a failed command, inspect cause and actual effects before recovery. Change a
|
|
|
47
50
|
|
|
48
51
|
## Write precisely
|
|
49
52
|
|
|
50
|
-
-
|
|
53
|
+
- Explain unfamiliar concepts and mechanisms needed for the reader to reason, troubleshoot or assess guarantees. Do not force every artifact into an action list, tutorial or closing next step.
|
|
51
54
|
- State the actor, action and object directly. Prefer short, complete sentences when easier to follow. Separate independent actions; preserve causal and conditional links. Give each paragraph one useful purpose. Put prerequisites before use, conditions beside actions and exceptions beside their rules. Keep necessary local context; link branch-only detail with its reading condition and purpose.
|
|
52
55
|
- Number steps when their order matters; make each step a bounded action. Use peer bullets for independent items and connected prose for reasoning. Use tables for useful fixed mappings/comparisons, not branching Skill judgments.
|
|
53
|
-
- Remove
|
|
56
|
+
- Remove filler, repetition and irrelevant chronology. Keep author voice, decision-relevant reasoning and required audit evidence. Prefer concrete actions; use contrasts or examples when they resolve a real ambiguity. No fixed sentence length, list size or compression ratio defines quality.
|
|
54
57
|
- Preserve negation, conditions, exceptions, permissions, quantities, units and certainty. Merge failure explanations with the same decision effect. Retain permission, outcome, stop and safe-recovery conditions, including rare boundaries preventing unauthorized action, serious harm or unsafe replay. Keep incident details with their evidence owner. Do not turn a proposal or unknown into a verified fact. Shorter wording proves no behavioral equivalence.
|
|
55
|
-
- Wording edits preserve meaning,
|
|
58
|
+
- Wording edits preserve meaning, ownership, anchors and technical literals. Structural edits may merge, move or reorder content within scope, checking completeness and references. When the request authorizes simplifying instructions, remove an unnecessary obligation rather than merely restating it; verify the remaining behavior and safety. Wording-only authority does not permit that contract change.
|
|
56
59
|
- Use ordinary words for conjunctions. Preserve technical syntax; reserve | for closed alternatives, / for established pairs, → for defined transitions and : for label/value boundaries.
|
|
57
60
|
|
|
58
61
|
## Preserve ownership
|
|
@@ -6,7 +6,7 @@ Use for creating or revising a Skill. Apply Doc's language, expression and autho
|
|
|
6
6
|
|
|
7
7
|
- For creation, resolve the goal, inputs and observable result before choosing structure.
|
|
8
8
|
- Honor an explicit destination; otherwise use project instructions and host constraints. Check for existing content before creating files.
|
|
9
|
-
- For revision, inspect the authored package and its callers.
|
|
9
|
+
- For revision, inspect the authored package and its callers. State the revision's purpose and supporting evidence; preserve unrelated adaptations.
|
|
10
10
|
- Start with SKILL.md. Use a host initializer when useful; add resources only for a real task need.
|
|
11
11
|
- Preserve existing packages and global configuration. Creation is not installation or publication.
|
|
12
12
|
|
|
@@ -20,7 +20,7 @@ Use for creating or revising a Skill. Apply Doc's language, expression and autho
|
|
|
20
20
|
## Make execution concise
|
|
21
21
|
|
|
22
22
|
- Organize the ordinary task around its goal, necessary inputs, authorized action, completion evidence and real stops. Choose headings for the task, not a universal template. Continue ordinary authorized checks. Prescribe order only for correctness, safety or contract dependencies.
|
|
23
|
-
-
|
|
23
|
+
- Revise the existing owner before adding a rule for the same decision. Merge repeated conditions and remove instructions no longer needed within the authorized contract delta. An incident warrants a new constraint only for a reusable gap, not noncompliance or tool/fixture failure alone.
|
|
24
24
|
- Keep shared guidance and necessary local safety context visible. Link substantial branch-only knowledge with its reading condition and purpose; ordinary tasks need no unrelated recovery or delivery detail. A short Skill needs no router or extra files. Split or merge resources only when it improves the reading path, not when it merely moves mandatory text. Honor the declared distribution boundary. RSP ships as a suite: shared concepts may reference Core resources directly; independent Skills keep their own resource closure. Never depend on a maintainer repository Spec.
|
|
25
25
|
- Retain generic teaching or old model-compensation instructions only for a current task-specific need. A newer model label alone proves neither redundancy nor safe removal of a constraint.
|
|
26
26
|
- Reuse tools for deterministic work; the Skill owns method selection and interpretation within its authority. Preserve named mandatory commands, provenance, independence and protected operations when replacing a tool-only method. Add a script only when repetition or fragility warrants it, and run changed helpers safely. Check incoming links before moving resources.
|
|
@@ -4,7 +4,7 @@ description: Diagnose unexplained symptoms read-only or implement authorized bou
|
|
|
4
4
|
license: MIT
|
|
5
5
|
metadata:
|
|
6
6
|
author: oevery
|
|
7
|
-
version: "2026.
|
|
7
|
+
version: "2026.11.04.3"
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# RSP Implement
|
|
@@ -22,12 +22,18 @@ Query RSP settings only for a decision depending on an unresolved value. Use the
|
|
|
22
22
|
Mutation requires one of:
|
|
23
23
|
|
|
24
24
|
- A bounded direct task with explicit scope and acceptance; no WorkRef or RSP writeback.
|
|
25
|
-
-
|
|
25
|
+
- A ready Change selected by explicit WorkRef or resolved from the FocusSet, with settled acceptance and exact product authority. Multiple markers are candidates; a Group Brief is context, not executable work.
|
|
26
26
|
|
|
27
27
|
Diagnosis-only investigates a bounded symptom read-only without a ready mutation owner or WorkRef. A suspected cause grants no mutation. For an authorized fix, diagnose an unexplained cause first; after confirmation continue the same request only with settled owner, scope and mutation authority.
|
|
28
28
|
|
|
29
29
|
Inspect applicable instructions, the selected Change/Brief when tracked, relevant Specs and decisions, and the owning code and tests. Use supplied paths and discover missing context as needed; a dispatch summary does not replace source inspection. Operate only in the execution location supplied by the host.
|
|
30
30
|
|
|
31
|
+
For optional context discovery, distinguish no matches from execution errors: no matches should not block independent subsequent reads, while missing required inputs and actual execution errors still need handling.
|
|
32
|
+
|
|
33
|
+
Within the confirmed checkout/worktree, prefer paths relative to the command or tool's explicit working directory for repository reads, searches and edits. Reuse the known execution root; do not switch worktrees to make a path resolve. Use absolute paths when the tool requires them, accessing files outside that root, or explicitly locating another authorized root; a path alone does not establish checkout identity or revision.
|
|
34
|
+
|
|
35
|
+
When work affects modeled structure, responsibilities, dependencies or bindings, use [architecture knowledge](../rsp/references/architecture.md) for reading, synchronization and own checks.
|
|
36
|
+
|
|
31
37
|
Select the method from the request and evidence:
|
|
32
38
|
|
|
33
39
|
- **Diagnosis:** for an unexplained symptom or diagnosis-only request, load [diagnosis](references/diagnosis.md) before any fix. Diagnosis-only remains read-only and ends with cause evidence or an unresolved discriminating check.
|
|
@@ -45,19 +51,17 @@ Git delivery, publication, deployment, approval, and out-of-scope deletion requi
|
|
|
45
51
|
|
|
46
52
|
## Admit boundaries and permanent tests
|
|
47
53
|
|
|
48
|
-
Inspect existing owners and callers
|
|
54
|
+
Inspect existing owners and callers. Prefer, in order, no addition when the outcome is already met, repository reuse, platform or standard-library facilities, existing dependencies, then the smallest complete implementation. Keep rules with their invariants; do not force unrelated responsibilities through flags or speculative interfaces.
|
|
49
55
|
|
|
50
56
|
Hide internal representation and coordination behind the necessary caller contract, including ordering and failures. Judge decomposition by what callers and maintainers must understand, not file size or layer count.
|
|
51
57
|
|
|
52
|
-
Add
|
|
58
|
+
Add defensive logic or a new boundary only for an explicit requirement or an evidenced producer, production consumer, trust/lifecycle transition and material consequence. Typed same-process values and imagined or test-only consumers do not establish that need. Backups, snapshots and digests likewise need a real recovery or independent identity/integrity consumer; do not create them as routine preflight. Preserve required recovery safeguards and independently trusted integrity checks.
|
|
59
|
+
|
|
60
|
+
Test stable public behavior with real internal collaborators by default. Substitute external or nondeterministic boundaries as needed. Focused unit tests remain useful for meaningful algorithms, parsers and critical boundaries; choose evidence by risk, not a per-function/file/branch allocation or unit/integration ratio.
|
|
53
61
|
|
|
54
|
-
|
|
62
|
+
Reuse sufficient existing evidence before adding a permanent test. A new test needs a distinct plausible regression, observable consequence and evidence gap worth its maintenance. Exercise the consumer outcome through the relevant production path; an already-covered forwarding hop adds no confidence.
|
|
55
63
|
|
|
56
|
-
|
|
57
|
-
- **Expectations and setup:** derive outcomes from the agreed contract or an independent example, not the tested computation. If fixture construction, platform behavior, fault injection or scheduling leaves the target condition uncertain, inspect the arranged state or use a targeted probe. This requires no precondition assertion or mutation run for every test.
|
|
58
|
-
- **Real consequence:** use real collaborators when fast, deterministic and practical; otherwise substitute the necessary boundary while preserving the relevant behavior. Exercise consumer-owned behavior through covered downstream adapters or forwarding hops. A nearest-spy, emitted-message or forwarding assertion covering only an already-covered hop adds insufficient evidence, even in an existing test file.
|
|
59
|
-
- **Assertions:** one final-message assertion can suffice for the agreed consumer outcome. Pin error details or interaction counts/order only when the contract needs them; otherwise assert outcomes and effects, including rejection.
|
|
60
|
-
- **Maintenance:** keep scenario-defining inputs and assertions visible; share incidental setup for clarity rather than repetition alone. Keep nearby tests protecting independent consequences, but do not allocate tests per touched file, wrapper, hop, branch or constant.
|
|
64
|
+
Derive expectations from the contract or independent examples. Assert outcomes and effects, including rejection; pin details, counts or order only when contract-relevant. Private structure, source wording and constants compared with themselves are not contracts; public defaults can be. When setup leaves the target condition uncertain, inspect it or use a targeted probe rather than adding ritual preconditions. Keep scenario-defining inputs and assertions visible and share incidental setup when clearer.
|
|
61
65
|
|
|
62
66
|
## Continue within the evidence boundary
|
|
63
67
|
|
|
@@ -67,7 +71,7 @@ Stop for a repeated failure without new discriminating evidence, non-convergence
|
|
|
67
71
|
|
|
68
72
|
## Implement and verify
|
|
69
73
|
|
|
70
|
-
Implement the smallest complete slice.
|
|
74
|
+
Implement the smallest complete slice. For authorized Change updates, load the [current work record rules](../rsp/references/work-model.md#current-work-records) when absent from context. Update affected work and evidence as facts change; reopen invalidated results rather than append fix/retry tasks or check history. Plan or contract changes retain their decision authority. Direct work reports outcomes without RSP artifact mutation.
|
|
71
75
|
|
|
72
76
|
Use `rsp-doc` for document/Skill writing and whole-Change convergence within existing authority. Local wording fixes and mechanical status/evidence updates needing no whole-record reconciliation remain direct. Without Doc, write grounded guidance and check affected examples/links locally. Author self-checks never certify independent Review.
|
|
73
77
|
|
|
@@ -75,7 +79,7 @@ After final mutation, establish minimum sufficient evidence for tracked Required
|
|
|
75
79
|
|
|
76
80
|
- Reuse traceable passing results when the tested boundary and relevant code, dependencies, configuration, tools, inputs and environment still apply. Phase changes and unrelated edits do not invalidate evidence.
|
|
77
81
|
- Run missing, failed or invalidated checks and risk-justified additions, including checks affected by integration. Named checks retain their method and coverage; explicit reruns and independent execution remain binding.
|
|
78
|
-
-
|
|
82
|
+
- If no verification method is prescribed, choose the lowest-cost existing test, static check, build or other evidence that decisively establishes acceptance. A new test is not required.
|
|
79
83
|
- Match the actual target, inputs, coverage and completion to the declared check. Invocation errors or incomplete observations do not by themselves prove a product defect. Record command, tested scope, result, source and omissions, distinguishing reused evidence from new execution. Failed, unavailable or untraceable evidence cannot establish completion.
|
|
80
84
|
|
|
81
85
|
Before completion, apply the same admission criteria to retained tests. Remove disposable probes, fixtures and helpers that add no distinct future confidence unless retention is required by user, Change or project authority; establish sufficient evidence for the final retained state.
|