@beyondwork/docx-react-component 1.0.0 → 1.0.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 (704) hide show
  1. package/dist/chunk-32W6IVQE.js +7725 -0
  2. package/dist/chunk-32W6IVQE.js.map +1 -0
  3. package/dist/index.cjs +23722 -0
  4. package/dist/index.cjs.map +1 -0
  5. package/dist/index.d.cts +7 -0
  6. package/dist/index.d.ts +7 -0
  7. package/dist/index.js +16011 -0
  8. package/dist/index.js.map +1 -0
  9. package/dist/public-types-DqCURAz8.d.cts +1152 -0
  10. package/dist/public-types-DqCURAz8.d.ts +1152 -0
  11. package/dist/tailwind.cjs +8295 -0
  12. package/dist/tailwind.cjs.map +1 -0
  13. package/dist/tailwind.d.cts +323 -0
  14. package/dist/tailwind.d.ts +323 -0
  15. package/dist/tailwind.js +553 -0
  16. package/dist/tailwind.js.map +1 -0
  17. package/package.json +52 -31
  18. package/.codex/config.toml +0 -5
  19. package/.corepack/v1/pnpm/10.30.3/.corepack +0 -1
  20. package/.corepack/v1/pnpm/10.30.3/LICENSE +0 -22
  21. package/.corepack/v1/pnpm/10.30.3/README.md +0 -240
  22. package/.corepack/v1/pnpm/10.30.3/dist/node-gyp-bin/node-gyp +0 -6
  23. package/.corepack/v1/pnpm/10.30.3/dist/node-gyp-bin/node-gyp.cmd +0 -5
  24. package/.corepack/v1/pnpm/10.30.3/dist/pnpm.cjs +0 -195400
  25. package/.corepack/v1/pnpm/10.30.3/dist/pnpmrc +0 -2
  26. package/.corepack/v1/pnpm/10.30.3/dist/reflink.darwin-arm64-2HJ4WGO6.node +0 -0
  27. package/.corepack/v1/pnpm/10.30.3/dist/reflink.darwin-x64-3G3H6IW4.node +0 -0
  28. package/.corepack/v1/pnpm/10.30.3/dist/reflink.win32-arm64-msvc-Q6BARPPB.node +0 -0
  29. package/.corepack/v1/pnpm/10.30.3/dist/reflink.win32-x64-msvc-J2TZHRQI.node +0 -0
  30. package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.bash +0 -31
  31. package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.fish +0 -22
  32. package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.ps1 +0 -193
  33. package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.zsh +0 -27
  34. package/.corepack/v1/pnpm/10.30.3/dist/vendor/fastlist-0.3.0-x64.exe +0 -0
  35. package/.corepack/v1/pnpm/10.30.3/dist/vendor/fastlist-0.3.0-x86.exe +0 -0
  36. package/.corepack/v1/pnpm/10.30.3/dist/worker.js +0 -10119
  37. package/.corepack/v1/pnpm/10.30.3/package.json +0 -192
  38. package/.cursor/mcp.json +0 -7
  39. package/.github/workflows/ci.yml +0 -35
  40. package/.mcp.json +0 -7
  41. package/.openclaw/workspace-state.json +0 -4
  42. package/.pnpmrc.json +0 -1
  43. package/.wave-launch.sh +0 -7
  44. package/.workspace-marker +0 -1
  45. package/AGENTS.md +0 -78
  46. package/CHANGELOG.md +0 -177
  47. package/DESIGN.md +0 -929
  48. package/HEARTBEAT.md +0 -7
  49. package/IDENTITY.md +0 -23
  50. package/SOUL.md +0 -36
  51. package/TOOLS.md +0 -40
  52. package/USER.md +0 -17
  53. package/docs/README.md +0 -107
  54. package/docs/agents/wave-cont-eval-role.md +0 -36
  55. package/docs/agents/wave-cont-qa-role.md +0 -52
  56. package/docs/agents/wave-deploy-verifier-role.md +0 -34
  57. package/docs/agents/wave-design-role.md +0 -47
  58. package/docs/agents/wave-documentation-role.md +0 -34
  59. package/docs/agents/wave-infra-role.md +0 -34
  60. package/docs/agents/wave-integration-role.md +0 -37
  61. package/docs/agents/wave-launcher-role.md +0 -41
  62. package/docs/agents/wave-orchestrator-role.md +0 -52
  63. package/docs/agents/wave-planner-role.md +0 -39
  64. package/docs/agents/wave-security-role.md +0 -40
  65. package/docs/architecture/docx/README.md +0 -10
  66. package/docs/architecture/future/README.md +0 -8
  67. package/docs/architecture/ooxml-upgrade-analysis.md +0 -134
  68. package/docs/architecture/platform/shared-openxml-editor-platform.md +0 -153
  69. package/docs/architecture/xlsx/canonical-workbook-model-and-commands.md +0 -187
  70. package/docs/architecture/xlsx/spreadsheet-editor-frontend-architecture.md +0 -150
  71. package/docs/comment-redline-overview.md +0 -350
  72. package/docs/concepts/context7-vs-skills.md +0 -118
  73. package/docs/concepts/operating-modes.md +0 -91
  74. package/docs/concepts/runtime-agnostic-orchestration.md +0 -111
  75. package/docs/concepts/what-is-a-wave.md +0 -217
  76. package/docs/context7/bundles.json +0 -222
  77. package/docs/context7/planner-agent/README.md +0 -28
  78. package/docs/context7/planner-agent/manifest.json +0 -83
  79. package/docs/context7/planner-agent/papers/cooperbench-why-coding-agents-cannot-be-your-teammates-yet.md +0 -3283
  80. package/docs/context7/planner-agent/papers/dova-deliberation-first-multi-agent-orchestration-for-autonomous-research-automation.md +0 -1699
  81. package/docs/context7/planner-agent/papers/dpbench-large-language-models-struggle-with-simultaneous-coordination.md +0 -2251
  82. package/docs/context7/planner-agent/papers/incremental-planning-to-control-a-blackboard-based-problem-solver.md +0 -1729
  83. package/docs/context7/planner-agent/papers/silo-bench-a-scalable-environment-for-evaluating-distributed-coordination-in-multi-agent-llm-systems.md +0 -3747
  84. package/docs/context7/planner-agent/papers/todoevolve-learning-to-architect-agent-planning-systems.md +0 -1675
  85. package/docs/context7/planner-agent/papers/verified-multi-agent-orchestration-a-plan-execute-verify-replan-framework-for-complex-query-resolution.md +0 -1173
  86. package/docs/context7/planner-agent/papers/why-do-multi-agent-llm-systems-fail.md +0 -5211
  87. package/docs/context7/planner-agent/topics/planning-and-orchestration.md +0 -24
  88. package/docs/evals/arm-templates/README.md +0 -13
  89. package/docs/evals/arm-templates/full-wave.json +0 -15
  90. package/docs/evals/arm-templates/single-agent.json +0 -15
  91. package/docs/evals/benchmark-catalog.json +0 -670
  92. package/docs/evals/cases/README.md +0 -47
  93. package/docs/evals/cases/wave-blackboard-inbox-targeting.json +0 -73
  94. package/docs/evals/cases/wave-contradiction-conflict.json +0 -104
  95. package/docs/evals/cases/wave-expert-routing-preservation.json +0 -69
  96. package/docs/evals/cases/wave-hidden-profile-private-evidence.json +0 -81
  97. package/docs/evals/cases/wave-premature-closure-guard.json +0 -71
  98. package/docs/evals/cases/wave-silo-cross-agent-state.json +0 -77
  99. package/docs/evals/cases/wave-simultaneous-lockstep.json +0 -92
  100. package/docs/evals/external-benchmarks.json +0 -85
  101. package/docs/evals/external-command-config.sample.json +0 -9
  102. package/docs/evals/external-command-config.swe-bench-pro.json +0 -8
  103. package/docs/evals/pilots/README.md +0 -47
  104. package/docs/evals/pilots/swe-bench-pro-public-full-wave-review-10.json +0 -64
  105. package/docs/evals/pilots/swe-bench-pro-public-pilot.json +0 -111
  106. package/docs/evals/wave-benchmark-program.md +0 -302
  107. package/docs/guides/planner.md +0 -220
  108. package/docs/guides/recommendations-0.8.9.md +0 -133
  109. package/docs/guides/signal-wrappers.md +0 -165
  110. package/docs/guides/terminal-surfaces.md +0 -96
  111. package/docs/image copy.png +0 -0
  112. package/docs/image.png +0 -0
  113. package/docs/images/image.png +0 -0
  114. package/docs/legal-feedback-architecture.md +0 -498
  115. package/docs/plans/component-cutover-matrix.json +0 -1072
  116. package/docs/plans/component-cutover-matrix.md +0 -307
  117. package/docs/plans/context7-wave-orchestrator.md +0 -155
  118. package/docs/plans/current-state.md +0 -198
  119. package/docs/plans/docx/README.md +0 -9
  120. package/docs/plans/examples/wave-benchmark-improvement.md +0 -108
  121. package/docs/plans/examples/wave-example-live-proof.md +0 -435
  122. package/docs/plans/master-plan.md +0 -224
  123. package/docs/plans/migration.md +0 -538
  124. package/docs/plans/operations/README.md +0 -7
  125. package/docs/plans/operations/wave-10-word-certification.md +0 -87
  126. package/docs/plans/operations/wave-8-railway-staging.md +0 -153
  127. package/docs/plans/operations/wave-9-manual-certification.md +0 -73
  128. package/docs/plans/platform/README.md +0 -9
  129. package/docs/plans/reference/legal-checklist-coverage.md +0 -258
  130. package/docs/plans/wave-orchestrator.md +0 -423
  131. package/docs/plans/waves/README.md +0 -75
  132. package/docs/plans/waves/completed/wave-0.md +0 -195
  133. package/docs/plans/waves/completed/wave-1.md +0 -379
  134. package/docs/plans/waves/completed/wave-10.md +0 -670
  135. package/docs/plans/waves/completed/wave-11.md +0 -335
  136. package/docs/plans/waves/completed/wave-12.md +0 -417
  137. package/docs/plans/waves/completed/wave-13.md +0 -316
  138. package/docs/plans/waves/completed/wave-14.md +0 -319
  139. package/docs/plans/waves/completed/wave-15.md +0 -321
  140. package/docs/plans/waves/completed/wave-16.md +0 -316
  141. package/docs/plans/waves/completed/wave-17.md +0 -331
  142. package/docs/plans/waves/completed/wave-18.md +0 -328
  143. package/docs/plans/waves/completed/wave-2.md +0 -438
  144. package/docs/plans/waves/completed/wave-3.md +0 -435
  145. package/docs/plans/waves/completed/wave-4.md +0 -430
  146. package/docs/plans/waves/completed/wave-5.md +0 -430
  147. package/docs/plans/waves/completed/wave-6.md +0 -430
  148. package/docs/plans/waves/completed/wave-7.md +0 -526
  149. package/docs/plans/waves/completed/wave-8.md +0 -596
  150. package/docs/plans/waves/completed/wave-9.md +0 -552
  151. package/docs/plans/waves/deferred/README.md +0 -14
  152. package/docs/plans/waves/deferred/encrypted-intake-contracts.md +0 -282
  153. package/docs/plans/waves/deferred/legal-feedback-wave-expansion.md +0 -308
  154. package/docs/plans/waves/deferred/wave-encrypted-intake.md +0 -451
  155. package/docs/plans/waves/design/README.md +0 -5
  156. package/docs/plans/waves/design/wave-1-a1.md +0 -309
  157. package/docs/plans/waves/reviews/README.md +0 -5
  158. package/docs/plans/waves/reviews/wave-0-cont-qa.md +0 -151
  159. package/docs/plans/waves/reviews/wave-1-cont-qa.md +0 -46
  160. package/docs/plans/waves/reviews/wave-10-accessibility-and-design.md +0 -51
  161. package/docs/plans/waves/reviews/wave-10-cont-qa.md +0 -24
  162. package/docs/plans/waves/reviews/wave-10-dashboard-proof.md +0 -46
  163. package/docs/plans/waves/reviews/wave-10-performance-signoff.md +0 -55
  164. package/docs/plans/waves/reviews/wave-10-regression-proof.md +0 -23
  165. package/docs/plans/waves/reviews/wave-10-release-audit.md +0 -31
  166. package/docs/plans/waves/reviews/wave-10-service-proof.md +0 -83
  167. package/docs/plans/waves/reviews/wave-10-word-certification.md +0 -31
  168. package/docs/plans/waves/reviews/wave-18-ai-contract-closure.md +0 -277
  169. package/docs/plans/waves/reviews/wave-18-cont-qa.md +0 -255
  170. package/docs/plans/waves/reviews/wave-18-parity-proof.md +0 -271
  171. package/docs/plans/waves/reviews/wave-19-cont-qa.md +0 -59
  172. package/docs/plans/waves/reviews/wave-2-cont-qa.md +0 -72
  173. package/docs/plans/waves/reviews/wave-20-cont-qa.md +0 -60
  174. package/docs/plans/waves/reviews/wave-25-cont-qa.md +0 -48
  175. package/docs/plans/waves/reviews/wave-28-cont-qa.md +0 -46
  176. package/docs/plans/waves/reviews/wave-29-cont-qa.md +0 -53
  177. package/docs/plans/waves/reviews/wave-3-cont-qa.md +0 -53
  178. package/docs/plans/waves/reviews/wave-3-core-proof.md +0 -77
  179. package/docs/plans/waves/reviews/wave-3-validator-proof.md +0 -73
  180. package/docs/plans/waves/reviews/wave-32-cont-qa.md +0 -43
  181. package/docs/plans/waves/reviews/wave-33-cont-qa.md +0 -526
  182. package/docs/plans/waves/reviews/wave-34-cont-qa.md +0 -100
  183. package/docs/plans/waves/reviews/wave-35-cont-qa.md +0 -145
  184. package/docs/plans/waves/reviews/wave-4-cont-qa.md +0 -47
  185. package/docs/plans/waves/reviews/wave-4-structure-proof.md +0 -69
  186. package/docs/plans/waves/reviews/wave-5-comment-proof.md +0 -158
  187. package/docs/plans/waves/reviews/wave-5-cont-qa.md +0 -68
  188. package/docs/plans/waves/reviews/wave-6-cont-qa.md +0 -416
  189. package/docs/plans/waves/reviews/wave-6-redline-proof.md +0 -130
  190. package/docs/plans/waves/reviews/wave-7-cont-qa.md +0 -82
  191. package/docs/plans/waves/reviews/wave-7-ooxml-compliance.md +0 -85
  192. package/docs/plans/waves/reviews/wave-7-preservation-proof.md +0 -119
  193. package/docs/plans/waves/reviews/wave-7-trust-ux.md +0 -87
  194. package/docs/plans/waves/reviews/wave-8-accessibility-and-design.md +0 -128
  195. package/docs/plans/waves/reviews/wave-8-cont-qa.md +0 -92
  196. package/docs/plans/waves/reviews/wave-8-live-proof.md +0 -140
  197. package/docs/plans/waves/reviews/wave-8-security.md +0 -47
  198. package/docs/plans/waves/reviews/wave-9-editor-embedding.md +0 -39
  199. package/docs/plans/waves/reviews/wave-9-fixture-runner.md +0 -56
  200. package/docs/plans/waves/reviews/wave-9-live-proof.md +0 -105
  201. package/docs/plans/waves/reviews/wave-9-usability-and-performance.md +0 -152
  202. package/docs/plans/waves/specs/README.md +0 -5
  203. package/docs/plans/waves/specs/wave-1-component-boundaries.md +0 -322
  204. package/docs/plans/waves/specs/wave-1-ooxml-contracts.md +0 -323
  205. package/docs/plans/waves/specs/wave-1-review-and-ui-contracts.md +0 -339
  206. package/docs/plans/waves/specs/wave-1-runtime-contracts.md +0 -509
  207. package/docs/plans/waves/wave-19.md +0 -341
  208. package/docs/plans/waves/wave-20.md +0 -308
  209. package/docs/plans/waves/wave-21.md +0 -289
  210. package/docs/plans/waves/wave-22.md +0 -221
  211. package/docs/plans/waves/wave-23.md +0 -295
  212. package/docs/plans/waves/wave-24.md +0 -286
  213. package/docs/plans/waves/wave-25.md +0 -313
  214. package/docs/plans/waves/wave-26.md +0 -300
  215. package/docs/plans/waves/wave-27.md +0 -299
  216. package/docs/plans/waves/wave-28.md +0 -368
  217. package/docs/plans/waves/wave-29.md +0 -303
  218. package/docs/plans/waves/wave-30.md +0 -307
  219. package/docs/plans/waves/wave-31.md +0 -231
  220. package/docs/plans/waves/wave-32.md +0 -152
  221. package/docs/plans/waves/wave-33.md +0 -147
  222. package/docs/plans/waves/wave-34.md +0 -148
  223. package/docs/plans/waves/wave-35.md +0 -141
  224. package/docs/plans/waves/wave-36.md +0 -146
  225. package/docs/plans/xlsx/README.md +0 -14
  226. package/docs/plans/xlsx/xlsx-fixture-corpus-and-certification-plan.md +0 -126
  227. package/docs/reference/cli-reference.md +0 -600
  228. package/docs/reference/coordination-and-closure.md +0 -487
  229. package/docs/reference/deep-research-report (15).md +0 -25
  230. package/docs/reference/docx/README.md +0 -10
  231. package/docs/reference/legal-checklist.md +0 -445
  232. package/docs/reference/live-proof-waves.md +0 -199
  233. package/docs/reference/ooxml-compliance.md +0 -129
  234. package/docs/reference/ooxml-feature-parity-matrix.md +0 -172
  235. package/docs/reference/platform/shared-ooxml-platform-guidance.md +0 -77
  236. package/docs/reference/prototype-agent-prompt-legal-fidelity.md +0 -155
  237. package/docs/reference/public-api.md +0 -456
  238. package/docs/reference/repository-guidance.md +0 -58
  239. package/docs/reference/runtime-config/README.md +0 -182
  240. package/docs/reference/runtime-config/claude.md +0 -110
  241. package/docs/reference/runtime-config/codex.md +0 -82
  242. package/docs/reference/runtime-config/opencode.md +0 -93
  243. package/docs/reference/sample-waves.md +0 -105
  244. package/docs/reference/skills.md +0 -237
  245. package/docs/reference/templates/AGENTS.md +0 -78
  246. package/docs/reference/templates/HEARTBEAT.md +0 -7
  247. package/docs/reference/templates/IDENTITY.md +0 -23
  248. package/docs/reference/templates/SOUL.md +0 -36
  249. package/docs/reference/templates/TOOLS.md +0 -40
  250. package/docs/reference/templates/USER.md +0 -17
  251. package/docs/reference/wave-control.md +0 -184
  252. package/docs/reference/wave-planning-lessons.md +0 -167
  253. package/docs/reference/word-review-editor-frontend-architecture.md +0 -479
  254. package/docs/reference/word-review-editor-ux-guide.md +0 -253
  255. package/docs/reference/xlsx/xlsx-ooxml-compliance.md +0 -137
  256. package/docs/research/agent-context-sources.md +0 -178
  257. package/docs/research/coordination-failure-review.md +0 -290
  258. package/docs/research/docx-react-component/Canonical Document Schema Specification for a React-based Word-compatible Editor.md +0 -2317
  259. package/docs/research/docx-react-component/Feature Compatibility Matrix for a React Word Compatible Legal Editor v1.md +0 -219
  260. package/docs/research/docx-react-component/React Component Architecture and Front-End Structure Specification for a Word-Compatible Legal Review Editor.md +0 -1112
  261. package/docs/research/docx-react-component/document_compatibility_and_testing_spec.md +0 -751
  262. package/docs/research/xlsx/raw/README.md +0 -13
  263. package/docs/roadmap.md +0 -174
  264. package/docs/superpowers/plans/2026-03-28-harness-control-bar.md +0 -677
  265. package/docs/superpowers/specs/2026-03-28-harness-control-bar-design.md +0 -274
  266. package/docs/xlsx-react/README.md +0 -38
  267. package/docs/xlsx-react/agent-llm-interaction-layer-docx-xlsx.md +0 -621
  268. package/docs/xlsx-react/canonical-workbook-model-and-commands.md +0 -948
  269. package/docs/xlsx-react/shared-openxml-editor-platform-docx-xlsx.md +0 -228
  270. package/docs/xlsx-react/spreadsheet-editor-component-architecture.md +0 -809
  271. package/docs/xlsx-react/spreadsheet-editor-frontend-architecture.md +0 -537
  272. package/docs/xlsx-react/spreadsheet-editor-ux-guide.md +0 -520
  273. package/docs/xlsx-react/xlsx-editor-research-pack.md +0 -871
  274. package/docs/xlsx-react/xlsx-fixture-corpus-and-certification-plan.md +0 -436
  275. package/docs/xlsx-react/xlsx-ooxml-compliance.md +0 -320
  276. package/examples/README.md +0 -16
  277. package/memory/MEMORY.md +0 -24
  278. package/pnpm-workspace.yaml +0 -4
  279. package/scripts/check-no-authored-js.sh +0 -13
  280. package/scripts/context7-api-check.sh +0 -65
  281. package/scripts/context7-export-env.sh +0 -42
  282. package/scripts/run-context7-mcp.sh +0 -8
  283. package/scripts/run-workspace-tests.sh +0 -15
  284. package/scripts/start-wave-10-local.sh +0 -189
  285. package/scripts/wave-agent-attach.sh +0 -47
  286. package/scripts/wave-auto-answer.sh +0 -118
  287. package/scripts/wave-dashboard-attach.sh +0 -13
  288. package/scripts/wave-launch.sh +0 -273
  289. package/scripts/wave-overnight-supervisor.sh +0 -145
  290. package/scripts/wave-status.sh +0 -379
  291. package/scripts/wave-watch.sh +0 -231
  292. package/services/README.md +0 -17
  293. package/services/openxml-validator/Dockerfile +0 -29
  294. package/services/openxml-validator/OpenXmlValidator.Api.csproj +0 -12
  295. package/services/openxml-validator/Program.cs +0 -436
  296. package/services/openxml-validator/README.md +0 -152
  297. package/services/openxml-validator/railway.json +0 -16
  298. package/services/react-word-editor/.tmp-a4/src/api/public-types.ts +0 -318
  299. package/services/react-word-editor/.tmp-a4/src/ui/WordReviewEditor.tsx +0 -1302
  300. package/services/react-word-editor/.tmp-a4/src/ui/editor-surface/editor-surface.tsx +0 -546
  301. package/services/react-word-editor/.tmp-a4/test/ui/word-review-editor.test.tsx +0 -146
  302. package/services/react-word-editor/.tmp-a4-build/src/api/public-types.js +0 -2
  303. package/services/react-word-editor/.tmp-a4-build/src/ui/WordReviewEditor.js +0 -818
  304. package/services/react-word-editor/.tmp-a4-build/src/ui/editor-surface/editor-surface.js +0 -229
  305. package/services/react-word-editor/.tmp-a4-build/test/ui/word-review-editor.test.js +0 -121
  306. package/services/react-word-editor/.tmp-wave-4-a3-tsconfig.json +0 -21
  307. package/services/react-word-editor/.tmp-wave-4-a3-tsconfig.tsbuildinfo +0 -1
  308. package/services/react-word-editor/Dockerfile +0 -26
  309. package/services/react-word-editor/README.md +0 -254
  310. package/services/react-word-editor/app/api/certification/route.ts +0 -79
  311. package/services/react-word-editor/app/api/demo-sessions/route.ts +0 -109
  312. package/services/react-word-editor/app/api/deploy-health/route.ts +0 -23
  313. package/services/react-word-editor/app/api/exports/[exportId]/route.ts +0 -34
  314. package/services/react-word-editor/app/api/exports/route.ts +0 -81
  315. package/services/react-word-editor/app/api/fixtures/[fixtureId]/run/route.ts +0 -100
  316. package/services/react-word-editor/app/api/health/route.ts +0 -70
  317. package/services/react-word-editor/app/api/runs/[runId]/route.ts +0 -36
  318. package/services/react-word-editor/app/api/scenarios/[scenarioId]/run/route.ts +0 -85
  319. package/services/react-word-editor/app/api/sessions/[sessionId]/route.ts +0 -199
  320. package/services/react-word-editor/app/api/sessions/[sessionId]/source/route.ts +0 -45
  321. package/services/react-word-editor/app/api/uploads/route.ts +0 -70
  322. package/services/react-word-editor/app/api/validate/route.ts +0 -310
  323. package/services/react-word-editor/app/certification/[runId]/page.tsx +0 -14
  324. package/services/react-word-editor/app/certification/page.tsx +0 -32
  325. package/services/react-word-editor/app/dashboard/page.tsx +0 -7
  326. package/services/react-word-editor/app/demo/page.tsx +0 -30
  327. package/services/react-word-editor/app/demo/prototype-client.tsx +0 -1080
  328. package/services/react-word-editor/app/editor/[sessionId]/page.tsx +0 -33
  329. package/services/react-word-editor/app/fixtures/page.tsx +0 -7
  330. package/services/react-word-editor/app/globals.css +0 -121
  331. package/services/react-word-editor/app/layout.tsx +0 -32
  332. package/services/react-word-editor/app/page.tsx +0 -30
  333. package/services/react-word-editor/app/runs/[runId]/page.tsx +0 -34
  334. package/services/react-word-editor/app/wave-10-word-review/page.tsx +0 -7
  335. package/services/react-word-editor/components/harness-control-bar.tsx +0 -289
  336. package/services/react-word-editor/components/harness-editor-session-client.tsx +0 -1214
  337. package/services/react-word-editor/components/harness-workspace-page.tsx +0 -715
  338. package/services/react-word-editor/components/reduced-motion-toggle.tsx +0 -79
  339. package/services/react-word-editor/components/workspace-certification-panel.tsx +0 -307
  340. package/services/react-word-editor/lib/certification-bundle.ts +0 -796
  341. package/services/react-word-editor/lib/certification-store.ts +0 -661
  342. package/services/react-word-editor/lib/demo-fixtures.test.mjs +0 -195
  343. package/services/react-word-editor/lib/demo-fixtures.ts +0 -1519
  344. package/services/react-word-editor/lib/editor-session-summary.test.mjs +0 -68
  345. package/services/react-word-editor/lib/editor-session-summary.ts +0 -14
  346. package/services/react-word-editor/lib/editor-session.ts +0 -228
  347. package/services/react-word-editor/lib/exports-route.test.mjs +0 -32
  348. package/services/react-word-editor/lib/harness-client.ts +0 -347
  349. package/services/react-word-editor/lib/harness-config.json +0 -30
  350. package/services/react-word-editor/lib/harness-config.test.mjs +0 -31
  351. package/services/react-word-editor/lib/harness-config.ts +0 -21
  352. package/services/react-word-editor/lib/harness-editor-datastore.test.mjs +0 -220
  353. package/services/react-word-editor/lib/harness-editor-datastore.ts +0 -161
  354. package/services/react-word-editor/lib/private-mode.test.mjs +0 -42
  355. package/services/react-word-editor/lib/private-mode.ts +0 -61
  356. package/services/react-word-editor/lib/regression-report.test.mjs +0 -352
  357. package/services/react-word-editor/lib/regression-report.ts +0 -896
  358. package/services/react-word-editor/lib/run-artifacts.ts +0 -934
  359. package/services/react-word-editor/lib/run-history.ts +0 -755
  360. package/services/react-word-editor/lib/scenario-artifacts.test.mjs +0 -41
  361. package/services/react-word-editor/lib/scenario-artifacts.ts +0 -44
  362. package/services/react-word-editor/lib/storage.ts +0 -953
  363. package/services/react-word-editor/lib/validator-client.test.mjs +0 -54
  364. package/services/react-word-editor/lib/validator-client.ts +0 -95
  365. package/services/react-word-editor/lib/workspace-navigation.ts +0 -79
  366. package/services/react-word-editor/middleware.ts +0 -35
  367. package/services/react-word-editor/next-env.d.ts +0 -6
  368. package/services/react-word-editor/next.config.mjs +0 -15
  369. package/services/react-word-editor/package.json +0 -38
  370. package/services/react-word-editor/postcss.config.mjs +0 -8
  371. package/services/react-word-editor/railway.json +0 -21
  372. package/services/react-word-editor/scripts/wave-10-certification.mjs +0 -101
  373. package/services/react-word-editor/scripts/wave-9-live-usability-pilot.mjs +0 -911
  374. package/services/react-word-editor/tsconfig.json +0 -39
  375. package/services/react-word-editor/tsconfig.tsbuildinfo +0 -1
  376. package/skills/README.md +0 -48
  377. package/skills/domain-docx-compatibility/SKILL.md +0 -44
  378. package/skills/domain-docx-compatibility/skill.json +0 -19
  379. package/skills/domain-editor-architecture/SKILL.md +0 -49
  380. package/skills/domain-editor-architecture/skill.json +0 -19
  381. package/skills/domain-legal-review/SKILL.md +0 -39
  382. package/skills/domain-legal-review/skill.json +0 -19
  383. package/skills/provider-aws/SKILL.md +0 -117
  384. package/skills/provider-aws/adapters/claude.md +0 -1
  385. package/skills/provider-aws/adapters/codex.md +0 -1
  386. package/skills/provider-aws/references/service-verification.md +0 -39
  387. package/skills/provider-aws/skill.json +0 -54
  388. package/skills/provider-custom-deploy/SKILL.md +0 -64
  389. package/skills/provider-custom-deploy/skill.json +0 -50
  390. package/skills/provider-docker-compose/SKILL.md +0 -96
  391. package/skills/provider-docker-compose/adapters/local.md +0 -1
  392. package/skills/provider-docker-compose/skill.json +0 -53
  393. package/skills/provider-github-release/SKILL.md +0 -121
  394. package/skills/provider-github-release/adapters/claude.md +0 -1
  395. package/skills/provider-github-release/adapters/codex.md +0 -1
  396. package/skills/provider-github-release/skill.json +0 -55
  397. package/skills/provider-kubernetes/SKILL.md +0 -143
  398. package/skills/provider-kubernetes/adapters/claude.md +0 -1
  399. package/skills/provider-kubernetes/adapters/codex.md +0 -1
  400. package/skills/provider-kubernetes/references/kubectl-patterns.md +0 -58
  401. package/skills/provider-kubernetes/skill.json +0 -52
  402. package/skills/provider-railway/SKILL.md +0 -123
  403. package/skills/provider-railway/adapters/claude.md +0 -1
  404. package/skills/provider-railway/adapters/codex.md +0 -1
  405. package/skills/provider-railway/adapters/local.md +0 -1
  406. package/skills/provider-railway/adapters/opencode.md +0 -1
  407. package/skills/provider-railway/references/verification-commands.md +0 -39
  408. package/skills/provider-railway/skill.json +0 -71
  409. package/skills/provider-ssh-manual/SKILL.md +0 -97
  410. package/skills/provider-ssh-manual/skill.json +0 -54
  411. package/skills/repo-coding-rules/SKILL.md +0 -55
  412. package/skills/repo-coding-rules/skill.json +0 -34
  413. package/skills/role-cont-eval/SKILL.md +0 -91
  414. package/skills/role-cont-eval/adapters/codex.md +0 -1
  415. package/skills/role-cont-eval/skill.json +0 -36
  416. package/skills/role-cont-qa/SKILL.md +0 -100
  417. package/skills/role-cont-qa/adapters/claude.md +0 -1
  418. package/skills/role-cont-qa/skill.json +0 -36
  419. package/skills/role-deploy/SKILL.md +0 -97
  420. package/skills/role-deploy/skill.json +0 -36
  421. package/skills/role-design/SKILL.md +0 -50
  422. package/skills/role-design/skill.json +0 -36
  423. package/skills/role-documentation/SKILL.md +0 -76
  424. package/skills/role-documentation/skill.json +0 -36
  425. package/skills/role-implementation/SKILL.md +0 -45
  426. package/skills/role-implementation/skill.json +0 -36
  427. package/skills/role-infra/SKILL.md +0 -81
  428. package/skills/role-infra/skill.json +0 -36
  429. package/skills/role-integration/SKILL.md +0 -91
  430. package/skills/role-integration/skill.json +0 -36
  431. package/skills/role-planner/SKILL.md +0 -39
  432. package/skills/role-planner/skill.json +0 -21
  433. package/skills/role-research/SKILL.md +0 -65
  434. package/skills/role-research/skill.json +0 -36
  435. package/skills/role-security/SKILL.md +0 -60
  436. package/skills/role-security/skill.json +0 -36
  437. package/skills/runtime-claude/SKILL.md +0 -66
  438. package/skills/runtime-claude/skill.json +0 -36
  439. package/skills/runtime-codex/SKILL.md +0 -58
  440. package/skills/runtime-codex/skill.json +0 -36
  441. package/skills/runtime-local/SKILL.md +0 -46
  442. package/skills/runtime-local/skill.json +0 -36
  443. package/skills/runtime-opencode/SKILL.md +0 -58
  444. package/skills/runtime-opencode/skill.json +0 -36
  445. package/skills/signal-hygiene/SKILL.md +0 -51
  446. package/skills/signal-hygiene/skill.json +0 -20
  447. package/skills/tui-design/SKILL.md +0 -77
  448. package/skills/tui-design/references/tui-design.md +0 -259
  449. package/skills/tui-design/skill.json +0 -36
  450. package/skills/wave-core/SKILL.md +0 -141
  451. package/skills/wave-core/references/marker-syntax.md +0 -70
  452. package/skills/wave-core/skill.json +0 -35
  453. package/src/README.md +0 -85
  454. package/src/api/README.md +0 -22
  455. package/src/api/public-types.ts +0 -525
  456. package/src/component-inventory.md +0 -99
  457. package/src/core/README.md +0 -10
  458. package/src/core/commands/README.md +0 -3
  459. package/src/core/commands/formatting-commands.ts +0 -161
  460. package/src/core/commands/image-commands.ts +0 -144
  461. package/src/core/commands/index.ts +0 -1013
  462. package/src/core/commands/list-commands.ts +0 -370
  463. package/src/core/commands/review-commands.ts +0 -108
  464. package/src/core/commands/text-commands.ts +0 -119
  465. package/src/core/schema/README.md +0 -3
  466. package/src/core/schema/text-schema.ts +0 -512
  467. package/src/core/selection/README.md +0 -3
  468. package/src/core/selection/mapping.ts +0 -238
  469. package/src/core/selection/review-anchors.ts +0 -94
  470. package/src/core/state/README.md +0 -3
  471. package/src/core/state/editor-state.ts +0 -580
  472. package/src/core/state/text-transaction.ts +0 -276
  473. package/src/formats/xlsx/io/parse-shared-strings.ts +0 -41
  474. package/src/formats/xlsx/io/parse-sheet.ts +0 -289
  475. package/src/formats/xlsx/io/parse-styles.ts +0 -57
  476. package/src/formats/xlsx/io/parse-workbook.ts +0 -75
  477. package/src/formats/xlsx/io/xlsx-session.ts +0 -306
  478. package/src/formats/xlsx/model/cell.ts +0 -189
  479. package/src/formats/xlsx/model/sheet.ts +0 -244
  480. package/src/formats/xlsx/model/styles.ts +0 -118
  481. package/src/formats/xlsx/model/workbook.ts +0 -449
  482. package/src/io/README.md +0 -10
  483. package/src/io/docx-session.ts +0 -1763
  484. package/src/io/export/README.md +0 -3
  485. package/src/io/export/export-session.ts +0 -165
  486. package/src/io/export/minimal-docx.ts +0 -115
  487. package/src/io/export/reattach-preserved-parts.ts +0 -54
  488. package/src/io/export/serialize-comments.ts +0 -876
  489. package/src/io/export/serialize-footnotes.ts +0 -217
  490. package/src/io/export/serialize-headers-footers.ts +0 -200
  491. package/src/io/export/serialize-main-document.ts +0 -982
  492. package/src/io/export/serialize-numbering.ts +0 -97
  493. package/src/io/export/serialize-revisions.ts +0 -389
  494. package/src/io/export/serialize-runtime-revisions.ts +0 -265
  495. package/src/io/export/serialize-tables.ts +0 -147
  496. package/src/io/export/split-review-boundaries.ts +0 -194
  497. package/src/io/normalize/README.md +0 -3
  498. package/src/io/normalize/normalize-text.ts +0 -437
  499. package/src/io/ooxml/README.md +0 -3
  500. package/src/io/ooxml/parse-comments.ts +0 -779
  501. package/src/io/ooxml/parse-complex-content.ts +0 -287
  502. package/src/io/ooxml/parse-fields.ts +0 -438
  503. package/src/io/ooxml/parse-footnotes.ts +0 -403
  504. package/src/io/ooxml/parse-headers-footers.ts +0 -483
  505. package/src/io/ooxml/parse-inline-media.ts +0 -431
  506. package/src/io/ooxml/parse-main-document.ts +0 -1846
  507. package/src/io/ooxml/parse-numbering.ts +0 -425
  508. package/src/io/ooxml/parse-revisions.ts +0 -658
  509. package/src/io/ooxml/parse-shapes.ts +0 -271
  510. package/src/io/ooxml/parse-tables.ts +0 -568
  511. package/src/io/ooxml/parse-theme.ts +0 -314
  512. package/src/io/ooxml/part-manifest.ts +0 -136
  513. package/src/io/ooxml/revision-boundaries.ts +0 -351
  514. package/src/io/opc/README.md +0 -3
  515. package/src/io/opc/corrupt-package.ts +0 -166
  516. package/src/io/opc/docx-package.ts +0 -74
  517. package/src/io/opc/package-reader.ts +0 -320
  518. package/src/io/opc/package-writer.ts +0 -273
  519. package/src/model/README.md +0 -3
  520. package/src/model/canonical-document.ts +0 -1911
  521. package/src/model/cds-1.0.0.ts +0 -196
  522. package/src/model/snapshot.ts +0 -393
  523. package/src/preservation/README.md +0 -3
  524. package/src/preservation/markup-compatibility.ts +0 -48
  525. package/src/preservation/opaque-fragment-store.ts +0 -89
  526. package/src/preservation/opaque-region.ts +0 -233
  527. package/src/preservation/package-preservation.ts +0 -120
  528. package/src/preservation/preserved-part-manifest.ts +0 -56
  529. package/src/preservation/relationship-retention.ts +0 -57
  530. package/src/preservation/store.ts +0 -185
  531. package/src/review/README.md +0 -16
  532. package/src/review/store/README.md +0 -3
  533. package/src/review/store/comment-anchors.ts +0 -70
  534. package/src/review/store/comment-remapping.ts +0 -154
  535. package/src/review/store/comment-store.ts +0 -331
  536. package/src/review/store/comment-thread.ts +0 -109
  537. package/src/review/store/revision-actions.ts +0 -394
  538. package/src/review/store/revision-store.ts +0 -303
  539. package/src/review/store/revision-types.ts +0 -168
  540. package/src/review/store/runtime-comment-store.ts +0 -43
  541. package/src/runtime/README.md +0 -3
  542. package/src/runtime/ai-action-policy.ts +0 -764
  543. package/src/runtime/document-runtime.ts +0 -969
  544. package/src/runtime/read-only-diagnostics-runtime.ts +0 -232
  545. package/src/runtime/review-runtime.ts +0 -44
  546. package/src/runtime/revision-runtime.ts +0 -107
  547. package/src/runtime/session-capabilities.ts +0 -138
  548. package/src/runtime/surface-projection.ts +0 -570
  549. package/src/runtime/table-commands.ts +0 -84
  550. package/src/runtime/table-schema.ts +0 -125
  551. package/src/ui/README.md +0 -30
  552. package/src/ui/WordReviewEditor.tsx +0 -1283
  553. package/src/ui/comments/README.md +0 -3
  554. package/src/ui/compatibility/README.md +0 -3
  555. package/src/ui/editor-surface/README.md +0 -3
  556. package/src/ui/headless/comment-decoration-model.ts +0 -124
  557. package/src/ui/headless/revision-decoration-model.ts +0 -128
  558. package/src/ui/headless/selection-helpers.ts +0 -34
  559. package/src/ui/headless/use-editor-keyboard.ts +0 -98
  560. package/src/ui/review/README.md +0 -3
  561. package/src/ui/shared/revision-filters.ts +0 -31
  562. package/src/ui/status/README.md +0 -3
  563. package/src/ui/theme/README.md +0 -3
  564. package/src/ui/toolbar/README.md +0 -3
  565. package/src/ui-tailwind/chrome/tw-alert-banner.tsx +0 -48
  566. package/src/ui-tailwind/chrome/tw-selection-toolbar.tsx +0 -44
  567. package/src/ui-tailwind/chrome/tw-unsaved-modal.tsx +0 -58
  568. package/src/ui-tailwind/chrome/use-before-unload.ts +0 -20
  569. package/src/ui-tailwind/editor-surface/pm-command-bridge.ts +0 -139
  570. package/src/ui-tailwind/editor-surface/pm-decorations.ts +0 -98
  571. package/src/ui-tailwind/editor-surface/pm-position-map.ts +0 -123
  572. package/src/ui-tailwind/editor-surface/pm-schema.ts +0 -452
  573. package/src/ui-tailwind/editor-surface/pm-state-from-snapshot.ts +0 -327
  574. package/src/ui-tailwind/editor-surface/search-plugin.ts +0 -157
  575. package/src/ui-tailwind/editor-surface/tw-caret.tsx +0 -12
  576. package/src/ui-tailwind/editor-surface/tw-editor-surface.tsx +0 -150
  577. package/src/ui-tailwind/editor-surface/tw-inline-token.tsx +0 -118
  578. package/src/ui-tailwind/editor-surface/tw-opaque-block.tsx +0 -52
  579. package/src/ui-tailwind/editor-surface/tw-paragraph-block.tsx +0 -151
  580. package/src/ui-tailwind/editor-surface/tw-prosemirror-surface.tsx +0 -215
  581. package/src/ui-tailwind/editor-surface/tw-segment-view.tsx +0 -111
  582. package/src/ui-tailwind/editor-surface/tw-table-node-view.tsx +0 -108
  583. package/src/ui-tailwind/index.ts +0 -61
  584. package/src/ui-tailwind/review/tw-comment-sidebar.tsx +0 -276
  585. package/src/ui-tailwind/review/tw-health-panel.tsx +0 -120
  586. package/src/ui-tailwind/review/tw-review-rail.tsx +0 -120
  587. package/src/ui-tailwind/review/tw-revision-sidebar.tsx +0 -164
  588. package/src/ui-tailwind/status/tw-status-bar.tsx +0 -58
  589. package/src/ui-tailwind/theme/editor-theme.css +0 -190
  590. package/src/ui-tailwind/toolbar/tw-toolbar-icon-button.tsx +0 -48
  591. package/src/ui-tailwind/toolbar/tw-toolbar.tsx +0 -231
  592. package/src/ui-tailwind/tw-review-workspace.tsx +0 -140
  593. package/src/validation/README.md +0 -3
  594. package/src/validation/compatibility-engine.ts +0 -317
  595. package/src/validation/compatibility-report.ts +0 -160
  596. package/src/validation/diagnostics.ts +0 -203
  597. package/src/validation/import-diagnostics.ts +0 -128
  598. package/src/validation/low-priority-word-surfaces.ts +0 -373
  599. package/test/README.md +0 -16
  600. package/test/core/formatting-commands.test.ts +0 -285
  601. package/test/core/image-commands.test.ts +0 -298
  602. package/test/core/mapping.test.ts +0 -186
  603. package/test/core/text-commands.test.ts +0 -176
  604. package/test/fixtures/docx/F01-basic-contract.docx +0 -0
  605. package/test/fixtures/docx/F01-basic-contract.md +0 -33
  606. package/test/fixtures/docx/F02-headings-styles.docx +0 -0
  607. package/test/fixtures/docx/F02-headings-styles.md +0 -33
  608. package/test/fixtures/docx/F03-legal-outline-numbering.docx +0 -0
  609. package/test/fixtures/docx/F03-legal-outline-numbering.md +0 -34
  610. package/test/fixtures/docx/F04-restart-numbering-schedules.docx +0 -0
  611. package/test/fixtures/docx/F04-restart-numbering-schedules.md +0 -33
  612. package/test/fixtures/docx/F05-table-heavy-agreement.docx +0 -0
  613. package/test/fixtures/docx/F05-table-heavy-agreement.md +0 -34
  614. package/test/fixtures/docx/F06-merged-cells-signature-table.docx +0 -0
  615. package/test/fixtures/docx/F06-merged-cells-signature-table.md +0 -34
  616. package/test/fixtures/docx/F07-inline-images-exhibit.docx +0 -0
  617. package/test/fixtures/docx/F07-inline-images-exhibit.md +0 -34
  618. package/test/fixtures/docx/F08-hyperlinks.docx +0 -0
  619. package/test/fixtures/docx/F08-hyperlinks.md +0 -33
  620. package/test/fixtures/docx/F09-comments-single-paragraph.docx +0 -0
  621. package/test/fixtures/docx/F09-comments-single-paragraph.md +0 -33
  622. package/test/fixtures/docx/F10-threaded-comments-resolve.docx +0 -0
  623. package/test/fixtures/docx/F10-threaded-comments-resolve.md +0 -33
  624. package/test/fixtures/docx/F11-redlines-basic.docx +0 -0
  625. package/test/fixtures/docx/F11-redlines-basic.md +0 -33
  626. package/test/fixtures/docx/F12-redlines-paragraph-joins-splits.docx +0 -0
  627. package/test/fixtures/docx/F12-redlines-paragraph-joins-splits.md +0 -33
  628. package/test/fixtures/docx/F13-comments-on-deleted-text.docx +0 -0
  629. package/test/fixtures/docx/F13-comments-on-deleted-text.md +0 -33
  630. package/test/fixtures/docx/F14-revisions-in-tables-and-lists.docx +0 -0
  631. package/test/fixtures/docx/F14-revisions-in-tables-and-lists.md +0 -33
  632. package/test/fixtures/docx/F15-sections-headers-footers.docx +0 -0
  633. package/test/fixtures/docx/F15-sections-headers-footers.md +0 -33
  634. package/test/fixtures/docx/F16-footnotes-endnotes.docx +0 -0
  635. package/test/fixtures/docx/F16-footnotes-endnotes.md +0 -33
  636. package/test/fixtures/docx/F17-fields-and-toc.docx +0 -0
  637. package/test/fixtures/docx/F17-fields-and-toc.md +0 -33
  638. package/test/fixtures/docx/F18-content-controls-template.docx +0 -0
  639. package/test/fixtures/docx/F18-content-controls-template.md +0 -33
  640. package/test/fixtures/docx/F19-custom-xml-doc-assembly.docx +0 -0
  641. package/test/fixtures/docx/F19-custom-xml-doc-assembly.md +0 -35
  642. package/test/fixtures/docx/F20-unknown-ooxml-and-alternatecontent.docx +0 -0
  643. package/test/fixtures/docx/F20-unknown-ooxml-and-alternatecontent.md +0 -33
  644. package/test/fixtures/docx/F21-malformed-broken-docx.docx +0 -0
  645. package/test/fixtures/docx/F21-malformed-broken-docx.md +0 -33
  646. package/test/fixtures/docx/README.md +0 -74
  647. package/test/fixtures/docx/certification-manifest.json +0 -104
  648. package/test/fixtures/docx/fixtures.manifest.json +0 -196
  649. package/test/fixtures/encrypted-docx/README.md +0 -27
  650. package/test/fixtures/encrypted-docx/certification-manifest.json +0 -9
  651. package/test/fixtures/encrypted-docx/fixtures.manifest.json +0 -47
  652. package/test/fixtures/scenarios/docx/README.md +0 -25
  653. package/test/fixtures/scenarios/docx/S01-sow-template.docx +0 -0
  654. package/test/fixtures/scenarios/docx/S01-sow-template.md +0 -30
  655. package/test/fixtures/scenarios/docx/S02-bw-partner-user-licence-agreement-redlines.docx +0 -0
  656. package/test/fixtures/scenarios/docx/S02-bw-partner-user-licence-agreement-redlines.md +0 -32
  657. package/test/fixtures/scenarios/docx/scenario-manifest.json +0 -53
  658. package/test/formats/xlsx/io/xlsx-import.test.ts +0 -766
  659. package/test/formats/xlsx/model/workbook.test.ts +0 -669
  660. package/test/helpers/dom-setup.ts +0 -124
  661. package/test/io/comment-roundtrip.test.ts +0 -272
  662. package/test/io/complex-content-roundtrip.test.ts +0 -632
  663. package/test/io/docx-compatibility-regression.test.ts +0 -199
  664. package/test/io/docx-session.test.ts +0 -1495
  665. package/test/io/footnotes-roundtrip.test.ts +0 -318
  666. package/test/io/headers-footers-roundtrip.test.ts +0 -547
  667. package/test/io/numbering-roundtrip.test.ts +0 -234
  668. package/test/io/package-reader.test.ts +0 -199
  669. package/test/io/paragraph-properties-roundtrip.test.ts +0 -129
  670. package/test/io/preserved-package-roundtrip.test.ts +0 -365
  671. package/test/io/property-completeness.test.ts +0 -292
  672. package/test/io/revision-roundtrip.test.ts +0 -347
  673. package/test/io/structural-blocks.test.ts +0 -202
  674. package/test/io/table-media-roundtrip.test.ts +0 -448
  675. package/test/io/table-properties-roundtrip.test.ts +0 -569
  676. package/test/io/table-roundtrip.test.ts +0 -302
  677. package/test/io/text-roundtrip.test.ts +0 -344
  678. package/test/model/canonical-document.test.ts +0 -285
  679. package/test/preservation/opaque-fragment-store.test.ts +0 -121
  680. package/test/preservation/package-preservation.test.ts +0 -395
  681. package/test/preservation/store.test.ts +0 -84
  682. package/test/review/comment-remapping.test.ts +0 -220
  683. package/test/review/comment-store.test.ts +0 -180
  684. package/test/review/move-revisions.test.ts +0 -143
  685. package/test/review/property-change-revisions.test.ts +0 -225
  686. package/test/review/revision-actions.test.ts +0 -330
  687. package/test/review/revision-store.test.ts +0 -193
  688. package/test/runtime/session-capabilities.test.ts +0 -260
  689. package/test/runtime/table-commands.test.ts +0 -356
  690. package/test/runtime/table-schema.test.ts +0 -221
  691. package/test/runtime/tracked-changes-toggle.test.ts +0 -107
  692. package/test/ui/comment-review-surface.test.tsx +0 -114
  693. package/test/ui/reduced-motion-toggle.test.tsx +0 -137
  694. package/test/ui/word-review-editor.imported-scenarios.test.tsx +0 -169
  695. package/test/ui/word-review-editor.interaction.test.tsx +0 -1198
  696. package/test/ui/word-review-editor.test.js +0 -188
  697. package/test/ui/word-review-editor.test.tsx +0 -280
  698. package/test/ui-tailwind/search-plugin.test.ts +0 -286
  699. package/test/validation/compatibility-engine.test.ts +0 -336
  700. package/test/validation/compatibility-report.test.ts +0 -189
  701. package/test/validation/low-priority-word-surfaces.test.ts +0 -282
  702. package/test/validation/malformed-doc.test.ts +0 -113
  703. package/test-results/.last-run.json +0 -4
  704. package/wave.config.json +0 -406
@@ -1,456 +0,0 @@
1
- # Public API
2
-
3
- This file defines the intended public API for the shipped docx React component.
4
-
5
- Within the broader `react-ooxml-office` repo story, this remains a format-specific contract:
6
-
7
- - it describes the current `docx` implementation only
8
- - it does not define a neutral multi-format editor API
9
- - future `xlsx` or other verticals should gain sibling API docs rather than silently widening `WordReviewEditor`
10
-
11
- ## Public Component
12
-
13
- ```tsx
14
- <WordReviewEditor />
15
- ```
16
-
17
- The repo standardizes on `WordReviewEditor` as the public name across docs, source, and services.
18
-
19
- Internal harness routes, Railway demo pages, certification dashboards, and other operator-facing surfaces are not part of the public component API. They may exercise the same runtime, but they are documentation, proof, or demo surfaces rather than shipped host contracts.
20
-
21
- ## Public Contracts
22
-
23
- The implementation should expose:
24
-
25
- - `WordReviewEditor`
26
- - `WordReviewEditorProps`
27
- - `WordReviewEditorRef`
28
- - `EditorUser`
29
- - `EditorDatastoreAdapter`
30
- - `PersistedEditorSnapshot`
31
- - `CompatibilityReport`
32
- - `EditorWarning`
33
- - `EditorError`
34
- - `WordReviewEditorEvent`
35
-
36
- The runtime-facing internal session type is `DocumentRuntime`. `WordEditor` is not a shipped public name.
37
-
38
- ## Usage Model
39
-
40
- The component is uncontrolled by default.
41
-
42
- Host responsibilities:
43
-
44
- - provide `documentId`
45
- - provide `currentUser`
46
- - provide exactly one initial source on first load: `initialDocx` or `initialSnapshot`
47
- - optionally provide a datastore adapter
48
- - optionally listen to events, warnings, and errors
49
-
50
- Runtime responsibilities:
51
-
52
- - own the live editing session
53
- - apply commands and transactions
54
- - manage undo and redo
55
- - manage comments and revisions
56
- - expose review-ready runtime snapshot projections for the document surface, comment sidebar, revision sidebar, and compatibility surfaces
57
- - provide export and compatibility reporting
58
-
59
- Controlled behavior is intentionally narrow:
60
-
61
- - hosts may replace the active document only through `externalDocumentRevision` plus `externalDocSource`
62
- - when the revision token changes, the editor tears down the current session and reloads the new source
63
- - hosts do not stream keystrokes or partial selections back into props
64
-
65
- ## Ref Surface
66
-
67
- The ref should support:
68
-
69
- - `focus()`
70
- - `blur()`
71
- - `undo()`
72
- - `redo()`
73
- - `addComment(...)`
74
- - `openComment(commentId)`
75
- - `resolveComment(commentId)`
76
- - `reopenComment(commentId)`
77
- - `addCommentReply(commentId, body)`
78
- - `editCommentBody(commentId, body)`
79
- - `acceptChange(changeId)`
80
- - `rejectChange(changeId)`
81
- - `acceptAllChanges()`
82
- - `rejectAllChanges()`
83
- - `exportDocx(options?)`
84
- - `getSnapshot()`
85
- - `getCompatibilityReport()`
86
- - `getWarnings()`
87
-
88
- The ref is a thin wrapper over the runtime. It does not expose DOM nodes or mutable canonical state.
89
-
90
- ## Props Surface
91
-
92
- ```ts
93
- type ExternalDocumentSource =
94
- | {
95
- kind: "docx";
96
- bytes: Uint8Array | ArrayBuffer;
97
- sourceLabel?: string;
98
- }
99
- | {
100
- kind: "snapshot";
101
- snapshot: PersistedEditorSnapshot;
102
- sourceLabel?: string;
103
- };
104
-
105
- interface WordReviewEditorProps {
106
- documentId: string;
107
- currentUser: EditorUser;
108
-
109
- initialDocx?: Uint8Array | ArrayBuffer;
110
- initialSnapshot?: PersistedEditorSnapshot;
111
- initialSourceLabel?: string;
112
-
113
- externalDocumentRevision?: string;
114
- externalDocSource?: ExternalDocumentSource;
115
-
116
- readOnly?: boolean;
117
- reviewMode?: "editing" | "review";
118
-
119
- // reviewMode behavior:
120
- // - "editing" (default in some contexts): Reduces review chrome. Review rail hidden by default. Editing controls primary.
121
- // - "review" (default): Review rail visible. Comments and changes are prominent.
122
- // - Both modes keep health/trust information reachable and fatal errors always visible.
123
- // - reviewMode does NOT control editing capability — use readOnly for that.
124
-
125
- markupDisplay?: "clean" | "simple" | "all";
126
- // markupDisplay is accepted for backward compatibility but is now
127
- // derived internally from the editor's view mode (canvas → clean,
128
- // document → all). The editor manages viewMode as internal state;
129
- // it is not a public prop on WordReviewEditorProps.
130
-
131
- datastore?: EditorDatastoreAdapter;
132
- autosave?: AutosaveConfig;
133
-
134
- onEvent?: (event: WordReviewEditorEvent) => void;
135
- onWarning?: (warning: EditorWarning) => void;
136
- onError?: (error: EditorError) => void;
137
- }
138
- ```
139
-
140
- Load rules:
141
-
142
- - provide exactly one of `initialDocx` or `initialSnapshot` for an explicit initial load
143
- - `externalDocumentRevision` plus `externalDocSource` is the only replace-on-change path
144
- - if the external revision token does not change, props do not mutate the live session
145
- - `initialDocx` now boots a real package-backed session, not a text-only fallback snapshot
146
- - malformed or unreadable package bytes fail closed into diagnostics/read-only mode with export blocked
147
-
148
- ## Planned AI Action Extension
149
-
150
- This contract is reserved for the post-v1 roadmap and is not part of the
151
- currently shipped public surface in `src/api/public-types.ts`.
152
-
153
- The intended shape is:
154
-
155
- - the host supplies the model access or action executor
156
- - the runtime packages canonical context such as selection, section bounds, anchors, comment threads, revisions, compatibility warnings, and edit capabilities
157
- - AI actions target bounded legal-review workflows rather than arbitrary document mutation
158
- - content-changing results come back as proposals or runtime command requests that must pass normal validation, compatibility, and export gates
159
- - the UI must present explicit review/confirmation affordances before applying content-changing proposals
160
-
161
- Illustrative direction:
162
-
163
- ```ts
164
- type PlannedWordReviewEditorAiAction =
165
- | "edit_selection"
166
- | "rewrite_section"
167
- | "summarize_comments"
168
- | "suggest_comment_response"
169
- | "resolve_comment_thread"
170
- | "apply_drafting_instruction"
171
- | "validate_and_export";
172
-
173
- interface PlannedWordReviewEditorAiRequest {
174
- action: PlannedWordReviewEditorAiAction;
175
- instruction?: string;
176
- selection?: SelectionSnapshot;
177
- anchor?: EditorAnchorProjection;
178
- commentIds?: string[];
179
- revisionIds?: string[];
180
- compatibility: CompatibilityReport;
181
- capabilities: {
182
- readOnly: boolean;
183
- canEdit: boolean;
184
- canExport: boolean;
185
- };
186
- }
187
-
188
- interface PlannedWordReviewEditorAiAdapter {
189
- runAction(
190
- request: PlannedWordReviewEditorAiRequest,
191
- ): Promise<
192
- | {
193
- kind: "proposal";
194
- summary: string;
195
- requiresConfirmation: true;
196
- }
197
- | {
198
- kind: "workflow";
199
- workflow: "validate_and_export";
200
- }
201
- | {
202
- kind: "rejected";
203
- reason: string;
204
- }
205
- >;
206
- }
207
- ```
208
-
209
- Guardrails for the planned surface:
210
-
211
- - no built-in model client ships inside `WordReviewEditor`
212
- - no direct DOM writes or direct canonical-state mutation from model output
213
- - no bypass around permissions, protected ranges, compatibility warnings, or export blockers
214
- - no implication that unsupported OOXML becomes editable just because an AI action exists
215
-
216
- ## Encrypted Source Handling
217
-
218
- The active component contract does not include editor-owned handling for password-to-open Office containers, and encrypted intake is not part of the active wave roadmap.
219
-
220
- Hosts must provide one of:
221
-
222
- - normal OPC `.docx` bytes through `initialDocx`
223
- - normal OPC `.docx` bytes through `externalDocSource.kind = "docx"`
224
- - a canonical snapshot
225
-
226
- If an upstream system accepts encrypted Office containers, it must decrypt or otherwise preprocess them before handing bytes to `WordReviewEditor`. Reintroducing editor-owned encrypted intake would require an explicit public-API revision rather than a silent expansion of the current load surface.
227
-
228
- ## Runtime Snapshot Direction
229
-
230
- The host-facing persisted snapshot is still `PersistedEditorSnapshot`.
231
-
232
- The live UI should render from `RuntimeRenderSnapshot`, not by reconstructing review state from persisted data during render. In particular:
233
-
234
- - the comment sidebar reads runtime-owned thread projections, detached/open/resolved counts, and the active thread id from `RuntimeRenderSnapshot.comments`
235
- - the tracked-change sidebar reads runtime-owned revision projections, actionability flags, and batch counts from `RuntimeRenderSnapshot.trackedChanges`
236
- - compatibility surfaces read explicit blocking reasons from `RuntimeRenderSnapshot.compatibility`
237
-
238
- Selectors may reshape those projections for presentation, but they must not invent a second source of live review truth.
239
-
240
- Current boundary note:
241
-
242
- - `SelectionSnapshot`, `EditorAnchorProjection`, and `EditorSurfaceSnapshot` still describe the current flat paragraph/opaque-block runtime.
243
- - Imported body-level tables remain preserve-only in the live editor path.
244
- - Future post-v1 waves must revise these contracts explicitly as new slices become `read-only projected`, `bounded editable`, or fully owned rather than silently widening the current public types.
245
-
246
- ## Event Surface
247
-
248
- The canonical host event stream is a discriminated union:
249
-
250
- ```ts
251
- type WordReviewEditorEvent =
252
- | {
253
- type: "ready";
254
- documentId: string;
255
- sessionId: string;
256
- source: "docx" | "snapshot" | "datastore" | "canonical";
257
- stats: DocumentStats;
258
- compatibility: CompatibilityReport;
259
- }
260
- | {
261
- type: "dirty_changed";
262
- documentId: string;
263
- isDirty: boolean;
264
- }
265
- | {
266
- type: "selection_changed";
267
- documentId: string;
268
- selection: SelectionSnapshot;
269
- }
270
- | {
271
- type: "comment_added";
272
- documentId: string;
273
- commentId: string;
274
- anchor: EditorAnchorProjection;
275
- }
276
- | {
277
- type: "comment_resolved";
278
- documentId: string;
279
- commentId: string;
280
- }
281
- | {
282
- type: "change_accepted";
283
- documentId: string;
284
- changeId: string;
285
- }
286
- | {
287
- type: "change_rejected";
288
- documentId: string;
289
- changeId: string;
290
- }
291
- | {
292
- type: "warning_added";
293
- documentId: string;
294
- warning: EditorWarning;
295
- }
296
- | {
297
- type: "warning_cleared";
298
- documentId: string;
299
- warningId: string;
300
- code: EditorWarning["code"];
301
- }
302
- | {
303
- type: "error";
304
- documentId: string;
305
- error: EditorError;
306
- }
307
- | {
308
- type: "autosave_state";
309
- documentId: string;
310
- state: AutosaveState;
311
- }
312
- | {
313
- type: "snapshot_saved";
314
- documentId: string;
315
- snapshot: PersistedEditorSnapshot;
316
- isAutosave: boolean;
317
- }
318
- | {
319
- type: "export_completed";
320
- documentId: string;
321
- result: ExportResult;
322
- };
323
- ```
324
-
325
- Event delivery rules:
326
-
327
- - each mounted runtime load emits exactly one `ready` event
328
- - hosts should treat `ready` as the authoritative session-start marker rather than inferring load completion from render timing
329
-
330
- Planned AI-event direction:
331
-
332
- - a future AI extension may add runtime-owned events such as `ai_action_started`, `ai_action_proposed`, `ai_action_applied`, and `ai_action_failed`
333
- - those events are not part of the current shipped `WordReviewEditorEvent` union and should not be exposed until the AI contract lands as a deliberate API revision
334
-
335
- ## Warnings And Errors
336
-
337
- ```ts
338
- type EditorAnchorProjection =
339
- | {
340
- kind: "range";
341
- from: number;
342
- to: number;
343
- assoc: {
344
- start: -1 | 1;
345
- end: -1 | 1;
346
- };
347
- }
348
- | {
349
- kind: "node";
350
- at: number;
351
- assoc: -1 | 1;
352
- }
353
- | {
354
- kind: "detached";
355
- lastKnownRange: {
356
- from: number;
357
- to: number;
358
- };
359
- reason: "deleted" | "invalidatedByStructureChange" | "importAmbiguity";
360
- };
361
-
362
- interface EditorWarning {
363
- warningId: string;
364
- code:
365
- | "unsupported_ooxml_preserved"
366
- | "unsupported_ooxml_locked"
367
- | "import_normalized"
368
- | "export_roundtrip_risk"
369
- | "comment_anchor_detached"
370
- | "revision_anchor_detached"
371
- | "large_document_degraded"
372
- | "font_substitution"
373
- | "image_missing";
374
- severity: "info" | "warning";
375
- message: string;
376
- source:
377
- | "import"
378
- | "runtime"
379
- | "review"
380
- | "preservation"
381
- | "validation"
382
- | "export";
383
- affectedAnchor?: EditorAnchorProjection;
384
- featureEntryId?: string;
385
- details?: Record<string, unknown>;
386
- }
387
-
388
- interface EditorError {
389
- errorId: string;
390
- code:
391
- | "import_failed"
392
- | "export_failed"
393
- | "package_corrupt"
394
- | "validation_failed"
395
- | "datastore_failed"
396
- | "internal_invariant";
397
- message: string;
398
- isFatal: boolean;
399
- source:
400
- | "import"
401
- | "runtime"
402
- | "validation"
403
- | "datastore"
404
- | "export";
405
- details?: Record<string, unknown>;
406
- }
407
- ```
408
-
409
- Range references are runtime-derived projections over canonical positions. DOM paths are not part of the public contract.
410
-
411
- ## Persistence Model
412
-
413
- The datastore adapter should support:
414
-
415
- - loading the latest snapshot or source document
416
- - saving fast JSON checkpoints
417
- - saving exported `.docx` artifacts
418
- - optional telemetry emission
419
-
420
- The persisted resume artifact is:
421
-
422
- ```ts
423
- interface PersistedEditorSnapshot {
424
- snapshotVersion: "persisted-editor-snapshot/1";
425
- schemaVersion: "cds/1.0.0";
426
- documentId: string;
427
- docId: string;
428
- createdAt: string;
429
- updatedAt: string;
430
- savedAt: string;
431
- editorBuild: string;
432
- canonicalDocument: CanonicalDocument;
433
- compatibility: CompatibilityReport;
434
- warningLog: EditorWarning[];
435
- }
436
-
437
- interface CompatibilityReport {
438
- reportVersion: "compatibility-report/1";
439
- generatedAt: string;
440
- blockExport: boolean;
441
- featureEntries: CompatibilityFeatureEntry[];
442
- warnings: EditorWarning[];
443
- errors: EditorError[];
444
- }
445
- ```
446
-
447
- Persistence rules:
448
-
449
- - `getSnapshot()` returns `PersistedEditorSnapshot`
450
- - loading a snapshot resumes canonical state without rerunning `.docx` import
451
- - render snapshots are internal runtime projections and are not a persistence contract
452
- - manual export first saves a non-autosave snapshot checkpoint through `datastore.saveSnapshot(...)`
453
- - if that manual checkpoint fails, export is rejected and `saveExport(...)` is not attempted
454
- - autosave timers are scoped to the current revision token, so a successful manual export checkpoint clears any pending autosave for the same revision
455
-
456
- The host does not stream keystrokes through props. Replace-on-change is the only supported controlled pattern.
@@ -1,58 +0,0 @@
1
- # Repository Guidance
2
-
3
- Use this page as the default in-repo guidance for product and architecture work.
4
-
5
- ## Defaults
6
-
7
- - Keep host-format fidelity as the top-level product invariant.
8
- - Treat runtime-owned structured state as the canonical source of truth.
9
- - Route all edits through commands and transactions; do not patch DOM state directly and call it authoritative.
10
- - Preserve unsupported but preservable OOXML whenever possible; never silently drop unknown content.
11
- - Keep file ownership explicit in plans, waves, and ad-hoc prompts.
12
- - Prefer small, reviewable changes over broad speculative rewrites.
13
- - Update impacted docs when interfaces, scope, component maturity, or proof expectations change.
14
- - Keep maturity docs aligned with real subsystem status rather than narrative progress.
15
- - Run the relevant validation commands or fixture checks for touched surfaces.
16
- - Treat external docs as non-canonical unless the task is explicitly about third-party APIs or OOXML behavior.
17
-
18
- ## Layered Repo Rules
19
-
20
- - The only shipped implementation today is the docx runtime behind `WordReviewEditor`.
21
- - Shared platform docs may broaden before the source tree does; do not misrepresent planned structure as landed code.
22
- - `xlsx` planning work should align to the shared OOXML platform doctrine without copying docx-specific UI or ProseMirror assumptions into spreadsheet architecture.
23
- - `pdf` may appear in repo-level planning, but it is not part of the first shared OOXML platform contract.
24
-
25
- ## Current Docx Rules
26
-
27
- - The current shipped editor is not a Word clone. Keep UI clean, contextual, and minimal.
28
- - The repo is still optimized around legal-review workflows in the landed docx runtime. Comments, redlines, lists, tables, and safe round-trip behavior matter more than cosmetic formatting breadth.
29
- - Follow `DESIGN.md` for current docx layout, token, and interaction decisions.
30
- - Default visual posture is calm, precise, and review-oriented.
31
- - Prefer canvas mode as the baseline review experience; page mode is optional and secondary.
32
- - Keep the document surface central. Toolbars, sidebars, and status surfaces should support it, not compete with it.
33
- - Separate canonical content, review state, preservation layer, UI state, and OOXML import or export boundaries.
34
- - The shipped editor runs in the main thread with no Web Workers.
35
- - The Microsoft Open XML SDK must not be pulled into the shipped React bundle. Use it only in CI or internal validation services.
36
-
37
- ## Validation Bias
38
-
39
- When making architecture decisions, prefer proofs that increase confidence in:
40
-
41
- - current docx import safety
42
- - current docx export safety
43
- - Word reopen compatibility for shipped flows
44
- - future Excel reopen compatibility for planned xlsx flows
45
- - anchor and range remapping stability
46
- - preservation of unsupported content
47
- - adherence to the token-driven design system when UI surfaces are touched
48
-
49
- ## Update These Docs When Behavior Changes
50
-
51
- - `docs/plans/master-plan.md`
52
- - `docs/plans/current-state.md`
53
- - `docs/roadmap.md`
54
- - `docs/plans/component-cutover-matrix.md`
55
- - `docs/plans/waves/README.md`
56
- - `docs/reference/public-api.md` when the shipped docx public behavior changes
57
- - `docs/reference/ooxml-compliance.md` for shipped docx compatibility changes
58
- - `docs/reference/xlsx/xlsx-ooxml-compliance.md` for planned xlsx contract changes
@@ -1,182 +0,0 @@
1
- # Runtime Configuration Reference
2
-
3
- This directory is the canonical reference for executor configuration in the packaged Wave release.
4
-
5
- Use it when you need the full supported surface for:
6
-
7
- - `wave.config.json`
8
- - `lanes.<lane>.executors`
9
- - `waveControl`
10
- - `executors.profiles.<profile>`
11
- - per-agent `### Executor` blocks inside a wave file
12
-
13
- ## Naming Conventions
14
-
15
- - `wave.config.json` uses camelCase keys such as `profileName`, `addDirs`, `settingsJson`, and `allowedHttpHookUrls`.
16
- - Wave markdown `### Executor` blocks use snake_case after the runtime prefix, such as `codex.profile_name`, `codex.add_dirs`, `claude.settings_json`, and `claude.allowed_http_hook_urls`.
17
-
18
- ## Resolution Order
19
-
20
- Executor id selection resolves in this order:
21
-
22
- 1. agent `### Executor` `id`
23
- 2. agent `### Executor` `profile` -> `executors.profiles.<profile>.id`
24
- 3. `lanes.<lane>.runtimePolicy.defaultExecutorByRole`
25
- 4. launcher `--executor`
26
- 5. `executors.default`
27
-
28
- Runtime settings resolve in layers:
29
-
30
- 1. `executors.<runtime>` global defaults
31
- 2. `lanes.<lane>.executors.<runtime>` lane overrides
32
- 3. `executors.profiles.<profile>` or `lanes.<lane>.executors.profiles.<profile>`
33
- 4. agent `### Executor`
34
-
35
- Merge behavior:
36
-
37
- - scalar values override from later layers
38
- - list values merge for profile plus agent resolution on top of the lane base
39
- - lane executor overrides replace the corresponding global runtime fields before profile and agent resolution
40
- - a lane profile with the same name as a global profile replaces that profile definition for the lane
41
-
42
- Skill settings resolve after executor selection, because runtime and deploy-kind skill attachment depend on the resolved executor id and the wave's default deploy environment kind. The starter layering order is:
43
-
44
- 1. `skills.base`
45
- 2. `lanes.<lane>.skills.base`
46
- 3. `skills.byRole[resolvedRole]`
47
- 4. `lanes.<lane>.skills.byRole[resolvedRole]`
48
- 5. `skills.byRuntime[resolvedExecutorId]`
49
- 6. `lanes.<lane>.skills.byRuntime[resolvedExecutorId]`
50
- 7. `skills.byDeployKind[defaultDeployEnvironmentKind]`
51
- 8. `lanes.<lane>.skills.byDeployKind[defaultDeployEnvironmentKind]`
52
- 9. agent `### Skills`
53
-
54
- Then Wave filters configured skills through each bundle's activation metadata. Explicit per-agent `### Skills` still force attachment even when activation metadata would not auto-match.
55
-
56
- When retry-time fallback changes the runtime, Wave recomputes the effective skill set and rewrites the executor overlay before relaunch.
57
-
58
- ## Common Fields
59
-
60
- These fields are shared across runtimes:
61
-
62
- | Surface | `wave.config.json` / profile key | Wave `### Executor` key | Notes |
63
- | --- | --- | --- | --- |
64
- | Executor id | `id` in profile only | `id` | Runtime id: `codex`, `claude`, `opencode`, `local` |
65
- | Profile selection | n/a | `profile` | Selects `executors.profiles.<name>` |
66
- | Model | `model` in profile, `executors.claude.model`, `executors.opencode.model` | `model` | Codex uses shared `model` from profile or agent only |
67
- | Fallbacks | `fallbacks` in profile | `fallbacks` | Runtime ids used for retry-time reassignment |
68
- | Tags | `tags` in profile | `tags` | Stored in resolved executor state for policy and traces |
69
- | Budget turns | `budget.turns` in profile | `budget.turns` | Advisory generic turn budget. Wave records it in resolved metadata, but only runtime-specific settings such as `claude.maxTurns` or `opencode.steps` emit hard turn-limit flags. It does not set a Codex turn limit. |
70
- | Budget minutes | `budget.minutes` in profile | `budget.minutes` | Primary wall-clock attempt budget |
71
-
72
- Practical guidance:
73
-
74
- - prefer `budget.minutes` for normal synthesis, integration, and closure work
75
- - use generic `budget.turns` as a planning hint, not a hard failure trigger
76
- - only set `claude.maxTurns` or `opencode.steps` when you deliberately want a hard ceiling for that runtime
77
- - see [../../guides/recommendations-0.8.9.md](../../guides/recommendations-0.8.9.md) for the recommended `0.8.9` operating stance that combines advisory turn budgets with softer non-proof coordination states
78
-
79
- ## Runtime Pages
80
-
81
- - [codex.md](./codex.md)
82
- - [claude.md](./claude.md)
83
- - [opencode.md](./opencode.md)
84
-
85
- ## Wave Control
86
-
87
- `wave.config.json` may also declare a `waveControl` block for local-first telemetry delivery.
88
-
89
- Supported top-level fields:
90
-
91
- | Key | Type | Default | Purpose |
92
- | --- | --- | --- | --- |
93
- | `enabled` | boolean | `true` | Master switch for local queueing and remote delivery |
94
- | `endpoint` | string | unset | Base URL for the Railway-hosted `services/wave-control` API |
95
- | `workspaceId` | string | derived from repo path | Stable workspace identity used across runs |
96
- | `projectId` | string | derived from `projectName` | Stable project/repo identity used for cross-workspace reporting and filtering |
97
- | `authTokenEnvVar` | string | `WAVE_CONTROL_AUTH_TOKEN` | Environment variable name holding the bearer token |
98
- | `reportMode` | string | `metadata-plus-selected` | `disabled`, `metadata-only`, `metadata-plus-selected`, or `full-artifact-upload` |
99
- | `uploadArtifactKinds` | string[] | selected proof/trace/benchmark kinds | Artifact classes eligible for body upload when an artifact's upload policy requests a body |
100
- | `requestTimeoutMs` | integer | `5000` | Per-batch network timeout |
101
- | `flushBatchSize` | integer | `25` | Max queued telemetry events flushed per batch |
102
- | `maxPendingEvents` | integer | `1000` | Cap for pending remote-delivery queue files; oldest pending uploads are dropped from the remote queue while the local `events.jsonl` stream remains authoritative |
103
- | `captureCoordinationRecords` | boolean | `true` | Emit `coordination_record` telemetry |
104
- | `captureControlPlaneEvents` | boolean | `true` | Emit `wave_run`, `attempt`, `proof_bundle`, and related control-plane events |
105
- | `captureTraceBundles` | boolean | `true` | Emit finalized trace-bundle artifacts and gate snapshots |
106
- | `captureBenchmarkRuns` | boolean | `true` | Emit `benchmark_run`, `benchmark_item`, `verification`, and `review` events |
107
-
108
- Lane overrides may refine the same keys under `lanes.<lane>.waveControl`.
109
-
110
- One-run override:
111
-
112
- - `wave launch --no-telemetry` disables Wave Control queueing and remote delivery for that launcher invocation without changing the repo config.
113
-
114
- Example:
115
-
116
- ```json
117
- {
118
- "waveControl": {
119
- "endpoint": "https://wave-control.up.railway.app/api/v1",
120
- "workspaceId": "wave-main",
121
- "projectId": "wave-orchestration",
122
- "reportMode": "metadata-plus-selected",
123
- "uploadArtifactKinds": [
124
- "trace-run-metadata",
125
- "trace-quality",
126
- "benchmark-results"
127
- ]
128
- }
129
- }
130
- ```
131
-
132
- Runtime-emitted Wave Control events also attach:
133
-
134
- - `orchestratorId` from the active launcher or resident orchestrator
135
- - `runtimeVersion` from the installed Wave package metadata
136
-
137
- Those fields are queryable in the `wave-control` service alongside `workspaceId`,
138
- `projectId`, `runKind`, `runId`, `lane`, and benchmark ids.
139
-
140
- See [../wave-control.md](../wave-control.md) for the event contract and upload-policy model.
141
-
142
- ## Generated Artifacts
143
-
144
- Wave writes runtime artifacts here:
145
-
146
- - live runs: `.tmp/<lane>-wave-launcher/executors/wave-<n>/<agent-slug>/`
147
- - dry-run previews: `.tmp/<lane>-wave-launcher/dry-run/executors/wave-<n>/<agent-slug>/`
148
-
149
- Common files:
150
-
151
- - `launch-preview.json`: resolved invocation lines, env vars, retry mode, and structured attempt/turn-limit metadata for both dry-run and live launches
152
- - `skills.resolved.md`: compact metadata-first skill catalog for the selected agent and runtime
153
- - `skills.expanded.md`: full canonical/debug skill payload with `SKILL.md` bodies and adapters
154
- - `skills.metadata.json`: resolved skill ids, activation metadata, permissions, hashes, and generated artifact paths
155
- - `<runtime>-skills.txt`: runtime-projected compact skill text used by the selected executor
156
- - `claude-system-prompt.txt`: generated Claude harness prompt overlay
157
- - `claude-settings.json`: generated Claude settings overlay when inline settings data is present
158
- - `opencode-agent-prompt.txt`: generated OpenCode harness prompt overlay
159
- - `opencode.json`: generated OpenCode runtime config overlay
160
- - `.tmp/<lane>-wave-launcher/control-plane/telemetry/events.jsonl`: local-first Wave Control event stream
161
- - `.tmp/<lane>-wave-launcher/control-plane/telemetry/pending/`: queued event batches awaiting remote delivery
162
- - `.tmp/<lane>-wave-launcher/control-plane/telemetry/delivery-state.json`: remote-delivery counters and last-error state
163
-
164
- Runtime-specific delivery:
165
-
166
- - Codex uses the compact catalog in the compiled prompt and attaches bundle directories through `--add-dir`.
167
- - Claude appends the compact catalog to the generated system-prompt overlay.
168
- - OpenCode injects the compact catalog into `opencode.json` and attaches `skill.json`, `SKILL.md`, the selected adapter, and recursive `references/**` files through `--file`.
169
- - Local keeps skills prompt-only.
170
-
171
- `launch-preview.json` also records the resolved skill metadata plus a `limits` section. For Claude and OpenCode, that section reports the runtime-specific turn ceiling when one was actually configured; when only generic `budget.turns` exists, the preview keeps it as advisory metadata and notes that Wave emitted no hard turn-limit flag. For Codex, it explicitly records that Wave emitted no turn-limit flag and that any effective ceiling may come from the selected Codex profile or upstream runtime. If a live Codex run later terminates with a visible `Reached max turns (N)` log line, Wave appends that observed ceiling back into the live `launch-preview.json` as runtime evidence rather than pretending Wave set it.
172
-
173
- ## Recommended Validation Path
174
-
175
- Use dry-run before relying on a new runtime configuration:
176
-
177
- ```bash
178
- pnpm exec wave doctor
179
- pnpm exec wave launch --lane main --dry-run --no-dashboard
180
- ```
181
-
182
- Then inspect the generated preview and overlay files under `.tmp/<lane>-wave-launcher/dry-run/executors/`.