@sylad/cadence 1.24.0 → 1.26.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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/README.md +1 -1
- package/agents/code-reviewer.md +17 -0
- package/agents/livreur.md +69 -0
- package/agents/qa-reviewer.md +17 -0
- package/dist/cli.js +24 -6
- package/dist/gate-record.js +34 -8
- package/dist/git.js +31 -1
- package/dist/lead.js +4 -1
- package/dist/orchestrate/command.js +212 -126
- package/dist/orchestrate/table.js +60 -28
- package/dist/perf.js +24 -2
- package/dist/plan.js +13 -1
- package/dist/push-guard.js +25 -3
- package/dist/release.js +11 -0
- package/dist/verify-gate.js +16 -5
- package/docs/cadence-hud.md +8 -0
- package/docs/deliver.md +4 -4
- package/docs/lead.md +7 -3
- package/docs/orchestrate.md +5 -4
- package/docs/perf.md +3 -1
- package/docs/raf.md +3 -2
- package/docs/releasing.md +9 -3
- package/docs/skills.md +8 -1
- package/docs/whats-new.md +9 -0
- package/package.json +1 -1
- package/skills/deliver/SKILL.md +1 -1
- package/skills/lead/SKILL.md +26 -7
package/skills/lead/SKILL.md
CHANGED
|
@@ -35,8 +35,16 @@ commands (its CLAUDE.md names them), never with `raf start|done|note|ux|review`.
|
|
|
35
35
|
the human (a trial at 3 was decided on 2026-10-12); if the slots are the bottleneck, say so and let them decide.
|
|
36
36
|
- **Never two subagents in the same repository at the same time**, and the lead does not commit in a
|
|
37
37
|
repository where a subagent is working.
|
|
38
|
-
- **Deliveries and `raf ux` / `raf review` verdicts are done by the lead, one project at a time
|
|
39
|
-
|
|
38
|
+
- **Deliveries and `raf ux` / `raf review` verdicts are done by the lead, one project at a time, or by the `livreur` agent it
|
|
39
|
+
launches** (L439): the delivery and, with `lead.ux: lead`, `raf ux` may be done by the `livreur`; `raf review` stays with the
|
|
40
|
+
lead. Launch one `livreur` at a time: never two deliveries in parallel, and each `livreur` counts in the cap of subagents. Only another
|
|
41
|
+
`livreur` or another subagent blocks a new one; the sessions of a running wave do not (a ready lot is delivered while the wave runs,
|
|
42
|
+
section 2b). Never launch a `livreur` while the wave integrates a lot (`cadence lead tour` shows it): `raf done` would write the plan
|
|
43
|
+
of the main tree, which that integration refuses as modified. Brief: the absolute project folder, the lot, the sha to deliver
|
|
44
|
+
(« livrable jusqu'à »), the value of `lead.ux`, the base URL of the delivered app (the `deliver` configuration of `cadence.yaml`),
|
|
45
|
+
and for a visible lot with `lead.ux: lead` the `ux-reviewer`'s report and the folder of its captures. It hands back one line
|
|
46
|
+
(`L84 livré 3d6edf4, QA à lancer <url>`) or one `Question : …`; the lead itself launches the `qa-reviewer` with the URL of the line
|
|
47
|
+
(section 4), then the `livreur` of the next ready lot.
|
|
40
48
|
- A subagent cannot ask the human anything. When it hits an ambiguity it stops and reports; the lead
|
|
41
49
|
brings the question to the human.
|
|
42
50
|
|
|
@@ -179,7 +187,7 @@ reviewer's last line brought up to date. It does so only when the reviewer has n
|
|
|
179
187
|
what the lot promised. At the **slightest doubt** — a reservation of the reviewer it cannot settle, a capture it cannot read,
|
|
180
188
|
a layout or wording choice that is a matter of taste, a state the captures do not show — it records nothing, brings the
|
|
181
189
|
captures and the question to the human, and the chain goes on with the other lots as for any UX reservation. The verdict
|
|
182
|
-
is
|
|
190
|
+
is recorded by the lead's own `raf ux` or, for a lot it hands over, by the `livreur` on the same criterion (it opens the captures itself and records nothing at the slightest doubt).
|
|
183
191
|
|
|
184
192
|
## 3. Check
|
|
185
193
|
|
|
@@ -190,6 +198,11 @@ is always recorded by the lead's own `raf ux`, never by a subagent.
|
|
|
190
198
|
the absolute path of the project and the lot id, **not** the author's report: it reads the diff
|
|
191
199
|
itself from the commits that cite the lot, runs the checks, and returns real defects only,
|
|
192
200
|
ranked, with what it could not verify and a one-line verdict.
|
|
201
|
+
Add a line `Report file: <absolute path>` in a temporary folder outside the repository (one file per
|
|
202
|
+
lot and pass): the agent writes its full report there and answers you in 5 lines (verdict, blocking
|
|
203
|
+
findings, follow-ups, the path). Read the file only when you need it: to act on a blocking finding,
|
|
204
|
+
to hand a finding to a fix, or to bring the verdict line up to date for `raf review`. A short reply with `Blocking: 0`
|
|
205
|
+
needs no read.
|
|
193
206
|
2. **The lead re-verifies itself**: `git log` shows the commits, the test suite and build pass when
|
|
194
207
|
run by the lead, `raf check` is clean. During a wave, or in any tree that is not the lead's own, replay the gate at the lot's last sha with
|
|
195
208
|
`cadence verify --gate --sha <sha> [--project <dir>]` (exit 0 green, 1 red with the failing tests, 2 nothing to replay): a bare
|
|
@@ -212,7 +225,7 @@ is always recorded by the lead's own `raf ux`, never by a subagent.
|
|
|
212
225
|
|
|
213
226
|
## 4. Delivery
|
|
214
227
|
|
|
215
|
-
One project at a time, by the lead: push, then the `deliver` skill (`cadence deliver --dry-run`, then
|
|
228
|
+
One project at a time, by the lead or, for a ready lot it hands over, by the `livreur` agent (« Limits that always apply »): push, then the `deliver` skill (`cadence deliver --dry-run`, then
|
|
216
229
|
`cadence deliver`). Follow the human's standing instructions about confirmation before production.
|
|
217
230
|
|
|
218
231
|
**The sha pushed needs a green verdict of the gate (L426).** Where the project declares a gate (`orchestrate.test` or
|
|
@@ -220,9 +233,11 @@ One project at a time, by the lead: push, then the `deliver` skill (`cadence del
|
|
|
220
233
|
refuses with exit 3 a push of a branch whose local sha has no green verdict of `cadence verify --gate`, naming the sha and
|
|
221
234
|
the command to run. The verdict of the re-check (section 3, point 2) belongs to the lot's sha, and the head of `main` is
|
|
222
235
|
almost never that sha: `raf done` does not commit, so the plan commit that follows it (« plan: Lx terminé »), a release
|
|
223
|
-
commit or the plan commit of the next lot sits above.
|
|
224
|
-
|
|
225
|
-
|
|
236
|
+
commit or the plan commit of the next lot sits above. A commit that changes only the plan file (L432) takes the verdict of
|
|
237
|
+
its parent, stacked ones included: the hook lets it through, no replay. A commit that also touches another file (a release
|
|
238
|
+
commit, a plan commit with code) has no verdict, and `verify --gate --sha <head>` cannot reuse the wave's record (made at the
|
|
239
|
+
lot's sha, `checks.head`): it replays the whole gate, ~5 minutes. Count that replay in: after such a commit,
|
|
240
|
+
`cadence verify --gate --sha HEAD`, then push `main`. Delivering while the wave runs
|
|
226
241
|
(section 2b) pushes the lot's sha alone (`git push origin <sha>:main`): its verdict is the one the re-check recorded, and the
|
|
227
242
|
plan commit is pushed later, after its own replay. `CADENCE_PUSH_UNGATED=1 git push …` lets a push through with no verdict
|
|
228
243
|
and says so on stderr: it is for the push the human explicitly asks ungated (a plan-only or docs-only commit above a verified
|
|
@@ -248,6 +263,10 @@ without an expectations file gets a draft back: show it to the human, who correc
|
|
|
248
263
|
whether it is committed. It is not a gate: `raf done` does not wait for it, and a finding becomes a
|
|
249
264
|
new lot, not a reopened one.
|
|
250
265
|
|
|
266
|
+
Give the `qa-reviewer` the same line `Report file: <absolute path>` (outside the repository): it answers in 5 lines
|
|
267
|
+
(verdict, blocking findings, follow-ups, the path) and keeps the full report, with its measurements, in that file; read the
|
|
268
|
+
file only to show the human a blocking finding or to commit the draft of an expectations file.
|
|
269
|
+
|
|
251
270
|
## 5. Close
|
|
252
271
|
|
|
253
272
|
At the end, the `session-close` routine in each project touched, and `cadence session next` lines in
|