cool-workflow 0.2.2 → 0.2.3
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/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/apps/architecture-review/app.json +1 -1
- package/apps/architecture-review-fast/app.json +1 -1
- package/apps/end-to-end-golden-path/app.json +1 -1
- package/apps/pr-review-fix-ci/app.json +1 -1
- package/apps/release-cut/app.json +1 -1
- package/apps/research-synthesis/app.json +1 -1
- package/dist/cli/dispatch.js +11 -5
- package/dist/cli/entry.js +41 -1
- package/dist/cli/io.js +6 -2
- package/dist/cli/parseargv.js +1 -0
- package/dist/core/capability-data.js +1 -0
- package/dist/core/format/completion.js +68 -0
- package/dist/core/format/help.js +25 -6
- package/dist/core/format/safe-json.js +73 -0
- package/dist/core/format/state-explosion-text.js +1 -1
- package/dist/core/multi-agent/candidate-scoring.js +5 -1
- package/dist/core/multi-agent/collaboration.js +3 -3
- package/dist/core/multi-agent/coordinator.js +5 -5
- package/dist/core/multi-agent/runtime.js +4 -4
- package/dist/core/multi-agent/topology.js +3 -3
- package/dist/core/pipeline/dispatch.js +18 -4
- package/dist/core/pipeline/drive-decide.js +2 -1
- package/dist/core/state/migrations.js +16 -1
- package/dist/core/state/state-explosion/digest.js +13 -13
- package/dist/core/state/state-explosion/graph.js +17 -11
- package/dist/core/state/state-explosion/report.js +6 -6
- package/dist/core/util/numeric-flag.js +40 -0
- package/dist/core/version.js +1 -1
- package/dist/mcp/server.js +99 -11
- package/dist/shell/audit-cli.js +57 -25
- package/dist/shell/coordinator-io.js +73 -13
- package/dist/shell/dispatch.js +1 -1
- package/dist/shell/doctor.js +80 -1
- package/dist/shell/drive.js +243 -49
- package/dist/shell/eval-text.js +2 -2
- package/dist/shell/evidence-reasoning.js +4 -4
- package/dist/shell/execution-backend/agent.js +20 -1
- package/dist/shell/execution-backend/container.js +4 -1
- package/dist/shell/execution-backend/local.js +4 -1
- package/dist/shell/feedback-cli.js +6 -6
- package/dist/shell/fs-atomic.js +218 -29
- package/dist/shell/man-cli.js +6 -0
- package/dist/shell/metrics-cli.js +2 -1
- package/dist/shell/multi-agent-cli.js +367 -323
- package/dist/shell/multi-agent-host.js +9 -9
- package/dist/shell/multi-agent-operator-ux.js +80 -38
- package/dist/shell/node-store.js +10 -4
- package/dist/shell/observability.js +1 -1
- package/dist/shell/operator-ux-text.js +22 -22
- package/dist/shell/operator-ux.js +15 -14
- package/dist/shell/orchestrator.js +49 -38
- package/dist/shell/pipeline-cli.js +87 -40
- package/dist/shell/reclamation-io.js +14 -4
- package/dist/shell/registry-cli.js +19 -17
- package/dist/shell/remote-source.js +13 -8
- package/dist/shell/report-cli.js +45 -0
- package/dist/shell/report.js +2 -1
- package/dist/shell/run-registry-io.js +77 -19
- package/dist/shell/run-store.js +74 -2
- package/dist/shell/scheduling-io.js +12 -13
- package/dist/shell/state-cli.js +2 -7
- package/dist/shell/state-explosion-cli.js +17 -9
- package/dist/shell/topology-io.js +36 -5
- package/dist/shell/trust-audit.js +224 -22
- package/dist/shell/trust-policy-io.js +1 -1
- package/dist/shell/worker-cli.js +35 -31
- package/dist/wiring/capability-table/basics.js +33 -8
- package/dist/wiring/capability-table/exec-backend.js +20 -11
- package/dist/wiring/capability-table/multi-agent.js +172 -165
- package/dist/wiring/capability-table/parity.js +1 -0
- package/dist/wiring/capability-table/pipeline.js +54 -42
- package/dist/wiring/capability-table/registry-core.js +29 -10
- package/dist/wiring/capability-table/reporting.js +137 -96
- package/dist/wiring/capability-table/scheduling-registry.js +195 -161
- package/dist/wiring/capability-table/state.js +36 -28
- package/dist/wiring/capability-table/trust-ledger.js +46 -22
- package/dist/wiring/capability-table/workflow-apps.js +83 -68
- package/docs/agent-delegation-drive.7.md +2 -0
- package/docs/candidate-scoring.7.md +1 -1
- package/docs/canonical-workflow-apps.7.md +7 -7
- package/docs/cli-mcp-parity.7.md +8 -3
- package/docs/contract-migration-tooling.7.md +2 -0
- package/docs/control-plane-scheduling.7.md +2 -0
- package/docs/coordinator-blackboard.7.md +17 -17
- package/docs/dogfood-one-real-repo.7.md +11 -11
- package/docs/durable-state-and-locking.7.md +2 -0
- package/docs/end-to-end-golden-path.7.md +14 -14
- package/docs/evidence-adoption-reasoning-chain.7.md +2 -0
- package/docs/execution-backends.7.md +2 -0
- package/docs/getting-started.md +37 -37
- package/docs/multi-agent-cli-mcp-surface.7.md +19 -17
- package/docs/multi-agent-eval-replay-harness.7.md +15 -13
- package/docs/multi-agent-operator-ux.7.md +21 -19
- package/docs/multi-agent-runtime-core.7.md +22 -22
- package/docs/multi-agent-topologies.7.md +6 -6
- package/docs/multi-agent-trust-policy-audit.7.md +11 -11
- package/docs/node-snapshot-diff-replay.7.md +2 -0
- package/docs/observability-cost-accounting.7.md +2 -0
- package/docs/operator-ux.7.md +34 -34
- package/docs/pipeline-runner.7.md +4 -4
- package/docs/project-index.md +27 -4
- package/docs/real-execution-backends.7.md +2 -0
- package/docs/release-and-migration.7.md +3 -1
- package/docs/release-tooling.7.md +2 -0
- package/docs/routines.md +4 -4
- package/docs/run-registry-control-plane.7.md +21 -19
- package/docs/run-retention-reclamation.7.md +2 -0
- package/docs/scheduled-tasks.md +14 -14
- package/docs/security-trust-hardening.7.md +15 -15
- package/docs/state-explosion-management.7.md +12 -10
- package/docs/team-collaboration.7.md +2 -0
- package/docs/trust-audit-anchor.7.md +2 -0
- package/docs/unix-principles.md +3 -1
- package/docs/verifier-gated-commit.7.md +1 -1
- package/docs/web-desktop-workbench.7.md +2 -0
- package/docs/workflow-app-framework.7.md +13 -13
- package/manifest/plugin.manifest.json +1 -1
- package/package.json +2 -2
- package/scripts/agents/claude-p-agent.js +2 -2
- package/scripts/block-unapproved-tag.sh +23 -2
- package/scripts/canonical-apps.js +4 -4
- package/scripts/children/batch-delegate-child.js +52 -2
- package/scripts/dogfood-release.js +1 -1
- package/scripts/fake-date-for-reproduction.js +44 -0
- package/scripts/golden-path.js +4 -4
- package/scripts/purity-baseline.json +3 -0
- package/scripts/release-flow.js +57 -1
- package/scripts/verdict-keygen.js +83 -0
- package/scripts/verify-bump-reproduction.sh +148 -0
- package/scripts/verify-verdict-signature.js +61 -0
- package/skills/cool-workflow/SKILL.md +9 -9
- package/skills/cool-workflow/references/commands.md +89 -88
- package/ui/workbench/app.css +37 -1
- package/ui/workbench/app.js +124 -6
package/docs/operator-ux.7.md
CHANGED
|
@@ -10,7 +10,7 @@ deterministic summaries for people, while it keeps JSON for scripts and MCP.
|
|
|
10
10
|
Human status is the default:
|
|
11
11
|
|
|
12
12
|
```bash
|
|
13
|
-
|
|
13
|
+
cw status <run-id>
|
|
14
14
|
```
|
|
15
15
|
|
|
16
16
|
The status view gives you run id, workflow/app id and version, loop stage, active
|
|
@@ -21,8 +21,8 @@ path, and the next command it puts forward.
|
|
|
21
21
|
Machine-readable status is still there for you:
|
|
22
22
|
|
|
23
23
|
```bash
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
cw status <run-id> --json
|
|
25
|
+
cw status <run-id> --format json
|
|
26
26
|
```
|
|
27
27
|
|
|
28
28
|
`CoolWorkflowRunner.status()` and MCP `cw_status` still give back structured
|
|
@@ -39,19 +39,19 @@ The things it puts forward are deterministic and use only commands that are in
|
|
|
39
39
|
the CW CLI. Examples:
|
|
40
40
|
|
|
41
41
|
```text
|
|
42
|
-
|
|
42
|
+
cw dispatch <run-id> --limit 4
|
|
43
43
|
reason: pending tasks are ready for the active phase
|
|
44
44
|
|
|
45
|
-
|
|
45
|
+
cw worker manifest <run-id> <worker-id>
|
|
46
46
|
reason: running workers need their manifests inspected
|
|
47
47
|
|
|
48
|
-
|
|
48
|
+
cw feedback show <run-id> <feedback-id>
|
|
49
49
|
reason: open feedback should be resolved before more dispatch
|
|
50
50
|
|
|
51
|
-
|
|
51
|
+
cw candidate register <run-id> --worker <worker-id>
|
|
52
52
|
reason: a completed worker result has not been registered as a candidate
|
|
53
53
|
|
|
54
|
-
|
|
54
|
+
cw commit <run-id> --selection <selection-id>
|
|
55
55
|
reason: a verified selected candidate is ready for a verifier-gated commit
|
|
56
56
|
```
|
|
57
57
|
|
|
@@ -63,15 +63,15 @@ work is done, the advisor points to `cw report <run-id> --show`.
|
|
|
63
63
|
Use the top-level graph command for a small console map:
|
|
64
64
|
|
|
65
65
|
```bash
|
|
66
|
-
|
|
67
|
-
|
|
66
|
+
cw graph <run-id>
|
|
67
|
+
cw graph <run-id> --json
|
|
68
68
|
```
|
|
69
69
|
|
|
70
70
|
The legacy node command still works:
|
|
71
71
|
|
|
72
72
|
```bash
|
|
73
|
-
|
|
74
|
-
|
|
73
|
+
cw node graph <run-id>
|
|
74
|
+
cw node graph <run-id> --json
|
|
75
75
|
```
|
|
76
76
|
|
|
77
77
|
The human graph puts phases, tasks, dispatches, workers, result nodes,
|
|
@@ -90,10 +90,10 @@ v0.1.21 adds clear multi-agent operator views that answer who is dependent on
|
|
|
90
90
|
whom, who is blocked, and which evidence went into the accepted result:
|
|
91
91
|
|
|
92
92
|
```bash
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
93
|
+
cw multi-agent graph <run-id>
|
|
94
|
+
cw multi-agent dependencies <run-id>
|
|
95
|
+
cw multi-agent failures <run-id>
|
|
96
|
+
cw multi-agent evidence <run-id>
|
|
97
97
|
```
|
|
98
98
|
|
|
99
99
|
The same derived model is in `status`, `report --show`, and
|
|
@@ -106,14 +106,14 @@ trace from agent membership to verifier-gated commit.
|
|
|
106
106
|
`cw report` still writes the Markdown report file and prints its path:
|
|
107
107
|
|
|
108
108
|
```bash
|
|
109
|
-
|
|
109
|
+
cw report <run-id>
|
|
110
110
|
```
|
|
111
111
|
|
|
112
112
|
Use `--show` or `--summary` when the operator needs a console report that is easy to read:
|
|
113
113
|
|
|
114
114
|
```bash
|
|
115
|
-
|
|
116
|
-
|
|
115
|
+
cw report <run-id> --show
|
|
116
|
+
cw report <run-id> --summary
|
|
117
117
|
```
|
|
118
118
|
|
|
119
119
|
The console report gives the same high-value status panels plus active and
|
|
@@ -124,25 +124,25 @@ pending tasks, evidence paths and locators, and resource inspection commands.
|
|
|
124
124
|
The chief run resources have human summaries by default and JSON when you ask for it:
|
|
125
125
|
|
|
126
126
|
```bash
|
|
127
|
-
|
|
128
|
-
|
|
127
|
+
cw worker summary <run-id>
|
|
128
|
+
cw worker summary <run-id> --json
|
|
129
129
|
|
|
130
|
-
|
|
131
|
-
|
|
130
|
+
cw candidate summary <run-id>
|
|
131
|
+
cw candidate summary <run-id> --json
|
|
132
132
|
|
|
133
|
-
|
|
134
|
-
|
|
133
|
+
cw feedback summary <run-id>
|
|
134
|
+
cw feedback summary <run-id> --json
|
|
135
135
|
|
|
136
|
-
|
|
137
|
-
|
|
136
|
+
cw commit summary <run-id>
|
|
137
|
+
cw commit summary <run-id> --json
|
|
138
138
|
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
139
|
+
cw multi-agent summary <run-id>
|
|
140
|
+
cw multi-agent summary <run-id> --json
|
|
141
|
+
cw multi-agent graph <run-id>
|
|
142
|
+
cw multi-agent graph <run-id> --json
|
|
143
|
+
cw multi-agent dependencies <run-id>
|
|
144
|
+
cw multi-agent failures <run-id>
|
|
145
|
+
cw multi-agent evidence <run-id>
|
|
146
146
|
```
|
|
147
147
|
|
|
148
148
|
Worker summaries show allocated/running/verified/failed/rejected counts,
|
|
@@ -93,10 +93,10 @@ commit stage.
|
|
|
93
93
|
Commands that look at runs print stable JSON:
|
|
94
94
|
|
|
95
95
|
```text
|
|
96
|
-
cw
|
|
97
|
-
cw
|
|
98
|
-
cw
|
|
99
|
-
cw
|
|
96
|
+
cw contract show <run-id> [contract-id]
|
|
97
|
+
cw node list <run-id>
|
|
98
|
+
cw node show <run-id> <node-id>
|
|
99
|
+
cw node graph <run-id>
|
|
100
100
|
```
|
|
101
101
|
|
|
102
102
|
## EXAMPLES
|
package/docs/project-index.md
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
# Cool Workflow Project Index
|
|
2
2
|
|
|
3
|
-
Generated from the current repository code on 2026-07-
|
|
3
|
+
Generated from the current repository code on 2026-07-10 by `npm run sync:project-index`.
|
|
4
4
|
|
|
5
5
|
## Snapshot
|
|
6
6
|
|
|
7
7
|
- Package: `cool-workflow`
|
|
8
|
-
- Version: `0.2.
|
|
9
|
-
- Source modules: `
|
|
8
|
+
- Version: `0.2.3`
|
|
9
|
+
- Source modules: `148`
|
|
10
10
|
- Workflow apps: `8`
|
|
11
11
|
- Docs: `62`
|
|
12
|
-
- Smoke tests: `
|
|
12
|
+
- Smoke tests: `201`
|
|
13
13
|
- Repository: https://github.com/coo1white/cool-workflow
|
|
14
14
|
|
|
15
15
|
## Architecture
|
|
@@ -84,7 +84,9 @@ multi-agent host -> topology -> blackboard/coordinator
|
|
|
84
84
|
- [cli/parseargv.ts](../src/cli/parseargv.ts)
|
|
85
85
|
- [core/capability-data.ts](../src/core/capability-data.ts)
|
|
86
86
|
- [core/capability-table.ts](../src/core/capability-table.ts)
|
|
87
|
+
- [core/format/completion.ts](../src/core/format/completion.ts)
|
|
87
88
|
- [core/format/help.ts](../src/core/format/help.ts)
|
|
89
|
+
- [core/format/safe-json.ts](../src/core/format/safe-json.ts)
|
|
88
90
|
- [core/format/state-explosion-text.ts](../src/core/format/state-explosion-text.ts)
|
|
89
91
|
- [core/hash.ts](../src/core/hash.ts)
|
|
90
92
|
- [core/multi-agent/collaboration.ts](../src/core/multi-agent/collaboration.ts)
|
|
@@ -117,6 +119,7 @@ multi-agent host -> topology -> blackboard/coordinator
|
|
|
117
119
|
- [core/types/execution-backend.ts](../src/core/types/execution-backend.ts)
|
|
118
120
|
- [core/types/observability.ts](../src/core/types/observability.ts)
|
|
119
121
|
- [core/util/collate.ts](../src/core/util/collate.ts)
|
|
122
|
+
- [core/util/numeric-flag.ts](../src/core/util/numeric-flag.ts)
|
|
120
123
|
- [mcp/dispatch.ts](../src/mcp/dispatch.ts)
|
|
121
124
|
- [mcp/server.ts](../src/mcp/server.ts)
|
|
122
125
|
- [shell/agent-config.ts](../src/shell/agent-config.ts)
|
|
@@ -303,6 +306,7 @@ Smoke tests mirror the public contracts. The high-signal suites are:
|
|
|
303
306
|
- [claude-p-agent-wrapper-smoke.js](../test/claude-p-agent-wrapper-smoke.js)
|
|
304
307
|
- [cli-arg-parsing-smoke.js](../test/cli-arg-parsing-smoke.js)
|
|
305
308
|
- [cli-command-surface-smoke.js](../test/cli-command-surface-smoke.js)
|
|
309
|
+
- [cli-epipe-smoke.js](../test/cli-epipe-smoke.js)
|
|
306
310
|
- [cli-format-smoke.js](../test/cli-format-smoke.js)
|
|
307
311
|
- [cli-handler-clones-smoke.js](../test/cli-handler-clones-smoke.js)
|
|
308
312
|
- [cli-handler-eval-node-smoke.js](../test/cli-handler-eval-node-smoke.js)
|
|
@@ -324,6 +328,7 @@ Smoke tests mirror the public contracts. The high-signal suites are:
|
|
|
324
328
|
- [contract-migration-tooling-smoke.js](../test/contract-migration-tooling-smoke.js)
|
|
325
329
|
- [control-plane-scheduling-smoke.js](../test/control-plane-scheduling-smoke.js)
|
|
326
330
|
- [coordinator-blackboard-smoke.js](../test/coordinator-blackboard-smoke.js)
|
|
331
|
+
- [coordinator-topology-persist-dirty-tracking-smoke.js](../test/coordinator-topology-persist-dirty-tracking-smoke.js)
|
|
327
332
|
- [cw-help-per-command-smoke.js](../test/cw-help-per-command-smoke.js)
|
|
328
333
|
- [dead-export-removal-guard-smoke.js](../test/dead-export-removal-guard-smoke.js)
|
|
329
334
|
- [deepseek-agent-wrapper-smoke.js](../test/deepseek-agent-wrapper-smoke.js)
|
|
@@ -331,11 +336,14 @@ Smoke tests mirror the public contracts. The high-signal suites are:
|
|
|
331
336
|
- [demo-bundle-smoke.js](../test/demo-bundle-smoke.js)
|
|
332
337
|
- [det-ids-b-smoke.js](../test/det-ids-b-smoke.js)
|
|
333
338
|
- [dispatch-legacy-burndown-smoke.js](../test/dispatch-legacy-burndown-smoke.js)
|
|
339
|
+
- [doctor-audit-integrity-repair-smoke.js](../test/doctor-audit-integrity-repair-smoke.js)
|
|
334
340
|
- [doctor-smoke.js](../test/doctor-smoke.js)
|
|
335
341
|
- [dogfood-architecture-review-smoke.js](../test/dogfood-architecture-review-smoke.js)
|
|
336
342
|
- [dogfood-release-smoke.js](../test/dogfood-release-smoke.js)
|
|
343
|
+
- [drive-async-real-signal-smoke.js](../test/drive-async-real-signal-smoke.js)
|
|
337
344
|
- [drive-concurrency-flag-smoke.js](../test/drive-concurrency-flag-smoke.js)
|
|
338
345
|
- [drive-exhaustion-blocked-smoke.js](../test/drive-exhaustion-blocked-smoke.js)
|
|
346
|
+
- [drive-round-cache-serial-smoke.js](../test/drive-round-cache-serial-smoke.js)
|
|
339
347
|
- [durable-atomic-write-smoke.js](../test/durable-atomic-write-smoke.js)
|
|
340
348
|
- [end-to-end-demo-smoke.js](../test/end-to-end-demo-smoke.js)
|
|
341
349
|
- [end-to-end-golden-path-smoke.js](../test/end-to-end-golden-path-smoke.js)
|
|
@@ -348,6 +356,7 @@ Smoke tests mirror the public contracts. The high-signal suites are:
|
|
|
348
356
|
- [execution-backends-smoke.js](../test/execution-backends-smoke.js)
|
|
349
357
|
- [feedback-ops-unit-smoke.js](../test/feedback-ops-unit-smoke.js)
|
|
350
358
|
- [freebsd-audit-fixes-smoke.js](../test/freebsd-audit-fixes-smoke.js)
|
|
359
|
+
- [fs-atomic-lock-steal-race-smoke.js](../test/fs-atomic-lock-steal-race-smoke.js)
|
|
351
360
|
- [gemini-agent-wrapper-smoke.js](../test/gemini-agent-wrapper-smoke.js)
|
|
352
361
|
- [gemini-opencode-agent-wrapper-smoke.js](../test/gemini-opencode-agent-wrapper-smoke.js)
|
|
353
362
|
- [h7-custom-profile-persist-smoke.js](../test/h7-custom-profile-persist-smoke.js)
|
|
@@ -357,9 +366,11 @@ Smoke tests mirror the public contracts. The high-signal suites are:
|
|
|
357
366
|
- [ledger-resolution-smoke.js](../test/ledger-resolution-smoke.js)
|
|
358
367
|
- [ledger-verify-smoke.js](../test/ledger-verify-smoke.js)
|
|
359
368
|
- [loop-bounded-expansion-smoke.js](../test/loop-bounded-expansion-smoke.js)
|
|
369
|
+
- [man-run-registry-traversal-smoke.js](../test/man-run-registry-traversal-smoke.js)
|
|
360
370
|
- [mcp-app-surface-smoke.js](../test/mcp-app-surface-smoke.js)
|
|
361
371
|
- [mcp-surface-registry-smoke.js](../test/mcp-surface-registry-smoke.js)
|
|
362
372
|
- [mcp-tool-call-coverage-smoke.js](../test/mcp-tool-call-coverage-smoke.js)
|
|
373
|
+
- [mcp-untrusted-content-advisory-smoke.js](../test/mcp-untrusted-content-advisory-smoke.js)
|
|
363
374
|
- [metrics-summary-limit-smoke.js](../test/metrics-summary-limit-smoke.js)
|
|
364
375
|
- [multi-agent-cli-mcp-surface-smoke.js](../test/multi-agent-cli-mcp-surface-smoke.js)
|
|
365
376
|
- [multi-agent-eval-determinism-regression-smoke.js](../test/multi-agent-eval-determinism-regression-smoke.js)
|
|
@@ -367,6 +378,7 @@ Smoke tests mirror the public contracts. The high-signal suites are:
|
|
|
367
378
|
- [multi-agent-eval-replay-smoke.js](../test/multi-agent-eval-replay-smoke.js)
|
|
368
379
|
- [multi-agent-operator-ux-smoke.js](../test/multi-agent-operator-ux-smoke.js)
|
|
369
380
|
- [multi-agent-runtime-core-smoke.js](../test/multi-agent-runtime-core-smoke.js)
|
|
381
|
+
- [multi-agent-state-lock-concurrency-smoke.js](../test/multi-agent-state-lock-concurrency-smoke.js)
|
|
370
382
|
- [multi-agent-topologies-debate-smoke.js](../test/multi-agent-topologies-debate-smoke.js)
|
|
371
383
|
- [multi-agent-topologies-judge-panel-smoke.js](../test/multi-agent-topologies-judge-panel-smoke.js)
|
|
372
384
|
- [multi-agent-topologies-map-reduce-smoke.js](../test/multi-agent-topologies-map-reduce-smoke.js)
|
|
@@ -375,6 +387,7 @@ Smoke tests mirror the public contracts. The high-signal suites are:
|
|
|
375
387
|
- [node-snapshot-diff-replay-smoke.js](../test/node-snapshot-diff-replay-smoke.js)
|
|
376
388
|
- [npm-global-install-smoke.js](../test/npm-global-install-smoke.js)
|
|
377
389
|
- [npm-trusted-publish-smoke.js](../test/npm-trusted-publish-smoke.js)
|
|
390
|
+
- [numeric-flag-parsing-smoke.js](../test/numeric-flag-parsing-smoke.js)
|
|
378
391
|
- [observability-cost-accounting-smoke.js](../test/observability-cost-accounting-smoke.js)
|
|
379
392
|
- [one-way-boundary-smoke.js](../test/one-way-boundary-smoke.js)
|
|
380
393
|
- [onramp-check-smoke.js](../test/onramp-check-smoke.js)
|
|
@@ -401,6 +414,7 @@ Smoke tests mirror the public contracts. The high-signal suites are:
|
|
|
401
414
|
- [readme-trust-claim-smoke.js](../test/readme-trust-claim-smoke.js)
|
|
402
415
|
- [real-execution-backends-smoke.js](../test/real-execution-backends-smoke.js)
|
|
403
416
|
- [registry-corrupt-fail-closed-smoke.js](../test/registry-corrupt-fail-closed-smoke.js)
|
|
417
|
+
- [registry-corrupt-state-distinct-error-smoke.js](../test/registry-corrupt-state-distinct-error-smoke.js)
|
|
404
418
|
- [release-check-skip-smoke.js](../test/release-check-skip-smoke.js)
|
|
405
419
|
- [release-flow-smoke.js](../test/release-flow-smoke.js)
|
|
406
420
|
- [release-gate-smoke.js](../test/release-gate-smoke.js)
|
|
@@ -437,10 +451,14 @@ Smoke tests mirror the public contracts. The high-signal suites are:
|
|
|
437
451
|
- [schema-validation-smoke.js](../test/schema-validation-smoke.js)
|
|
438
452
|
- [security-trust-hardening-smoke.js](../test/security-trust-hardening-smoke.js)
|
|
439
453
|
- [self-audit-hardening-smoke.js](../test/self-audit-hardening-smoke.js)
|
|
454
|
+
- [sigint-sigterm-drive-loop-smoke.js](../test/sigint-sigterm-drive-loop-smoke.js)
|
|
455
|
+
- [smoke-duration-scheduling-smoke.js](../test/smoke-duration-scheduling-smoke.js)
|
|
440
456
|
- [source-context-batch-smoke.js](../test/source-context-batch-smoke.js)
|
|
441
457
|
- [source-context-profile-smoke.js](../test/source-context-profile-smoke.js)
|
|
442
458
|
- [state-node-smoke.js](../test/state-node-smoke.js)
|
|
459
|
+
- [status-run-flag-smoke.js](../test/status-run-flag-smoke.js)
|
|
443
460
|
- [sub-workflow-nesting-smoke.js](../test/sub-workflow-nesting-smoke.js)
|
|
461
|
+
- [summary-show-no-checkpoint-write-smoke.js](../test/summary-show-no-checkpoint-write-smoke.js)
|
|
444
462
|
- [surface-explicit-cwd-smoke.js](../test/surface-explicit-cwd-smoke.js)
|
|
445
463
|
- [tamper-evidence-demo-smoke.js](../test/tamper-evidence-demo-smoke.js)
|
|
446
464
|
- [team-collaboration-smoke.js](../test/team-collaboration-smoke.js)
|
|
@@ -452,11 +470,16 @@ Smoke tests mirror the public contracts. The high-signal suites are:
|
|
|
452
470
|
- [telemetry-verify-signatures-smoke.js](../test/telemetry-verify-signatures-smoke.js)
|
|
453
471
|
- [token-budget-enforcement-smoke.js](../test/token-budget-enforcement-smoke.js)
|
|
454
472
|
- [trust-audit-anchor-smoke.js](../test/trust-audit-anchor-smoke.js)
|
|
473
|
+
- [trust-audit-append-lock-concurrency-smoke.js](../test/trust-audit-append-lock-concurrency-smoke.js)
|
|
474
|
+
- [trust-audit-append-tail-cache-smoke.js](../test/trust-audit-append-tail-cache-smoke.js)
|
|
455
475
|
- [vendor-manifest-load-smoke.js](../test/vendor-manifest-load-smoke.js)
|
|
456
476
|
- [vendor-preflight-smoke.js](../test/vendor-preflight-smoke.js)
|
|
477
|
+
- [verdict-signing-workflow-smoke.js](../test/verdict-signing-workflow-smoke.js)
|
|
457
478
|
- [verifier-gated-commit-smoke.js](../test/verifier-gated-commit-smoke.js)
|
|
479
|
+
- [verify-bump-reproduction-smoke.js](../test/verify-bump-reproduction-smoke.js)
|
|
458
480
|
- [verify-import-audit-chain-smoke.js](../test/verify-import-audit-chain-smoke.js)
|
|
459
481
|
- [web-desktop-workbench-smoke.js](../test/web-desktop-workbench-smoke.js)
|
|
482
|
+
- [wiring-lazy-shell-imports-smoke.js](../test/wiring-lazy-shell-imports-smoke.js)
|
|
460
483
|
- [worker-accept-path-architecture-smoke.js](../test/worker-accept-path-architecture-smoke.js)
|
|
461
484
|
- [worker-isolation-smoke.js](../test/worker-isolation-smoke.js)
|
|
462
485
|
- [worker-retry-count-smoke.js](../test/worker-retry-count-smoke.js)
|
|
@@ -9,7 +9,7 @@ Maintainers cutting CW releases should use `npm run release:check` from
|
|
|
9
9
|
files can check compatibility with:
|
|
10
10
|
|
|
11
11
|
```bash
|
|
12
|
-
|
|
12
|
+
cw state check <run-id>
|
|
13
13
|
```
|
|
14
14
|
|
|
15
15
|
Use `--state /path/to/state.json` when checking a state file outside the
|
|
@@ -335,3 +335,5 @@ _No behavioral change in v0.1.89 (CLI-surface golden-path + help-output fixes on
|
|
|
335
335
|
0.2.1
|
|
336
336
|
|
|
337
337
|
0.2.2
|
|
338
|
+
|
|
339
|
+
0.2.3
|
package/docs/routines.md
CHANGED
|
@@ -15,7 +15,7 @@ CW keeps routine data in:
|
|
|
15
15
|
Create an API trigger:
|
|
16
16
|
|
|
17
17
|
```bash
|
|
18
|
-
|
|
18
|
+
cw routine create \
|
|
19
19
|
--kind api \
|
|
20
20
|
--prompt "Handle this API event."
|
|
21
21
|
```
|
|
@@ -23,7 +23,7 @@ node scripts/cw.js routine create \
|
|
|
23
23
|
Create a GitHub trigger:
|
|
24
24
|
|
|
25
25
|
```bash
|
|
26
|
-
|
|
26
|
+
cw routine create \
|
|
27
27
|
--kind github \
|
|
28
28
|
--prompt "Review this GitHub event." \
|
|
29
29
|
--match '{"action":"opened"}'
|
|
@@ -32,13 +32,13 @@ node scripts/cw.js routine create \
|
|
|
32
32
|
Fire a trigger from a payload file:
|
|
33
33
|
|
|
34
34
|
```bash
|
|
35
|
-
|
|
35
|
+
cw routine fire github payload.json
|
|
36
36
|
```
|
|
37
37
|
|
|
38
38
|
Inspect events:
|
|
39
39
|
|
|
40
40
|
```bash
|
|
41
|
-
|
|
41
|
+
cw routine events
|
|
42
42
|
```
|
|
43
43
|
|
|
44
44
|
## Long Architecture Reviews
|
|
@@ -251,25 +251,25 @@ freshness, and provenance back to its `.cw/runs/<id>/`. Filter with `--app` and
|
|
|
251
251
|
## CLI
|
|
252
252
|
|
|
253
253
|
```text
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
254
|
+
cw registry refresh [--scope repo|home] [--json]
|
|
255
|
+
cw registry show [--scope repo|home] [--json]
|
|
256
|
+
cw run search [--app ID] [--status STATE] [--text Q] [--repo PATH] [--since ISO] [--until ISO] [--limit N] [--offset N] [--scope repo|home] [--json]
|
|
257
|
+
cw run list [--scope repo|home] [--json]
|
|
258
|
+
cw run show <run-id> [--scope repo|home] [--json]
|
|
259
|
+
cw run resume <run-id> [--limit N] [--drive [--once]] [--json]
|
|
260
|
+
cw run archive <run-id> [--reason TEXT] [--unarchive]
|
|
261
|
+
cw run archive --older-than-days N [--state completed --state failed]
|
|
262
|
+
cw run rerun <run-id> [--reason TEXT]
|
|
263
|
+
cw run export <run-id> --output PATH
|
|
264
|
+
cw run import PATH --target DIR
|
|
265
|
+
cw run verify-import <run-id> [--cwd DIR]
|
|
266
|
+
cw run inspect-archive PATH [--json]
|
|
267
|
+
cw run restore PATH --target DIR [--json]
|
|
268
|
+
cw queue add [--app ID|--workflow ID|--runId ID] [--repo PATH] [--priority N] [--note TEXT]
|
|
269
|
+
cw queue list [--status STATE] [--repo PATH] [--json]
|
|
270
|
+
cw queue show <queue-id>
|
|
271
|
+
cw queue drain [--limit N] [--repo PATH]
|
|
272
|
+
cw history [--app ID] [--status STATE] [--limit N] [--offset N] [--scope repo|home] [--json]
|
|
273
273
|
```
|
|
274
274
|
|
|
275
275
|
Read commands print short human panels by default (lifecycle, freshness, counts,
|
|
@@ -478,3 +478,5 @@ _No behavioral change in v0.1.89 (CLI-surface golden-path + help-output fixes on
|
|
|
478
478
|
0.2.1
|
|
479
479
|
|
|
480
480
|
0.2.2
|
|
481
|
+
|
|
482
|
+
0.2.3
|
package/docs/scheduled-tasks.md
CHANGED
|
@@ -14,7 +14,7 @@ CW keeps schedules in:
|
|
|
14
14
|
Make a `/loop`-ready schedule:
|
|
15
15
|
|
|
16
16
|
```bash
|
|
17
|
-
|
|
17
|
+
cw loop \
|
|
18
18
|
--intervalMinutes 30 \
|
|
19
19
|
--prompt "Check this workflow and continue if work is due."
|
|
20
20
|
```
|
|
@@ -22,7 +22,7 @@ node scripts/cw.js loop \
|
|
|
22
22
|
Make a loop:
|
|
23
23
|
|
|
24
24
|
```bash
|
|
25
|
-
|
|
25
|
+
cw schedule create \
|
|
26
26
|
--kind loop \
|
|
27
27
|
--intervalMinutes 30 \
|
|
28
28
|
--prompt "Check this workflow and continue if work is due."
|
|
@@ -31,7 +31,7 @@ node scripts/cw.js schedule create \
|
|
|
31
31
|
Make a cron schedule:
|
|
32
32
|
|
|
33
33
|
```bash
|
|
34
|
-
|
|
34
|
+
cw schedule create \
|
|
35
35
|
--kind cron \
|
|
36
36
|
--cron "*/15 * * * *" \
|
|
37
37
|
--prompt "Run the due workflow scan."
|
|
@@ -40,7 +40,7 @@ node scripts/cw.js schedule create \
|
|
|
40
40
|
Make a reminder:
|
|
41
41
|
|
|
42
42
|
```bash
|
|
43
|
-
|
|
43
|
+
cw schedule create \
|
|
44
44
|
--kind reminder \
|
|
45
45
|
--delayMinutes 60 \
|
|
46
46
|
--prompt "Remind me to inspect the report."
|
|
@@ -49,26 +49,26 @@ node scripts/cw.js schedule create \
|
|
|
49
49
|
List and look through:
|
|
50
50
|
|
|
51
51
|
```bash
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
52
|
+
cw schedule list
|
|
53
|
+
cw schedule due
|
|
54
|
+
cw schedule complete <schedule-id>
|
|
55
|
+
cw schedule pause <schedule-id>
|
|
56
|
+
cw schedule resume <schedule-id>
|
|
57
|
+
cw schedule run-now <schedule-id>
|
|
58
|
+
cw schedule history <schedule-id>
|
|
59
|
+
cw schedule delete <schedule-id>
|
|
60
60
|
```
|
|
61
61
|
|
|
62
62
|
Run the local desktop-like daemon one time:
|
|
63
63
|
|
|
64
64
|
```bash
|
|
65
|
-
|
|
65
|
+
cw schedule daemon --once
|
|
66
66
|
```
|
|
67
67
|
|
|
68
68
|
Run it without stopping:
|
|
69
69
|
|
|
70
70
|
```bash
|
|
71
|
-
|
|
71
|
+
cw schedule daemon --intervalSeconds 60
|
|
72
72
|
```
|
|
73
73
|
|
|
74
74
|
## Notes
|
|
@@ -82,21 +82,21 @@ With the require flag off (the default), none of this changes: a plain
|
|
|
82
82
|
## CLI
|
|
83
83
|
|
|
84
84
|
```bash
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
85
|
+
cw audit summary <run-id>
|
|
86
|
+
cw audit worker <run-id> <worker-id>
|
|
87
|
+
cw audit provenance <run-id> [--worker ID|--candidate ID|--commit ID]
|
|
88
|
+
cw audit multi-agent <run-id>
|
|
89
|
+
cw audit policy <run-id>
|
|
90
|
+
cw audit role <run-id> <role-id>
|
|
91
|
+
cw audit blackboard <run-id>
|
|
92
|
+
cw audit judge <run-id>
|
|
93
|
+
cw audit attest <run-id> --worker <worker-id> --hostEnforced true
|
|
94
|
+
cw audit decision <run-id> <worker-id> --path <path>
|
|
95
|
+
cw audit decision <run-id> <worker-id> --command "npm test"
|
|
96
|
+
cw audit decision <run-id> <worker-id> --network example.com
|
|
97
|
+
cw audit decision <run-id> <worker-id> --env SECRET_NAME
|
|
98
|
+
cw worker output <run-id> <worker-id> <result-file> [--allow-unattested]
|
|
99
|
+
cw result <run-id> <task-id> <result-file> [--allow-unattested]
|
|
100
100
|
```
|
|
101
101
|
|
|
102
102
|
Denied audit decisions are put into audit files and joined to feedback/error
|
|
@@ -84,14 +84,14 @@ folded.
|
|
|
84
84
|
## CLI
|
|
85
85
|
|
|
86
86
|
```text
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
87
|
+
cw summary refresh <run-id> [--json] [--view <view> ...]
|
|
88
|
+
cw summary show <run-id> [--json]
|
|
89
|
+
cw blackboard summarize <run-id> [--json]
|
|
90
|
+
cw multi-agent summarize <run-id> [--json]
|
|
91
|
+
cw multi-agent graph <run-id> --view compact [--json]
|
|
92
|
+
cw multi-agent graph <run-id> --view critical-path [--json]
|
|
93
|
+
cw multi-agent graph <run-id> --focus <id> --depth <n> [--json]
|
|
94
|
+
cw report <run-id> --show
|
|
95
95
|
```
|
|
96
96
|
|
|
97
97
|
Every command supports deterministic JSON with `--json` or `--format json`.
|
|
@@ -106,8 +106,8 @@ summaries and tells the operator how to look at the full data, for example:
|
|
|
106
106
|
|
|
107
107
|
```text
|
|
108
108
|
Graph compacted: 420 nodes collapsed into 18 summary nodes
|
|
109
|
-
Use:
|
|
110
|
-
Use:
|
|
109
|
+
Use: cw multi-agent graph <run-id> --view full --json
|
|
110
|
+
Use: cw blackboard message list <run-id> --topic <topic-id>
|
|
111
111
|
```
|
|
112
112
|
|
|
113
113
|
## MCP parity
|
|
@@ -324,3 +324,5 @@ _No behavioral change in v0.1.89 (CLI-surface golden-path + help-output fixes on
|
|
|
324
324
|
0.2.1
|
|
325
325
|
|
|
326
326
|
0.2.2
|
|
327
|
+
|
|
328
|
+
0.2.3
|
package/docs/unix-principles.md
CHANGED
|
@@ -214,7 +214,9 @@ never in core. Core may send a vendor's stream on; it never reads one apart.
|
|
|
214
214
|
**Rule of Silence.** stdout is data, stderr is diagnostics, and a
|
|
215
215
|
non-interactive run says nothing on success. Anything friendly to a person is TTY-gated
|
|
216
216
|
and can be turned off; `--json` output is fixed and with nothing added so it goes together
|
|
217
|
-
in pipes.
|
|
217
|
+
in pipes. A broken pipe is not an error: when the reader at the other end
|
|
218
|
+
goes away early (`cw list --json | head -1`), the CLI stops quietly with
|
|
219
|
+
exit 0 — no stack trace, no error text (both `--json` and human output).
|
|
218
220
|
|
|
219
221
|
**Fail closed, conservative defaults.** Backends not yet configured probe as
|
|
220
222
|
`unverified`, telemetry that cannot be verified is made known loudly (or turned away in strict
|
|
@@ -114,7 +114,7 @@ commit-selection-not-verified
|
|
|
114
114
|
commit-verifier-linkage-mismatch
|
|
115
115
|
```
|
|
116
116
|
|
|
117
|
-
Use `cw
|
|
117
|
+
Use `cw feedback list <run-id>` and `cw node graph <run-id>` to look at
|
|
118
118
|
the failed transition.
|
|
119
119
|
|
|
120
120
|
## CANDIDATES
|