@beyondwork/docx-react-component 1.0.0 → 1.0.2

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 (560) hide show
  1. package/README.md +44 -104
  2. package/package.json +66 -15
  3. package/src/api/public-types.ts +1 -1
  4. package/src/compare/diff-engine.ts +530 -0
  5. package/src/compare/export-redlines.ts +162 -0
  6. package/src/compare/snapshot.ts +37 -0
  7. package/src/core/commands/index.ts +1 -1
  8. package/src/core/state/editor-state.ts +2 -2
  9. package/src/index.ts +45 -0
  10. package/src/legal/bookmarks.ts +196 -0
  11. package/src/legal/cross-references.ts +356 -0
  12. package/src/legal/defined-terms.ts +203 -0
  13. package/src/runtime/document-runtime.ts +3 -5
  14. package/src/runtime/table-commands.ts +4 -1
  15. package/src/runtime/table-schema.ts +17 -2
  16. package/src/runtime/virtualized-rendering.ts +258 -0
  17. package/src/ui/WordReviewEditor.tsx +256 -35
  18. package/src/ui-tailwind/editor-surface/tw-editor-surface.tsx +2 -2
  19. package/src/ui-tailwind/editor-surface/tw-table-node-view.tsx +16 -2
  20. package/.codex/config.toml +0 -5
  21. package/.corepack/v1/pnpm/10.30.3/.corepack +0 -1
  22. package/.corepack/v1/pnpm/10.30.3/LICENSE +0 -22
  23. package/.corepack/v1/pnpm/10.30.3/README.md +0 -240
  24. package/.corepack/v1/pnpm/10.30.3/dist/node-gyp-bin/node-gyp +0 -6
  25. package/.corepack/v1/pnpm/10.30.3/dist/node-gyp-bin/node-gyp.cmd +0 -5
  26. package/.corepack/v1/pnpm/10.30.3/dist/pnpm.cjs +0 -195400
  27. package/.corepack/v1/pnpm/10.30.3/dist/pnpmrc +0 -2
  28. package/.corepack/v1/pnpm/10.30.3/dist/reflink.darwin-arm64-2HJ4WGO6.node +0 -0
  29. package/.corepack/v1/pnpm/10.30.3/dist/reflink.darwin-x64-3G3H6IW4.node +0 -0
  30. package/.corepack/v1/pnpm/10.30.3/dist/reflink.win32-arm64-msvc-Q6BARPPB.node +0 -0
  31. package/.corepack/v1/pnpm/10.30.3/dist/reflink.win32-x64-msvc-J2TZHRQI.node +0 -0
  32. package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.bash +0 -31
  33. package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.fish +0 -22
  34. package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.ps1 +0 -193
  35. package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.zsh +0 -27
  36. package/.corepack/v1/pnpm/10.30.3/dist/vendor/fastlist-0.3.0-x64.exe +0 -0
  37. package/.corepack/v1/pnpm/10.30.3/dist/vendor/fastlist-0.3.0-x86.exe +0 -0
  38. package/.corepack/v1/pnpm/10.30.3/dist/worker.js +0 -10119
  39. package/.corepack/v1/pnpm/10.30.3/package.json +0 -192
  40. package/.cursor/mcp.json +0 -7
  41. package/.github/workflows/ci.yml +0 -35
  42. package/.mcp.json +0 -7
  43. package/.openclaw/workspace-state.json +0 -4
  44. package/.pnpmrc.json +0 -1
  45. package/.wave-launch.sh +0 -7
  46. package/.workspace-marker +0 -1
  47. package/AGENTS.md +0 -78
  48. package/CHANGELOG.md +0 -177
  49. package/DESIGN.md +0 -929
  50. package/HEARTBEAT.md +0 -7
  51. package/IDENTITY.md +0 -23
  52. package/SOUL.md +0 -36
  53. package/TOOLS.md +0 -40
  54. package/USER.md +0 -17
  55. package/docs/README.md +0 -107
  56. package/docs/agents/wave-cont-eval-role.md +0 -36
  57. package/docs/agents/wave-cont-qa-role.md +0 -52
  58. package/docs/agents/wave-deploy-verifier-role.md +0 -34
  59. package/docs/agents/wave-design-role.md +0 -47
  60. package/docs/agents/wave-documentation-role.md +0 -34
  61. package/docs/agents/wave-infra-role.md +0 -34
  62. package/docs/agents/wave-integration-role.md +0 -37
  63. package/docs/agents/wave-launcher-role.md +0 -41
  64. package/docs/agents/wave-orchestrator-role.md +0 -52
  65. package/docs/agents/wave-planner-role.md +0 -39
  66. package/docs/agents/wave-security-role.md +0 -40
  67. package/docs/architecture/docx/README.md +0 -10
  68. package/docs/architecture/future/README.md +0 -8
  69. package/docs/architecture/ooxml-upgrade-analysis.md +0 -134
  70. package/docs/architecture/platform/shared-openxml-editor-platform.md +0 -153
  71. package/docs/architecture/xlsx/canonical-workbook-model-and-commands.md +0 -187
  72. package/docs/architecture/xlsx/spreadsheet-editor-frontend-architecture.md +0 -150
  73. package/docs/comment-redline-overview.md +0 -350
  74. package/docs/concepts/context7-vs-skills.md +0 -118
  75. package/docs/concepts/operating-modes.md +0 -91
  76. package/docs/concepts/runtime-agnostic-orchestration.md +0 -111
  77. package/docs/concepts/what-is-a-wave.md +0 -217
  78. package/docs/context7/bundles.json +0 -222
  79. package/docs/context7/planner-agent/README.md +0 -28
  80. package/docs/context7/planner-agent/manifest.json +0 -83
  81. package/docs/context7/planner-agent/papers/cooperbench-why-coding-agents-cannot-be-your-teammates-yet.md +0 -3283
  82. package/docs/context7/planner-agent/papers/dova-deliberation-first-multi-agent-orchestration-for-autonomous-research-automation.md +0 -1699
  83. package/docs/context7/planner-agent/papers/dpbench-large-language-models-struggle-with-simultaneous-coordination.md +0 -2251
  84. package/docs/context7/planner-agent/papers/incremental-planning-to-control-a-blackboard-based-problem-solver.md +0 -1729
  85. package/docs/context7/planner-agent/papers/silo-bench-a-scalable-environment-for-evaluating-distributed-coordination-in-multi-agent-llm-systems.md +0 -3747
  86. package/docs/context7/planner-agent/papers/todoevolve-learning-to-architect-agent-planning-systems.md +0 -1675
  87. package/docs/context7/planner-agent/papers/verified-multi-agent-orchestration-a-plan-execute-verify-replan-framework-for-complex-query-resolution.md +0 -1173
  88. package/docs/context7/planner-agent/papers/why-do-multi-agent-llm-systems-fail.md +0 -5211
  89. package/docs/context7/planner-agent/topics/planning-and-orchestration.md +0 -24
  90. package/docs/evals/arm-templates/README.md +0 -13
  91. package/docs/evals/arm-templates/full-wave.json +0 -15
  92. package/docs/evals/arm-templates/single-agent.json +0 -15
  93. package/docs/evals/benchmark-catalog.json +0 -670
  94. package/docs/evals/cases/README.md +0 -47
  95. package/docs/evals/cases/wave-blackboard-inbox-targeting.json +0 -73
  96. package/docs/evals/cases/wave-contradiction-conflict.json +0 -104
  97. package/docs/evals/cases/wave-expert-routing-preservation.json +0 -69
  98. package/docs/evals/cases/wave-hidden-profile-private-evidence.json +0 -81
  99. package/docs/evals/cases/wave-premature-closure-guard.json +0 -71
  100. package/docs/evals/cases/wave-silo-cross-agent-state.json +0 -77
  101. package/docs/evals/cases/wave-simultaneous-lockstep.json +0 -92
  102. package/docs/evals/external-benchmarks.json +0 -85
  103. package/docs/evals/external-command-config.sample.json +0 -9
  104. package/docs/evals/external-command-config.swe-bench-pro.json +0 -8
  105. package/docs/evals/pilots/README.md +0 -47
  106. package/docs/evals/pilots/swe-bench-pro-public-full-wave-review-10.json +0 -64
  107. package/docs/evals/pilots/swe-bench-pro-public-pilot.json +0 -111
  108. package/docs/evals/wave-benchmark-program.md +0 -302
  109. package/docs/guides/planner.md +0 -220
  110. package/docs/guides/recommendations-0.8.9.md +0 -133
  111. package/docs/guides/signal-wrappers.md +0 -165
  112. package/docs/guides/terminal-surfaces.md +0 -96
  113. package/docs/image copy.png +0 -0
  114. package/docs/image.png +0 -0
  115. package/docs/images/image.png +0 -0
  116. package/docs/legal-feedback-architecture.md +0 -498
  117. package/docs/plans/component-cutover-matrix.json +0 -1072
  118. package/docs/plans/component-cutover-matrix.md +0 -307
  119. package/docs/plans/context7-wave-orchestrator.md +0 -155
  120. package/docs/plans/current-state.md +0 -198
  121. package/docs/plans/docx/README.md +0 -9
  122. package/docs/plans/examples/wave-benchmark-improvement.md +0 -108
  123. package/docs/plans/examples/wave-example-live-proof.md +0 -435
  124. package/docs/plans/master-plan.md +0 -224
  125. package/docs/plans/migration.md +0 -538
  126. package/docs/plans/operations/README.md +0 -7
  127. package/docs/plans/operations/wave-10-word-certification.md +0 -87
  128. package/docs/plans/operations/wave-8-railway-staging.md +0 -153
  129. package/docs/plans/operations/wave-9-manual-certification.md +0 -73
  130. package/docs/plans/platform/README.md +0 -9
  131. package/docs/plans/reference/legal-checklist-coverage.md +0 -258
  132. package/docs/plans/wave-orchestrator.md +0 -423
  133. package/docs/plans/waves/README.md +0 -75
  134. package/docs/plans/waves/completed/wave-0.md +0 -195
  135. package/docs/plans/waves/completed/wave-1.md +0 -379
  136. package/docs/plans/waves/completed/wave-10.md +0 -670
  137. package/docs/plans/waves/completed/wave-11.md +0 -335
  138. package/docs/plans/waves/completed/wave-12.md +0 -417
  139. package/docs/plans/waves/completed/wave-13.md +0 -316
  140. package/docs/plans/waves/completed/wave-14.md +0 -319
  141. package/docs/plans/waves/completed/wave-15.md +0 -321
  142. package/docs/plans/waves/completed/wave-16.md +0 -316
  143. package/docs/plans/waves/completed/wave-17.md +0 -331
  144. package/docs/plans/waves/completed/wave-18.md +0 -328
  145. package/docs/plans/waves/completed/wave-2.md +0 -438
  146. package/docs/plans/waves/completed/wave-3.md +0 -435
  147. package/docs/plans/waves/completed/wave-4.md +0 -430
  148. package/docs/plans/waves/completed/wave-5.md +0 -430
  149. package/docs/plans/waves/completed/wave-6.md +0 -430
  150. package/docs/plans/waves/completed/wave-7.md +0 -526
  151. package/docs/plans/waves/completed/wave-8.md +0 -596
  152. package/docs/plans/waves/completed/wave-9.md +0 -552
  153. package/docs/plans/waves/deferred/README.md +0 -14
  154. package/docs/plans/waves/deferred/encrypted-intake-contracts.md +0 -282
  155. package/docs/plans/waves/deferred/legal-feedback-wave-expansion.md +0 -308
  156. package/docs/plans/waves/deferred/wave-encrypted-intake.md +0 -451
  157. package/docs/plans/waves/design/README.md +0 -5
  158. package/docs/plans/waves/design/wave-1-a1.md +0 -309
  159. package/docs/plans/waves/reviews/README.md +0 -5
  160. package/docs/plans/waves/reviews/wave-0-cont-qa.md +0 -151
  161. package/docs/plans/waves/reviews/wave-1-cont-qa.md +0 -46
  162. package/docs/plans/waves/reviews/wave-10-accessibility-and-design.md +0 -51
  163. package/docs/plans/waves/reviews/wave-10-cont-qa.md +0 -24
  164. package/docs/plans/waves/reviews/wave-10-dashboard-proof.md +0 -46
  165. package/docs/plans/waves/reviews/wave-10-performance-signoff.md +0 -55
  166. package/docs/plans/waves/reviews/wave-10-regression-proof.md +0 -23
  167. package/docs/plans/waves/reviews/wave-10-release-audit.md +0 -31
  168. package/docs/plans/waves/reviews/wave-10-service-proof.md +0 -83
  169. package/docs/plans/waves/reviews/wave-10-word-certification.md +0 -31
  170. package/docs/plans/waves/reviews/wave-18-ai-contract-closure.md +0 -277
  171. package/docs/plans/waves/reviews/wave-18-cont-qa.md +0 -255
  172. package/docs/plans/waves/reviews/wave-18-parity-proof.md +0 -271
  173. package/docs/plans/waves/reviews/wave-19-cont-qa.md +0 -59
  174. package/docs/plans/waves/reviews/wave-2-cont-qa.md +0 -72
  175. package/docs/plans/waves/reviews/wave-20-cont-qa.md +0 -60
  176. package/docs/plans/waves/reviews/wave-25-cont-qa.md +0 -48
  177. package/docs/plans/waves/reviews/wave-28-cont-qa.md +0 -46
  178. package/docs/plans/waves/reviews/wave-29-cont-qa.md +0 -53
  179. package/docs/plans/waves/reviews/wave-3-cont-qa.md +0 -53
  180. package/docs/plans/waves/reviews/wave-3-core-proof.md +0 -77
  181. package/docs/plans/waves/reviews/wave-3-validator-proof.md +0 -73
  182. package/docs/plans/waves/reviews/wave-32-cont-qa.md +0 -43
  183. package/docs/plans/waves/reviews/wave-33-cont-qa.md +0 -526
  184. package/docs/plans/waves/reviews/wave-34-cont-qa.md +0 -100
  185. package/docs/plans/waves/reviews/wave-35-cont-qa.md +0 -145
  186. package/docs/plans/waves/reviews/wave-4-cont-qa.md +0 -47
  187. package/docs/plans/waves/reviews/wave-4-structure-proof.md +0 -69
  188. package/docs/plans/waves/reviews/wave-5-comment-proof.md +0 -158
  189. package/docs/plans/waves/reviews/wave-5-cont-qa.md +0 -68
  190. package/docs/plans/waves/reviews/wave-6-cont-qa.md +0 -416
  191. package/docs/plans/waves/reviews/wave-6-redline-proof.md +0 -130
  192. package/docs/plans/waves/reviews/wave-7-cont-qa.md +0 -82
  193. package/docs/plans/waves/reviews/wave-7-ooxml-compliance.md +0 -85
  194. package/docs/plans/waves/reviews/wave-7-preservation-proof.md +0 -119
  195. package/docs/plans/waves/reviews/wave-7-trust-ux.md +0 -87
  196. package/docs/plans/waves/reviews/wave-8-accessibility-and-design.md +0 -128
  197. package/docs/plans/waves/reviews/wave-8-cont-qa.md +0 -92
  198. package/docs/plans/waves/reviews/wave-8-live-proof.md +0 -140
  199. package/docs/plans/waves/reviews/wave-8-security.md +0 -47
  200. package/docs/plans/waves/reviews/wave-9-editor-embedding.md +0 -39
  201. package/docs/plans/waves/reviews/wave-9-fixture-runner.md +0 -56
  202. package/docs/plans/waves/reviews/wave-9-live-proof.md +0 -105
  203. package/docs/plans/waves/reviews/wave-9-usability-and-performance.md +0 -152
  204. package/docs/plans/waves/specs/README.md +0 -5
  205. package/docs/plans/waves/specs/wave-1-component-boundaries.md +0 -322
  206. package/docs/plans/waves/specs/wave-1-ooxml-contracts.md +0 -323
  207. package/docs/plans/waves/specs/wave-1-review-and-ui-contracts.md +0 -339
  208. package/docs/plans/waves/specs/wave-1-runtime-contracts.md +0 -509
  209. package/docs/plans/waves/wave-19.md +0 -341
  210. package/docs/plans/waves/wave-20.md +0 -308
  211. package/docs/plans/waves/wave-21.md +0 -289
  212. package/docs/plans/waves/wave-22.md +0 -221
  213. package/docs/plans/waves/wave-23.md +0 -295
  214. package/docs/plans/waves/wave-24.md +0 -286
  215. package/docs/plans/waves/wave-25.md +0 -313
  216. package/docs/plans/waves/wave-26.md +0 -300
  217. package/docs/plans/waves/wave-27.md +0 -299
  218. package/docs/plans/waves/wave-28.md +0 -368
  219. package/docs/plans/waves/wave-29.md +0 -303
  220. package/docs/plans/waves/wave-30.md +0 -307
  221. package/docs/plans/waves/wave-31.md +0 -231
  222. package/docs/plans/waves/wave-32.md +0 -152
  223. package/docs/plans/waves/wave-33.md +0 -147
  224. package/docs/plans/waves/wave-34.md +0 -148
  225. package/docs/plans/waves/wave-35.md +0 -141
  226. package/docs/plans/waves/wave-36.md +0 -146
  227. package/docs/plans/xlsx/README.md +0 -14
  228. package/docs/plans/xlsx/xlsx-fixture-corpus-and-certification-plan.md +0 -126
  229. package/docs/reference/cli-reference.md +0 -600
  230. package/docs/reference/coordination-and-closure.md +0 -487
  231. package/docs/reference/deep-research-report (15).md +0 -25
  232. package/docs/reference/docx/README.md +0 -10
  233. package/docs/reference/legal-checklist.md +0 -445
  234. package/docs/reference/live-proof-waves.md +0 -199
  235. package/docs/reference/ooxml-compliance.md +0 -129
  236. package/docs/reference/ooxml-feature-parity-matrix.md +0 -172
  237. package/docs/reference/platform/shared-ooxml-platform-guidance.md +0 -77
  238. package/docs/reference/prototype-agent-prompt-legal-fidelity.md +0 -155
  239. package/docs/reference/public-api.md +0 -456
  240. package/docs/reference/repository-guidance.md +0 -58
  241. package/docs/reference/runtime-config/README.md +0 -182
  242. package/docs/reference/runtime-config/claude.md +0 -110
  243. package/docs/reference/runtime-config/codex.md +0 -82
  244. package/docs/reference/runtime-config/opencode.md +0 -93
  245. package/docs/reference/sample-waves.md +0 -105
  246. package/docs/reference/skills.md +0 -237
  247. package/docs/reference/templates/AGENTS.md +0 -78
  248. package/docs/reference/templates/HEARTBEAT.md +0 -7
  249. package/docs/reference/templates/IDENTITY.md +0 -23
  250. package/docs/reference/templates/SOUL.md +0 -36
  251. package/docs/reference/templates/TOOLS.md +0 -40
  252. package/docs/reference/templates/USER.md +0 -17
  253. package/docs/reference/wave-control.md +0 -184
  254. package/docs/reference/wave-planning-lessons.md +0 -167
  255. package/docs/reference/word-review-editor-frontend-architecture.md +0 -479
  256. package/docs/reference/word-review-editor-ux-guide.md +0 -253
  257. package/docs/reference/xlsx/xlsx-ooxml-compliance.md +0 -137
  258. package/docs/research/agent-context-sources.md +0 -178
  259. package/docs/research/coordination-failure-review.md +0 -290
  260. package/docs/research/docx-react-component/Canonical Document Schema Specification for a React-based Word-compatible Editor.md +0 -2317
  261. package/docs/research/docx-react-component/Feature Compatibility Matrix for a React Word Compatible Legal Editor v1.md +0 -219
  262. package/docs/research/docx-react-component/React Component Architecture and Front-End Structure Specification for a Word-Compatible Legal Review Editor.md +0 -1112
  263. package/docs/research/docx-react-component/document_compatibility_and_testing_spec.md +0 -751
  264. package/docs/research/xlsx/raw/README.md +0 -13
  265. package/docs/roadmap.md +0 -174
  266. package/docs/superpowers/plans/2026-03-28-harness-control-bar.md +0 -677
  267. package/docs/superpowers/specs/2026-03-28-harness-control-bar-design.md +0 -274
  268. package/docs/xlsx-react/README.md +0 -38
  269. package/docs/xlsx-react/agent-llm-interaction-layer-docx-xlsx.md +0 -621
  270. package/docs/xlsx-react/canonical-workbook-model-and-commands.md +0 -948
  271. package/docs/xlsx-react/shared-openxml-editor-platform-docx-xlsx.md +0 -228
  272. package/docs/xlsx-react/spreadsheet-editor-component-architecture.md +0 -809
  273. package/docs/xlsx-react/spreadsheet-editor-frontend-architecture.md +0 -537
  274. package/docs/xlsx-react/spreadsheet-editor-ux-guide.md +0 -520
  275. package/docs/xlsx-react/xlsx-editor-research-pack.md +0 -871
  276. package/docs/xlsx-react/xlsx-fixture-corpus-and-certification-plan.md +0 -436
  277. package/docs/xlsx-react/xlsx-ooxml-compliance.md +0 -320
  278. package/examples/README.md +0 -16
  279. package/memory/MEMORY.md +0 -24
  280. package/pnpm-workspace.yaml +0 -4
  281. package/scripts/check-no-authored-js.sh +0 -13
  282. package/scripts/context7-api-check.sh +0 -65
  283. package/scripts/context7-export-env.sh +0 -42
  284. package/scripts/run-context7-mcp.sh +0 -8
  285. package/scripts/run-workspace-tests.sh +0 -15
  286. package/scripts/start-wave-10-local.sh +0 -189
  287. package/scripts/wave-agent-attach.sh +0 -47
  288. package/scripts/wave-auto-answer.sh +0 -118
  289. package/scripts/wave-dashboard-attach.sh +0 -13
  290. package/scripts/wave-launch.sh +0 -273
  291. package/scripts/wave-overnight-supervisor.sh +0 -145
  292. package/scripts/wave-status.sh +0 -379
  293. package/scripts/wave-watch.sh +0 -231
  294. package/services/README.md +0 -17
  295. package/services/openxml-validator/Dockerfile +0 -29
  296. package/services/openxml-validator/OpenXmlValidator.Api.csproj +0 -12
  297. package/services/openxml-validator/Program.cs +0 -436
  298. package/services/openxml-validator/README.md +0 -152
  299. package/services/openxml-validator/railway.json +0 -16
  300. package/services/react-word-editor/.tmp-a4/src/api/public-types.ts +0 -318
  301. package/services/react-word-editor/.tmp-a4/src/ui/WordReviewEditor.tsx +0 -1302
  302. package/services/react-word-editor/.tmp-a4/src/ui/editor-surface/editor-surface.tsx +0 -546
  303. package/services/react-word-editor/.tmp-a4/test/ui/word-review-editor.test.tsx +0 -146
  304. package/services/react-word-editor/.tmp-a4-build/src/api/public-types.js +0 -2
  305. package/services/react-word-editor/.tmp-a4-build/src/ui/WordReviewEditor.js +0 -818
  306. package/services/react-word-editor/.tmp-a4-build/src/ui/editor-surface/editor-surface.js +0 -229
  307. package/services/react-word-editor/.tmp-a4-build/test/ui/word-review-editor.test.js +0 -121
  308. package/services/react-word-editor/.tmp-wave-4-a3-tsconfig.json +0 -21
  309. package/services/react-word-editor/.tmp-wave-4-a3-tsconfig.tsbuildinfo +0 -1
  310. package/services/react-word-editor/Dockerfile +0 -26
  311. package/services/react-word-editor/README.md +0 -254
  312. package/services/react-word-editor/app/api/certification/route.ts +0 -79
  313. package/services/react-word-editor/app/api/demo-sessions/route.ts +0 -109
  314. package/services/react-word-editor/app/api/deploy-health/route.ts +0 -23
  315. package/services/react-word-editor/app/api/exports/[exportId]/route.ts +0 -34
  316. package/services/react-word-editor/app/api/exports/route.ts +0 -81
  317. package/services/react-word-editor/app/api/fixtures/[fixtureId]/run/route.ts +0 -100
  318. package/services/react-word-editor/app/api/health/route.ts +0 -70
  319. package/services/react-word-editor/app/api/runs/[runId]/route.ts +0 -36
  320. package/services/react-word-editor/app/api/scenarios/[scenarioId]/run/route.ts +0 -85
  321. package/services/react-word-editor/app/api/sessions/[sessionId]/route.ts +0 -199
  322. package/services/react-word-editor/app/api/sessions/[sessionId]/source/route.ts +0 -45
  323. package/services/react-word-editor/app/api/uploads/route.ts +0 -70
  324. package/services/react-word-editor/app/api/validate/route.ts +0 -310
  325. package/services/react-word-editor/app/certification/[runId]/page.tsx +0 -14
  326. package/services/react-word-editor/app/certification/page.tsx +0 -32
  327. package/services/react-word-editor/app/dashboard/page.tsx +0 -7
  328. package/services/react-word-editor/app/demo/page.tsx +0 -30
  329. package/services/react-word-editor/app/demo/prototype-client.tsx +0 -1080
  330. package/services/react-word-editor/app/editor/[sessionId]/page.tsx +0 -33
  331. package/services/react-word-editor/app/fixtures/page.tsx +0 -7
  332. package/services/react-word-editor/app/globals.css +0 -121
  333. package/services/react-word-editor/app/layout.tsx +0 -32
  334. package/services/react-word-editor/app/page.tsx +0 -30
  335. package/services/react-word-editor/app/runs/[runId]/page.tsx +0 -34
  336. package/services/react-word-editor/app/wave-10-word-review/page.tsx +0 -7
  337. package/services/react-word-editor/components/harness-control-bar.tsx +0 -289
  338. package/services/react-word-editor/components/harness-editor-session-client.tsx +0 -1214
  339. package/services/react-word-editor/components/harness-workspace-page.tsx +0 -715
  340. package/services/react-word-editor/components/reduced-motion-toggle.tsx +0 -79
  341. package/services/react-word-editor/components/workspace-certification-panel.tsx +0 -307
  342. package/services/react-word-editor/lib/certification-bundle.ts +0 -796
  343. package/services/react-word-editor/lib/certification-store.ts +0 -661
  344. package/services/react-word-editor/lib/demo-fixtures.test.mjs +0 -195
  345. package/services/react-word-editor/lib/demo-fixtures.ts +0 -1519
  346. package/services/react-word-editor/lib/editor-session-summary.test.mjs +0 -68
  347. package/services/react-word-editor/lib/editor-session-summary.ts +0 -14
  348. package/services/react-word-editor/lib/editor-session.ts +0 -228
  349. package/services/react-word-editor/lib/exports-route.test.mjs +0 -32
  350. package/services/react-word-editor/lib/harness-client.ts +0 -347
  351. package/services/react-word-editor/lib/harness-config.json +0 -30
  352. package/services/react-word-editor/lib/harness-config.test.mjs +0 -31
  353. package/services/react-word-editor/lib/harness-config.ts +0 -21
  354. package/services/react-word-editor/lib/harness-editor-datastore.test.mjs +0 -220
  355. package/services/react-word-editor/lib/harness-editor-datastore.ts +0 -161
  356. package/services/react-word-editor/lib/private-mode.test.mjs +0 -42
  357. package/services/react-word-editor/lib/private-mode.ts +0 -61
  358. package/services/react-word-editor/lib/regression-report.test.mjs +0 -352
  359. package/services/react-word-editor/lib/regression-report.ts +0 -896
  360. package/services/react-word-editor/lib/run-artifacts.ts +0 -934
  361. package/services/react-word-editor/lib/run-history.ts +0 -755
  362. package/services/react-word-editor/lib/scenario-artifacts.test.mjs +0 -41
  363. package/services/react-word-editor/lib/scenario-artifacts.ts +0 -44
  364. package/services/react-word-editor/lib/storage.ts +0 -953
  365. package/services/react-word-editor/lib/validator-client.test.mjs +0 -54
  366. package/services/react-word-editor/lib/validator-client.ts +0 -95
  367. package/services/react-word-editor/lib/workspace-navigation.ts +0 -79
  368. package/services/react-word-editor/middleware.ts +0 -35
  369. package/services/react-word-editor/next-env.d.ts +0 -6
  370. package/services/react-word-editor/next.config.mjs +0 -15
  371. package/services/react-word-editor/package.json +0 -38
  372. package/services/react-word-editor/postcss.config.mjs +0 -8
  373. package/services/react-word-editor/railway.json +0 -21
  374. package/services/react-word-editor/scripts/wave-10-certification.mjs +0 -101
  375. package/services/react-word-editor/scripts/wave-9-live-usability-pilot.mjs +0 -911
  376. package/services/react-word-editor/tsconfig.json +0 -39
  377. package/services/react-word-editor/tsconfig.tsbuildinfo +0 -1
  378. package/skills/README.md +0 -48
  379. package/skills/domain-docx-compatibility/SKILL.md +0 -44
  380. package/skills/domain-docx-compatibility/skill.json +0 -19
  381. package/skills/domain-editor-architecture/SKILL.md +0 -49
  382. package/skills/domain-editor-architecture/skill.json +0 -19
  383. package/skills/domain-legal-review/SKILL.md +0 -39
  384. package/skills/domain-legal-review/skill.json +0 -19
  385. package/skills/provider-aws/SKILL.md +0 -117
  386. package/skills/provider-aws/adapters/claude.md +0 -1
  387. package/skills/provider-aws/adapters/codex.md +0 -1
  388. package/skills/provider-aws/references/service-verification.md +0 -39
  389. package/skills/provider-aws/skill.json +0 -54
  390. package/skills/provider-custom-deploy/SKILL.md +0 -64
  391. package/skills/provider-custom-deploy/skill.json +0 -50
  392. package/skills/provider-docker-compose/SKILL.md +0 -96
  393. package/skills/provider-docker-compose/adapters/local.md +0 -1
  394. package/skills/provider-docker-compose/skill.json +0 -53
  395. package/skills/provider-github-release/SKILL.md +0 -121
  396. package/skills/provider-github-release/adapters/claude.md +0 -1
  397. package/skills/provider-github-release/adapters/codex.md +0 -1
  398. package/skills/provider-github-release/skill.json +0 -55
  399. package/skills/provider-kubernetes/SKILL.md +0 -143
  400. package/skills/provider-kubernetes/adapters/claude.md +0 -1
  401. package/skills/provider-kubernetes/adapters/codex.md +0 -1
  402. package/skills/provider-kubernetes/references/kubectl-patterns.md +0 -58
  403. package/skills/provider-kubernetes/skill.json +0 -52
  404. package/skills/provider-railway/SKILL.md +0 -123
  405. package/skills/provider-railway/adapters/claude.md +0 -1
  406. package/skills/provider-railway/adapters/codex.md +0 -1
  407. package/skills/provider-railway/adapters/local.md +0 -1
  408. package/skills/provider-railway/adapters/opencode.md +0 -1
  409. package/skills/provider-railway/references/verification-commands.md +0 -39
  410. package/skills/provider-railway/skill.json +0 -71
  411. package/skills/provider-ssh-manual/SKILL.md +0 -97
  412. package/skills/provider-ssh-manual/skill.json +0 -54
  413. package/skills/repo-coding-rules/SKILL.md +0 -55
  414. package/skills/repo-coding-rules/skill.json +0 -34
  415. package/skills/role-cont-eval/SKILL.md +0 -91
  416. package/skills/role-cont-eval/adapters/codex.md +0 -1
  417. package/skills/role-cont-eval/skill.json +0 -36
  418. package/skills/role-cont-qa/SKILL.md +0 -100
  419. package/skills/role-cont-qa/adapters/claude.md +0 -1
  420. package/skills/role-cont-qa/skill.json +0 -36
  421. package/skills/role-deploy/SKILL.md +0 -97
  422. package/skills/role-deploy/skill.json +0 -36
  423. package/skills/role-design/SKILL.md +0 -50
  424. package/skills/role-design/skill.json +0 -36
  425. package/skills/role-documentation/SKILL.md +0 -76
  426. package/skills/role-documentation/skill.json +0 -36
  427. package/skills/role-implementation/SKILL.md +0 -45
  428. package/skills/role-implementation/skill.json +0 -36
  429. package/skills/role-infra/SKILL.md +0 -81
  430. package/skills/role-infra/skill.json +0 -36
  431. package/skills/role-integration/SKILL.md +0 -91
  432. package/skills/role-integration/skill.json +0 -36
  433. package/skills/role-planner/SKILL.md +0 -39
  434. package/skills/role-planner/skill.json +0 -21
  435. package/skills/role-research/SKILL.md +0 -65
  436. package/skills/role-research/skill.json +0 -36
  437. package/skills/role-security/SKILL.md +0 -60
  438. package/skills/role-security/skill.json +0 -36
  439. package/skills/runtime-claude/SKILL.md +0 -66
  440. package/skills/runtime-claude/skill.json +0 -36
  441. package/skills/runtime-codex/SKILL.md +0 -58
  442. package/skills/runtime-codex/skill.json +0 -36
  443. package/skills/runtime-local/SKILL.md +0 -46
  444. package/skills/runtime-local/skill.json +0 -36
  445. package/skills/runtime-opencode/SKILL.md +0 -58
  446. package/skills/runtime-opencode/skill.json +0 -36
  447. package/skills/signal-hygiene/SKILL.md +0 -51
  448. package/skills/signal-hygiene/skill.json +0 -20
  449. package/skills/tui-design/SKILL.md +0 -77
  450. package/skills/tui-design/references/tui-design.md +0 -259
  451. package/skills/tui-design/skill.json +0 -36
  452. package/skills/wave-core/SKILL.md +0 -141
  453. package/skills/wave-core/references/marker-syntax.md +0 -70
  454. package/skills/wave-core/skill.json +0 -35
  455. package/test/README.md +0 -16
  456. package/test/core/formatting-commands.test.ts +0 -285
  457. package/test/core/image-commands.test.ts +0 -298
  458. package/test/core/mapping.test.ts +0 -186
  459. package/test/core/text-commands.test.ts +0 -176
  460. package/test/fixtures/docx/F01-basic-contract.docx +0 -0
  461. package/test/fixtures/docx/F01-basic-contract.md +0 -33
  462. package/test/fixtures/docx/F02-headings-styles.docx +0 -0
  463. package/test/fixtures/docx/F02-headings-styles.md +0 -33
  464. package/test/fixtures/docx/F03-legal-outline-numbering.docx +0 -0
  465. package/test/fixtures/docx/F03-legal-outline-numbering.md +0 -34
  466. package/test/fixtures/docx/F04-restart-numbering-schedules.docx +0 -0
  467. package/test/fixtures/docx/F04-restart-numbering-schedules.md +0 -33
  468. package/test/fixtures/docx/F05-table-heavy-agreement.docx +0 -0
  469. package/test/fixtures/docx/F05-table-heavy-agreement.md +0 -34
  470. package/test/fixtures/docx/F06-merged-cells-signature-table.docx +0 -0
  471. package/test/fixtures/docx/F06-merged-cells-signature-table.md +0 -34
  472. package/test/fixtures/docx/F07-inline-images-exhibit.docx +0 -0
  473. package/test/fixtures/docx/F07-inline-images-exhibit.md +0 -34
  474. package/test/fixtures/docx/F08-hyperlinks.docx +0 -0
  475. package/test/fixtures/docx/F08-hyperlinks.md +0 -33
  476. package/test/fixtures/docx/F09-comments-single-paragraph.docx +0 -0
  477. package/test/fixtures/docx/F09-comments-single-paragraph.md +0 -33
  478. package/test/fixtures/docx/F10-threaded-comments-resolve.docx +0 -0
  479. package/test/fixtures/docx/F10-threaded-comments-resolve.md +0 -33
  480. package/test/fixtures/docx/F11-redlines-basic.docx +0 -0
  481. package/test/fixtures/docx/F11-redlines-basic.md +0 -33
  482. package/test/fixtures/docx/F12-redlines-paragraph-joins-splits.docx +0 -0
  483. package/test/fixtures/docx/F12-redlines-paragraph-joins-splits.md +0 -33
  484. package/test/fixtures/docx/F13-comments-on-deleted-text.docx +0 -0
  485. package/test/fixtures/docx/F13-comments-on-deleted-text.md +0 -33
  486. package/test/fixtures/docx/F14-revisions-in-tables-and-lists.docx +0 -0
  487. package/test/fixtures/docx/F14-revisions-in-tables-and-lists.md +0 -33
  488. package/test/fixtures/docx/F15-sections-headers-footers.docx +0 -0
  489. package/test/fixtures/docx/F15-sections-headers-footers.md +0 -33
  490. package/test/fixtures/docx/F16-footnotes-endnotes.docx +0 -0
  491. package/test/fixtures/docx/F16-footnotes-endnotes.md +0 -33
  492. package/test/fixtures/docx/F17-fields-and-toc.docx +0 -0
  493. package/test/fixtures/docx/F17-fields-and-toc.md +0 -33
  494. package/test/fixtures/docx/F18-content-controls-template.docx +0 -0
  495. package/test/fixtures/docx/F18-content-controls-template.md +0 -33
  496. package/test/fixtures/docx/F19-custom-xml-doc-assembly.docx +0 -0
  497. package/test/fixtures/docx/F19-custom-xml-doc-assembly.md +0 -35
  498. package/test/fixtures/docx/F20-unknown-ooxml-and-alternatecontent.docx +0 -0
  499. package/test/fixtures/docx/F20-unknown-ooxml-and-alternatecontent.md +0 -33
  500. package/test/fixtures/docx/F21-malformed-broken-docx.docx +0 -0
  501. package/test/fixtures/docx/F21-malformed-broken-docx.md +0 -33
  502. package/test/fixtures/docx/README.md +0 -74
  503. package/test/fixtures/docx/certification-manifest.json +0 -104
  504. package/test/fixtures/docx/fixtures.manifest.json +0 -196
  505. package/test/fixtures/encrypted-docx/README.md +0 -27
  506. package/test/fixtures/encrypted-docx/certification-manifest.json +0 -9
  507. package/test/fixtures/encrypted-docx/fixtures.manifest.json +0 -47
  508. package/test/fixtures/scenarios/docx/README.md +0 -25
  509. package/test/fixtures/scenarios/docx/S01-sow-template.docx +0 -0
  510. package/test/fixtures/scenarios/docx/S01-sow-template.md +0 -30
  511. package/test/fixtures/scenarios/docx/S02-bw-partner-user-licence-agreement-redlines.docx +0 -0
  512. package/test/fixtures/scenarios/docx/S02-bw-partner-user-licence-agreement-redlines.md +0 -32
  513. package/test/fixtures/scenarios/docx/scenario-manifest.json +0 -53
  514. package/test/formats/xlsx/io/xlsx-import.test.ts +0 -766
  515. package/test/formats/xlsx/model/workbook.test.ts +0 -669
  516. package/test/helpers/dom-setup.ts +0 -124
  517. package/test/io/comment-roundtrip.test.ts +0 -272
  518. package/test/io/complex-content-roundtrip.test.ts +0 -632
  519. package/test/io/docx-compatibility-regression.test.ts +0 -199
  520. package/test/io/docx-session.test.ts +0 -1495
  521. package/test/io/footnotes-roundtrip.test.ts +0 -318
  522. package/test/io/headers-footers-roundtrip.test.ts +0 -547
  523. package/test/io/numbering-roundtrip.test.ts +0 -234
  524. package/test/io/package-reader.test.ts +0 -199
  525. package/test/io/paragraph-properties-roundtrip.test.ts +0 -129
  526. package/test/io/preserved-package-roundtrip.test.ts +0 -365
  527. package/test/io/property-completeness.test.ts +0 -292
  528. package/test/io/revision-roundtrip.test.ts +0 -347
  529. package/test/io/structural-blocks.test.ts +0 -202
  530. package/test/io/table-media-roundtrip.test.ts +0 -448
  531. package/test/io/table-properties-roundtrip.test.ts +0 -569
  532. package/test/io/table-roundtrip.test.ts +0 -302
  533. package/test/io/text-roundtrip.test.ts +0 -344
  534. package/test/model/canonical-document.test.ts +0 -285
  535. package/test/preservation/opaque-fragment-store.test.ts +0 -121
  536. package/test/preservation/package-preservation.test.ts +0 -395
  537. package/test/preservation/store.test.ts +0 -84
  538. package/test/review/comment-remapping.test.ts +0 -220
  539. package/test/review/comment-store.test.ts +0 -180
  540. package/test/review/move-revisions.test.ts +0 -143
  541. package/test/review/property-change-revisions.test.ts +0 -225
  542. package/test/review/revision-actions.test.ts +0 -330
  543. package/test/review/revision-store.test.ts +0 -193
  544. package/test/runtime/session-capabilities.test.ts +0 -260
  545. package/test/runtime/table-commands.test.ts +0 -356
  546. package/test/runtime/table-schema.test.ts +0 -221
  547. package/test/runtime/tracked-changes-toggle.test.ts +0 -107
  548. package/test/ui/comment-review-surface.test.tsx +0 -114
  549. package/test/ui/reduced-motion-toggle.test.tsx +0 -137
  550. package/test/ui/word-review-editor.imported-scenarios.test.tsx +0 -169
  551. package/test/ui/word-review-editor.interaction.test.tsx +0 -1198
  552. package/test/ui/word-review-editor.test.js +0 -188
  553. package/test/ui/word-review-editor.test.tsx +0 -280
  554. package/test/ui-tailwind/search-plugin.test.ts +0 -286
  555. package/test/validation/compatibility-engine.test.ts +0 -336
  556. package/test/validation/compatibility-report.test.ts +0 -189
  557. package/test/validation/low-priority-word-surfaces.test.ts +0 -282
  558. package/test/validation/malformed-doc.test.ts +0 -113
  559. package/test-results/.last-run.json +0 -4
  560. package/wave.config.json +0 -406
@@ -1,51 +0,0 @@
1
- ---
2
- name: signal-hygiene
3
- description: Use for long-running resident or waiting agents that must stay idle until the orchestrator writes a new signal version, then acknowledge that change before acting.
4
- ---
5
-
6
- # Signal Hygiene
7
-
8
- Use this skill only when the agent is intentionally long-running.
9
-
10
- This is not a generic polling skill for normal one-shot implementation work.
11
-
12
- ## Core loop
13
-
14
- - Treat the signal state file as the orchestrator-controlled wakeup surface.
15
- - Treat the signal ack file as your durable confirmation that you observed a specific signal version.
16
- - Stay idle while the signal version is unchanged.
17
- - Act once when the signal version increases and the new signal is actionable.
18
-
19
- ## Required behavior
20
-
21
- - Read the signal state path provided in the prompt before deciding whether to keep waiting or resume work.
22
- - If the signal file is missing, assume the orchestrator has not published a new signal yet and keep waiting.
23
- - Compare the signal file's `version` to the version already recorded in the signal ack file.
24
- - When the signal version increases, write the ack file immediately before you act on the change.
25
- - Write the ack file as JSON with exactly these keys:
26
- - `agentId`
27
- - `version`
28
- - `signal`
29
- - `observedAt`
30
- - After acknowledging the new version, re-read the inbox, shared summary, message board, and any explicitly referenced artifacts before taking action.
31
- - If the signal kind is `completed` or `failed`, stop the waiting loop and finish cleanly.
32
-
33
- ## Do not do this
34
-
35
- - Do not busy-loop or emit repeated status chatter while the signal version is unchanged.
36
- - Do not keep re-processing the same signal version.
37
- - Do not invent your own wakeup surface when the orchestrator already provided signal and ack paths.
38
- - Do not stay resident forever once the signal clearly becomes terminal.
39
-
40
- ## Actionability rule
41
-
42
- Treat these signal kinds as actionable by default:
43
-
44
- - `feedback-requested`
45
- - `feedback-answered`
46
- - `coordination-action`
47
- - `resume-ready`
48
- - `completed`
49
- - `failed`
50
-
51
- Treat `waiting` and `stable` as non-actionable until the version changes again.
@@ -1,20 +0,0 @@
1
- {
2
- "id": "signal-hygiene",
3
- "title": "Long-Running Signal Hygiene",
4
- "description": "Use for long-running resident or waiting agents that must stay idle until the orchestrator writes a new signal version, then acknowledge that change before acting.",
5
- "activation": {
6
- "when": "Attach explicitly when an agent is expected to stay resident, wait for human feedback or coordination changes, and react only when the orchestrator updates the signal state file.",
7
- "roles": [],
8
- "runtimes": [],
9
- "deployKinds": []
10
- },
11
- "termination": "Stop when the signal reaches a terminal state or the agent is no longer expected to stay resident and wait for follow-up work.",
12
- "permissions": {
13
- "network": [],
14
- "shell": [],
15
- "mcpServers": []
16
- },
17
- "trust": {
18
- "tier": "repo-owned"
19
- }
20
- }
@@ -1,77 +0,0 @@
1
- ---
2
- name: tui-design
3
- description: Reviews terminal UI and operator-surface design against world-class TUI principles for focus, trust, navigation, information architecture, and recovery. Use when designing or reviewing TUIs, operator shells, dashboards, keyboard flows, or live terminal UX.
4
- ---
5
-
6
- # TUI Design
7
-
8
- Use this skill when the work involves terminal UX, operator shells, dashboards, or live operator-facing review.
9
-
10
- ## Core stance
11
-
12
- - Treat the TUI as an operating instrument, not a styled CLI.
13
- - Optimize for observe, decide, act, verify loops rather than one-shot command execution.
14
- - Keep the surface keyboard-first, focus-driven, interruptible, and operationally honest.
15
- - Prefer stable information architecture over visual cleverness.
16
- - Treat trust, recovery, and state visibility as first-class UX requirements.
17
-
18
- ## Review priorities
19
-
20
- When reviewing or designing a TUI, check these in order:
21
-
22
- 1. **Operational honesty**
23
- - Can the operator tell what is live, stale, partial, pending, failed, or only requested?
24
- - Does the UI ever imply success before backend confirmation?
25
-
26
- 2. **Focus and keyboard flow**
27
- - Is the focused pane or widget always obvious?
28
- - Are navigation, action, command-entry, and escape keys separated cleanly?
29
- - Is there always a safe back, cancel, help, and quit path?
30
-
31
- 3. **Information architecture**
32
- - Are scope, identity, freshness, and top-level health always visible?
33
- - Does the default view answer what changed, what is broken, and what needs action?
34
- - Is detail one step away instead of dumped everywhere at once?
35
-
36
- 4. **Streaming and live-state behavior**
37
- - Do updates preserve selection and focus?
38
- - Can users pause or freeze moving views when they need to read?
39
- - Are lag, dropped updates, or replay versus live mode visible?
40
-
41
- 5. **Recovery and trust**
42
- - Are retries, resume paths, and error next steps explicit?
43
- - Are destructive or high-risk actions confirmed and auditable?
44
-
45
- ## Design rules
46
-
47
- - Keep layouts stable. Avoid reflow and selection jumps during streaming updates.
48
- - Use color semantically, never decoratively or as the only signal.
49
- - Prefer compact summaries with drill-down over dense unreadable dashboards.
50
- - Use explicit action-state ladders such as requested, accepted, running, applied, failed.
51
- - Make filters, scopes, and auth context visible at all times.
52
- - Support narrow-terminal degradation gracefully instead of forcing broken split panes.
53
- - Avoid ambiguous-width glyphs or emoji for alignment-critical UI.
54
-
55
- ## Output guidance
56
-
57
- For design review, prefer findings shaped like:
58
-
59
- - exact surface
60
- - exact failure mode
61
- - operator impact
62
- - blocking or advisory status
63
- - concrete fix direction
64
-
65
- For design proposals, prefer:
66
-
67
- - interaction model
68
- - layout model
69
- - keyboard model
70
- - trust and recovery model
71
- - drill-down model
72
-
73
- ## Reference
74
-
75
- For the full TUI design guidance distilled for this repo, read:
76
-
77
- - [references/tui-design.md](./references/tui-design.md)
@@ -1,259 +0,0 @@
1
- # TUI Design Reference
2
-
3
- This reference distills reusable design guidance for Wave's terminal UX and operator-review work.
4
-
5
- ## What a TUI is for
6
-
7
- A TUI is for live operation of a changing system:
8
-
9
- - observe
10
- - decide
11
- - act
12
- - verify
13
- - repeat
14
-
15
- That means the UX must prioritize:
16
-
17
- - stable state visibility
18
- - continuous feedback
19
- - keyboard throughput
20
- - interruptibility
21
- - recovery
22
-
23
- It should not behave like:
24
-
25
- - a one-shot CLI with colors
26
- - a browser dashboard squeezed into a terminal
27
-
28
- ## Core operating principles
29
-
30
- ### Operational honesty
31
-
32
- The TUI must make these obvious:
33
-
34
- - what it knows
35
- - how fresh that knowledge is
36
- - what it is currently doing
37
- - what is only requested versus confirmed
38
- - what is partial, stale, blocked, or degraded
39
-
40
- Never imply:
41
-
42
- - "done" when the backend only accepted a request
43
- - "live" when the data is cached or lagged
44
- - "success" when verification has not happened
45
-
46
- ### Keyboard-first interaction
47
-
48
- Good TUIs separate input into four lanes:
49
-
50
- 1. navigation
51
- 2. actions
52
- 3. command entry
53
- 4. escapes and cancellation
54
-
55
- Required behaviors:
56
-
57
- - visible focus
58
- - predictable pane switching
59
- - context-sensitive help
60
- - cancel and back semantics that always work
61
-
62
- ### Stable information architecture
63
-
64
- The screen should answer:
65
-
66
- - where am I operating?
67
- - what changed?
68
- - what is wrong?
69
- - what needs action now?
70
-
71
- Use three state layers:
72
-
73
- - global: scope, identity, connectivity, freshness
74
- - session: filters, selected object, follow mode
75
- - local: pane scroll, cursor, input buffer
76
-
77
- ### Progressive disclosure
78
-
79
- Default views should summarize:
80
-
81
- - what's broken
82
- - what changed
83
- - what is actionable
84
-
85
- Details should be one step away:
86
-
87
- - inspect
88
- - drill down
89
- - open logs
90
- - open proof
91
- - open events
92
-
93
- ### Recovery-first UX
94
-
95
- Every serious TUI needs:
96
-
97
- - retry
98
- - resume
99
- - replay or event history
100
- - clear next-step messaging on failure
101
-
102
- Errors should distinguish:
103
-
104
- - what failed
105
- - what scope it affected
106
- - whether the system is safe
107
- - what the operator can do next
108
-
109
- ## Focus and navigation heuristics
110
-
111
- ### Good focus rules
112
-
113
- - the active pane is visually obvious
114
- - the selected row is visually obvious
115
- - streaming updates never steal focus
116
- - selection stays pinned unless the operator changes it
117
-
118
- ### Good navigation rules
119
-
120
- - tab and shift-tab always get the user unstuck
121
- - direct hotkeys may exist, but there is always a universal path
122
- - search and filter are first-class
123
- - command palette or command bar is ideal for power actions
124
-
125
- ### Bad signs
126
-
127
- - mode confusion
128
- - accidental action keys
129
- - focus ambiguity
130
- - selection jumps during refresh
131
-
132
- ## Visual system guidance
133
-
134
- ### Use color semantically
135
-
136
- Recommended semantic roles:
137
-
138
- - critical
139
- - warning
140
- - success
141
- - info
142
- - muted
143
- - focus
144
- - selection
145
-
146
- Rules:
147
-
148
- - never rely on color alone
149
- - support monochrome or no-color use
150
- - avoid decorative rainbow dashboards
151
-
152
- ### Respect terminal constraints
153
-
154
- Design for:
155
-
156
- - limited width
157
- - resizing
158
- - unicode width issues
159
- - non-uniform terminal support
160
-
161
- Implications:
162
-
163
- - keep glyph choices conservative
164
- - use ASCII fallbacks where needed
165
- - degrade gracefully on small terminals
166
-
167
- ## Live-system feedback rules
168
-
169
- ### Loading and streaming
170
-
171
- The operator must be able to tell:
172
-
173
- - loading
174
- - syncing
175
- - replaying
176
- - paused
177
- - lagging
178
- - dropping updates
179
-
180
- If the system is slow:
181
-
182
- - say what is happening
183
- - show progress if possible
184
- - show completed-so-far if total work is unknown
185
- - provide interruption
186
-
187
- ### Success and failure
188
-
189
- For low-risk actions:
190
-
191
- - a small confirmation is enough
192
-
193
- For high-risk or asynchronous actions:
194
-
195
- - show a receipt
196
- - show the exact target
197
- - show request versus applied versus verified state
198
-
199
- ## Layout patterns that work
200
-
201
- ### Best default pattern
202
-
203
- For serious ops TUIs, prefer:
204
-
205
- - dashboard or navigation pane
206
- - list or queue pane
207
- - inspector or detail pane
208
-
209
- This supports:
210
-
211
- - fast scanning
212
- - stable orientation
213
- - low-friction drill-down
214
-
215
- ### Good drill-down flow
216
-
217
- The path should be predictable:
218
-
219
- - summary
220
- - selected entity
221
- - details
222
- - logs, proof, events, or raw view
223
-
224
- ### Narrow terminal fallback
225
-
226
- When width collapses:
227
-
228
- - reduce columns
229
- - stack panels
230
- - keep the same semantics
231
- - prefer honest condensed output over broken split panes
232
-
233
- ## Trust checklist for operator surfaces
234
-
235
- Before approving a TUI or operator UX, ask:
236
-
237
- - Is scope always visible?
238
- - Is freshness always visible?
239
- - Are action states honest?
240
- - Are filters and selection visible?
241
- - Can the user recover from errors?
242
- - Can the user cancel?
243
- - Can the user tell replay from live?
244
- - Can the user tell pending from complete?
245
- - Can the user audit what happened?
246
-
247
- ## Anti-patterns
248
-
249
- Reject designs that:
250
-
251
- - flicker or constantly reflow
252
- - hide scope or auth context
253
- - overload color
254
- - force memorization without help
255
- - provide no cancel path
256
- - show fake success
257
- - use unstable alignment-critical glyphs
258
- - stream in ways that steal focus
259
- - hide blockers behind decorative dashboards
@@ -1,36 +0,0 @@
1
- {
2
- "id": "tui-design",
3
- "title": "TUI Design Review",
4
- "description": "Reviews terminal UI and operator-surface design against world-class TUI principles for focus, trust, navigation, information architecture, and recovery. Use when designing or reviewing TUIs, operator shells, dashboards, keyboard flows, or live terminal UX.",
5
- "activation": {
6
- "when": "Attach when the agent is designing or reviewing a TUI, operator shell, dashboard, keyboard interaction model, live status surface, or terminal-native information architecture.",
7
- "roles": [
8
- "design"
9
- ],
10
- "runtimes": [],
11
- "deployKinds": []
12
- },
13
- "termination": "Stop when the design work clearly states whether the TUI is operationally honest, keyboard-first, focus-safe, and aligned with the repo's terminal UX expectations.",
14
- "permissions": {
15
- "network": [],
16
- "shell": [],
17
- "mcpServers": []
18
- },
19
- "trust": {
20
- "tier": "repo-owned"
21
- },
22
- "evalCases": [
23
- {
24
- "id": "tui-design-review",
25
- "role": "design",
26
- "runtime": "codex",
27
- "expectActive": true
28
- },
29
- {
30
- "id": "implementation-review",
31
- "role": "implementation",
32
- "runtime": "codex",
33
- "expectActive": false
34
- }
35
- ]
36
- }
@@ -1,141 +0,0 @@
1
- # Wave Core
2
-
3
- <!-- CUSTOMIZE: Add project-specific coordination channels, artifact locations, or naming conventions below. -->
4
-
5
- ## Core Rules
6
-
7
- - Re-read the compiled shared summary, inbox, and board projection before major decisions and before final output.
8
- - Treat those summaries and projections as convenience views over canonical state, not as the only closure authority.
9
- - Treat file ownership, exit contracts, and structured markers as hard requirements.
10
- - Post coordination records for meaningful progress, blockers, decisions, and handoffs.
11
- - Make gaps explicit with exact files, exact fields, and exact follow-up owners.
12
- - Do not infer closure from intent alone. Closure requires proof artifacts and consistent shared state.
13
- - Silence is not evidence. If a deliverable is not mentioned in landed artifacts, it is not done.
14
- - When two sources conflict, prefer the one backed by landed code or durable proof over the one backed by prose.
15
-
16
- ## Coordination Protocol
17
-
18
- 1. Read the shared summary and your inbox at the start of every major step. Summaries and inboxes may refresh during execution, so re-read before major decisions.
19
- 2. Post a coordination record when any of these occur:
20
- - meaningful progress on an exit contract deliverable
21
- - a blocker is discovered or resolved
22
- - a decision changes scope, ownership, or interface
23
- - a handoff to another agent is needed
24
- - a helper assignment is opened or resolved
25
- - a clarification is routed or answered
26
- 3. Each coordination record must include: agent id, timestamp context, topic, and actionable detail.
27
- 4. Do not batch coordination. Post records as events occur so downstream agents see them promptly.
28
- 5. When a record references another agent, name that agent explicitly.
29
- 6. Coordination records are append-only. Do not edit or delete previous records; post corrections as new records.
30
- 7. When you receive an inbox message that requires action, acknowledge it with a coordination record before proceeding. Unacknowledged requests become overdue and may be rerouted.
31
-
32
- ## Coordination State
33
-
34
- The canonical authority set for a wave is:
35
-
36
- - wave definitions under `docs/plans/waves/`
37
- - the coordination JSONL log under `.tmp/<lane>-wave-launcher/coordination/`
38
- - the control-plane event log under `.tmp/<lane>-wave-launcher/control-plane/`
39
- - immutable attempt-scoped result artifacts under `.tmp/<lane>-wave-launcher/results/`
40
-
41
- The markdown board, shared summary, inboxes, ledgers, proof registries, retry overrides, and dashboards are projections over that state.
42
-
43
- Operator tasks, rerun requests, proof bundles, attempt lifecycle, contradictions, facts, and human-input workflow state are tracked in the control-plane event log. Proof registries and retry overrides under `proof/` and `control/` are projections from this log.
44
-
45
- Operators interact through `wave control`:
46
- - `wave control status` — why the wave is blocked or retrying.
47
- - `wave control task` — create, list, and act on coordination tasks.
48
- - `wave control rerun` — targeted retry intent.
49
- - `wave control proof` — authoritative proof bundle lifecycle.
50
-
51
- Legacy `wave coord`, `wave retry`, and `wave proof` remain available as compatibility surfaces.
52
-
53
- ## Ownership & Boundaries
54
-
55
- - Only modify files you own. File ownership is declared in the wave definition under each agent.
56
- - If you need a change in a file you do not own, open a follow-up request naming the owning agent, the exact file, and the exact change needed.
57
- - Shared-plan docs (current-state.md, component matrix, roadmap) are owned by the documentation steward, not implementation agents.
58
- - Implementation-specific docs (inline comments, subsystem READMEs) stay with the implementation owner.
59
- - When ownership is ambiguous, post a coordination record requesting clarification before editing.
60
- - Helper assignments create temporary cross-boundary access. They remain blocking until the linked follow-up resolves.
61
- - Cross-lane dependencies require explicit dependency tickets. Do not assume another lane's state without a resolved ticket.
62
-
63
- ## Proof Requirements
64
-
65
- - Every exit contract deliverable must have a corresponding proof artifact: a passing test, a generated file, a durable summary, or an explicit structured marker.
66
- - Generic claims ("tests pass", "works correctly") are not proof. Name the exact test file, command, or artifact.
67
- - Component promotions require evidence that the component actually reached the declared level, not just that adjacent code landed.
68
- - Runtime-facing proof must be real evidence (logs, health checks, build output), not future-work notes.
69
- - Proof must be durable. Transient output (terminal scrollback, ephemeral logs) is not proof unless captured into a file.
70
- - When proof cannot be produced within the wave, record the gap explicitly with the reason and the follow-up owner.
71
- - When the wave declares `### Proof artifacts`, those machine-visible local artifacts are required for closure in addition to deliverables and structured markers.
72
- - Operators may register authoritative proof bundles via `wave control proof register`. Registered proof has lifecycle state: `active`, `superseded`, or `revoked`. Only active bundles satisfy closure. Do not rely on proof that has been revoked or superseded.
73
-
74
- ## Closure Checklist
75
-
76
- A wave is closable only when all nine conditions are satisfied:
77
-
78
- 1. **Exit contracts pass** -- every agent's declared exit contract deliverables are present and backed by proof artifacts.
79
- 2. **Deliverables exist within ownership** -- each deliverable lives in files owned by the agent that produced it.
80
- 3. **Component proof/promotions pass** -- promoted components reached their declared target level with evidence.
81
- 4. **Helper assignments resolved** -- every helper assignment posted during the wave has a linked resolution.
82
- 5. **Dependency tickets resolved** -- all inbound cross-lane dependency tickets are resolved or explicitly deferred.
83
- 6. **Clarification follow-ups resolved** -- every routed clarification chain has a linked follow-up that is closed.
84
- 7. **cont-EVAL satisfies targets** -- if the wave includes cont-EVAL, the eval marker shows `satisfied` with matching target and benchmark ids.
85
- 8. **Integration recommends closure** -- the integration result is `ready-for-doc-closure` and is not contradicted by later evidence.
86
- 9. **Documentation and cont-QA pass** -- documentation closure is `closed` or `no-change`, and the cont-QA verdict is `PASS` with a matching gate result.
87
-
88
- If any condition is not met, the wave remains open. Do not approximate closure.
89
-
90
- Closure runs in staged order:
91
- 1. Implementation and proof (all implementation agents).
92
- 2. Optional security review -- must report `clear` or `concerns` before integration.
93
- 3. cont-EVAL (if present) -- must report `satisfied` before integration runs.
94
- 4. Integration -- must report `ready-for-doc-closure` before documentation and cont-QA run.
95
- 5. Documentation -- must report `closed` or `no-change`.
96
- 6. cont-QA -- final verdict. Only PASS allows the wave to close.
97
-
98
- Do not skip stages. Each stage depends on the prior stage completing.
99
-
100
- An active rerun request blocks closure until consumed. If the operator has filed a rerun via `wave control rerun request`, the retry engine applies it on the next retry and clears it afterward.
101
-
102
- ## Structured Markers Reference
103
-
104
- Emit markers exactly as shown. Parsers depend on the format.
105
-
106
- | Marker | Format |
107
- |---|---|
108
- | `[wave-gate]` | `[wave-gate] architecture=<pass\|concerns\|blocked> integration=<pass\|concerns\|blocked> durability=<pass\|concerns\|blocked> live=<pass\|concerns\|blocked> docs=<pass\|concerns\|blocked> detail=<text>` |
109
- | `[wave-eval]` | `[wave-eval] state=<satisfied\|needs-more-work\|blocked> targets=<n> benchmarks=<n> regressions=<n> target_ids=<csv> benchmark_ids=<csv> detail=<text>` |
110
- | `[wave-integration]` | `[wave-integration] state=<ready-for-doc-closure\|needs-more-work> claims=<n> conflicts=<n> blockers=<n> detail=<text>` |
111
- | `[wave-doc-closure]` | `[wave-doc-closure] state=<closed\|no-change\|delta> paths=<comma-separated-paths> detail=<text>` |
112
- | `[infra-status]` | `[infra-status] kind=<conformance\|role-drift\|dependency\|identity\|admission\|action> target=<surface> state=<checking\|setup-required\|setup-in-progress\|conformant\|drift\|blocked\|failed\|action-required\|action-approved\|action-complete> detail=<text>` |
113
- | `[deploy-status]` | `[deploy-status] state=<deploying\|healthy\|failed\|rolled-back> service=<name> detail=<text>` |
114
-
115
- - Every marker must appear on a single line.
116
- - The `detail` field is free text but should be concise (under 120 characters).
117
- - Only the role that owns the marker type should emit it. Do not emit markers for other roles.
118
-
119
- Marker ownership:
120
-
121
- | Marker | Emitted by |
122
- |---|---|
123
- | `[wave-gate]` | cont-QA role |
124
- | `[wave-eval]` | cont-EVAL role |
125
- | `[wave-integration]` | Integration role |
126
- | `[wave-doc-closure]` | Documentation role |
127
- | `[infra-status]` | Infra role |
128
- | `[deploy-status]` | Deploy role |
129
-
130
- When you encounter a marker in the coordination log or a role report, treat it as a role-owned closure output and compatibility surface. If it conflicts with landed code, canonical state, or typed result artifacts, escalate the contradiction instead of treating the marker text as unchallengeable authority.
131
-
132
- <!-- CUSTOMIZE: Add project-specific marker types or extend existing formats here. -->
133
-
134
- ## Customization
135
-
136
- <!-- CUSTOMIZE: Override or extend any section above. Common additions:
137
- - Project-specific coordination record format
138
- - Additional closure conditions beyond the nine listed
139
- - Custom marker types for project-specific workflows
140
- - Ownership rules for monorepo sub-packages
141
- -->
@@ -1,70 +0,0 @@
1
- # Structured Marker Syntax Reference
2
-
3
- This reference documents the exact format for all structured markers used in wave coordination.
4
-
5
- ## wave-gate (cont-QA closure)
6
- Emitted by: cont-QA agent (A0)
7
- Format:
8
- `[wave-gate] architecture=<pass|concerns|blocked> integration=<pass|concerns|blocked> durability=<pass|concerns|blocked> live=<pass|concerns|blocked> docs=<pass|concerns|blocked> detail=<short-note>`
9
-
10
- Must be accompanied by a verdict line:
11
- `Verdict: PASS` or `Verdict: CONCERNS` or `Verdict: BLOCKED`
12
-
13
- Example:
14
- `[wave-gate] architecture=pass integration=pass durability=pass live=pass docs=pass detail=all-exit-contracts-met`
15
- `Verdict: PASS`
16
-
17
- ## wave-eval (cont-EVAL closure)
18
- Emitted by: cont-EVAL agent (E0)
19
- Format:
20
- `[wave-eval] state=<satisfied|needs-more-work|blocked> targets=<n> benchmarks=<n> regressions=<n> target_ids=<comma-separated-ids> benchmark_ids=<comma-separated-ids> detail=<short-note>`
21
-
22
- Example:
23
- `[wave-eval] state=satisfied targets=2 benchmarks=2 regressions=0 target_ids=prompt-quality,response-accuracy benchmark_ids=bench-01,bench-02 detail=all-targets-within-threshold`
24
-
25
- ## wave-integration (integration closure)
26
- Emitted by: Integration steward (A8)
27
- Format:
28
- `[wave-integration] state=<ready-for-doc-closure|needs-more-work> claims=<n> conflicts=<n> blockers=<n> detail=<short-note>`
29
-
30
- Example:
31
- `[wave-integration] state=ready-for-doc-closure claims=0 conflicts=0 blockers=0 detail=all-agents-coherent-no-contradictions`
32
-
33
- ## wave-doc-closure (documentation closure)
34
- Emitted by: Documentation steward (A9)
35
- Format:
36
- `[wave-doc-closure] state=<closed|no-change|delta> paths=<comma-separated-file-list> detail=<short-note>`
37
-
38
- Example:
39
- `[wave-doc-closure] state=closed paths=docs/plans/current-state.md,docs/plans/component-cutover-matrix.md detail=status-and-ownership-updated`
40
-
41
- ## wave-security (security review)
42
- Emitted by: Security reviewer
43
- Format:
44
- `[wave-security] state=<clear|concerns|blocked> findings=<n> approvals=<n> detail=<short-note>`
45
-
46
- Example:
47
- `[wave-security] state=clear findings=0 approvals=0 detail=no-blocking-security-findings`
48
-
49
- ## infra-status (infrastructure verification)
50
- Emitted by: Infra agent
51
- Format:
52
- `[infra-status] kind=<conformance|role-drift|dependency|identity|admission|action> target=<surface> state=<checking|setup-required|setup-in-progress|conformant|drift|blocked|failed|action-required|action-approved|action-complete> detail=<short-note>`
53
-
54
- Example:
55
- `[infra-status] kind=dependency target=node-22 state=conformant detail=node-v22.15.0-confirmed`
56
-
57
- ## deploy-status (deployment verification)
58
- Emitted by: Deploy agent
59
- Format:
60
- `[deploy-status] state=<deploying|healthy|failed|rolled-back> service=<name> detail=<short-note>`
61
-
62
- Example:
63
- `[deploy-status] state=healthy service=api-server detail=health-endpoint-200-latency-under-50ms`
64
-
65
- ## Rules
66
- - Markers must appear on a single line, not wrapped across lines.
67
- - Field values must not contain spaces; use hyphens for compound values.
68
- - Markers are machine-parsed; do not add extra fields or change field order.
69
- - Each closure role emits exactly one final marker per wave attempt.
70
- - Markers in agent output are role-owned compatibility and review surfaces. Live gate evaluation should prefer canonical state and typed result artifacts when they are available.
@@ -1,35 +0,0 @@
1
- {
2
- "id": "wave-core",
3
- "title": "Wave Core",
4
- "description": "Ensures every agent follows coordination protocol, respects ownership boundaries, produces durable proof, and meets closure requirements before claiming done.",
5
- "activation": {
6
- "when": "Attach to every agent to enforce Wave coordination, proof, and closure protocol.",
7
- "roles": [],
8
- "runtimes": [],
9
- "deployKinds": []
10
- },
11
- "termination": "Stop when ownership boundaries, proof obligations, and required Wave markers are satisfied or explicitly handed off.",
12
- "permissions": {
13
- "network": [],
14
- "shell": [],
15
- "mcpServers": []
16
- },
17
- "trust": {
18
- "tier": "repo-owned"
19
- },
20
- "evalCases": [
21
- {
22
- "id": "implementation-codex",
23
- "role": "implementation",
24
- "runtime": "codex",
25
- "expectActive": true
26
- },
27
- {
28
- "id": "documentation-opencode",
29
- "role": "documentation",
30
- "runtime": "opencode",
31
- "deployKind": "railway-cli",
32
- "expectActive": true
33
- }
34
- ]
35
- }