wei-wuwei 0.4.0 → 0.6.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/CHANGELOG.md +8 -0
- package/README.md +66 -27
- package/bin/wuwei.js +3191 -48
- package/package.json +2 -2
- package/skills/wuwei-execute-phase/skill.md +12 -0
- package/skills/wuwei-plan-phases/skill.md +5 -7
- package/skills/wuwei-review/references/stream.md +6 -1
- package/skills/wuwei-review/skill.md +10 -7
- package/wuwei.config.json +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "wei-wuwei",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"description": "為無為,則無不治 — a source-of-truth skills & agents framework that compiles to Claude Code and Codex (Cursor and Gemini CLI planned). Write once, run in every agent, govern without forcing.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"scripts": {
|
|
20
20
|
"build": "node bin/wuwei.js build",
|
|
21
21
|
"check": "node bin/wuwei.js check",
|
|
22
|
-
"test": "sh test/smoke.sh",
|
|
22
|
+
"test": "sh test/smoke.sh && sh test/brief.sh",
|
|
23
23
|
"install:targets": "node bin/wuwei.js install"
|
|
24
24
|
},
|
|
25
25
|
"engines": {
|
|
@@ -569,6 +569,18 @@ get.
|
|
|
569
569
|
tree and no other), and states whether the composed result still matches
|
|
570
570
|
`## Target architecture`.
|
|
571
571
|
|
|
572
|
+
**Work decided after the stream audit or a UAT, before the stream PR
|
|
573
|
+
merges, is a new phase — never a hand-cut branch:** cut on the stream
|
|
574
|
+
branch as `wuwei-plan-phases` step 4 cuts one (its `## Intended design`,
|
|
575
|
+
its ACCEPTANCE items, `review:`, `depends-on` what it actually depends on
|
|
576
|
+
— not "the last"), the scope change in SPEC's `## Sign-off`, `STATE.md`'s
|
|
577
|
+
total raised, `wuwei plan-check <stream>` green; then `wuwei claim <stream>
|
|
578
|
+
<NN>` cuts `wuwei/<stream>/NN-<name>`. A hand-cut branch has no phase
|
|
579
|
+
file: nothing `brief` or the next session sees. **Its exit:** a phase that
|
|
580
|
+
only fixes the audit's findings closes when the collator re-checks each
|
|
581
|
+
AUDIT.md row against its fix — no new panel; one that adds scope (a UAT's
|
|
582
|
+
new feature) gets the stream panel again, as a delta (`wuwei-review` §4).
|
|
583
|
+
|
|
572
584
|
**Tracker**, subject to step 1's write rule:
|
|
573
585
|
|
|
574
586
|
| granularity | on PR open | on merge |
|
|
@@ -172,9 +172,10 @@ tags: [planning, workflow]
|
|
|
172
172
|
route each to automatable e2e (bound to a phase per step 1's strategy —
|
|
173
173
|
red blocks that phase)
|
|
174
174
|
or manual UAT (steps + expected result). **A repo with no e2e harness is
|
|
175
|
-
not a reason for UAT**: the first phase with a bound item adds one
|
|
176
|
-
|
|
177
|
-
|
|
175
|
+
not a reason for UAT**: the first phase with a bound item adds one as its
|
|
176
|
+
first task — Playwright on web, Maestro on mobile (what `wuwei verify`
|
|
177
|
+
runs on), a script for a CLI, library or backend, running the real
|
|
178
|
+
program on a temp fixture and named `e2e harness: <command>`.
|
|
178
179
|
**`## Verify`** lists each page that shows fetched data — `- <page>:
|
|
179
180
|
<route> · phase: NN`, the phase that builds it; its error, 403, empty,
|
|
180
181
|
loading and failed-refetch states are `wuwei verify`'s, not UAT's. No
|
|
@@ -305,10 +306,7 @@ tags: [planning, workflow]
|
|
|
305
306
|
- The contract is what makes auto mode safe: the executor never defines its
|
|
306
307
|
own finish line.
|
|
307
308
|
- In auto mode execute's steps 2–6 run without the user, and its steps 4–6
|
|
308
|
-
loop at least three times inside that; execute's step 7 always stops.
|
|
309
|
-
strategy question is not an exception to that: auto is only ever entered at
|
|
310
|
-
a sign-off, which recorded the answer, so a resumed auto stream reads it
|
|
311
|
-
instead of asking.
|
|
309
|
+
loop at least three times inside that; execute's step 7 always stops.
|
|
312
310
|
- Sign-off is why step 8 sits where it does: the stream stops being paper
|
|
313
311
|
there, and it is the only moment a human is present to confirm what the
|
|
314
312
|
branch is based on. Cutting earlier leaves a branch behind for a stream
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
# Stream panel (`wuwei-review` §4)
|
|
2
2
|
|
|
3
|
-
Runs
|
|
3
|
+
Runs when every phase has merged and before the stream PR reaches main —
|
|
4
|
+
and again, as a delta from the audited sha (the digest records both shas),
|
|
5
|
+
after a phase that **adds scope** after the audit merges (a UAT's new
|
|
6
|
+
feature). A phase that only fixes the audit's own findings gets no panel: the
|
|
7
|
+
collator re-checks each AUDIT.md row against its fix, as the audit's first
|
|
8
|
+
fixes were closed, and records the sha it checked at.
|
|
4
9
|
Its subject is not a diff — it is **a delivery against the contract that
|
|
5
10
|
authorised it**, a question no phase review is positioned to ask.
|
|
6
11
|
|
|
@@ -124,7 +124,7 @@ wuwei's own; lenses report in its columns.
|
|
|
124
124
|
Four fresh subagents in one dispatch, **not one reviewer**: a reviewer holding
|
|
125
125
|
the implementer's context re-reads its own work with every justification
|
|
126
126
|
already in mind. Each is an agent file, so its tier and its read-only tools
|
|
127
|
-
are what dispatch
|
|
127
|
+
are what dispatch reads — not a claim made here.
|
|
128
128
|
|
|
129
129
|
| Reporter | Agent | Asks |
|
|
130
130
|
|---|---|---|
|
|
@@ -235,8 +235,7 @@ mismatch between them is visible.
|
|
|
235
235
|
Reviewing a document with no diff (`/wuwei-review <path>`) leaves the facts
|
|
236
236
|
empty: say so, and `review:drift` falls back to the document's own assertions
|
|
237
237
|
as the things to grep the repo for. **Tell each lens what the others
|
|
238
|
-
cover**,
|
|
239
|
-
each other's gaps complement. **Running a gate is `review:claims`' job**:
|
|
238
|
+
cover**, as in §2. **Running a gate is `review:claims`' job**:
|
|
240
239
|
another lens that meets one names it for `claims` instead of running it,
|
|
241
240
|
unless it already ran it for a finding of its own.
|
|
242
241
|
|
|
@@ -273,10 +272,14 @@ Give the derivation or do not give the number.
|
|
|
273
272
|
|
|
274
273
|
## 4. Stream panel
|
|
275
274
|
|
|
276
|
-
Runs
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
275
|
+
Runs when every phase has merged and before the stream PR reaches main.
|
|
276
|
+
**Read `references/stream.md` before dispatching**: its five audits plus §2
|
|
277
|
+
over the composed diff, the coverage chain, and the `wuwei:` ledger.
|
|
278
|
+
|
|
279
|
+
**Work the audit or a UAT decides on is a new phase, never a hand-cut
|
|
280
|
+
branch** (`wuwei-execute-phase` step 7). A phase fixing the audit's own
|
|
281
|
+
findings: the collator re-checks each AUDIT.md row, no panel. New scope: the
|
|
282
|
+
panel again, a delta from the audited sha.
|
|
280
283
|
|
|
281
284
|
## 5. Tools
|
|
282
285
|
|
package/wuwei.config.json
CHANGED
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"skills/wuwei-brainstorm/skill.md": 500,
|
|
25
25
|
"skills/wuwei-commit-hygiene/skill.md": 200,
|
|
26
26
|
"skills/wuwei-debug-root-cause/skill.md": 300,
|
|
27
|
-
"skills/wuwei-execute-phase/skill.md":
|
|
27
|
+
"skills/wuwei-execute-phase/skill.md": 5600,
|
|
28
28
|
"skills/wuwei-grill/skill.md": 600,
|
|
29
29
|
"skills/wuwei-legible-output/skill.md": 200,
|
|
30
30
|
"skills/wuwei-map-codebase/skill.md": 1600,
|