@chllming/wave-orchestration 0.8.9 → 0.9.1

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.
Files changed (75) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/README.md +135 -18
  3. package/docs/README.md +9 -3
  4. package/docs/architecture/README.md +1498 -0
  5. package/docs/concepts/context7-vs-skills.md +1 -1
  6. package/docs/concepts/operating-modes.md +3 -3
  7. package/docs/concepts/what-is-a-wave.md +1 -1
  8. package/docs/guides/author-and-run-waves.md +27 -4
  9. package/docs/guides/monorepo-projects.md +226 -0
  10. package/docs/guides/planner.md +10 -3
  11. package/docs/guides/{recommendations-0.8.9.md → recommendations-0.9.1.md} +8 -7
  12. package/docs/guides/sandboxed-environments.md +158 -0
  13. package/docs/guides/terminal-surfaces.md +14 -12
  14. package/docs/plans/current-state.md +11 -7
  15. package/docs/plans/end-state-architecture.md +3 -1
  16. package/docs/plans/examples/wave-example-design-handoff.md +3 -1
  17. package/docs/plans/examples/wave-example-live-proof.md +6 -1
  18. package/docs/plans/examples/wave-example-rollout-fidelity.md +2 -0
  19. package/docs/plans/migration.md +48 -18
  20. package/docs/plans/sandbox-end-state-architecture.md +153 -0
  21. package/docs/plans/wave-orchestrator.md +4 -4
  22. package/docs/reference/cli-reference.md +125 -57
  23. package/docs/reference/coordination-and-closure.md +1 -1
  24. package/docs/reference/github-packages-setup.md +1 -1
  25. package/docs/reference/migration-0.2-to-0.5.md +9 -7
  26. package/docs/reference/npmjs-token-publishing.md +53 -0
  27. package/docs/reference/npmjs-trusted-publishing.md +4 -50
  28. package/docs/reference/package-publishing-flow.md +272 -0
  29. package/docs/reference/runtime-config/README.md +140 -12
  30. package/docs/reference/sample-waves.md +100 -5
  31. package/docs/reference/skills.md +1 -1
  32. package/docs/reference/wave-control.md +23 -5
  33. package/docs/roadmap.md +43 -201
  34. package/package.json +1 -1
  35. package/releases/manifest.json +38 -0
  36. package/scripts/wave-orchestrator/adhoc.mjs +49 -17
  37. package/scripts/wave-orchestrator/agent-process-runner.mjs +344 -0
  38. package/scripts/wave-orchestrator/agent-state.mjs +0 -1
  39. package/scripts/wave-orchestrator/artifact-schemas.mjs +7 -0
  40. package/scripts/wave-orchestrator/autonomous.mjs +96 -29
  41. package/scripts/wave-orchestrator/benchmark-external.mjs +23 -7
  42. package/scripts/wave-orchestrator/benchmark.mjs +33 -10
  43. package/scripts/wave-orchestrator/closure-engine.mjs +138 -17
  44. package/scripts/wave-orchestrator/config.mjs +239 -24
  45. package/scripts/wave-orchestrator/control-cli.mjs +71 -28
  46. package/scripts/wave-orchestrator/coord-cli.mjs +22 -14
  47. package/scripts/wave-orchestrator/coordination-store.mjs +8 -0
  48. package/scripts/wave-orchestrator/dashboard-renderer.mjs +123 -44
  49. package/scripts/wave-orchestrator/dep-cli.mjs +47 -21
  50. package/scripts/wave-orchestrator/derived-state-engine.mjs +6 -3
  51. package/scripts/wave-orchestrator/feedback.mjs +28 -11
  52. package/scripts/wave-orchestrator/gate-engine.mjs +106 -38
  53. package/scripts/wave-orchestrator/human-input-resolution.mjs +5 -1
  54. package/scripts/wave-orchestrator/install.mjs +13 -0
  55. package/scripts/wave-orchestrator/launcher-progress.mjs +91 -0
  56. package/scripts/wave-orchestrator/launcher-runtime.mjs +179 -68
  57. package/scripts/wave-orchestrator/launcher.mjs +222 -53
  58. package/scripts/wave-orchestrator/ledger.mjs +7 -2
  59. package/scripts/wave-orchestrator/planner.mjs +48 -27
  60. package/scripts/wave-orchestrator/project-profile.mjs +31 -8
  61. package/scripts/wave-orchestrator/projection-writer.mjs +13 -1
  62. package/scripts/wave-orchestrator/proof-cli.mjs +18 -12
  63. package/scripts/wave-orchestrator/reducer-snapshot.mjs +6 -0
  64. package/scripts/wave-orchestrator/retry-cli.mjs +19 -13
  65. package/scripts/wave-orchestrator/retry-control.mjs +3 -3
  66. package/scripts/wave-orchestrator/retry-engine.mjs +93 -6
  67. package/scripts/wave-orchestrator/role-helpers.mjs +30 -0
  68. package/scripts/wave-orchestrator/session-supervisor.mjs +94 -85
  69. package/scripts/wave-orchestrator/shared.mjs +77 -14
  70. package/scripts/wave-orchestrator/supervisor-cli.mjs +1306 -0
  71. package/scripts/wave-orchestrator/terminals.mjs +12 -32
  72. package/scripts/wave-orchestrator/tmux-adapter.mjs +300 -0
  73. package/scripts/wave-orchestrator/wave-control-client.mjs +84 -16
  74. package/scripts/wave-orchestrator/wave-files.mjs +43 -6
  75. package/scripts/wave.mjs +13 -0
package/CHANGELOG.md CHANGED
@@ -2,6 +2,63 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 0.9.1 - 2026-03-29
6
+
7
+ ### Added
8
+
9
+ - A dedicated sandbox setup guide at `docs/guides/sandboxed-environments.md` covering LEAPclaw/OpenClaw-style short-lived exec sandboxes, Nemoshell, and Docker or containerized operator setups.
10
+ - Starter-surface and install coverage for the renamed recommendations guide `docs/guides/recommendations-0.9.1.md`, plus seeded docs that now point fresh workspaces at the sandbox-safe submit or supervise path.
11
+
12
+ ### Changed
13
+
14
+ - Live agent execution now defaults to detached process runners instead of per-agent tmux execution sessions. Tmux remains an optional dashboard and operator projection surface only, which reduces session churn and lowers memory pressure during wider fan-outs.
15
+ - The sandbox-facing runtime path is now `wave submit`, `wave supervise`, `wave status`, `wave wait`, and `wave attach`, with read-side reconciliation and log-follow attach behavior designed for short-lived clients and long-running daemon ownership.
16
+ - README, migration guidance, current-state notes, coordination docs, runtime-config docs, package publishing docs, install fixtures, and the versioned recommendations guide now all point at the `0.9.1` surface.
17
+
18
+ ### Fixed And Hardened
19
+
20
+ - Supervisor recovery now relies on run-owned terminal artifacts and finalized progress instead of lane-global completion history, preventing false completion during reruns and improving read-side reconciliation after daemon loss.
21
+ - Multi-wave recovery and terminal attribution now preserve the correct remaining wave range and final active wave, even when launcher progress metadata is partial or missing.
22
+ - Ordinary runs, closure runs, and resident orchestrator runs now all preserve process-runtime metadata for timeout, cleanup, and degraded-run handling, and process-backed resident orchestrators are terminated correctly during final cleanup.
23
+ - Rate-limit retry detection is now attempt-local, closure-role overlap is rejected earlier, custom security-review role paths classify consistently, and explicit terminal-surface choices no longer depend on argv ordering.
24
+ - Agent and launcher execution paths now behave better in constrained sandboxes by avoiding tmux-backed agent execution, preserving configured Codex sandbox defaults, and demoting tmux loss from a liveness authority to projection-only telemetry.
25
+
26
+ ### Testing And Validation
27
+
28
+ - `pnpm test`
29
+ - `pnpm test -- test/wave-orchestrator/release-surface.test.ts test/wave-orchestrator/install.test.ts test/wave-orchestrator/supervisor-cli.test.ts`
30
+ - `node scripts/wave.mjs doctor --json`
31
+ - `node scripts/wave.mjs launch --lane main --dry-run --no-dashboard`
32
+
33
+ ## 0.9.0 - 2026-03-28
34
+
35
+ ### Added
36
+
37
+ - First-class monorepo project support through `defaultProject` and `projects.<projectId>` in `wave.config.json`, including project-owned lane roots, docs roots, planner defaults, and Wave Control identity.
38
+ - A dedicated setup guide at `docs/guides/monorepo-projects.md` that documents explicit project configuration, project-scoped state paths, cross-project dependency wiring, and telemetry defaults.
39
+ - Project-aware regression coverage for shared paths, coordination telemetry, dashboard parsing, and release-surface docs alignment.
40
+
41
+ ### Changed
42
+
43
+ - Lane-scoped CLI surfaces now accept `--project`, including `launch`, `autonomous`, `dashboard`, `project`, `draft`, `adhoc`, `control`, `coord`, `feedback`, `dep`, `retry`, `proof`, and benchmark commands.
44
+ - Planner defaults are now project-scoped: the implicit default project keeps `.wave/project-profile.json`, while explicit monorepo projects use `.wave/projects/<projectId>/project-profile.json`.
45
+ - Ad-hoc runs, launcher state, tmux naming, dependency tickets, and benchmark identity are now project-aware, so duplicate lane names can coexist across monorepo projects without state collisions.
46
+ - The shipped release surface now points consistently at `0.9.0`, including the README, current-state notes, migration guide, coordination docs, runtime-config docs, release manifest, tracked install-state fixtures, and the versioned recommendations guide `docs/guides/recommendations-0.9.0.md`.
47
+
48
+ ### Fixed And Hardened
49
+
50
+ - Coordination telemetry, benchmark telemetry, and dashboard attach flows now preserve the selected project instead of falling back to the implicit default project.
51
+ - Package defaults now report metadata to Wave Control through `https://wave-control.up.railway.app/api/v1` with `reportMode: "metadata-only"`, while preserving explicit repo and one-off operator opt-out paths.
52
+ - Documentation and examples now describe the shipped project-aware runtime rather than the old lane-only or unscoped ad-hoc layout.
53
+
54
+ ### Testing And Validation
55
+
56
+ - `pnpm test -- test/wave-orchestrator/release-surface.test.ts test/wave-orchestrator/shared.test.ts test/wave-orchestrator/dashboard-renderer.test.ts test/wave-orchestrator/coordination-store.test.ts`
57
+ - `pnpm test`
58
+ - `node scripts/wave.mjs doctor --json`
59
+ - `node scripts/wave.mjs launch --lane main --dry-run --no-dashboard`
60
+ - `node scripts/wave.mjs dashboard --help`
61
+
5
62
  ## 0.8.9 - 2026-03-27
6
63
 
7
64
  ### Changed
package/README.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  Wave Orchestration is my framework for "vibe-coding." It keeps the speed of agentic coding, but makes the runtime, coordination, and context model explicit enough to inspect, replay, and improve.
4
4
 
5
+ Wave is meant to be operated through an agent that uses the Wave runtime, not as a command-first workflow where a human manually drives every step from the shell.
6
+
7
+ This package also ships with my personal Wave Control endpoint enabled by default. A repo using the packaged defaults will emit project, lane, wave, run, proof, and benchmark metadata to `https://wave-control.up.railway.app/api/v1` unless you actively opt out.
8
+
5
9
  The framework does three things:
6
10
 
7
11
  1. It abstracts the agent runtime away without flattening everything to the lowest common denominator. The same waves, skills, planning, evaluation, proof, and traces can run across Claude, Codex, and OpenCode while still preserving runtime-native features through executor adapters.
@@ -51,7 +55,7 @@ The framework does three things:
51
55
  - `wave-state-reducer.mjs`
52
56
  Rebuilds deterministic wave state from canonical inputs for live queries and replay.
53
57
  - `session-supervisor.mjs`
54
- Owns launches, waits, tmux sessions, lock handling, resident orchestrator sessions, and observed `wave_run`, `attempt`, and `agent_run` lifecycle facts.
58
+ Owns detached agent launches, waits, dashboard tmux sessions, lock handling, resident orchestrator sessions, and observed `wave_run`, `attempt`, and `agent_run` lifecycle facts.
55
59
  - `projection-writer.mjs`
56
60
  Persists dashboards, traces, summaries, inboxes, board projections, assignment/dependency snapshots, ledgers, docs queues, and integration/security summaries.
57
61
 
@@ -103,38 +107,105 @@ Wave is built to mitigate those failures with a canonical authority set, generat
103
107
 
104
108
  Current release:
105
109
 
106
- - `@chllming/wave-orchestration@0.8.9`
107
- - Release tag: [`v0.8.9`](https://github.com/chllming/agent-wave-orchestrator/releases/tag/v0.8.9)
110
+ - `@chllming/wave-orchestration@0.9.1`
111
+ - Release tag: [`v0.9.1`](https://github.com/chllming/agent-wave-orchestrator/releases/tag/v0.9.1)
108
112
  - Public install path: npmjs
109
113
  - Authenticated fallback: GitHub Packages
110
114
 
111
- Highlights in `0.8.9`:
115
+ Highlights in `0.9.1`:
112
116
 
113
- - Reducer snapshots now preserve design packet report paths when they rebuild summaries from result envelopes, so successful design passes no longer get replayed as `missing-design-packet`.
114
- - Launcher transitions after design-only passes now stop on the real design-gate failure and record a design-specific blocker instead of falling through to a misleading downstream implementation `missing-result-envelope` error.
115
- - Trace bundle summary reconstruction now also preserves design packet report paths, so copied summary artifacts stay aligned when a trace has to rebuild a design summary from logs.
116
- - Release docs, current-state notes, migration guidance, publishing instructions, the packaged operator recommendations guide, and the tracked install-state fixtures now all point at the `0.8.9` surface.
117
+ - Live agent execution now uses detached process runners by default, which reduces tmux churn and memory pressure during wider orchestration bursts. Tmux is now optional and dashboard-only.
118
+ - The sandbox-safe runtime path is now `wave submit`, `wave supervise`, `wave status`, `wave wait`, and `wave attach`, which behaves better under short-lived exec clients such as LEAPclaw, OpenClaw, and Nemoshell.
119
+ - Supervisor recovery, launcher progress journaling, and exact-context reads are now hardier for multi-wave runs, reruns, and daemon/client loss in containerized or sandboxed environments.
120
+ - Release docs, migration guidance, sandbox setup guides, the versioned recommendations guide, the manifest, and the tracked install-state fixtures now all point at the `0.9.1` surface.
117
121
 
118
122
  Requirements:
119
123
 
120
124
  - Node.js 22+
121
125
  - `pnpm`
122
- - `tmux` on `PATH` for dashboarded runs
126
+ - optional: `tmux` on `PATH` for dashboarded runs
123
127
  - at least one executor on `PATH`: `codex`, `claude`, or `opencode`
124
128
  - optional: `CONTEXT7_API_KEY` for launcher-side prefetch
125
129
  - optional: `WAVE_CONTROL_AUTH_TOKEN` for remote Wave Control reporting
126
130
 
131
+ Telemetry defaults:
132
+
133
+ - packaged default endpoint: `https://wave-control.up.railway.app/api/v1`
134
+ - packaged default mode: `metadata-only`
135
+ - default identity fields include `projectId`, `lane`, `wave`, `runKind`, and related benchmark ids
136
+ - opt out explicitly with `waveControl.enabled: false`, `waveControl.reportMode: "disabled"`, or `wave launch --no-telemetry`
137
+
138
+ ## Recommended Setup
139
+
140
+ The easiest way to set up Wave in any repo is:
141
+
142
+ 1. install the package
143
+ 2. point a coding agent at the repo
144
+ 3. paste one setup prompt
145
+
146
+ Use direct CLI commands as a manual fallback, debugging surface, or validation aid. The intended interface is an agent using Wave, not a human memorizing the full command set.
147
+
127
148
  Install into another repo:
128
149
 
129
150
  ```bash
130
151
  pnpm add -D @chllming/wave-orchestration
131
- pnpm exec wave init
132
- pnpm exec wave doctor
133
- pnpm exec wave launch --lane main --dry-run --no-dashboard
134
- pnpm exec wave coord show --lane main --wave 0 --dry-run --json
135
152
  ```
136
153
 
137
- If the repo already has Wave config, plans, or waves you want to keep:
154
+ Then give your coding agent this copy-paste prompt:
155
+
156
+ ```text
157
+ Set up and operate Wave Orchestration in this repository.
158
+
159
+ Start by inspecting the repo before changing anything.
160
+
161
+ Your job:
162
+ - determine whether this should be a fresh setup, an adopt-existing setup, or a migration from an older Wave version
163
+ - understand the repo well enough to recommend a Wave shape instead of guessing
164
+ - decide whether this repo should stay single-project or use monorepo projects with `defaultProject` plus `projects.<projectId>`
165
+ - explain the default telemetry behavior before enabling anything silently:
166
+ - Wave sends project, lane, wave, run, proof, and benchmark metadata to `https://wave-control.up.railway.app/api/v1` by default unless the repo explicitly opts out
167
+ - if this repo should opt out, say exactly how and why
168
+ - decide the right proof and closure posture for this repo:
169
+ - what should count as proof
170
+ - whether `cont-EVAL`, security review, stronger closure roles, or stricter proof artifacts are needed
171
+ - whether non-proof follow-up should remain blocking or be marked soft, stale, or advisory
172
+ - configure Wave for this repo
173
+ - build detailed waves, not vague stubs
174
+ - validate the setup with the normal Wave checks
175
+ - summarize the resulting layout, assumptions, risks, and next recommended waves
176
+
177
+ Rules:
178
+ - inspect first, then change files
179
+ - prefer adopt-existing over destructive rewrites when Wave files or plans already exist
180
+ - ask only the missing high-impact product questions that cannot be inferred from the repo
181
+ - treat commands as implementation tools, not the user-facing interface
182
+
183
+ Required execution flow:
184
+ 1. inspect the repo and determine fresh setup vs adopt-existing vs migration
185
+ 2. install and initialize Wave appropriately
186
+ 3. choose single-project vs monorepo project structure
187
+ 4. configure telemetry intentionally and explain the default
188
+ 5. define proof expectations and closure roles
189
+ 6. draft or refine detailed waves
190
+ 7. run Wave validation
191
+ 8. report what you changed and what the human should review next
192
+
193
+ Validation to run:
194
+ - `pnpm exec wave doctor --json`
195
+ - `pnpm exec wave launch --lane main --dry-run --no-dashboard`
196
+ - `pnpm exec wave control status --lane main --wave 0 --json` if wave 0 exists
197
+
198
+ Useful docs:
199
+ - `README.md`
200
+ - `docs/plans/migration.md`
201
+ - `docs/guides/sandboxed-environments.md`
202
+ - `docs/guides/monorepo-projects.md`
203
+ - `docs/guides/planner.md`
204
+ - `docs/reference/runtime-config/README.md`
205
+ - `docs/reference/wave-control.md`
206
+ ```
207
+
208
+ If the repo already has Wave config, plans, or waves you want to keep, the agent should generally choose the adopt-existing path:
138
209
 
139
210
  ```bash
140
211
  pnpm exec wave init --adopt-existing
@@ -142,6 +213,10 @@ pnpm exec wave init --adopt-existing
142
213
 
143
214
  Fresh init also seeds a starter `skills/` library plus `docs/evals/benchmark-catalog.json`. The launcher projects those skill bundles into Codex, Claude, OpenCode, and local executor overlays after the final runtime for each agent is resolved, and waves that include `cont-EVAL` can declare `## Eval targets` against that catalog.
144
215
 
216
+ For monorepos, `wave.config.json` can now declare `defaultProject` plus `projects.<projectId>`. Each project owns its own lanes, docs root, planner defaults, runtime overrides, and Wave Control identity, so multiple project/lane/wave tracks can run from one checkout without colliding in launcher state or tmux session names.
217
+
218
+ Use [docs/guides/monorepo-projects.md](./docs/guides/monorepo-projects.md) for the full setup flow, state-path layout, cross-project dependency examples, and telemetry defaults or opt-out rules.
219
+
145
220
  The starter surface includes:
146
221
 
147
222
  - `docs/agents/wave-design-role.md`
@@ -157,7 +232,41 @@ If a non-resident agent should stay alive and react only to orchestrator-written
157
232
 
158
233
  When runtime launch commands detect a newer npmjs release, Wave prints a non-blocking update notice on stderr. The fast path is `pnpm exec wave self-update`, which updates the dependency, prints the changelog delta, and then records the workspace upgrade report.
159
234
 
160
- ## Common Commands
235
+ ## Sandboxed And Containerized Setups
236
+
237
+ If Wave is running inside LEAPclaw, OpenClaw, Nemoshell, Docker, or another environment where the client shell is short-lived, do not bind the whole run to one blocking `wave launch` or `wave autonomous` process.
238
+
239
+ Use the async supervisor path instead:
240
+
241
+ ```bash
242
+ # Long-lived daemon
243
+ pnpm exec wave supervise --project backend --lane main
244
+
245
+ # Short-lived client
246
+ runId=$(pnpm exec wave submit \
247
+ --project backend \
248
+ --lane main \
249
+ --start-wave 2 \
250
+ --end-wave 2 \
251
+ --no-dashboard \
252
+ --json | jq -r .runId)
253
+
254
+ pnpm exec wave status --run-id "$runId" --project backend --lane main --json
255
+ pnpm exec wave wait --run-id "$runId" --project backend --lane main --timeout-seconds 300 --json
256
+ ```
257
+
258
+ Practical defaults for constrained environments:
259
+
260
+ - set the Codex sandbox mode in `wave.config.json` instead of relying on per-command overrides
261
+ - keep `tmux` optional and use `--no-dashboard` when you do not need a live dashboard
262
+ - preserve `.tmp/` and `.wave/` across container restarts
263
+ - use `wave attach --agent <id>` for log-follow attach when there is no live interactive terminal session
264
+
265
+ For the full setup guidance, read [docs/guides/sandboxed-environments.md](./docs/guides/sandboxed-environments.md).
266
+
267
+ ## Manual Commands
268
+
269
+ These commands are still useful when you want to validate, debug, or inspect the runtime directly. They are not the recommended first-touch onboarding path.
161
270
 
162
271
  ```bash
163
272
  # Save project defaults and draft a new wave
@@ -165,17 +274,23 @@ pnpm exec wave project setup
165
274
  pnpm exec wave draft --wave 1 --template implementation
166
275
 
167
276
  # Run one wave with a real executor
168
- pnpm exec wave launch --lane main --start-wave 0 --end-wave 0 --executor codex --codex-sandbox danger-full-access
277
+ pnpm exec wave launch --lane main --start-wave 0 --end-wave 0 --executor codex
169
278
 
170
279
  # Disable Wave Control reporting for a single launcher run
171
280
  pnpm exec wave launch --lane main --no-telemetry
172
281
 
282
+ # Target a specific monorepo project
283
+ pnpm exec wave launch --project backend --lane main --dry-run --no-dashboard
284
+
173
285
  # Inspect operator surfaces
174
286
  pnpm exec wave feedback list --lane main --pending
175
287
  pnpm exec wave dep show --lane main --wave 0 --json
176
288
 
177
- # Run autonomous mode after the wave set is stable
178
- pnpm exec wave autonomous --lane main --executor codex --codex-sandbox danger-full-access
289
+ # Submit a sandbox-safe run from a short-lived client
290
+ pnpm exec wave submit --project backend --lane main --start-wave 2 --end-wave 2 --no-dashboard --json
291
+
292
+ # Run autonomous mode only when the client shell can stay alive for the full run
293
+ pnpm exec wave autonomous --lane main --executor codex
179
294
 
180
295
  # Pull the latest published package and record the workspace upgrade
181
296
  pnpm exec wave self-update
@@ -228,6 +343,7 @@ codex mcp list
228
343
  - [docs/concepts/context7-vs-skills.md](./docs/concepts/context7-vs-skills.md): compiled context, external truth, and repo-owned operating knowledge
229
344
  - [docs/guides/planner.md](./docs/guides/planner.md): `wave project` and `wave draft` workflow
230
345
  - [docs/agents/wave-design-role.md](./docs/agents/wave-design-role.md): standing prompt for the optional pre-implementation design steward
346
+ - [docs/guides/sandboxed-environments.md](./docs/guides/sandboxed-environments.md): recommended setup for LEAPclaw, OpenClaw, Nemoshell, Docker, and other short-lived exec environments
231
347
  - [docs/guides/terminal-surfaces.md](./docs/guides/terminal-surfaces.md): tmux, VS Code terminal registry, and dry-run surfaces
232
348
  - [docs/guides/signal-wrappers.md](./docs/guides/signal-wrappers.md): versioned signal snapshots, wrapper scripts, and long-running-agent ack loops
233
349
  - [docs/reference/sample-waves.md](./docs/reference/sample-waves.md): showcase-first authored waves, including a high-fidelity repo-landed rollout example
@@ -240,6 +356,7 @@ codex mcp list
240
356
  - [docs/plans/context7-wave-orchestrator.md](./docs/plans/context7-wave-orchestrator.md): Context7 setup and bundle authoring
241
357
  - [docs/reference/runtime-config/README.md](./docs/reference/runtime-config/README.md): executor, runtime, and skill-projection configuration
242
358
  - [docs/reference/wave-control.md](./docs/reference/wave-control.md): local-first telemetry contract and Railway control-plane model
359
+ - [docs/reference/package-publishing-flow.md](./docs/reference/package-publishing-flow.md): end-to-end package publishing flow, workflows, and lifecycle scripts
243
360
  - [docs/reference/proof-metrics.md](./docs/reference/proof-metrics.md): README failure cases mapped to concrete telemetry and benchmark evidence
244
361
  - [docs/reference/skills.md](./docs/reference/skills.md): skill bundle format, resolution order, and runtime projection
245
362
  - [docs/research/coordination-failure-review.md](./docs/research/coordination-failure-review.md): MAS failure modes from the research and how Wave responds
package/docs/README.md CHANGED
@@ -35,16 +35,22 @@ The useful path is journey-first:
35
35
  Read [concepts/context7-vs-skills.md](./concepts/context7-vs-skills.md) for the compiled-context model: shared summary, inboxes, project defaults, skills, Context7, and runtime overlays.
36
36
  - Drafting or revising waves:
37
37
  Read [guides/author-and-run-waves.md](./guides/author-and-run-waves.md), then use [plans/wave-orchestrator.md](./plans/wave-orchestrator.md) as the operator runbook.
38
+ - Setting up multiple projects in one monorepo:
39
+ Read [guides/monorepo-projects.md](./guides/monorepo-projects.md) for `defaultProject`, `projects.<projectId>`, project-scoped state paths, and telemetry defaults.
38
40
  - Adding an optional pre-implementation design steward:
39
- Read [guides/author-and-run-waves.md](./guides/author-and-run-waves.md), then the standing prompt in [agents/wave-design-role.md](./agents/wave-design-role.md). The shipped `0.8.9` surface includes `role-design` plus `tui-design`, with docs-first design stewards by default and explicit hybrid design stewards when a wave also gives that same agent code ownership.
41
+ Read [guides/author-and-run-waves.md](./guides/author-and-run-waves.md), then the standing prompt in [agents/wave-design-role.md](./agents/wave-design-role.md). The shipped `0.9.1` surface includes `role-design` plus `tui-design`, with docs-first design stewards by default and explicit hybrid design stewards when a wave also gives that same agent code ownership.
42
+ - Running in LEAPclaw, OpenClaw, Nemoshell, Docker, or another short-lived sandbox:
43
+ Read [guides/sandboxed-environments.md](./guides/sandboxed-environments.md) first for the submit or supervise pattern, persistent-state expectations, and dashboard guidance, then use [plans/sandbox-end-state-architecture.md](./plans/sandbox-end-state-architecture.md) for the deeper runtime design.
40
44
  - Want signal-driven automation or long-running watcher loops:
41
45
  Read [guides/signal-wrappers.md](./guides/signal-wrappers.md). It covers the seeded `wave-status.sh` and `wave-watch.sh` wrappers, the versioned signal snapshot files, and the ack-loop contract behind `signal-hygiene`.
42
46
  - Adding a security review pass:
43
47
  Read [plans/wave-orchestrator.md](./plans/wave-orchestrator.md) and the standing reviewer prompt in [agents/wave-security-role.md](./agents/wave-security-role.md).
44
48
  - Upgrading an existing repo:
45
49
  Read [plans/migration.md](./plans/migration.md), then review the release notes in [../CHANGELOG.md](../CHANGELOG.md) before running `pnpm exec wave upgrade`.
46
- - Want the practical `0.8.9` operating stance:
47
- Read [guides/recommendations-0.8.9.md](./guides/recommendations-0.8.9.md) for the recommended default around relaxed blocker states, advisory turn budgets, and targeted recovery.
50
+ - Publishing the package:
51
+ Read [reference/package-publishing-flow.md](./reference/package-publishing-flow.md) for the end-to-end release path, the GitHub publish workflows, the lifecycle scripts, and the verification or repair flow.
52
+ - Want the practical `0.9.1` operating stance:
53
+ Read [guides/recommendations-0.9.1.md](./guides/recommendations-0.9.1.md) for the recommended default around relaxed blocker states, advisory turn budgets, and targeted recovery.
48
54
  - Want the concrete runtime module map:
49
55
  Read [plans/end-state-architecture.md](./plans/end-state-architecture.md) for the engine-by-engine architecture and artifact ownership model.
50
56
  - Want the CLI surface map: