@chllming/wave-orchestration 0.6.3 → 0.7.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.
Files changed (112) hide show
  1. package/CHANGELOG.md +57 -1
  2. package/README.md +39 -7
  3. package/docs/agents/wave-orchestrator-role.md +50 -0
  4. package/docs/agents/wave-planner-role.md +39 -0
  5. package/docs/context7/bundles.json +9 -0
  6. package/docs/context7/planner-agent/README.md +25 -0
  7. package/docs/context7/planner-agent/manifest.json +83 -0
  8. package/docs/context7/planner-agent/papers/cooperbench-why-coding-agents-cannot-be-your-teammates-yet.md +3283 -0
  9. package/docs/context7/planner-agent/papers/dova-deliberation-first-multi-agent-orchestration-for-autonomous-research-automation.md +1699 -0
  10. package/docs/context7/planner-agent/papers/dpbench-large-language-models-struggle-with-simultaneous-coordination.md +2251 -0
  11. package/docs/context7/planner-agent/papers/incremental-planning-to-control-a-blackboard-based-problem-solver.md +1729 -0
  12. package/docs/context7/planner-agent/papers/silo-bench-a-scalable-environment-for-evaluating-distributed-coordination-in-multi-agent-llm-systems.md +3747 -0
  13. package/docs/context7/planner-agent/papers/todoevolve-learning-to-architect-agent-planning-systems.md +1675 -0
  14. package/docs/context7/planner-agent/papers/verified-multi-agent-orchestration-a-plan-execute-verify-replan-framework-for-complex-query-resolution.md +1173 -0
  15. package/docs/context7/planner-agent/papers/why-do-multi-agent-llm-systems-fail.md +5211 -0
  16. package/docs/context7/planner-agent/topics/planning-and-orchestration.md +24 -0
  17. package/docs/evals/README.md +96 -1
  18. package/docs/evals/arm-templates/README.md +13 -0
  19. package/docs/evals/arm-templates/full-wave.json +15 -0
  20. package/docs/evals/arm-templates/single-agent.json +15 -0
  21. package/docs/evals/benchmark-catalog.json +7 -0
  22. package/docs/evals/cases/README.md +47 -0
  23. package/docs/evals/cases/wave-blackboard-inbox-targeting.json +73 -0
  24. package/docs/evals/cases/wave-contradiction-conflict.json +104 -0
  25. package/docs/evals/cases/wave-expert-routing-preservation.json +69 -0
  26. package/docs/evals/cases/wave-hidden-profile-private-evidence.json +81 -0
  27. package/docs/evals/cases/wave-premature-closure-guard.json +71 -0
  28. package/docs/evals/cases/wave-silo-cross-agent-state.json +77 -0
  29. package/docs/evals/cases/wave-simultaneous-lockstep.json +92 -0
  30. package/docs/evals/cooperbench/real-world-mitigation.md +341 -0
  31. package/docs/evals/external-benchmarks.json +85 -0
  32. package/docs/evals/external-command-config.sample.json +9 -0
  33. package/docs/evals/external-command-config.swe-bench-pro.json +8 -0
  34. package/docs/evals/pilots/README.md +47 -0
  35. package/docs/evals/pilots/swe-bench-pro-public-full-wave-review-10.json +64 -0
  36. package/docs/evals/pilots/swe-bench-pro-public-pilot.json +111 -0
  37. package/docs/evals/wave-benchmark-program.md +302 -0
  38. package/docs/guides/planner.md +48 -11
  39. package/docs/plans/context7-wave-orchestrator.md +20 -0
  40. package/docs/plans/current-state.md +8 -1
  41. package/docs/plans/examples/wave-benchmark-improvement.md +108 -0
  42. package/docs/plans/examples/wave-example-live-proof.md +1 -1
  43. package/docs/plans/examples/wave-example-rollout-fidelity.md +340 -0
  44. package/docs/plans/wave-orchestrator.md +62 -11
  45. package/docs/plans/waves/reviews/wave-1-benchmark-operator.md +118 -0
  46. package/docs/reference/coordination-and-closure.md +436 -0
  47. package/docs/reference/live-proof-waves.md +25 -3
  48. package/docs/reference/npmjs-trusted-publishing.md +3 -3
  49. package/docs/reference/proof-metrics.md +90 -0
  50. package/docs/reference/runtime-config/README.md +61 -0
  51. package/docs/reference/sample-waves.md +29 -18
  52. package/docs/reference/wave-control.md +164 -0
  53. package/docs/reference/wave-planning-lessons.md +131 -0
  54. package/package.json +5 -4
  55. package/releases/manifest.json +18 -0
  56. package/scripts/research/agent-context-archive.mjs +18 -0
  57. package/scripts/research/manifests/agent-context-expanded-2026-03-22.mjs +17 -0
  58. package/scripts/research/sync-planner-context7-bundle.mjs +133 -0
  59. package/scripts/wave-orchestrator/artifact-schemas.mjs +232 -0
  60. package/scripts/wave-orchestrator/autonomous.mjs +7 -0
  61. package/scripts/wave-orchestrator/benchmark-cases.mjs +374 -0
  62. package/scripts/wave-orchestrator/benchmark-external.mjs +1384 -0
  63. package/scripts/wave-orchestrator/benchmark.mjs +972 -0
  64. package/scripts/wave-orchestrator/clarification-triage.mjs +78 -12
  65. package/scripts/wave-orchestrator/config.mjs +175 -0
  66. package/scripts/wave-orchestrator/control-cli.mjs +1123 -0
  67. package/scripts/wave-orchestrator/control-plane.mjs +697 -0
  68. package/scripts/wave-orchestrator/coord-cli.mjs +360 -2
  69. package/scripts/wave-orchestrator/coordination-store.mjs +211 -9
  70. package/scripts/wave-orchestrator/coordination.mjs +84 -0
  71. package/scripts/wave-orchestrator/dashboard-renderer.mjs +38 -3
  72. package/scripts/wave-orchestrator/dashboard-state.mjs +22 -0
  73. package/scripts/wave-orchestrator/evals.mjs +23 -0
  74. package/scripts/wave-orchestrator/executors.mjs +3 -2
  75. package/scripts/wave-orchestrator/feedback.mjs +55 -0
  76. package/scripts/wave-orchestrator/install.mjs +55 -1
  77. package/scripts/wave-orchestrator/launcher-closure.mjs +4 -1
  78. package/scripts/wave-orchestrator/launcher-runtime.mjs +24 -21
  79. package/scripts/wave-orchestrator/launcher.mjs +796 -35
  80. package/scripts/wave-orchestrator/planner-context.mjs +75 -0
  81. package/scripts/wave-orchestrator/planner.mjs +2270 -136
  82. package/scripts/wave-orchestrator/proof-cli.mjs +195 -0
  83. package/scripts/wave-orchestrator/proof-registry.mjs +317 -0
  84. package/scripts/wave-orchestrator/replay.mjs +10 -4
  85. package/scripts/wave-orchestrator/retry-cli.mjs +184 -0
  86. package/scripts/wave-orchestrator/retry-control.mjs +225 -0
  87. package/scripts/wave-orchestrator/shared.mjs +26 -0
  88. package/scripts/wave-orchestrator/swe-bench-pro-task.mjs +1004 -0
  89. package/scripts/wave-orchestrator/traces.mjs +157 -2
  90. package/scripts/wave-orchestrator/wave-control-client.mjs +532 -0
  91. package/scripts/wave-orchestrator/wave-control-schema.mjs +309 -0
  92. package/scripts/wave-orchestrator/wave-files.mjs +17 -5
  93. package/scripts/wave.mjs +27 -0
  94. package/skills/repo-coding-rules/SKILL.md +1 -0
  95. package/skills/role-cont-eval/SKILL.md +1 -0
  96. package/skills/role-cont-qa/SKILL.md +13 -6
  97. package/skills/role-deploy/SKILL.md +1 -0
  98. package/skills/role-documentation/SKILL.md +4 -0
  99. package/skills/role-implementation/SKILL.md +4 -0
  100. package/skills/role-infra/SKILL.md +2 -1
  101. package/skills/role-integration/SKILL.md +15 -8
  102. package/skills/role-planner/SKILL.md +39 -0
  103. package/skills/role-planner/skill.json +21 -0
  104. package/skills/role-research/SKILL.md +1 -0
  105. package/skills/role-security/SKILL.md +2 -2
  106. package/skills/runtime-claude/SKILL.md +2 -1
  107. package/skills/runtime-codex/SKILL.md +1 -0
  108. package/skills/runtime-local/SKILL.md +2 -0
  109. package/skills/runtime-opencode/SKILL.md +1 -0
  110. package/skills/wave-core/SKILL.md +25 -6
  111. package/skills/wave-core/references/marker-syntax.md +16 -8
  112. package/wave.config.json +45 -0
@@ -4,6 +4,11 @@ See also [concepts/context7-vs-skills.md](../concepts/context7-vs-skills.md) for
4
4
 
5
5
  Context7 is for external library truth. Repository docs and source are for repository truth.
6
6
 
7
+ The one deliberate exception in this repo is the planner corpus under
8
+ `docs/context7/planner-agent/`: it is a tracked export of selected local
9
+ planning research that the operator can publish as a custom Context7 library for
10
+ the agentic planner.
11
+
7
12
  ## Rules
8
13
 
9
14
  - Prefer a narrow bundle per agent or wave.
@@ -30,6 +35,21 @@ pnpm context7:api-check
30
35
 
31
36
  4. Review [docs/context7/bundles.json](../context7/bundles.json) and trim it to the external libraries your repository actually uses.
32
37
 
38
+ ## Planner Bundle
39
+
40
+ The shipped bundle index includes `planner-agentic`, which expects a published
41
+ Context7 library named `wave-planner-agentic`.
42
+
43
+ The source files for that library live under `docs/context7/planner-agent/`.
44
+ Refresh that folder from the ignored agent-context cache with:
45
+
46
+ ```bash
47
+ pnpm research:sync-planner-context7
48
+ ```
49
+
50
+ After you publish the folder to Context7, the agentic planner will prefetch that
51
+ bundle through `planner.agentic.context7Bundle`.
52
+
33
53
  ## Resolution Order
34
54
 
35
55
  1. Agent `### Context7`
@@ -1,6 +1,6 @@
1
1
  # Current State
2
2
 
3
- - The starter workspace in this source repo reflects the `0.6.3` package release surface.
3
+ - The starter workspace in this source repo reflects the `0.7.0` package release surface.
4
4
  - The repository contains the published `@chllming/wave-orchestration` package plus the starter scaffold used by `wave init`.
5
5
  - The runtime is package-first and non-destructive for adopting repos: `wave init --adopt-existing` records existing repo-owned plans, waves, prompts, and config without overwriting them, and `wave upgrade` writes only `.wave/install-state.json` plus `.wave/upgrade-history/`.
6
6
  - Runtime launch entrypoints now perform a best-effort npmjs version check, cache the result under `.wave/package-update-check.json`, and point operators at `pnpm exec wave self-update` when a newer published package exists.
@@ -28,6 +28,7 @@
28
28
  - a canonical coordination JSONL log
29
29
  - a generated markdown board projection
30
30
  - compiled shared summaries and per-agent inboxes
31
+ - active live-wave orchestration refresh that keeps summaries, inboxes, clarification triage, and dashboard coordination metrics current while agents are still running
31
32
  - a per-wave ledger
32
33
  - docs queues
33
34
  - explicit integration summaries with actionable claim, interface, proof, docs, and deploy-risk evidence
@@ -36,7 +37,12 @@
36
37
  - hermetic `traceVersion: 2` per-attempt trace bundles with copied launched-agent summaries, copied component matrices for promoted waves, a hashed `outcome.json` replay baseline, run metadata, and cumulative quality metrics
37
38
  - an internal, read-only replay validator for trace bundles, with legacy `traceVersion: 1` bundles kept in best-effort warning mode
38
39
  - orchestrator-first clarification triage plus human escalation artifacts
40
+ - optional `--resident-orchestrator` support for a long-running, non-owning orchestrator session during live waves
39
41
  - persisted relaunch plans under `.tmp/<lane>-wave-launcher/status/` so targeted retry intent can survive a launcher restart
42
+ - a canonical control-plane event log under `.tmp/<lane>-wave-launcher/control-plane/` that records operator tasks, rerun requests, proof bundles, attempt lifecycle, and human-input events as append-only JSONL; `wave control` materializes state from this log
43
+ - operator-applied retry overrides projected to `.tmp/<lane>-wave-launcher/control/` for compatibility with selected reruns, explicit reuse selectors, reuse clearing or preservation, and explicit resume targets
44
+ - authoritative proof registries projected to `.tmp/<lane>-wave-launcher/proof/` for compatibility, while preserving proof bundle lifecycle state so revoked or superseded operator evidence cannot keep satisfying closure
45
+ - optional Wave Control telemetry under `.tmp/<lane>-wave-launcher/control-plane/telemetry/` for local-first, best-effort reporting to the Railway-hosted analysis plane
40
46
  - a thinner launcher entrypoint that now delegates session launch or wait and closure-sweep orchestration to dedicated modules while preserving the existing CLI surface
41
47
  - Runtime executor support now includes:
42
48
  - Codex `exec` profile, inline config, search, image, add-dir, JSON, and ephemeral flags
@@ -62,6 +68,7 @@
62
68
  - Live closure is strict: `cont-EVAL` must prove the declared eval contract with exact target and benchmark ids, and `cont-QA` must provide both final verdict and final gate artifacts. Legacy evaluator-era shapes remain replay-only compatibility inputs.
63
69
  - Proof-centric waves can now declare `### Proof artifacts`, and implementation proof validation can require those machine-visible local artifacts in addition to deliverables and structured proof markers.
64
70
  - Routed clarifications remain blocking until the linked follow-up request or escalation is fully resolved.
71
+ - Operators can now use `wave control status`, `wave control task`, `wave control rerun`, and `wave control proof` as the preferred supported control surfaces during a live wave instead of editing runtime files by hand. Legacy `wave coord`, `wave retry`, and `wave proof` commands remain as compatibility paths.
65
72
  - Required inbound cross-lane dependency tickets under `.tmp/wave-orchestrator/dependencies/` block both autonomous wave launch and lane finalization while they remain unresolved.
66
73
  - Cross-lane dependency workflows now include:
67
74
  - `wave dep post|show|resolve|render`
@@ -0,0 +1,108 @@
1
+ # Wave 99 - Benchmark Improvement Loop
2
+
3
+ This example shows how to author a Wave whose job is to improve benchmark outcomes after a baseline already exists.
4
+
5
+ ## Eval targets
6
+
7
+ - id: hidden-profile-pooling | selection: pinned | benchmarks: private-evidence-integration,premature-consensus-guard | objective: Improve distributed evidence pooling without allowing premature closure | threshold: Full-wave benchmark scores improve without regressing closure discipline
8
+ - id: routing-quality | selection: pinned | benchmarks: expert-routing-preservation,lockstep-resolution | objective: Improve capability routing and simultaneous coordination | threshold: Routing benchmarks improve and no new deadlock-like regressions appear
9
+
10
+ ## Agent A0: cont-QA
11
+
12
+ ### Prompt
13
+
14
+ ```text
15
+ Primary goal:
16
+ - Block any claimed improvement that is not backed by rerun benchmark output.
17
+
18
+ Specific expectations:
19
+ - require benchmark reruns after each material change
20
+ - do not PASS on inspection-only claims
21
+ - treat benchmark regressions as blocking until they are resolved or explicitly accepted
22
+
23
+ File ownership (only touch these paths):
24
+ - docs/plans/waves/reviews/wave-99-cont-qa.md
25
+ ```
26
+
27
+ ## Agent E0: cont-EVAL
28
+
29
+ ### Prompt
30
+
31
+ ```text
32
+ Primary goal:
33
+ - Run the benchmark loop, identify the narrowest failing coordination surfaces, and keep benchmark ids explicit in every iteration.
34
+
35
+ Specific expectations:
36
+ - choose the smallest benchmark subset that still proves the claimed improvement
37
+ - record baseline, current score, regressions, and exact benchmark ids
38
+ - stay report-only unless this wave explicitly grants implementation ownership
39
+
40
+ File ownership (only touch these paths):
41
+ - docs/plans/waves/reviews/wave-99-cont-eval.md
42
+ ```
43
+
44
+ ## Agent A8: Integration Steward
45
+
46
+ ### Prompt
47
+
48
+ ```text
49
+ Primary goal:
50
+ - Synthesize benchmark evidence, implementation deltas, and regression risk into one integrated recommendation.
51
+
52
+ Specific expectations:
53
+ - call out any contradiction between benchmark wins and runtime or docs regressions
54
+ - prefer explicit follow-up requests over vague risk notes
55
+
56
+ File ownership (only touch these paths):
57
+ - .tmp/main-wave-launcher/integration/wave-99.md
58
+ ```
59
+
60
+ ## Agent A1: Coordination Store Hardening
61
+
62
+ ### Deliverables
63
+
64
+ - scripts/wave-orchestrator/coordination-store.mjs
65
+ - test/wave-orchestrator/coordination-store.test.ts
66
+
67
+ ### Prompt
68
+
69
+ ```text
70
+ Primary goal:
71
+ - Improve targeted inbox recall or summary fidelity for the benchmark cases that E0 reports as failing.
72
+
73
+ Specific expectations:
74
+ - keep changes tightly scoped to the failing benchmark signals
75
+ - add regression coverage for any changed behavior
76
+ - coordinate doc-impact with A9 if the benchmark semantics or operator surfaces change
77
+
78
+ File ownership (only touch these paths):
79
+ - scripts/wave-orchestrator/coordination-store.mjs
80
+ - test/wave-orchestrator/coordination-store.test.ts
81
+ ```
82
+
83
+ ## Agent A2: Routing And Closure Hardening
84
+
85
+ ### Deliverables
86
+
87
+ - scripts/wave-orchestrator/routing-state.mjs
88
+ - scripts/wave-orchestrator/benchmark.mjs
89
+ - test/wave-orchestrator/routing-state.test.ts
90
+ - test/wave-orchestrator/benchmark.test.ts
91
+
92
+ ### Prompt
93
+
94
+ ```text
95
+ Primary goal:
96
+ - Improve routing or closure benchmark outcomes without weakening evidence requirements.
97
+
98
+ Specific expectations:
99
+ - preserve deterministic benchmark behavior
100
+ - prefer narrow routing and guard changes over broad orchestration rewrites
101
+ - rerun the affected benchmark cases after each material change
102
+
103
+ File ownership (only touch these paths):
104
+ - scripts/wave-orchestrator/routing-state.mjs
105
+ - scripts/wave-orchestrator/benchmark.mjs
106
+ - test/wave-orchestrator/routing-state.test.ts
107
+ - test/wave-orchestrator/benchmark.test.ts
108
+ ```
@@ -2,7 +2,7 @@
2
2
 
3
3
  This is a showcase-first sample wave.
4
4
 
5
- Use it as the single reference example for the current `0.6.1` Wave surface.
5
+ Use it as the single reference example for the current `0.7.0` Wave surface.
6
6
 
7
7
  It intentionally combines more sections than a normal production wave so one file can demonstrate:
8
8
 
@@ -0,0 +1,340 @@
1
+ # Wave 9 - Rollout Substrate + Desired-State Records
2
+
3
+ This is a showcase-first sample wave for a high-fidelity `repo-landed` outcome.
4
+
5
+ Use it when you want a concrete example of what "good" looks like for a wave
6
+ that lands one cohesive substrate across multiple implementation slices without
7
+ over-claiming `pilot-live` or `fleet-ready` proof.
8
+
9
+ This example is intentionally generic. The component id, deliverable paths, and
10
+ Go control-plane slices are illustrative, but the authored Wave structure,
11
+ closure expectations, and maturity discipline match the current surface.
12
+
13
+ **Commit message**: `Feat: land rollout substrate and desired-state records`
14
+
15
+ ## Component promotions
16
+
17
+ - rollout-cores-and-cluster-view: repo-landed
18
+
19
+ ## Deploy environments
20
+
21
+ - repo-local: custom default (repo-local rollout substrate work; no live host mutation)
22
+
23
+ ## Context7 defaults
24
+
25
+ - bundle: go-services
26
+ - query: "Desired state, reconcile loops, rollout metadata, and cluster-view surfaces for Go control-plane rollout work"
27
+
28
+ ## Agent A0: cont-QA
29
+
30
+ ### Role prompts
31
+
32
+ - docs/agents/wave-cont-qa-role.md
33
+
34
+ ### Executor
35
+
36
+ - profile: deep-review
37
+ - claude.permission_mode: plan
38
+ - claude.settings: .claude/settings.json
39
+ - claude.output_format: text
40
+
41
+ ### Context7
42
+
43
+ - bundle: none
44
+ - query: "Repository docs remain canonical for cont-QA"
45
+
46
+ ### Prompt
47
+
48
+ ```text
49
+ Primary goal:
50
+ - Judge whether Wave 9 honestly lands rollout-cores-and-cluster-view at repo-landed without implying pilot-live or fleet-ready proof.
51
+
52
+ Required context before coding:
53
+ - Read docs/reference/repository-guidance.md.
54
+ - Read docs/research/agent-context-sources.md.
55
+ - Read docs/plans/master-plan.md, docs/plans/current-state.md, and docs/plans/migration.md.
56
+ - Read docs/plans/component-cutover-matrix.md and docs/reference/wave-planning-lessons.md.
57
+
58
+ Specific expectations:
59
+ - do not PASS unless desired-state records, reconcile-loop substrate, and cluster-view surfaces all land together
60
+ - treat repo-landed as a lower bar than pilot-live and fleet-ready
61
+ - require shared-plan updates when the future-wave baseline changes
62
+ - emit the final `[wave-gate] ...` marker as a plain last line before `Verdict: ...`
63
+
64
+ File ownership (only touch these paths):
65
+ - docs/plans/waves/reviews/wave-9-cont-qa.md
66
+ ```
67
+
68
+ ## Agent A8: Integration Steward
69
+
70
+ ### Role prompts
71
+
72
+ - docs/agents/wave-integration-role.md
73
+
74
+ ### Executor
75
+
76
+ - profile: deep-review
77
+ - claude.permission_mode: plan
78
+ - claude.settings: .claude/settings.json
79
+ - claude.output_format: text
80
+
81
+ ### Context7
82
+
83
+ - bundle: none
84
+ - query: "Repository docs remain canonical for integration"
85
+
86
+ ### Prompt
87
+
88
+ ```text
89
+ Primary goal:
90
+ - Reconcile desired-state, cluster-view, and reconcile-loop slices into one closure-ready repo-landed verdict.
91
+
92
+ Required context before coding:
93
+ - Read docs/reference/repository-guidance.md.
94
+ - Read docs/research/agent-context-sources.md.
95
+ - Read docs/plans/master-plan.md and docs/plans/current-state.md.
96
+ - Read docs/plans/component-cutover-matrix.md and docs/reference/wave-planning-lessons.md.
97
+
98
+ Specific expectations:
99
+ - treat missing rollout substrate pieces as integration failures
100
+ - decide `ready-for-doc-closure` vs `needs-more-work` based on the landed substrate, not intent
101
+ - emit the final `[wave-integration] ...` marker as a plain last line
102
+
103
+ File ownership (only touch these paths):
104
+ - .tmp/main-wave-launcher/integration/wave-9.md
105
+ - .tmp/main-wave-launcher/integration/wave-9.json
106
+ ```
107
+
108
+ ## Agent A9: Documentation Steward
109
+
110
+ ### Role prompts
111
+
112
+ - docs/agents/wave-documentation-role.md
113
+
114
+ ### Executor
115
+
116
+ - profile: docs-pass
117
+ - claude.settings: .claude/settings.json
118
+ - claude.output_format: text
119
+
120
+ ### Context7
121
+
122
+ - bundle: none
123
+ - query: "Shared-plan documentation only"
124
+
125
+ ### Prompt
126
+
127
+ ```text
128
+ Primary goal:
129
+ - Keep shared plan docs and the component matrix aligned with the real Wave 9 rollout-substrate outcome.
130
+
131
+ Required context before coding:
132
+ - Read docs/reference/repository-guidance.md.
133
+ - Read docs/research/agent-context-sources.md.
134
+ - Read docs/plans/master-plan.md, docs/plans/current-state.md, and docs/plans/migration.md.
135
+ - Read docs/plans/component-cutover-matrix.md and docs/reference/wave-planning-lessons.md.
136
+
137
+ Specific expectations:
138
+ - update shared plan docs when Wave 9 changes what later waves may safely assume
139
+ - leave an exact `closed` or `no-change` note for A0
140
+ - emit the final `[wave-doc-closure] ...` marker as a plain last line
141
+
142
+ File ownership (only touch these paths):
143
+ - docs/plans/master-plan.md
144
+ - docs/plans/current-state.md
145
+ - docs/plans/migration.md
146
+ - docs/plans/component-cutover-matrix.md
147
+ - docs/plans/component-cutover-matrix.json
148
+ ```
149
+
150
+ ## Agent A1: Desired-State Records And Rollout Store
151
+
152
+ ### Executor
153
+
154
+ - profile: implement-fast
155
+ - model: gpt-5.4
156
+ - codex.config: model_reasoning_effort=xhigh,model_verbosity=low
157
+
158
+ ### Context7
159
+
160
+ - bundle: go-services
161
+ - query: "Desired-state persistence, rollout records, and authoritative state transitions"
162
+
163
+ ### Skills
164
+
165
+ - role-implementation
166
+ - runtime-codex
167
+ - repo-coding-rules
168
+
169
+ ### Components
170
+
171
+ - rollout-cores-and-cluster-view
172
+
173
+ ### Capabilities
174
+
175
+ - rollout-authority
176
+ - desired-state
177
+
178
+ ### Exit contract
179
+
180
+ - completion: integrated
181
+ - durability: durable
182
+ - proof: integration
183
+ - doc-impact: owned
184
+
185
+ ### Deliverables
186
+
187
+ - go/internal/rollout/desiredstate/store.go
188
+ - go/internal/rollout/desiredstate/store_test.go
189
+ - docs/plans/operations/wave-9-rollout-state-model.md
190
+
191
+ ### Prompt
192
+
193
+ ```text
194
+ Primary goal:
195
+ - Land the durable desired-state store and revision model for rollout ownership inside the Go control plane.
196
+
197
+ Specific expectations:
198
+ - Emit the final `[wave-proof]`, `[wave-doc-delta]`, and `[wave-component]`
199
+ markers as plain lines by themselves at the end of the output. Do not wrap
200
+ them in backticks, quotes, or code fences.
201
+ - Do not stop after code or tests alone. Treat the missing final marker lines
202
+ as an incomplete attempt even if the deliverables already exist on disk.
203
+
204
+ Required context before coding:
205
+ - Read docs/reference/repository-guidance.md.
206
+ - Read docs/research/agent-context-sources.md.
207
+ - Read docs/plans/migration.md and docs/reference/wave-planning-lessons.md.
208
+
209
+ File ownership (only touch these paths):
210
+ - go/internal/rollout/desiredstate/
211
+ - docs/plans/operations/wave-9-rollout-state-model.md
212
+ ```
213
+
214
+ ## Agent A2: Cluster View And Observed-State Projections
215
+
216
+ ### Executor
217
+
218
+ - profile: implement-fast
219
+ - model: gpt-5.4
220
+ - codex.config: model_reasoning_effort=xhigh,model_verbosity=low
221
+
222
+ ### Context7
223
+
224
+ - bundle: go-services
225
+ - query: "Cluster-view, observed-state projections, and rollout-facing status surfaces"
226
+
227
+ ### Skills
228
+
229
+ - role-implementation
230
+ - runtime-codex
231
+ - repo-coding-rules
232
+
233
+ ### Components
234
+
235
+ - rollout-cores-and-cluster-view
236
+
237
+ ### Capabilities
238
+
239
+ - cluster-view
240
+ - observed-state
241
+
242
+ ### Exit contract
243
+
244
+ - completion: integrated
245
+ - durability: durable
246
+ - proof: integration
247
+ - doc-impact: owned
248
+
249
+ ### Deliverables
250
+
251
+ - go/internal/cluster/view/status.go
252
+ - go/internal/cluster/view/status_test.go
253
+ - docs/plans/qa/wave-9-cluster-view-projections.md
254
+
255
+ ### Prompt
256
+
257
+ ```text
258
+ Primary goal:
259
+ - Land repo-visible cluster-view and observed-state projections that later rollout and cutover waves can trust.
260
+
261
+ Specific expectations:
262
+ - Emit the final `[wave-proof]`, `[wave-doc-delta]`, and `[wave-component]`
263
+ markers as plain lines by themselves at the end of the output. Do not wrap
264
+ them in backticks, quotes, or code fences.
265
+ - Do not stop after code or tests alone. Treat the missing final marker lines
266
+ as an incomplete attempt even if the deliverables already exist on disk.
267
+
268
+ Required context before coding:
269
+ - Read docs/reference/repository-guidance.md.
270
+ - Read docs/research/agent-context-sources.md.
271
+ - Read docs/plans/migration.md and docs/reference/wave-planning-lessons.md.
272
+
273
+ File ownership (only touch these paths):
274
+ - go/internal/cluster/view/
275
+ - docs/plans/qa/wave-9-cluster-view-projections.md
276
+ ```
277
+
278
+ ## Agent A3: Task Plane And Reconcile Loop Skeleton
279
+
280
+ ### Executor
281
+
282
+ - profile: implement-fast
283
+ - model: gpt-5.4
284
+ - codex.config: model_reasoning_effort=xhigh,model_verbosity=low
285
+
286
+ ### Context7
287
+
288
+ - bundle: go-services
289
+ - query: "Worker task planes, reconcile loops, and rollout-safe execution boundaries"
290
+
291
+ ### Skills
292
+
293
+ - role-implementation
294
+ - runtime-codex
295
+ - repo-coding-rules
296
+
297
+ ### Components
298
+
299
+ - rollout-cores-and-cluster-view
300
+
301
+ ### Capabilities
302
+
303
+ - reconcile-loop
304
+ - task-plane
305
+
306
+ ### Exit contract
307
+
308
+ - completion: integrated
309
+ - durability: durable
310
+ - proof: integration
311
+ - doc-impact: owned
312
+
313
+ ### Deliverables
314
+
315
+ - go/internal/rollout/reconcile/worker.go
316
+ - go/internal/rollout/reconcile/worker_test.go
317
+ - docs/plans/operations/wave-9-reconcile-loop.md
318
+
319
+ ### Prompt
320
+
321
+ ```text
322
+ Primary goal:
323
+ - Land the narrow task-plane and reconcile-loop substrate without turning workers into peer control planes.
324
+
325
+ Specific expectations:
326
+ - Emit the final `[wave-proof]`, `[wave-doc-delta]`, and `[wave-component]`
327
+ markers as plain lines by themselves at the end of the output. Do not wrap
328
+ them in backticks, quotes, or code fences.
329
+ - Do not stop after code or tests alone. Treat the missing final marker lines
330
+ as an incomplete attempt even if the deliverables already exist on disk.
331
+
332
+ Required context before coding:
333
+ - Read docs/reference/repository-guidance.md.
334
+ - Read docs/research/agent-context-sources.md.
335
+ - Read docs/plans/migration.md and docs/reference/wave-planning-lessons.md.
336
+
337
+ File ownership (only touch these paths):
338
+ - go/internal/rollout/reconcile/
339
+ - docs/plans/operations/wave-9-reconcile-loop.md
340
+ ```