peaks-cli 1.0.15 → 1.0.17
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/bin/peaks.js +0 -0
- package/dist/src/shared/version.d.ts +1 -1
- package/dist/src/shared/version.js +1 -1
- package/package.json +1 -1
- package/skills/peaks-prd/SKILL.md +46 -1
- package/skills/peaks-qa/SKILL.md +165 -15
- package/skills/peaks-rd/SKILL.md +188 -56
- package/skills/peaks-sc/SKILL.md +56 -5
- package/skills/peaks-solo/SKILL.md +374 -126
- package/skills/peaks-solo/references/artifact-contracts.md +60 -2
- package/skills/peaks-txt/SKILL.md +48 -1
- package/skills/peaks-ui/SKILL.md +175 -18
package/skills/peaks-sc/SKILL.md
CHANGED
|
@@ -25,6 +25,17 @@ Then display: `Peaks Skill: peaks-sc | Gate: startup | Next: <one short action>`
|
|
|
25
25
|
- track artifact repository pointers when external sync or git retention is explicitly authorized;
|
|
26
26
|
- record sync state and rollback points.
|
|
27
27
|
|
|
28
|
+
## Mandatory per-request artifact
|
|
29
|
+
|
|
30
|
+
Every SC invocation must write a change-control record at `.peaks/<id>/sc/change-control/<rid>.md` linking:
|
|
31
|
+
|
|
32
|
+
- impact evidence (`peaks sc impact` output);
|
|
33
|
+
- retention evidence (`peaks sc retention` output);
|
|
34
|
+
- validation result (`peaks sc validate` output);
|
|
35
|
+
- boundary record (`peaks sc boundary` output).
|
|
36
|
+
|
|
37
|
+
Solo reads this record before declaring the workflow complete.
|
|
38
|
+
|
|
28
39
|
## Refactor role
|
|
29
40
|
|
|
30
41
|
Each refactor slice must leave a traceable local artifact boundary in `.peaks/<session-id>/` by default. A git commit boundary containing code changes and PRD/RD/QA/TXT intermediate artifacts is required only when the user or active profile explicitly authorizes committing artifacts.
|
|
@@ -41,14 +52,20 @@ Use gstack as a concrete source-control and release workflow reference for the `
|
|
|
41
52
|
|
|
42
53
|
Project `.claude/memory` is the primary source for durable project memory. At approved checkpoints, use `peaks memory sync --project <path> --workspace <artifact-workspace> --apply` to back up the full project memory directory into the artifact repository workspace; do not treat the artifact backup as a second writable memory source.
|
|
43
54
|
|
|
44
|
-
##
|
|
55
|
+
## Commit boundary derivation
|
|
45
56
|
|
|
46
|
-
When `openspec/changes/<id>/tasks.md` exists, derive commit boundaries from it
|
|
57
|
+
**Primary path — OpenSpec available:** When `openspec/changes/<id>/tasks.md` exists, derive commit boundaries from it:
|
|
47
58
|
|
|
48
59
|
- `peaks openspec to-rd <id> --project <repo> --json` returns `commitBoundaries[]`, one entry per tasks.md heading.
|
|
49
60
|
- Default to one commit per heading. Each commit message references the change-id and the section heading.
|
|
50
61
|
- If implementation produces diffs outside any todo, surface that as out-of-scope before closing SC.
|
|
51
62
|
|
|
63
|
+
**Fallback — OpenSpec missing:** When `openspec/` does not exist or `peaks openspec to-rd` fails:
|
|
64
|
+
|
|
65
|
+
- derive commit boundaries from the RD request artifact's slice spec and the current `git diff --stat`;
|
|
66
|
+
- group changed files by module or feature area, one commit per group;
|
|
67
|
+
- record in the change-control artifact that boundaries were derived from git diff, not OpenSpec, so downstream reviewers know the source.
|
|
68
|
+
|
|
52
69
|
Concrete rules: `references/openspec-commit-boundaries.md`.
|
|
53
70
|
|
|
54
71
|
## Default runbook
|
|
@@ -57,29 +74,45 @@ Use this sequence when SC owns the change-control pass for a refactor or release
|
|
|
57
74
|
|
|
58
75
|
```bash
|
|
59
76
|
# 0. Confirm SC's own runbook integrity before recording boundary evidence
|
|
77
|
+
# in: none
|
|
78
|
+
# out: runbook version, presence set
|
|
60
79
|
peaks skill runbook peaks-sc --json
|
|
61
80
|
peaks skill presence:set peaks-sc # show persistent skill presence every turn
|
|
62
81
|
|
|
63
|
-
# 1. Derive commit boundaries
|
|
82
|
+
# 1. Derive commit boundaries (OpenSpec preferred, git diff fallback)
|
|
83
|
+
# in: change-id, repo path
|
|
84
|
+
# out: commitBoundaries[] or fallback git diff grouping
|
|
64
85
|
peaks openspec to-rd <change-id> --project <repo> --json
|
|
65
86
|
|
|
66
87
|
# 2. Inventory artifacts already produced by other roles for this session
|
|
88
|
+
# in: repo path, session-id
|
|
89
|
+
# out: artifact list with paths and statuses
|
|
67
90
|
peaks artifacts status --project <repo> --json
|
|
68
91
|
peaks artifacts workspace --workspace <session-id> --json
|
|
69
92
|
|
|
70
93
|
# 3. Record change impact for the slice
|
|
94
|
+
# in: change-id, module, file path
|
|
95
|
+
# out: impact record (JSON)
|
|
71
96
|
peaks sc impact --change-id <change-id> --module <module> --file <path> --json
|
|
72
97
|
|
|
73
|
-
# 4. Record retention evidence linking PRD / RD / QA
|
|
98
|
+
# 4. Record retention evidence linking PRD / RD / QA artifacts
|
|
99
|
+
# in: slice-id, artifact paths from other roles
|
|
100
|
+
# out: retention record (JSON)
|
|
74
101
|
peaks sc retention --slice-id <slice-id> --prd <prd-path> --rd <rd-path> --qa <qa-path> --json
|
|
75
102
|
|
|
76
103
|
# 5. Validate retention completeness
|
|
104
|
+
# in: slice-id
|
|
105
|
+
# out: validation result (pass/fail + missing items)
|
|
77
106
|
peaks sc validate --slice-id <slice-id> --json
|
|
78
107
|
|
|
79
108
|
# 6. Record the commit boundary for the slice
|
|
109
|
+
# in: slice-id, artifact path, code file path
|
|
110
|
+
# out: boundary record (JSON)
|
|
80
111
|
peaks sc boundary --slice-id <slice-id> --artifact <artifact-path> --code <code-file> --json
|
|
81
112
|
|
|
82
|
-
# 7. Sync memory and artifacts
|
|
113
|
+
# 7. Sync memory and artifacts (requires explicit authorization)
|
|
114
|
+
# in: repo path, workspace
|
|
115
|
+
# out: sync result or dry-run preview
|
|
83
116
|
peaks memory sync --project <repo> --workspace <workspace> --apply --json
|
|
84
117
|
peaks artifacts sync --workspace <workspace> --apply --json
|
|
85
118
|
peaks skill presence:clear # SC complete, remove presence indicator
|
|
@@ -87,6 +120,24 @@ peaks skill presence:clear # SC complete, remove presence i
|
|
|
87
120
|
|
|
88
121
|
The final two `--apply` calls require explicit authorization. Without it, default to `--dry-run` or omit the sync calls entirely and keep the boundary evidence local under `.peaks/<session-id>/`.
|
|
89
122
|
|
|
123
|
+
### Transition verification gates (MANDATORY — run the command, see the output)
|
|
124
|
+
|
|
125
|
+
You cannot declare SC complete from memory. Each gate below is a `ls` command you **MUST run** and whose output you **MUST see** before proceeding.
|
|
126
|
+
|
|
127
|
+
**Gate A — After impact + retention + validate + boundary:**
|
|
128
|
+
```bash
|
|
129
|
+
ls .peaks/<id>/sc/change-control/<rid>.md
|
|
130
|
+
# Expected output: .peaks/<id>/sc/change-control/<rid>.md
|
|
131
|
+
# "No such file" → STOP, write the change-control record first.
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
**Gate B — Before declaring SC complete (verify commit boundary is recorded):**
|
|
135
|
+
```bash
|
|
136
|
+
git log --oneline -5
|
|
137
|
+
# Expected: at least one recent commit whose message references the change-id or slice-id.
|
|
138
|
+
# No matching commit → STOP, the boundary was not recorded. Re-run steps 3-6.
|
|
139
|
+
```
|
|
140
|
+
|
|
90
141
|
## Boundaries
|
|
91
142
|
|
|
92
143
|
Do not implement code or test logic. Do not create GitHub repositories directly from the skill body. Use the Peaks CLI artifact commands.
|