@beyondwork/docx-react-component 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (690) hide show
  1. package/.codex/config.toml +5 -0
  2. package/.corepack/v1/pnpm/10.30.3/.corepack +1 -0
  3. package/.corepack/v1/pnpm/10.30.3/LICENSE +22 -0
  4. package/.corepack/v1/pnpm/10.30.3/README.md +240 -0
  5. package/.corepack/v1/pnpm/10.30.3/dist/node-gyp-bin/node-gyp +6 -0
  6. package/.corepack/v1/pnpm/10.30.3/dist/node-gyp-bin/node-gyp.cmd +5 -0
  7. package/.corepack/v1/pnpm/10.30.3/dist/pnpm.cjs +195400 -0
  8. package/.corepack/v1/pnpm/10.30.3/dist/pnpmrc +2 -0
  9. package/.corepack/v1/pnpm/10.30.3/dist/reflink.darwin-arm64-2HJ4WGO6.node +0 -0
  10. package/.corepack/v1/pnpm/10.30.3/dist/reflink.darwin-x64-3G3H6IW4.node +0 -0
  11. package/.corepack/v1/pnpm/10.30.3/dist/reflink.win32-arm64-msvc-Q6BARPPB.node +0 -0
  12. package/.corepack/v1/pnpm/10.30.3/dist/reflink.win32-x64-msvc-J2TZHRQI.node +0 -0
  13. package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.bash +31 -0
  14. package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.fish +22 -0
  15. package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.ps1 +193 -0
  16. package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.zsh +27 -0
  17. package/.corepack/v1/pnpm/10.30.3/dist/vendor/fastlist-0.3.0-x64.exe +0 -0
  18. package/.corepack/v1/pnpm/10.30.3/dist/vendor/fastlist-0.3.0-x86.exe +0 -0
  19. package/.corepack/v1/pnpm/10.30.3/dist/worker.js +10119 -0
  20. package/.corepack/v1/pnpm/10.30.3/package.json +192 -0
  21. package/.cursor/mcp.json +7 -0
  22. package/.github/workflows/ci.yml +35 -0
  23. package/.mcp.json +7 -0
  24. package/.openclaw/workspace-state.json +4 -0
  25. package/.pnpmrc.json +1 -0
  26. package/.wave-launch.sh +7 -0
  27. package/.workspace-marker +1 -0
  28. package/AGENTS.md +78 -0
  29. package/CHANGELOG.md +177 -0
  30. package/DESIGN.md +929 -0
  31. package/HEARTBEAT.md +7 -0
  32. package/IDENTITY.md +23 -0
  33. package/LICENSE.md +31 -0
  34. package/README.md +180 -0
  35. package/SOUL.md +36 -0
  36. package/TOOLS.md +40 -0
  37. package/USER.md +17 -0
  38. package/docs/README.md +107 -0
  39. package/docs/agents/wave-cont-eval-role.md +36 -0
  40. package/docs/agents/wave-cont-qa-role.md +52 -0
  41. package/docs/agents/wave-deploy-verifier-role.md +34 -0
  42. package/docs/agents/wave-design-role.md +47 -0
  43. package/docs/agents/wave-documentation-role.md +34 -0
  44. package/docs/agents/wave-infra-role.md +34 -0
  45. package/docs/agents/wave-integration-role.md +37 -0
  46. package/docs/agents/wave-launcher-role.md +41 -0
  47. package/docs/agents/wave-orchestrator-role.md +52 -0
  48. package/docs/agents/wave-planner-role.md +39 -0
  49. package/docs/agents/wave-security-role.md +40 -0
  50. package/docs/architecture/docx/README.md +10 -0
  51. package/docs/architecture/future/README.md +8 -0
  52. package/docs/architecture/ooxml-upgrade-analysis.md +134 -0
  53. package/docs/architecture/platform/shared-openxml-editor-platform.md +153 -0
  54. package/docs/architecture/xlsx/canonical-workbook-model-and-commands.md +187 -0
  55. package/docs/architecture/xlsx/spreadsheet-editor-frontend-architecture.md +150 -0
  56. package/docs/comment-redline-overview.md +350 -0
  57. package/docs/concepts/context7-vs-skills.md +118 -0
  58. package/docs/concepts/operating-modes.md +91 -0
  59. package/docs/concepts/runtime-agnostic-orchestration.md +111 -0
  60. package/docs/concepts/what-is-a-wave.md +217 -0
  61. package/docs/context7/bundles.json +222 -0
  62. package/docs/context7/planner-agent/README.md +28 -0
  63. package/docs/context7/planner-agent/manifest.json +83 -0
  64. package/docs/context7/planner-agent/papers/cooperbench-why-coding-agents-cannot-be-your-teammates-yet.md +3283 -0
  65. package/docs/context7/planner-agent/papers/dova-deliberation-first-multi-agent-orchestration-for-autonomous-research-automation.md +1699 -0
  66. package/docs/context7/planner-agent/papers/dpbench-large-language-models-struggle-with-simultaneous-coordination.md +2251 -0
  67. package/docs/context7/planner-agent/papers/incremental-planning-to-control-a-blackboard-based-problem-solver.md +1729 -0
  68. package/docs/context7/planner-agent/papers/silo-bench-a-scalable-environment-for-evaluating-distributed-coordination-in-multi-agent-llm-systems.md +3747 -0
  69. package/docs/context7/planner-agent/papers/todoevolve-learning-to-architect-agent-planning-systems.md +1675 -0
  70. package/docs/context7/planner-agent/papers/verified-multi-agent-orchestration-a-plan-execute-verify-replan-framework-for-complex-query-resolution.md +1173 -0
  71. package/docs/context7/planner-agent/papers/why-do-multi-agent-llm-systems-fail.md +5211 -0
  72. package/docs/context7/planner-agent/topics/planning-and-orchestration.md +24 -0
  73. package/docs/evals/arm-templates/README.md +13 -0
  74. package/docs/evals/arm-templates/full-wave.json +15 -0
  75. package/docs/evals/arm-templates/single-agent.json +15 -0
  76. package/docs/evals/benchmark-catalog.json +670 -0
  77. package/docs/evals/cases/README.md +47 -0
  78. package/docs/evals/cases/wave-blackboard-inbox-targeting.json +73 -0
  79. package/docs/evals/cases/wave-contradiction-conflict.json +104 -0
  80. package/docs/evals/cases/wave-expert-routing-preservation.json +69 -0
  81. package/docs/evals/cases/wave-hidden-profile-private-evidence.json +81 -0
  82. package/docs/evals/cases/wave-premature-closure-guard.json +71 -0
  83. package/docs/evals/cases/wave-silo-cross-agent-state.json +77 -0
  84. package/docs/evals/cases/wave-simultaneous-lockstep.json +92 -0
  85. package/docs/evals/external-benchmarks.json +85 -0
  86. package/docs/evals/external-command-config.sample.json +9 -0
  87. package/docs/evals/external-command-config.swe-bench-pro.json +8 -0
  88. package/docs/evals/pilots/README.md +47 -0
  89. package/docs/evals/pilots/swe-bench-pro-public-full-wave-review-10.json +64 -0
  90. package/docs/evals/pilots/swe-bench-pro-public-pilot.json +111 -0
  91. package/docs/evals/wave-benchmark-program.md +302 -0
  92. package/docs/guides/planner.md +220 -0
  93. package/docs/guides/recommendations-0.8.9.md +133 -0
  94. package/docs/guides/signal-wrappers.md +165 -0
  95. package/docs/guides/terminal-surfaces.md +96 -0
  96. package/docs/image copy.png +0 -0
  97. package/docs/image.png +0 -0
  98. package/docs/images/image.png +0 -0
  99. package/docs/legal-feedback-architecture.md +498 -0
  100. package/docs/plans/component-cutover-matrix.json +1072 -0
  101. package/docs/plans/component-cutover-matrix.md +307 -0
  102. package/docs/plans/context7-wave-orchestrator.md +155 -0
  103. package/docs/plans/current-state.md +198 -0
  104. package/docs/plans/docx/README.md +9 -0
  105. package/docs/plans/examples/wave-benchmark-improvement.md +108 -0
  106. package/docs/plans/examples/wave-example-live-proof.md +435 -0
  107. package/docs/plans/master-plan.md +224 -0
  108. package/docs/plans/migration.md +538 -0
  109. package/docs/plans/operations/README.md +7 -0
  110. package/docs/plans/operations/wave-10-word-certification.md +87 -0
  111. package/docs/plans/operations/wave-8-railway-staging.md +153 -0
  112. package/docs/plans/operations/wave-9-manual-certification.md +73 -0
  113. package/docs/plans/platform/README.md +9 -0
  114. package/docs/plans/reference/legal-checklist-coverage.md +258 -0
  115. package/docs/plans/wave-orchestrator.md +423 -0
  116. package/docs/plans/waves/README.md +75 -0
  117. package/docs/plans/waves/completed/wave-0.md +195 -0
  118. package/docs/plans/waves/completed/wave-1.md +379 -0
  119. package/docs/plans/waves/completed/wave-10.md +670 -0
  120. package/docs/plans/waves/completed/wave-11.md +335 -0
  121. package/docs/plans/waves/completed/wave-12.md +417 -0
  122. package/docs/plans/waves/completed/wave-13.md +316 -0
  123. package/docs/plans/waves/completed/wave-14.md +319 -0
  124. package/docs/plans/waves/completed/wave-15.md +321 -0
  125. package/docs/plans/waves/completed/wave-16.md +316 -0
  126. package/docs/plans/waves/completed/wave-17.md +331 -0
  127. package/docs/plans/waves/completed/wave-18.md +328 -0
  128. package/docs/plans/waves/completed/wave-2.md +438 -0
  129. package/docs/plans/waves/completed/wave-3.md +435 -0
  130. package/docs/plans/waves/completed/wave-4.md +430 -0
  131. package/docs/plans/waves/completed/wave-5.md +430 -0
  132. package/docs/plans/waves/completed/wave-6.md +430 -0
  133. package/docs/plans/waves/completed/wave-7.md +526 -0
  134. package/docs/plans/waves/completed/wave-8.md +596 -0
  135. package/docs/plans/waves/completed/wave-9.md +552 -0
  136. package/docs/plans/waves/deferred/README.md +14 -0
  137. package/docs/plans/waves/deferred/encrypted-intake-contracts.md +282 -0
  138. package/docs/plans/waves/deferred/legal-feedback-wave-expansion.md +308 -0
  139. package/docs/plans/waves/deferred/wave-encrypted-intake.md +451 -0
  140. package/docs/plans/waves/design/README.md +5 -0
  141. package/docs/plans/waves/design/wave-1-a1.md +309 -0
  142. package/docs/plans/waves/reviews/README.md +5 -0
  143. package/docs/plans/waves/reviews/wave-0-cont-qa.md +151 -0
  144. package/docs/plans/waves/reviews/wave-1-cont-qa.md +46 -0
  145. package/docs/plans/waves/reviews/wave-10-accessibility-and-design.md +51 -0
  146. package/docs/plans/waves/reviews/wave-10-cont-qa.md +24 -0
  147. package/docs/plans/waves/reviews/wave-10-dashboard-proof.md +46 -0
  148. package/docs/plans/waves/reviews/wave-10-performance-signoff.md +55 -0
  149. package/docs/plans/waves/reviews/wave-10-regression-proof.md +23 -0
  150. package/docs/plans/waves/reviews/wave-10-release-audit.md +31 -0
  151. package/docs/plans/waves/reviews/wave-10-service-proof.md +83 -0
  152. package/docs/plans/waves/reviews/wave-10-word-certification.md +31 -0
  153. package/docs/plans/waves/reviews/wave-18-ai-contract-closure.md +277 -0
  154. package/docs/plans/waves/reviews/wave-18-cont-qa.md +255 -0
  155. package/docs/plans/waves/reviews/wave-18-parity-proof.md +271 -0
  156. package/docs/plans/waves/reviews/wave-19-cont-qa.md +59 -0
  157. package/docs/plans/waves/reviews/wave-2-cont-qa.md +72 -0
  158. package/docs/plans/waves/reviews/wave-20-cont-qa.md +60 -0
  159. package/docs/plans/waves/reviews/wave-25-cont-qa.md +48 -0
  160. package/docs/plans/waves/reviews/wave-28-cont-qa.md +46 -0
  161. package/docs/plans/waves/reviews/wave-29-cont-qa.md +53 -0
  162. package/docs/plans/waves/reviews/wave-3-cont-qa.md +53 -0
  163. package/docs/plans/waves/reviews/wave-3-core-proof.md +77 -0
  164. package/docs/plans/waves/reviews/wave-3-validator-proof.md +73 -0
  165. package/docs/plans/waves/reviews/wave-32-cont-qa.md +43 -0
  166. package/docs/plans/waves/reviews/wave-33-cont-qa.md +526 -0
  167. package/docs/plans/waves/reviews/wave-34-cont-qa.md +100 -0
  168. package/docs/plans/waves/reviews/wave-35-cont-qa.md +145 -0
  169. package/docs/plans/waves/reviews/wave-4-cont-qa.md +47 -0
  170. package/docs/plans/waves/reviews/wave-4-structure-proof.md +69 -0
  171. package/docs/plans/waves/reviews/wave-5-comment-proof.md +158 -0
  172. package/docs/plans/waves/reviews/wave-5-cont-qa.md +68 -0
  173. package/docs/plans/waves/reviews/wave-6-cont-qa.md +416 -0
  174. package/docs/plans/waves/reviews/wave-6-redline-proof.md +130 -0
  175. package/docs/plans/waves/reviews/wave-7-cont-qa.md +82 -0
  176. package/docs/plans/waves/reviews/wave-7-ooxml-compliance.md +85 -0
  177. package/docs/plans/waves/reviews/wave-7-preservation-proof.md +119 -0
  178. package/docs/plans/waves/reviews/wave-7-trust-ux.md +87 -0
  179. package/docs/plans/waves/reviews/wave-8-accessibility-and-design.md +128 -0
  180. package/docs/plans/waves/reviews/wave-8-cont-qa.md +92 -0
  181. package/docs/plans/waves/reviews/wave-8-live-proof.md +140 -0
  182. package/docs/plans/waves/reviews/wave-8-security.md +47 -0
  183. package/docs/plans/waves/reviews/wave-9-editor-embedding.md +39 -0
  184. package/docs/plans/waves/reviews/wave-9-fixture-runner.md +56 -0
  185. package/docs/plans/waves/reviews/wave-9-live-proof.md +105 -0
  186. package/docs/plans/waves/reviews/wave-9-usability-and-performance.md +152 -0
  187. package/docs/plans/waves/specs/README.md +5 -0
  188. package/docs/plans/waves/specs/wave-1-component-boundaries.md +322 -0
  189. package/docs/plans/waves/specs/wave-1-ooxml-contracts.md +323 -0
  190. package/docs/plans/waves/specs/wave-1-review-and-ui-contracts.md +339 -0
  191. package/docs/plans/waves/specs/wave-1-runtime-contracts.md +509 -0
  192. package/docs/plans/waves/wave-19.md +341 -0
  193. package/docs/plans/waves/wave-20.md +308 -0
  194. package/docs/plans/waves/wave-21.md +289 -0
  195. package/docs/plans/waves/wave-22.md +221 -0
  196. package/docs/plans/waves/wave-23.md +295 -0
  197. package/docs/plans/waves/wave-24.md +286 -0
  198. package/docs/plans/waves/wave-25.md +313 -0
  199. package/docs/plans/waves/wave-26.md +300 -0
  200. package/docs/plans/waves/wave-27.md +299 -0
  201. package/docs/plans/waves/wave-28.md +368 -0
  202. package/docs/plans/waves/wave-29.md +303 -0
  203. package/docs/plans/waves/wave-30.md +307 -0
  204. package/docs/plans/waves/wave-31.md +231 -0
  205. package/docs/plans/waves/wave-32.md +152 -0
  206. package/docs/plans/waves/wave-33.md +147 -0
  207. package/docs/plans/waves/wave-34.md +148 -0
  208. package/docs/plans/waves/wave-35.md +141 -0
  209. package/docs/plans/waves/wave-36.md +146 -0
  210. package/docs/plans/xlsx/README.md +14 -0
  211. package/docs/plans/xlsx/xlsx-fixture-corpus-and-certification-plan.md +126 -0
  212. package/docs/reference/cli-reference.md +600 -0
  213. package/docs/reference/coordination-and-closure.md +487 -0
  214. package/docs/reference/deep-research-report (15).md +25 -0
  215. package/docs/reference/docx/README.md +10 -0
  216. package/docs/reference/legal-checklist.md +445 -0
  217. package/docs/reference/live-proof-waves.md +199 -0
  218. package/docs/reference/ooxml-compliance.md +129 -0
  219. package/docs/reference/ooxml-feature-parity-matrix.md +172 -0
  220. package/docs/reference/platform/shared-ooxml-platform-guidance.md +77 -0
  221. package/docs/reference/prototype-agent-prompt-legal-fidelity.md +155 -0
  222. package/docs/reference/public-api.md +456 -0
  223. package/docs/reference/repository-guidance.md +58 -0
  224. package/docs/reference/runtime-config/README.md +182 -0
  225. package/docs/reference/runtime-config/claude.md +110 -0
  226. package/docs/reference/runtime-config/codex.md +82 -0
  227. package/docs/reference/runtime-config/opencode.md +93 -0
  228. package/docs/reference/sample-waves.md +105 -0
  229. package/docs/reference/skills.md +237 -0
  230. package/docs/reference/templates/AGENTS.md +78 -0
  231. package/docs/reference/templates/HEARTBEAT.md +7 -0
  232. package/docs/reference/templates/IDENTITY.md +23 -0
  233. package/docs/reference/templates/SOUL.md +36 -0
  234. package/docs/reference/templates/TOOLS.md +40 -0
  235. package/docs/reference/templates/USER.md +17 -0
  236. package/docs/reference/wave-control.md +184 -0
  237. package/docs/reference/wave-planning-lessons.md +167 -0
  238. package/docs/reference/word-review-editor-frontend-architecture.md +479 -0
  239. package/docs/reference/word-review-editor-ux-guide.md +253 -0
  240. package/docs/reference/xlsx/xlsx-ooxml-compliance.md +137 -0
  241. package/docs/research/agent-context-sources.md +178 -0
  242. package/docs/research/coordination-failure-review.md +290 -0
  243. package/docs/research/docx-react-component/Canonical Document Schema Specification for a React-based Word-compatible Editor.md +2317 -0
  244. package/docs/research/docx-react-component/Feature Compatibility Matrix for a React Word Compatible Legal Editor v1.md +219 -0
  245. package/docs/research/docx-react-component/React Component Architecture and Front-End Structure Specification for a Word-Compatible Legal Review Editor.md +1112 -0
  246. package/docs/research/docx-react-component/document_compatibility_and_testing_spec.md +751 -0
  247. package/docs/research/xlsx/raw/README.md +13 -0
  248. package/docs/roadmap.md +174 -0
  249. package/docs/superpowers/plans/2026-03-28-harness-control-bar.md +677 -0
  250. package/docs/superpowers/specs/2026-03-28-harness-control-bar-design.md +274 -0
  251. package/docs/xlsx-react/README.md +38 -0
  252. package/docs/xlsx-react/agent-llm-interaction-layer-docx-xlsx.md +621 -0
  253. package/docs/xlsx-react/canonical-workbook-model-and-commands.md +948 -0
  254. package/docs/xlsx-react/shared-openxml-editor-platform-docx-xlsx.md +228 -0
  255. package/docs/xlsx-react/spreadsheet-editor-component-architecture.md +809 -0
  256. package/docs/xlsx-react/spreadsheet-editor-frontend-architecture.md +537 -0
  257. package/docs/xlsx-react/spreadsheet-editor-ux-guide.md +520 -0
  258. package/docs/xlsx-react/xlsx-editor-research-pack.md +871 -0
  259. package/docs/xlsx-react/xlsx-fixture-corpus-and-certification-plan.md +436 -0
  260. package/docs/xlsx-react/xlsx-ooxml-compliance.md +320 -0
  261. package/examples/README.md +16 -0
  262. package/memory/MEMORY.md +24 -0
  263. package/package.json +63 -0
  264. package/pnpm-workspace.yaml +4 -0
  265. package/scripts/check-no-authored-js.sh +13 -0
  266. package/scripts/context7-api-check.sh +65 -0
  267. package/scripts/context7-export-env.sh +42 -0
  268. package/scripts/run-context7-mcp.sh +8 -0
  269. package/scripts/run-workspace-tests.sh +15 -0
  270. package/scripts/start-wave-10-local.sh +189 -0
  271. package/scripts/wave-agent-attach.sh +47 -0
  272. package/scripts/wave-auto-answer.sh +118 -0
  273. package/scripts/wave-dashboard-attach.sh +13 -0
  274. package/scripts/wave-launch.sh +273 -0
  275. package/scripts/wave-overnight-supervisor.sh +145 -0
  276. package/scripts/wave-status.sh +379 -0
  277. package/scripts/wave-watch.sh +231 -0
  278. package/services/README.md +17 -0
  279. package/services/openxml-validator/Dockerfile +29 -0
  280. package/services/openxml-validator/OpenXmlValidator.Api.csproj +12 -0
  281. package/services/openxml-validator/Program.cs +436 -0
  282. package/services/openxml-validator/README.md +152 -0
  283. package/services/openxml-validator/railway.json +16 -0
  284. package/services/react-word-editor/.tmp-a4/src/api/public-types.ts +318 -0
  285. package/services/react-word-editor/.tmp-a4/src/ui/WordReviewEditor.tsx +1302 -0
  286. package/services/react-word-editor/.tmp-a4/src/ui/editor-surface/editor-surface.tsx +546 -0
  287. package/services/react-word-editor/.tmp-a4/test/ui/word-review-editor.test.tsx +146 -0
  288. package/services/react-word-editor/.tmp-a4-build/src/api/public-types.js +2 -0
  289. package/services/react-word-editor/.tmp-a4-build/src/ui/WordReviewEditor.js +818 -0
  290. package/services/react-word-editor/.tmp-a4-build/src/ui/editor-surface/editor-surface.js +229 -0
  291. package/services/react-word-editor/.tmp-a4-build/test/ui/word-review-editor.test.js +121 -0
  292. package/services/react-word-editor/.tmp-wave-4-a3-tsconfig.json +21 -0
  293. package/services/react-word-editor/.tmp-wave-4-a3-tsconfig.tsbuildinfo +1 -0
  294. package/services/react-word-editor/Dockerfile +26 -0
  295. package/services/react-word-editor/README.md +254 -0
  296. package/services/react-word-editor/app/api/certification/route.ts +79 -0
  297. package/services/react-word-editor/app/api/demo-sessions/route.ts +109 -0
  298. package/services/react-word-editor/app/api/deploy-health/route.ts +23 -0
  299. package/services/react-word-editor/app/api/exports/[exportId]/route.ts +34 -0
  300. package/services/react-word-editor/app/api/exports/route.ts +81 -0
  301. package/services/react-word-editor/app/api/fixtures/[fixtureId]/run/route.ts +100 -0
  302. package/services/react-word-editor/app/api/health/route.ts +70 -0
  303. package/services/react-word-editor/app/api/runs/[runId]/route.ts +36 -0
  304. package/services/react-word-editor/app/api/scenarios/[scenarioId]/run/route.ts +85 -0
  305. package/services/react-word-editor/app/api/sessions/[sessionId]/route.ts +199 -0
  306. package/services/react-word-editor/app/api/sessions/[sessionId]/source/route.ts +45 -0
  307. package/services/react-word-editor/app/api/uploads/route.ts +70 -0
  308. package/services/react-word-editor/app/api/validate/route.ts +310 -0
  309. package/services/react-word-editor/app/certification/[runId]/page.tsx +14 -0
  310. package/services/react-word-editor/app/certification/page.tsx +32 -0
  311. package/services/react-word-editor/app/dashboard/page.tsx +7 -0
  312. package/services/react-word-editor/app/demo/page.tsx +30 -0
  313. package/services/react-word-editor/app/demo/prototype-client.tsx +1080 -0
  314. package/services/react-word-editor/app/editor/[sessionId]/page.tsx +33 -0
  315. package/services/react-word-editor/app/fixtures/page.tsx +7 -0
  316. package/services/react-word-editor/app/globals.css +121 -0
  317. package/services/react-word-editor/app/layout.tsx +32 -0
  318. package/services/react-word-editor/app/page.tsx +30 -0
  319. package/services/react-word-editor/app/runs/[runId]/page.tsx +34 -0
  320. package/services/react-word-editor/app/wave-10-word-review/page.tsx +7 -0
  321. package/services/react-word-editor/components/harness-control-bar.tsx +289 -0
  322. package/services/react-word-editor/components/harness-editor-session-client.tsx +1214 -0
  323. package/services/react-word-editor/components/harness-workspace-page.tsx +715 -0
  324. package/services/react-word-editor/components/reduced-motion-toggle.tsx +79 -0
  325. package/services/react-word-editor/components/workspace-certification-panel.tsx +307 -0
  326. package/services/react-word-editor/lib/certification-bundle.ts +796 -0
  327. package/services/react-word-editor/lib/certification-store.ts +661 -0
  328. package/services/react-word-editor/lib/demo-fixtures.test.mjs +195 -0
  329. package/services/react-word-editor/lib/demo-fixtures.ts +1519 -0
  330. package/services/react-word-editor/lib/editor-session-summary.test.mjs +68 -0
  331. package/services/react-word-editor/lib/editor-session-summary.ts +14 -0
  332. package/services/react-word-editor/lib/editor-session.ts +228 -0
  333. package/services/react-word-editor/lib/exports-route.test.mjs +32 -0
  334. package/services/react-word-editor/lib/harness-client.ts +347 -0
  335. package/services/react-word-editor/lib/harness-config.json +30 -0
  336. package/services/react-word-editor/lib/harness-config.test.mjs +31 -0
  337. package/services/react-word-editor/lib/harness-config.ts +21 -0
  338. package/services/react-word-editor/lib/harness-editor-datastore.test.mjs +220 -0
  339. package/services/react-word-editor/lib/harness-editor-datastore.ts +161 -0
  340. package/services/react-word-editor/lib/private-mode.test.mjs +42 -0
  341. package/services/react-word-editor/lib/private-mode.ts +61 -0
  342. package/services/react-word-editor/lib/regression-report.test.mjs +352 -0
  343. package/services/react-word-editor/lib/regression-report.ts +896 -0
  344. package/services/react-word-editor/lib/run-artifacts.ts +934 -0
  345. package/services/react-word-editor/lib/run-history.ts +755 -0
  346. package/services/react-word-editor/lib/scenario-artifacts.test.mjs +41 -0
  347. package/services/react-word-editor/lib/scenario-artifacts.ts +44 -0
  348. package/services/react-word-editor/lib/storage.ts +953 -0
  349. package/services/react-word-editor/lib/validator-client.test.mjs +54 -0
  350. package/services/react-word-editor/lib/validator-client.ts +95 -0
  351. package/services/react-word-editor/lib/workspace-navigation.ts +79 -0
  352. package/services/react-word-editor/middleware.ts +35 -0
  353. package/services/react-word-editor/next-env.d.ts +6 -0
  354. package/services/react-word-editor/next.config.mjs +15 -0
  355. package/services/react-word-editor/package.json +38 -0
  356. package/services/react-word-editor/postcss.config.mjs +8 -0
  357. package/services/react-word-editor/railway.json +21 -0
  358. package/services/react-word-editor/scripts/wave-10-certification.mjs +101 -0
  359. package/services/react-word-editor/scripts/wave-9-live-usability-pilot.mjs +911 -0
  360. package/services/react-word-editor/tsconfig.json +39 -0
  361. package/services/react-word-editor/tsconfig.tsbuildinfo +1 -0
  362. package/skills/README.md +48 -0
  363. package/skills/domain-docx-compatibility/SKILL.md +44 -0
  364. package/skills/domain-docx-compatibility/skill.json +19 -0
  365. package/skills/domain-editor-architecture/SKILL.md +49 -0
  366. package/skills/domain-editor-architecture/skill.json +19 -0
  367. package/skills/domain-legal-review/SKILL.md +39 -0
  368. package/skills/domain-legal-review/skill.json +19 -0
  369. package/skills/provider-aws/SKILL.md +117 -0
  370. package/skills/provider-aws/adapters/claude.md +1 -0
  371. package/skills/provider-aws/adapters/codex.md +1 -0
  372. package/skills/provider-aws/references/service-verification.md +39 -0
  373. package/skills/provider-aws/skill.json +54 -0
  374. package/skills/provider-custom-deploy/SKILL.md +64 -0
  375. package/skills/provider-custom-deploy/skill.json +50 -0
  376. package/skills/provider-docker-compose/SKILL.md +96 -0
  377. package/skills/provider-docker-compose/adapters/local.md +1 -0
  378. package/skills/provider-docker-compose/skill.json +53 -0
  379. package/skills/provider-github-release/SKILL.md +121 -0
  380. package/skills/provider-github-release/adapters/claude.md +1 -0
  381. package/skills/provider-github-release/adapters/codex.md +1 -0
  382. package/skills/provider-github-release/skill.json +55 -0
  383. package/skills/provider-kubernetes/SKILL.md +143 -0
  384. package/skills/provider-kubernetes/adapters/claude.md +1 -0
  385. package/skills/provider-kubernetes/adapters/codex.md +1 -0
  386. package/skills/provider-kubernetes/references/kubectl-patterns.md +58 -0
  387. package/skills/provider-kubernetes/skill.json +52 -0
  388. package/skills/provider-railway/SKILL.md +123 -0
  389. package/skills/provider-railway/adapters/claude.md +1 -0
  390. package/skills/provider-railway/adapters/codex.md +1 -0
  391. package/skills/provider-railway/adapters/local.md +1 -0
  392. package/skills/provider-railway/adapters/opencode.md +1 -0
  393. package/skills/provider-railway/references/verification-commands.md +39 -0
  394. package/skills/provider-railway/skill.json +71 -0
  395. package/skills/provider-ssh-manual/SKILL.md +97 -0
  396. package/skills/provider-ssh-manual/skill.json +54 -0
  397. package/skills/repo-coding-rules/SKILL.md +55 -0
  398. package/skills/repo-coding-rules/skill.json +34 -0
  399. package/skills/role-cont-eval/SKILL.md +91 -0
  400. package/skills/role-cont-eval/adapters/codex.md +1 -0
  401. package/skills/role-cont-eval/skill.json +36 -0
  402. package/skills/role-cont-qa/SKILL.md +100 -0
  403. package/skills/role-cont-qa/adapters/claude.md +1 -0
  404. package/skills/role-cont-qa/skill.json +36 -0
  405. package/skills/role-deploy/SKILL.md +97 -0
  406. package/skills/role-deploy/skill.json +36 -0
  407. package/skills/role-design/SKILL.md +50 -0
  408. package/skills/role-design/skill.json +36 -0
  409. package/skills/role-documentation/SKILL.md +76 -0
  410. package/skills/role-documentation/skill.json +36 -0
  411. package/skills/role-implementation/SKILL.md +45 -0
  412. package/skills/role-implementation/skill.json +36 -0
  413. package/skills/role-infra/SKILL.md +81 -0
  414. package/skills/role-infra/skill.json +36 -0
  415. package/skills/role-integration/SKILL.md +91 -0
  416. package/skills/role-integration/skill.json +36 -0
  417. package/skills/role-planner/SKILL.md +39 -0
  418. package/skills/role-planner/skill.json +21 -0
  419. package/skills/role-research/SKILL.md +65 -0
  420. package/skills/role-research/skill.json +36 -0
  421. package/skills/role-security/SKILL.md +60 -0
  422. package/skills/role-security/skill.json +36 -0
  423. package/skills/runtime-claude/SKILL.md +66 -0
  424. package/skills/runtime-claude/skill.json +36 -0
  425. package/skills/runtime-codex/SKILL.md +58 -0
  426. package/skills/runtime-codex/skill.json +36 -0
  427. package/skills/runtime-local/SKILL.md +46 -0
  428. package/skills/runtime-local/skill.json +36 -0
  429. package/skills/runtime-opencode/SKILL.md +58 -0
  430. package/skills/runtime-opencode/skill.json +36 -0
  431. package/skills/signal-hygiene/SKILL.md +51 -0
  432. package/skills/signal-hygiene/skill.json +20 -0
  433. package/skills/tui-design/SKILL.md +77 -0
  434. package/skills/tui-design/references/tui-design.md +259 -0
  435. package/skills/tui-design/skill.json +36 -0
  436. package/skills/wave-core/SKILL.md +141 -0
  437. package/skills/wave-core/references/marker-syntax.md +70 -0
  438. package/skills/wave-core/skill.json +35 -0
  439. package/src/README.md +85 -0
  440. package/src/api/README.md +22 -0
  441. package/src/api/public-types.ts +525 -0
  442. package/src/component-inventory.md +99 -0
  443. package/src/core/README.md +10 -0
  444. package/src/core/commands/README.md +3 -0
  445. package/src/core/commands/formatting-commands.ts +161 -0
  446. package/src/core/commands/image-commands.ts +144 -0
  447. package/src/core/commands/index.ts +1013 -0
  448. package/src/core/commands/list-commands.ts +370 -0
  449. package/src/core/commands/review-commands.ts +108 -0
  450. package/src/core/commands/text-commands.ts +119 -0
  451. package/src/core/schema/README.md +3 -0
  452. package/src/core/schema/text-schema.ts +512 -0
  453. package/src/core/selection/README.md +3 -0
  454. package/src/core/selection/mapping.ts +238 -0
  455. package/src/core/selection/review-anchors.ts +94 -0
  456. package/src/core/state/README.md +3 -0
  457. package/src/core/state/editor-state.ts +580 -0
  458. package/src/core/state/text-transaction.ts +276 -0
  459. package/src/formats/xlsx/io/parse-shared-strings.ts +41 -0
  460. package/src/formats/xlsx/io/parse-sheet.ts +289 -0
  461. package/src/formats/xlsx/io/parse-styles.ts +57 -0
  462. package/src/formats/xlsx/io/parse-workbook.ts +75 -0
  463. package/src/formats/xlsx/io/xlsx-session.ts +306 -0
  464. package/src/formats/xlsx/model/cell.ts +189 -0
  465. package/src/formats/xlsx/model/sheet.ts +244 -0
  466. package/src/formats/xlsx/model/styles.ts +118 -0
  467. package/src/formats/xlsx/model/workbook.ts +449 -0
  468. package/src/io/README.md +10 -0
  469. package/src/io/docx-session.ts +1763 -0
  470. package/src/io/export/README.md +3 -0
  471. package/src/io/export/export-session.ts +165 -0
  472. package/src/io/export/minimal-docx.ts +115 -0
  473. package/src/io/export/reattach-preserved-parts.ts +54 -0
  474. package/src/io/export/serialize-comments.ts +876 -0
  475. package/src/io/export/serialize-footnotes.ts +217 -0
  476. package/src/io/export/serialize-headers-footers.ts +200 -0
  477. package/src/io/export/serialize-main-document.ts +982 -0
  478. package/src/io/export/serialize-numbering.ts +97 -0
  479. package/src/io/export/serialize-revisions.ts +389 -0
  480. package/src/io/export/serialize-runtime-revisions.ts +265 -0
  481. package/src/io/export/serialize-tables.ts +147 -0
  482. package/src/io/export/split-review-boundaries.ts +194 -0
  483. package/src/io/normalize/README.md +3 -0
  484. package/src/io/normalize/normalize-text.ts +437 -0
  485. package/src/io/ooxml/README.md +3 -0
  486. package/src/io/ooxml/parse-comments.ts +779 -0
  487. package/src/io/ooxml/parse-complex-content.ts +287 -0
  488. package/src/io/ooxml/parse-fields.ts +438 -0
  489. package/src/io/ooxml/parse-footnotes.ts +403 -0
  490. package/src/io/ooxml/parse-headers-footers.ts +483 -0
  491. package/src/io/ooxml/parse-inline-media.ts +431 -0
  492. package/src/io/ooxml/parse-main-document.ts +1846 -0
  493. package/src/io/ooxml/parse-numbering.ts +425 -0
  494. package/src/io/ooxml/parse-revisions.ts +658 -0
  495. package/src/io/ooxml/parse-shapes.ts +271 -0
  496. package/src/io/ooxml/parse-tables.ts +568 -0
  497. package/src/io/ooxml/parse-theme.ts +314 -0
  498. package/src/io/ooxml/part-manifest.ts +136 -0
  499. package/src/io/ooxml/revision-boundaries.ts +351 -0
  500. package/src/io/opc/README.md +3 -0
  501. package/src/io/opc/corrupt-package.ts +166 -0
  502. package/src/io/opc/docx-package.ts +74 -0
  503. package/src/io/opc/package-reader.ts +320 -0
  504. package/src/io/opc/package-writer.ts +273 -0
  505. package/src/model/README.md +3 -0
  506. package/src/model/canonical-document.ts +1911 -0
  507. package/src/model/cds-1.0.0.ts +196 -0
  508. package/src/model/snapshot.ts +393 -0
  509. package/src/preservation/README.md +3 -0
  510. package/src/preservation/markup-compatibility.ts +48 -0
  511. package/src/preservation/opaque-fragment-store.ts +89 -0
  512. package/src/preservation/opaque-region.ts +233 -0
  513. package/src/preservation/package-preservation.ts +120 -0
  514. package/src/preservation/preserved-part-manifest.ts +56 -0
  515. package/src/preservation/relationship-retention.ts +57 -0
  516. package/src/preservation/store.ts +185 -0
  517. package/src/review/README.md +16 -0
  518. package/src/review/store/README.md +3 -0
  519. package/src/review/store/comment-anchors.ts +70 -0
  520. package/src/review/store/comment-remapping.ts +154 -0
  521. package/src/review/store/comment-store.ts +331 -0
  522. package/src/review/store/comment-thread.ts +109 -0
  523. package/src/review/store/revision-actions.ts +394 -0
  524. package/src/review/store/revision-store.ts +303 -0
  525. package/src/review/store/revision-types.ts +168 -0
  526. package/src/review/store/runtime-comment-store.ts +43 -0
  527. package/src/runtime/README.md +3 -0
  528. package/src/runtime/ai-action-policy.ts +764 -0
  529. package/src/runtime/document-runtime.ts +969 -0
  530. package/src/runtime/read-only-diagnostics-runtime.ts +232 -0
  531. package/src/runtime/review-runtime.ts +44 -0
  532. package/src/runtime/revision-runtime.ts +107 -0
  533. package/src/runtime/session-capabilities.ts +138 -0
  534. package/src/runtime/surface-projection.ts +570 -0
  535. package/src/runtime/table-commands.ts +84 -0
  536. package/src/runtime/table-schema.ts +125 -0
  537. package/src/ui/README.md +30 -0
  538. package/src/ui/WordReviewEditor.tsx +1283 -0
  539. package/src/ui/comments/README.md +3 -0
  540. package/src/ui/compatibility/README.md +3 -0
  541. package/src/ui/editor-surface/README.md +3 -0
  542. package/src/ui/headless/comment-decoration-model.ts +124 -0
  543. package/src/ui/headless/revision-decoration-model.ts +128 -0
  544. package/src/ui/headless/selection-helpers.ts +34 -0
  545. package/src/ui/headless/use-editor-keyboard.ts +98 -0
  546. package/src/ui/review/README.md +3 -0
  547. package/src/ui/shared/revision-filters.ts +31 -0
  548. package/src/ui/status/README.md +3 -0
  549. package/src/ui/theme/README.md +3 -0
  550. package/src/ui/toolbar/README.md +3 -0
  551. package/src/ui-tailwind/chrome/tw-alert-banner.tsx +48 -0
  552. package/src/ui-tailwind/chrome/tw-selection-toolbar.tsx +44 -0
  553. package/src/ui-tailwind/chrome/tw-unsaved-modal.tsx +58 -0
  554. package/src/ui-tailwind/chrome/use-before-unload.ts +20 -0
  555. package/src/ui-tailwind/editor-surface/pm-command-bridge.ts +139 -0
  556. package/src/ui-tailwind/editor-surface/pm-decorations.ts +98 -0
  557. package/src/ui-tailwind/editor-surface/pm-position-map.ts +123 -0
  558. package/src/ui-tailwind/editor-surface/pm-schema.ts +452 -0
  559. package/src/ui-tailwind/editor-surface/pm-state-from-snapshot.ts +327 -0
  560. package/src/ui-tailwind/editor-surface/search-plugin.ts +157 -0
  561. package/src/ui-tailwind/editor-surface/tw-caret.tsx +12 -0
  562. package/src/ui-tailwind/editor-surface/tw-editor-surface.tsx +150 -0
  563. package/src/ui-tailwind/editor-surface/tw-inline-token.tsx +118 -0
  564. package/src/ui-tailwind/editor-surface/tw-opaque-block.tsx +52 -0
  565. package/src/ui-tailwind/editor-surface/tw-paragraph-block.tsx +151 -0
  566. package/src/ui-tailwind/editor-surface/tw-prosemirror-surface.tsx +215 -0
  567. package/src/ui-tailwind/editor-surface/tw-segment-view.tsx +111 -0
  568. package/src/ui-tailwind/editor-surface/tw-table-node-view.tsx +108 -0
  569. package/src/ui-tailwind/index.ts +61 -0
  570. package/src/ui-tailwind/review/tw-comment-sidebar.tsx +276 -0
  571. package/src/ui-tailwind/review/tw-health-panel.tsx +120 -0
  572. package/src/ui-tailwind/review/tw-review-rail.tsx +120 -0
  573. package/src/ui-tailwind/review/tw-revision-sidebar.tsx +164 -0
  574. package/src/ui-tailwind/status/tw-status-bar.tsx +58 -0
  575. package/src/ui-tailwind/theme/editor-theme.css +190 -0
  576. package/src/ui-tailwind/toolbar/tw-toolbar-icon-button.tsx +48 -0
  577. package/src/ui-tailwind/toolbar/tw-toolbar.tsx +231 -0
  578. package/src/ui-tailwind/tw-review-workspace.tsx +140 -0
  579. package/src/validation/README.md +3 -0
  580. package/src/validation/compatibility-engine.ts +317 -0
  581. package/src/validation/compatibility-report.ts +160 -0
  582. package/src/validation/diagnostics.ts +203 -0
  583. package/src/validation/import-diagnostics.ts +128 -0
  584. package/src/validation/low-priority-word-surfaces.ts +373 -0
  585. package/test/README.md +16 -0
  586. package/test/core/formatting-commands.test.ts +285 -0
  587. package/test/core/image-commands.test.ts +298 -0
  588. package/test/core/mapping.test.ts +186 -0
  589. package/test/core/text-commands.test.ts +176 -0
  590. package/test/fixtures/docx/F01-basic-contract.docx +0 -0
  591. package/test/fixtures/docx/F01-basic-contract.md +33 -0
  592. package/test/fixtures/docx/F02-headings-styles.docx +0 -0
  593. package/test/fixtures/docx/F02-headings-styles.md +33 -0
  594. package/test/fixtures/docx/F03-legal-outline-numbering.docx +0 -0
  595. package/test/fixtures/docx/F03-legal-outline-numbering.md +34 -0
  596. package/test/fixtures/docx/F04-restart-numbering-schedules.docx +0 -0
  597. package/test/fixtures/docx/F04-restart-numbering-schedules.md +33 -0
  598. package/test/fixtures/docx/F05-table-heavy-agreement.docx +0 -0
  599. package/test/fixtures/docx/F05-table-heavy-agreement.md +34 -0
  600. package/test/fixtures/docx/F06-merged-cells-signature-table.docx +0 -0
  601. package/test/fixtures/docx/F06-merged-cells-signature-table.md +34 -0
  602. package/test/fixtures/docx/F07-inline-images-exhibit.docx +0 -0
  603. package/test/fixtures/docx/F07-inline-images-exhibit.md +34 -0
  604. package/test/fixtures/docx/F08-hyperlinks.docx +0 -0
  605. package/test/fixtures/docx/F08-hyperlinks.md +33 -0
  606. package/test/fixtures/docx/F09-comments-single-paragraph.docx +0 -0
  607. package/test/fixtures/docx/F09-comments-single-paragraph.md +33 -0
  608. package/test/fixtures/docx/F10-threaded-comments-resolve.docx +0 -0
  609. package/test/fixtures/docx/F10-threaded-comments-resolve.md +33 -0
  610. package/test/fixtures/docx/F11-redlines-basic.docx +0 -0
  611. package/test/fixtures/docx/F11-redlines-basic.md +33 -0
  612. package/test/fixtures/docx/F12-redlines-paragraph-joins-splits.docx +0 -0
  613. package/test/fixtures/docx/F12-redlines-paragraph-joins-splits.md +33 -0
  614. package/test/fixtures/docx/F13-comments-on-deleted-text.docx +0 -0
  615. package/test/fixtures/docx/F13-comments-on-deleted-text.md +33 -0
  616. package/test/fixtures/docx/F14-revisions-in-tables-and-lists.docx +0 -0
  617. package/test/fixtures/docx/F14-revisions-in-tables-and-lists.md +33 -0
  618. package/test/fixtures/docx/F15-sections-headers-footers.docx +0 -0
  619. package/test/fixtures/docx/F15-sections-headers-footers.md +33 -0
  620. package/test/fixtures/docx/F16-footnotes-endnotes.docx +0 -0
  621. package/test/fixtures/docx/F16-footnotes-endnotes.md +33 -0
  622. package/test/fixtures/docx/F17-fields-and-toc.docx +0 -0
  623. package/test/fixtures/docx/F17-fields-and-toc.md +33 -0
  624. package/test/fixtures/docx/F18-content-controls-template.docx +0 -0
  625. package/test/fixtures/docx/F18-content-controls-template.md +33 -0
  626. package/test/fixtures/docx/F19-custom-xml-doc-assembly.docx +0 -0
  627. package/test/fixtures/docx/F19-custom-xml-doc-assembly.md +35 -0
  628. package/test/fixtures/docx/F20-unknown-ooxml-and-alternatecontent.docx +0 -0
  629. package/test/fixtures/docx/F20-unknown-ooxml-and-alternatecontent.md +33 -0
  630. package/test/fixtures/docx/F21-malformed-broken-docx.docx +0 -0
  631. package/test/fixtures/docx/F21-malformed-broken-docx.md +33 -0
  632. package/test/fixtures/docx/README.md +74 -0
  633. package/test/fixtures/docx/certification-manifest.json +104 -0
  634. package/test/fixtures/docx/fixtures.manifest.json +196 -0
  635. package/test/fixtures/encrypted-docx/README.md +27 -0
  636. package/test/fixtures/encrypted-docx/certification-manifest.json +9 -0
  637. package/test/fixtures/encrypted-docx/fixtures.manifest.json +47 -0
  638. package/test/fixtures/scenarios/docx/README.md +25 -0
  639. package/test/fixtures/scenarios/docx/S01-sow-template.docx +0 -0
  640. package/test/fixtures/scenarios/docx/S01-sow-template.md +30 -0
  641. package/test/fixtures/scenarios/docx/S02-bw-partner-user-licence-agreement-redlines.docx +0 -0
  642. package/test/fixtures/scenarios/docx/S02-bw-partner-user-licence-agreement-redlines.md +32 -0
  643. package/test/fixtures/scenarios/docx/scenario-manifest.json +53 -0
  644. package/test/formats/xlsx/io/xlsx-import.test.ts +766 -0
  645. package/test/formats/xlsx/model/workbook.test.ts +669 -0
  646. package/test/helpers/dom-setup.ts +124 -0
  647. package/test/io/comment-roundtrip.test.ts +272 -0
  648. package/test/io/complex-content-roundtrip.test.ts +632 -0
  649. package/test/io/docx-compatibility-regression.test.ts +199 -0
  650. package/test/io/docx-session.test.ts +1495 -0
  651. package/test/io/footnotes-roundtrip.test.ts +318 -0
  652. package/test/io/headers-footers-roundtrip.test.ts +547 -0
  653. package/test/io/numbering-roundtrip.test.ts +234 -0
  654. package/test/io/package-reader.test.ts +199 -0
  655. package/test/io/paragraph-properties-roundtrip.test.ts +129 -0
  656. package/test/io/preserved-package-roundtrip.test.ts +365 -0
  657. package/test/io/property-completeness.test.ts +292 -0
  658. package/test/io/revision-roundtrip.test.ts +347 -0
  659. package/test/io/structural-blocks.test.ts +202 -0
  660. package/test/io/table-media-roundtrip.test.ts +448 -0
  661. package/test/io/table-properties-roundtrip.test.ts +569 -0
  662. package/test/io/table-roundtrip.test.ts +302 -0
  663. package/test/io/text-roundtrip.test.ts +344 -0
  664. package/test/model/canonical-document.test.ts +285 -0
  665. package/test/preservation/opaque-fragment-store.test.ts +121 -0
  666. package/test/preservation/package-preservation.test.ts +395 -0
  667. package/test/preservation/store.test.ts +84 -0
  668. package/test/review/comment-remapping.test.ts +220 -0
  669. package/test/review/comment-store.test.ts +180 -0
  670. package/test/review/move-revisions.test.ts +143 -0
  671. package/test/review/property-change-revisions.test.ts +225 -0
  672. package/test/review/revision-actions.test.ts +330 -0
  673. package/test/review/revision-store.test.ts +193 -0
  674. package/test/runtime/session-capabilities.test.ts +260 -0
  675. package/test/runtime/table-commands.test.ts +356 -0
  676. package/test/runtime/table-schema.test.ts +221 -0
  677. package/test/runtime/tracked-changes-toggle.test.ts +107 -0
  678. package/test/ui/comment-review-surface.test.tsx +114 -0
  679. package/test/ui/reduced-motion-toggle.test.tsx +137 -0
  680. package/test/ui/word-review-editor.imported-scenarios.test.tsx +169 -0
  681. package/test/ui/word-review-editor.interaction.test.tsx +1198 -0
  682. package/test/ui/word-review-editor.test.js +188 -0
  683. package/test/ui/word-review-editor.test.tsx +280 -0
  684. package/test/ui-tailwind/search-plugin.test.ts +286 -0
  685. package/test/validation/compatibility-engine.test.ts +336 -0
  686. package/test/validation/compatibility-report.test.ts +189 -0
  687. package/test/validation/low-priority-word-surfaces.test.ts +282 -0
  688. package/test/validation/malformed-doc.test.ts +113 -0
  689. package/test-results/.last-run.json +4 -0
  690. package/wave.config.json +406 -0
@@ -0,0 +1,321 @@
1
+ # Wave 15 - Structured Authoring, Permissions, And AI Policy Operations
2
+
3
+ **Commit message**: `Build: add structured authoring and AI policy operations`
4
+
5
+ ## Component promotions
6
+
7
+ - command-and-transaction-runtime: fleet-ready
8
+ - docx-import-and-normalization: fleet-ready
9
+ - docx-export-and-serialization: fleet-ready
10
+ - compatibility-and-word-validation: fleet-ready
11
+ - react-editor-ui: fleet-ready
12
+
13
+ ## Scope note
14
+
15
+ Wave 15 continues Tier B closure by turning the legal-semantics layer into
16
+ controlled legal authoring through content controls, permissions, protected
17
+ ranges, template linkage, section-level document structure, and signature-block
18
+ semantics.
19
+
20
+ This wave also makes the lock model explicit: `policy locks` and
21
+ `compatibility-safety locks` are separate concepts, and AI operations must obey
22
+ both.
23
+
24
+ ## Entry criteria
25
+
26
+ - Wave 14 semantics contracts are stable enough to bind content controls and
27
+ permissions to clause-aware state.
28
+ - Version and compare flows from Wave 13 remain compatible with protected draft
29
+ states.
30
+ - The reserved AI action surface is already stable enough to layer
31
+ policy-aware operations on top of permissions and protected ranges.
32
+
33
+ ## Promotion conditions
34
+
35
+ - content controls and fields are typed, validated, and export-safe on the
36
+ owned slice
37
+ - permission and lock behavior blocks disallowed edits predictably
38
+ - section and page-setup structures are no longer preserve-only on the
39
+ supported signature and exhibit slice
40
+ - signature blocks carry typed roles and export-safe structure
41
+ - policy-aware AI actions respect permissions, protected ranges, suggest-only
42
+ states, and workflow gates without pretending unsupported regions are editable
43
+
44
+ ## Deliverables
45
+
46
+ - content-control descriptors, template bindings, and validation state
47
+ - typed permission, protected-range, suggest-only, policy-lock, and
48
+ compatibility-lock contracts
49
+ - section and page-setup metadata plus signature-role structures
50
+ - policy-aware AI actions for suggestion, edit, resolve, and workflow requests
51
+ - shared docs that keep structured authoring calm, explicit, and policy-driven
52
+
53
+ ## Deploy environments
54
+
55
+ - staging: railway-cli (shared workspace validation environment)
56
+
57
+ ## Context7 defaults
58
+
59
+ - bundle: word-editor-contracts
60
+ - query: "structured authoring, content controls, permissions, protected ranges, policy vs compatibility locks, sections, page setup, signature workflow semantics, and policy-aware AI actions"
61
+
62
+ ## Agent A0: cont-QA
63
+
64
+ ### Role prompts
65
+
66
+ - docs/agents/wave-cont-qa-role.md
67
+
68
+ ### Executor
69
+
70
+ - profile: deep-review
71
+
72
+ ### Context7
73
+
74
+ - bundle: word-editor-testing
75
+ - query: "structured-authoring closure, permission and lock proof, bounded policy claims, and policy-aware AI actions"
76
+
77
+ ### Prompt
78
+
79
+ ```text
80
+ Primary goal:
81
+ - Refuse closure unless structured authoring, permissions, and signature workflow semantics are bounded, typed, and machine-visible.
82
+
83
+ Required context before coding:
84
+ - Read docs/reference/repository-guidance.md.
85
+ - Read docs/research/agent-context-sources.md.
86
+ - Read docs/reference/live-proof-waves.md.
87
+ - Read docs/plans/current-state.md and docs/plans/waves/wave-15.md.
88
+
89
+ Specific expectations:
90
+ - block closure if permission and lock behavior still depends on ad hoc UI state
91
+ - block closure if content controls or sections silently fall back to preserve-only behavior on the owned slice
92
+ - block closure if the wave still treats policy locks and compatibility-safety locks as the same thing
93
+ - block closure if AI actions can cross protected ranges or ignore permission gates
94
+ - keep footnotes, headers, footers, and generated-index work clearly deferred
95
+
96
+ File ownership (only touch these paths):
97
+ - docs/plans/waves/reviews/wave-15-cont-qa.md
98
+ ```
99
+
100
+ ## Agent A8: Integration Steward
101
+
102
+ ### Role prompts
103
+
104
+ - docs/agents/wave-integration-role.md
105
+
106
+ ### Executor
107
+
108
+ - profile: deep-review
109
+
110
+ ### Context7
111
+
112
+ - bundle: word-editor-contracts
113
+ - query: "reconciling content controls, permissions, policy-vs-compatibility locks, sections, signature-block proof, and AI policy behavior into one coherent surface"
114
+
115
+ ### Prompt
116
+
117
+ ```text
118
+ Primary goal:
119
+ - Decide whether the repo now owns a coherent structured-authoring slice.
120
+
121
+ Required context before coding:
122
+ - Read docs/reference/repository-guidance.md.
123
+ - Read docs/research/agent-context-sources.md.
124
+ - Read docs/reference/live-proof-waves.md.
125
+ - Read docs/plans/master-plan.md, docs/plans/current-state.md, and docs/plans/waves/wave-15.md.
126
+
127
+ Specific expectations:
128
+ - block closure if content-control, permissions, and signature semantics disagree across runtime, export, and docs
129
+ - block closure if section or page-setup ownership remains ambiguous on the supported slice
130
+ - block closure if AI policy actions do not respect permission and protected-range truth
131
+ - keep full document-shell completeness and advanced automation explicitly deferred
132
+
133
+ File ownership (only touch these paths):
134
+ - .tmp/main-wave-launcher/integration/wave-15.md
135
+ - .tmp/main-wave-launcher/integration/wave-15.json
136
+ ```
137
+
138
+ ## Agent A9: Documentation Steward
139
+
140
+ ### Role prompts
141
+
142
+ - docs/agents/wave-documentation-role.md
143
+
144
+ ### Executor
145
+
146
+ - profile: docs-pass
147
+
148
+ ### Context7
149
+
150
+ - bundle: word-editor-contracts
151
+ - query: "documenting structured authoring, permissions, lock taxonomy, signature workflow boundaries, policy-aware AI actions, and the remaining roadmap"
152
+
153
+ ### Prompt
154
+
155
+ ```text
156
+ Primary goal:
157
+ - Close the shared-plan docs around the Wave 15 structured-authoring and policy-aware AI slice without implying broader document-shell or automation ownership.
158
+
159
+ Required context before coding:
160
+ - Read docs/reference/repository-guidance.md.
161
+ - Read docs/research/agent-context-sources.md.
162
+ - Read docs/reference/legal-checklist.md.
163
+ - Read docs/plans/master-plan.md, docs/plans/current-state.md, docs/plans/migration.md, and docs/plans/component-cutover-matrix.md.
164
+ - Read the Wave 15 proof notes.
165
+
166
+ File ownership (only touch these paths):
167
+ - README.md
168
+ - docs/roadmap.md
169
+ - docs/plans/master-plan.md
170
+ - docs/plans/current-state.md
171
+ - docs/plans/migration.md
172
+ - docs/plans/component-cutover-matrix.md
173
+ - docs/plans/component-cutover-matrix.json
174
+ - docs/reference/legal-checklist.md
175
+ ```
176
+
177
+ ## Agent A1: Structured Authoring And Permission Runtime
178
+
179
+ ### Executor
180
+
181
+ - profile: proof-owner
182
+ - retry-policy: sticky
183
+
184
+ ### Context7
185
+
186
+ - bundle: word-editor-contracts
187
+ - query: "content controls, permissions, protected ranges, sections, page setup, signature workflow semantics, and lock taxonomy"
188
+
189
+ ### Skills
190
+
191
+ - role-implementation
192
+ - domain-editor-architecture
193
+ - domain-legal-review
194
+
195
+ ### Components
196
+
197
+ - command-and-transaction-runtime
198
+ - docx-import-and-normalization
199
+ - docx-export-and-serialization
200
+ - compatibility-and-word-validation
201
+ - react-editor-ui
202
+
203
+ ### Exit contract
204
+
205
+ - completion: authoritative
206
+ - durability: durable
207
+ - proof: integration
208
+ - doc-impact: owned
209
+
210
+ ### Deliverables
211
+
212
+ - src/runtime/structured-authoring-runtime.ts
213
+ - src/ui-tailwind/review/tw-structured-authoring-panel.tsx
214
+ - src/model/permissions.ts
215
+ - test/runtime/structured-authoring.test.ts
216
+ - docs/plans/waves/reviews/wave-15-structured-authoring-proof.md
217
+
218
+ ### Proof artifacts
219
+
220
+ - path: .tmp/wave-15-structured-authoring/content-controls-report.json | kind: integration-report | required-for: fleet-ready
221
+ - path: .tmp/wave-15-structured-authoring/permissions-and-locks-report.json | kind: integration-report | required-for: fleet-ready
222
+ - path: .tmp/wave-15-structured-authoring/sections-and-page-setup-report.json | kind: integration-report | required-for: fleet-ready
223
+ - path: .tmp/wave-15-structured-authoring/signature-block-report.json | kind: integration-report | required-for: fleet-ready
224
+ - path: .tmp/wave-15-structured-authoring/template-binding-report.json | kind: integration-report | required-for: fleet-ready
225
+ - path: .tmp/wave-15-structured-authoring/word-reopen-notes.md | kind: proof-note | required-for: fleet-ready
226
+
227
+ ### Prompt
228
+
229
+ ```text
230
+ Primary goal:
231
+ - Turn legal semantics into controlled structured authoring with explicit permissions and signature workflow behavior.
232
+
233
+ Required context before coding:
234
+ - Read docs/reference/repository-guidance.md.
235
+ - Read docs/research/agent-context-sources.md.
236
+ - Read docs/reference/ooxml-compliance.md.
237
+ - Read docs/reference/legal-checklist.md.
238
+
239
+ Specific expectations:
240
+ - content controls and permissions must be typed, validated, and export-safe on the owned slice
241
+ - protected ranges should block disallowed edits predictably instead of leaking through soft UI hints
242
+ - policy locks and compatibility-safety locks must remain distinguishable in runtime truth and diagnostics
243
+ - keep macros, OLE, and advanced automation explicitly out of scope
244
+
245
+ File ownership (only touch these paths):
246
+ - src/runtime/structured-authoring-runtime.ts
247
+ - src/ui-tailwind/review/tw-structured-authoring-panel.tsx
248
+ - src/model/permissions.ts
249
+ - test/runtime/structured-authoring.test.ts
250
+ - docs/plans/waves/reviews/wave-15-structured-authoring-proof.md
251
+ - .tmp/wave-15-structured-authoring/
252
+ ```
253
+
254
+ ## Agent A2: Policy-Aware AI Actions And Workflow Gates
255
+
256
+ ### Executor
257
+
258
+ - profile: implement-fast
259
+ - budget.minutes: 50
260
+
261
+ ### Context7
262
+
263
+ - bundle: word-editor-contracts
264
+ - query: "policy-aware AI actions, protected ranges, suggest-only workflows, signature-state gating, and permission-respecting legal editor operations"
265
+
266
+ ### Skills
267
+
268
+ - role-implementation
269
+ - domain-editor-architecture
270
+ - domain-legal-review
271
+
272
+ ### Components
273
+
274
+ - command-and-transaction-runtime
275
+ - compatibility-and-word-validation
276
+ - react-editor-ui
277
+
278
+ ### Exit contract
279
+
280
+ - completion: authoritative
281
+ - durability: durable
282
+ - proof: integration
283
+ - doc-impact: owned
284
+
285
+ ### Deliverables
286
+
287
+ - src/runtime/ai-policy-operations.ts
288
+ - src/ui-tailwind/review/tw-ai-policy-operations-panel.tsx
289
+ - test/runtime/ai-policy-operations.test.ts
290
+ - docs/plans/waves/reviews/wave-15-ai-policy-proof.md
291
+
292
+ ### Proof artifacts
293
+
294
+ - path: .tmp/wave-15-structured-authoring/ai-protected-range-report.json | kind: integration-report | required-for: fleet-ready
295
+ - path: .tmp/wave-15-structured-authoring/ai-permission-gate-report.json | kind: integration-report | required-for: fleet-ready
296
+ - path: .tmp/wave-15-structured-authoring/ai-signature-workflow-report.json | kind: integration-report | required-for: fleet-ready
297
+
298
+ ### Prompt
299
+
300
+ ```text
301
+ Primary goal:
302
+ - Add policy-aware AI actions that respect the structured authoring model, protected ranges, and signature/workflow gates.
303
+
304
+ Required context before coding:
305
+ - Read docs/reference/repository-guidance.md.
306
+ - Read docs/research/agent-context-sources.md.
307
+ - Read docs/reference/public-api.md.
308
+ - Read docs/reference/legal-checklist.md.
309
+
310
+ Specific expectations:
311
+ - AI actions must be blocked or downgraded when permissions, protected ranges, or workflow state disallow the requested operation
312
+ - distinguish policy denial from compatibility-safety denial in runtime results and UX
313
+ - do not imply document-shell ownership, macro handling, or broad autonomous workflow orchestration in this wave
314
+
315
+ File ownership (only touch these paths):
316
+ - src/runtime/ai-policy-operations.ts
317
+ - src/ui-tailwind/review/tw-ai-policy-operations-panel.tsx
318
+ - test/runtime/ai-policy-operations.test.ts
319
+ - docs/plans/waves/reviews/wave-15-ai-policy-proof.md
320
+ - .tmp/wave-15-structured-authoring/
321
+ ```
@@ -0,0 +1,316 @@
1
+ # Wave 16 - Document Shell Completeness And Shell-Aware AI Operations
2
+
3
+ **Commit message**: `Build: complete the document shell and shell-aware AI operations`
4
+
5
+ ## Component promotions
6
+
7
+ - docx-import-and-normalization: fleet-ready
8
+ - docx-export-and-serialization: fleet-ready
9
+ - unsupported-ooxml-preservation: fleet-ready
10
+ - compatibility-and-word-validation: fleet-ready
11
+ - react-editor-ui: fleet-ready
12
+
13
+ - command-and-transaction-runtime: baseline-proved
14
+ ## Scope note
15
+
16
+ Wave 16 opens the document-shell portion of Tier C closure by owning or
17
+ trustworthily projecting the parts of the document shell that legal workflows
18
+ rely on most: headers, footers, notes, pagination cues, and generated indexes.
19
+
20
+ It is deliberately narrower than final parity closure. The goal here is
21
+ document-shell completeness, not the final integrated all-up proof line.
22
+
23
+ ## Entry criteria
24
+
25
+ - Waves 12 through 15 are closed or frozen enough that document-shell work can
26
+ attach to one coherent post-v1 surface without redefining earlier ownership.
27
+ - Shared docs already separate owned document-shell behavior from preserve-only
28
+ or explicitly deferred behaviors.
29
+
30
+ ## Promotion conditions
31
+
32
+ - document-shell structures needed for legal workflows are owned on the declared
33
+ slice rather than preserved passively
34
+ - pagination and generated-index claims remain bounded and test-backed
35
+ - shell-aware AI operations only target surfaces with explicit mapping,
36
+ validation, and export guarantees
37
+ - remaining Tier C gaps outside the shell stay clearly deferred to Wave 17 or
38
+ Wave 18
39
+
40
+ ## Deliverables
41
+
42
+ - header, footer, note, pagination, and generated-index projections or owned
43
+ surfaces on the declared slice
44
+ - compatibility reporting for document-shell completeness versus preserve-only
45
+ regions
46
+ - shell-aware AI operations with bounded selection/anchor targeting
47
+ - shared docs that keep shell completeness bounded and distinct from final
48
+ parity closure
49
+
50
+ ## Deploy environments
51
+
52
+ - staging: railway-cli (shared workspace validation environment)
53
+
54
+ ## Context7 defaults
55
+
56
+ - bundle: word-editor-ooxml
57
+ - query: "headers, footers, notes, pagination cues, generated indexes, document-shell completeness, and shell-aware AI operations"
58
+
59
+ ## Agent A0: cont-QA
60
+
61
+ ### Role prompts
62
+
63
+ - docs/agents/wave-cont-qa-role.md
64
+
65
+ ### Executor
66
+
67
+ - profile: deep-review
68
+
69
+ ### Context7
70
+
71
+ - bundle: word-editor-testing
72
+ - query: "document-shell closure, shell-aware AI operations, and bounded pagination claims"
73
+
74
+ ### Prompt
75
+
76
+ ```text
77
+ Primary goal:
78
+ - Refuse closure unless document-shell completeness and shell-aware operations both have current, bounded proof.
79
+
80
+ Required context before coding:
81
+ - Read docs/reference/repository-guidance.md.
82
+ - Read docs/research/agent-context-sources.md.
83
+ - Read docs/reference/live-proof-waves.md.
84
+ - Read docs/plans/current-state.md and docs/plans/waves/wave-16.md.
85
+
86
+ Specific expectations:
87
+ - block closure if document-shell ownership is still mostly preserve-only on the declared slice
88
+ - block closure if pagination or generated-index claims drift past the actual proof
89
+ - block closure if shell-aware AI claims exceed the shell surfaces the repo can map safely
90
+ - keep exact Word layout parity and advanced automation explicitly out of scope
91
+
92
+ File ownership (only touch these paths):
93
+ - docs/plans/waves/reviews/wave-16-cont-qa.md
94
+ ```
95
+
96
+ ## Agent A8: Integration Steward
97
+
98
+ ### Role prompts
99
+
100
+ - docs/agents/wave-integration-role.md
101
+
102
+ ### Executor
103
+
104
+ - profile: deep-review
105
+
106
+ ### Context7
107
+
108
+ - bundle: word-editor-ooxml
109
+ - query: "reconciling document-shell ownership, pagination diagnostics, generated-index proof, and shell-aware AI behavior"
110
+
111
+ ### Prompt
112
+
113
+ ```text
114
+ Primary goal:
115
+ - Decide whether the repo now owns a coherent document-shell slice with bounded shell-aware operations.
116
+
117
+ Required context before coding:
118
+ - Read docs/reference/repository-guidance.md.
119
+ - Read docs/research/agent-context-sources.md.
120
+ - Read docs/reference/live-proof-waves.md.
121
+ - Read docs/plans/master-plan.md, docs/plans/current-state.md, and docs/plans/waves/wave-16.md.
122
+
123
+ Specific expectations:
124
+ - block closure if document-shell import/export, compatibility, and UI trust surfaces disagree
125
+ - block closure if shell-aware AI operations are not bounded to trustworthy shell mappings
126
+ - keep exact layout parity, advanced automation, and final all-up parity proof explicitly deferred
127
+
128
+ File ownership (only touch these paths):
129
+ - .tmp/main-wave-launcher/integration/wave-16.md
130
+ - .tmp/main-wave-launcher/integration/wave-16.json
131
+ ```
132
+
133
+ ## Agent A9: Documentation Steward
134
+
135
+ ### Role prompts
136
+
137
+ - docs/agents/wave-documentation-role.md
138
+
139
+ ### Executor
140
+
141
+ - profile: docs-pass
142
+
143
+ ### Context7
144
+
145
+ - bundle: word-editor-contracts
146
+ - query: "document-shell completeness, pagination caveats, generated indexes, shell-aware AI operations, and roadmap closure"
147
+
148
+ ### Prompt
149
+
150
+ ```text
151
+ Primary goal:
152
+ - Close the shared-plan docs around the Wave 16 document-shell and shell-aware AI slice without implying exact Word parity or final parity closure.
153
+
154
+ Required context before coding:
155
+ - Read docs/reference/repository-guidance.md.
156
+ - Read docs/research/agent-context-sources.md.
157
+ - Read docs/reference/legal-checklist.md.
158
+ - Read docs/plans/master-plan.md, docs/plans/current-state.md, docs/plans/migration.md, and docs/plans/component-cutover-matrix.md.
159
+ - Read the Wave 16 proof notes.
160
+
161
+ File ownership (only touch these paths):
162
+ - README.md
163
+ - docs/roadmap.md
164
+ - docs/plans/master-plan.md
165
+ - docs/plans/current-state.md
166
+ - docs/plans/migration.md
167
+ - docs/plans/component-cutover-matrix.md
168
+ - docs/plans/component-cutover-matrix.json
169
+ - docs/reference/legal-checklist.md
170
+ ```
171
+
172
+ ## Agent A1: Document Shell Ownership And Bounded Projection
173
+
174
+ ### Executor
175
+
176
+ - profile: proof-owner
177
+ - retry-policy: sticky
178
+
179
+ ### Context7
180
+
181
+ - bundle: word-editor-ooxml
182
+ - query: "document shell import/export, headers, footers, notes, pagination cues, generated indexes, and bounded shell projection"
183
+
184
+ ### Skills
185
+
186
+ - role-implementation
187
+ - domain-editor-architecture
188
+ - domain-docx-compatibility
189
+
190
+ ### Components
191
+
192
+ - docx-import-and-normalization
193
+ - docx-export-and-serialization
194
+ - unsupported-ooxml-preservation
195
+ - compatibility-and-word-validation
196
+ - react-editor-ui
197
+
198
+ ### Exit contract
199
+
200
+ - completion: authoritative
201
+ - durability: durable
202
+ - proof: integration
203
+ - doc-impact: owned
204
+
205
+ ### Deliverables
206
+
207
+ - src/io/ooxml/parse-document-shell.ts
208
+ - src/io/export/serialize-document-shell.ts
209
+ - src/ui-tailwind/review/tw-document-shell-panel.tsx
210
+ - test/io/document-shell-roundtrip.test.ts
211
+ - docs/plans/waves/reviews/wave-16-platform-proof.md
212
+
213
+ ### Proof artifacts
214
+
215
+ - path: .tmp/wave-16-legal-platform/document-shell-report.json | kind: integration-report | required-for: fleet-ready
216
+ - path: .tmp/wave-16-legal-platform/headers-footers-report.json | kind: integration-report | required-for: fleet-ready
217
+ - path: .tmp/wave-16-legal-platform/notes-report.json | kind: integration-report | required-for: fleet-ready
218
+ - path: .tmp/wave-16-legal-platform/pagination-report.json | kind: integration-report | required-for: fleet-ready
219
+ - path: .tmp/wave-16-legal-platform/toc-and-index-report.json | kind: integration-report | required-for: fleet-ready
220
+ - path: .tmp/wave-16-legal-platform/document-shell-slice-report.json | kind: integration-report | required-for: fleet-ready
221
+ - path: .tmp/wave-16-legal-platform/word-reopen-notes.md | kind: proof-note | required-for: fleet-ready
222
+
223
+ ### Prompt
224
+
225
+ ```text
226
+ Primary goal:
227
+ - Close the remaining document-shell gap on the declared slice without faking exact Word parity or claiming final all-up closure.
228
+
229
+ Required context before coding:
230
+ - Read docs/reference/repository-guidance.md.
231
+ - Read docs/research/agent-context-sources.md.
232
+ - Read docs/reference/ooxml-compliance.md.
233
+ - Read docs/reference/legal-checklist.md.
234
+
235
+ Specific expectations:
236
+ - own the declared document-shell slice instead of preserving it passively
237
+ - keep pagination and generated-index claims bounded and test-backed
238
+ - keep projected-versus-owned shell behavior explicit in diagnostics and docs
239
+
240
+ File ownership (only touch these paths):
241
+ - src/io/ooxml/parse-document-shell.ts
242
+ - src/io/export/serialize-document-shell.ts
243
+ - src/ui-tailwind/review/tw-document-shell-panel.tsx
244
+ - test/io/document-shell-roundtrip.test.ts
245
+ - docs/plans/waves/reviews/wave-16-platform-proof.md
246
+ - .tmp/wave-16-legal-platform/
247
+ ```
248
+
249
+ ## Agent A2: Shell-Aware AI Operations
250
+
251
+ ### Executor
252
+
253
+ - profile: implement-fast
254
+ - budget.minutes: 50
255
+
256
+ ### Context7
257
+
258
+ - bundle: word-editor-ooxml
259
+ - query: "shell-aware AI operations, header/footer editing proposals, note-aware suggestions, pagination-safe targeting, and validate/export confirmation flows"
260
+
261
+ ### Skills
262
+
263
+ - role-implementation
264
+ - domain-editor-architecture
265
+ - domain-docx-compatibility
266
+
267
+ ### Components
268
+
269
+ - command-and-transaction-runtime
270
+ - compatibility-and-word-validation
271
+ - react-editor-ui
272
+
273
+ ### Exit contract
274
+
275
+ - completion: authoritative
276
+ - durability: durable
277
+ - proof: integration
278
+ - doc-impact: owned
279
+
280
+ ### Deliverables
281
+
282
+ - src/runtime/ai-shell-operations.ts
283
+ - src/ui-tailwind/review/tw-ai-shell-operations-panel.tsx
284
+ - test/runtime/ai-shell-operations.test.ts
285
+ - docs/plans/waves/reviews/wave-16-ai-shell-proof.md
286
+
287
+ ### Proof artifacts
288
+
289
+ - path: .tmp/wave-16-legal-platform/ai-header-footer-report.json | kind: integration-report | required-for: fleet-ready
290
+ - path: .tmp/wave-16-legal-platform/ai-notes-report.json | kind: integration-report | required-for: fleet-ready
291
+ - path: .tmp/wave-16-legal-platform/ai-shell-confirmation-report.json | kind: integration-report | required-for: fleet-ready
292
+
293
+ ### Prompt
294
+
295
+ ```text
296
+ Primary goal:
297
+ - Add shell-aware AI operations only where the runtime can map shell surfaces, validate the result, and preserve export safety.
298
+
299
+ Required context before coding:
300
+ - Read docs/reference/repository-guidance.md.
301
+ - Read docs/research/agent-context-sources.md.
302
+ - Read docs/reference/public-api.md.
303
+ - Read docs/reference/ooxml-compliance.md.
304
+
305
+ Specific expectations:
306
+ - header/footer/note operations must be bounded to explicitly supported shell targets
307
+ - shell-aware AI results must remain proposal-first and review-confirmed
308
+ - do not imply exact pagination parity, object-level review completeness, or final legal-platform closure in this wave
309
+
310
+ File ownership (only touch these paths):
311
+ - src/runtime/ai-shell-operations.ts
312
+ - src/ui-tailwind/review/tw-ai-shell-operations-panel.tsx
313
+ - test/runtime/ai-shell-operations.test.ts
314
+ - docs/plans/waves/reviews/wave-16-ai-shell-proof.md
315
+ - .tmp/wave-16-legal-platform/
316
+ ```