@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,526 @@
1
+ # Wave 7 - Preservation Proof, Package Fidelity, And Review Trust
2
+
3
+ **Commit message**: `Build: baseline preserved parts, preserve-only fidelity, and review trust`
4
+
5
+ ## Component promotions
6
+
7
+ - unsupported-ooxml-preservation: baseline-proved
8
+ - tracked-changes-and-review-actions: baseline-proved
9
+
10
+ ## Scope note
11
+
12
+ Wave 7 closes the remaining preserve-only package backbone after the imported-redline freeform export block was removed on the canonical export path. It is the wave where preserve-only behavior must become explicit across the full Wave 7 fixture set, including package parts, note parts, fields, custom XML, unknown OOXML, malformed packages, and imported review markup that the editor does not safely own.
13
+
14
+ This wave also closes the bounded tracked-change baseline gate that Wave 6 intentionally left open. The goal is not broader feature expansion. The goal is to prove that the supported tracked-change slice and the preserve-only review slice now coexist without silent loss, destructive downgrade, or misleading export claims.
15
+
16
+ ## Entry criteria
17
+
18
+ - Wave 6 proof artifacts and review notes are current.
19
+ - `docs/plans/current-state.md` and `docs/roadmap.md` still describe imported redline export as `repo-landed`, not fully certified.
20
+ - The Wave 7-owned fixture registry in `test/fixtures/docx/README.md` is aligned to `F15` through `F21`.
21
+ - Wave 8 work must not start until the Wave 7 proof bundle, trust note, and integration summary all exist and agree.
22
+
23
+ ## Promotion conditions
24
+
25
+ - `F15` through `F21` are explicitly covered with machine-visible proof and matching notes.
26
+ - preserve-only comment and revision markup inside opaque or locked content cannot silently disappear during export
27
+ - preserved parts, relationships, and content-type declarations survive reattachment with explicit reporting
28
+ - malformed packages stay fail-closed in diagnostics or read-only mode with export blocked
29
+ - the supported tracked-change slice is baseline-proved at the preserve-only boundary rather than jumping from `repo-landed` to live-pilot claims later
30
+
31
+ ## Context7 defaults
32
+
33
+ - bundle: word-editor-ooxml
34
+ - query: "package preservation, preserved parts, preserve-only package fidelity, imported review markup, and malformed package diagnostics"
35
+
36
+ ## Agent A0: cont-QA
37
+
38
+ ### Role prompts
39
+
40
+ - docs/agents/wave-cont-qa-role.md
41
+
42
+ ### Executor
43
+
44
+ - profile: deep-review
45
+
46
+ ### Context7
47
+
48
+ - bundle: word-editor-testing
49
+ - query: "preserved-part proof completeness, preserve-only package fidelity, tracked-change boundary discipline, and malformed-doc closure"
50
+
51
+ ### Prompt
52
+
53
+ ```text
54
+ Primary goal:
55
+ - Refuse closure unless preserved-part fidelity, preserve-only review fidelity, and the tracked-change baseline gate are all backed by explicit evidence.
56
+
57
+ Required context before coding:
58
+ - Read docs/reference/repository-guidance.md.
59
+ - Read docs/research/agent-context-sources.md.
60
+ - Read docs/plans/current-state.md and docs/plans/waves/wave-6.md.
61
+ - Read the preservation, revisions, and malformed-doc sections of the local research docs.
62
+
63
+ Specific expectations:
64
+ - preserve-only must stay machine-visible proof, not a narrative promise
65
+ - supported imported redline export must remain non-destructive while preserve-only review cases stay explicit
66
+ - malformed docs must stay fail-closed into diagnostics or read-only mode
67
+ - block closure if the tracked-change maturity line still overclaims beyond the committed proof
68
+
69
+ File ownership (only touch these paths):
70
+ - docs/plans/waves/reviews/wave-7-cont-qa.md
71
+ ```
72
+
73
+ ## Agent A8: Integration Steward
74
+
75
+ ### Role prompts
76
+
77
+ - docs/agents/wave-integration-role.md
78
+
79
+ ### Executor
80
+
81
+ - profile: deep-review
82
+
83
+ ### Context7
84
+
85
+ - bundle: word-editor-ooxml
86
+ - query: "reattachment integrity, preserved-part reporting, tracked-change boundary proof, preserve-only package fidelity, and diagnostics mode"
87
+
88
+ ### Prompt
89
+
90
+ ```text
91
+ Primary goal:
92
+ - Reconcile preserved-part reporting, export reattachment, tracked-change boundary proof, preserve-only package fidelity, and diagnostics evidence into one baseline claim.
93
+
94
+ Required context before coding:
95
+ - Read docs/reference/repository-guidance.md.
96
+ - Read docs/research/agent-context-sources.md.
97
+ - Read docs/plans/master-plan.md, docs/plans/current-state.md, and docs/plans/waves/wave-7.md.
98
+
99
+ Specific expectations:
100
+ - block closure if preserved fragments can silently disappear
101
+ - block closure if preserve-only imported comment or revision markup is still stripped or rewritten destructively
102
+ - block closure if tracked-change proof still depends on a weaker maturity line than the shared docs imply
103
+ - block closure if read-only diagnostics mode still allows destructive export
104
+
105
+ File ownership (only touch these paths):
106
+ - .tmp/main-wave-launcher/integration/wave-7.md
107
+ - .tmp/main-wave-launcher/integration/wave-7.json
108
+ ```
109
+
110
+ ## Agent A9: Documentation Steward
111
+
112
+ ### Role prompts
113
+
114
+ - docs/agents/wave-documentation-role.md
115
+
116
+ ### Executor
117
+
118
+ - profile: docs-pass
119
+
120
+ ### Context7
121
+
122
+ - bundle: word-editor-testing
123
+ - query: "documenting preserve-only guarantees, tracked-change baseline proof, package fidelity, and diagnostics-mode behavior"
124
+
125
+ ### Prompt
126
+
127
+ ```text
128
+ Primary goal:
129
+ - Update shared-plan docs to make preserved-part guarantees, tracked-change baseline closure, canonical export boundaries, and diagnostics-mode behavior explicit.
130
+
131
+ Required context before coding:
132
+ - Read docs/reference/repository-guidance.md.
133
+ - Read docs/research/agent-context-sources.md.
134
+ - Read docs/plans/master-plan.md, docs/plans/current-state.md, and docs/plans/component-cutover-matrix.md.
135
+ - Read the Wave 7 proof notes.
136
+
137
+ File ownership (only touch these paths):
138
+ - docs/roadmap.md
139
+ - docs/plans/master-plan.md
140
+ - docs/plans/current-state.md
141
+ - docs/plans/migration.md
142
+ - docs/plans/component-cutover-matrix.md
143
+ - docs/plans/component-cutover-matrix.json
144
+ ```
145
+
146
+ ## Agent A1: Package Preservation And Reattachment
147
+
148
+ ### Executor
149
+
150
+ - profile: implement-fast
151
+ - budget.minutes: 45
152
+
153
+ ### Context7
154
+
155
+ - bundle: word-editor-ooxml
156
+ - query: "package parts, relationship manifests, content types, note parts, and safe reattachment of preserved OOXML"
157
+
158
+ ### Skills
159
+
160
+ - role-implementation
161
+ - domain-docx-compatibility
162
+
163
+ ### Components
164
+
165
+ - unsupported-ooxml-preservation
166
+
167
+ ### Exit contract
168
+
169
+ - completion: authoritative
170
+ - durability: durable
171
+ - proof: integration
172
+ - doc-impact: owned
173
+
174
+ ### Deliverables
175
+
176
+ - src/preservation/package-preservation.ts
177
+ - src/io/export/reattach-preserved-parts.ts
178
+ - src/io/export/export-session.ts
179
+ - src/preservation/markup-compatibility.ts
180
+ - test/preservation/package-preservation.test.ts
181
+
182
+ ### Prompt
183
+
184
+ ```text
185
+ Primary goal:
186
+ - Make preservation concrete at the package graph level, including relationships, content types, note parts, and safe export behavior around preserve-only package surfaces.
187
+
188
+ Required context before coding:
189
+ - Read docs/reference/repository-guidance.md.
190
+ - Read docs/research/agent-context-sources.md.
191
+ - Read docs/reference/ooxml-compliance.md.
192
+ - Read the preservation sections of the local research docs.
193
+
194
+ Specific expectations:
195
+ - preserve unknown parts and relationships unless the editor explicitly owns them
196
+ - preserve footnote, endnote, field, and custom XML package surfaces without inventing semantic rewrites
197
+ - keep canonical imported-redline export non-destructive while preserve-only package regions remain explicit
198
+ - keep AlternateContent and mc:Ignorable branches intact
199
+
200
+ File ownership (only touch these paths):
201
+ - src/preservation/package-preservation.ts
202
+ - src/io/export/reattach-preserved-parts.ts
203
+ - src/io/export/export-session.ts
204
+ - src/preservation/markup-compatibility.ts
205
+ - test/preservation/package-preservation.test.ts
206
+ ```
207
+
208
+ ## Agent A2: Opaque Regions, Locked Editing, And Trust Messaging
209
+
210
+ ### Executor
211
+
212
+ - profile: implement-fast
213
+ - budget.minutes: 40
214
+
215
+ ### Context7
216
+
217
+ - bundle: word-editor-ui
218
+ - query: "locked regions, opaque placeholders, preserve-only warnings, and trustworthy user-facing review messaging"
219
+
220
+ ### Skills
221
+
222
+ - role-implementation
223
+ - domain-docx-compatibility
224
+ - domain-legal-review
225
+
226
+ ### Components
227
+
228
+ - unsupported-ooxml-preservation
229
+
230
+ ### Exit contract
231
+
232
+ - completion: authoritative
233
+ - durability: durable
234
+ - proof: integration
235
+ - doc-impact: owned
236
+
237
+ ### Deliverables
238
+
239
+ - src/preservation/opaque-region.ts
240
+ - src/ui/compatibility/locked-region-panel.tsx
241
+ - src/ui/compatibility/compatibility-panel.tsx
242
+ - src/ui/editor-surface/opaque-region-view.tsx
243
+ - src/ui/editor-surface/editor-surface.tsx
244
+ - src/ui/status/status-bar.tsx
245
+ - test/ui/opaque-region.test.tsx
246
+ - test/ui/core-text-editor.test.tsx
247
+ - test/ui/word-review-editor.interaction.test.tsx
248
+
249
+ ### Prompt
250
+
251
+ ```text
252
+ Primary goal:
253
+ - Expose preserve-only content as locked, precise, non-destructive UI surfaces with trustworthy warnings and export-block messaging.
254
+
255
+ Required context before coding:
256
+ - Read DESIGN.md.
257
+ - Read docs/reference/repository-guidance.md.
258
+ - Read docs/research/agent-context-sources.md.
259
+ - Read docs/plans/waves/specs/wave-1-review-and-ui-contracts.md.
260
+
261
+ Specific expectations:
262
+ - warnings must be specific and actionable
263
+ - deleting opaque regions must be explicit rather than incidental
264
+ - diagnostics/read-only mode must explain why export is blocked without overstating unsupported-fatal scope
265
+ - preserve-only review markup must be understandable without visually overwhelming the document surface
266
+ - mount the preserve-only trust surfaces in the shipped editor path; isolated helper coverage is not enough for Wave 7 closure
267
+ - render concrete `blockExportReasons` in the mounted compatibility UI and keep the status bar from claiming `Compatibility: Clear` while export is blocked by diagnostics mode
268
+
269
+ File ownership (only touch these paths):
270
+ - src/preservation/opaque-region.ts
271
+ - src/ui/compatibility/locked-region-panel.tsx
272
+ - src/ui/compatibility/compatibility-panel.tsx
273
+ - src/ui/editor-surface/opaque-region-view.tsx
274
+ - src/ui/editor-surface/editor-surface.tsx
275
+ - src/ui/status/status-bar.tsx
276
+ - test/ui/opaque-region.test.tsx
277
+ - test/ui/core-text-editor.test.tsx
278
+ - test/ui/word-review-editor.interaction.test.tsx
279
+ ```
280
+
281
+ ## Agent A3: Diagnostics And Corrupt Package Handling
282
+
283
+ ### Executor
284
+
285
+ - profile: implement-fast
286
+ - budget.minutes: 40
287
+
288
+ ### Context7
289
+
290
+ - bundle: word-editor-ooxml
291
+ - query: "ZIP integrity checks, broken relationship graphs, malformed XML, and read-only diagnostics for unsupported-fatal documents"
292
+
293
+ ### Skills
294
+
295
+ - role-implementation
296
+ - domain-docx-compatibility
297
+
298
+ ### Components
299
+
300
+ - unsupported-ooxml-preservation
301
+
302
+ ### Exit contract
303
+
304
+ - completion: authoritative
305
+ - durability: durable
306
+ - proof: integration
307
+ - doc-impact: owned
308
+
309
+ ### Deliverables
310
+
311
+ - src/io/opc/corrupt-package.ts
312
+ - src/validation/import-diagnostics.ts
313
+ - src/runtime/read-only-diagnostics-runtime.ts
314
+ - src/io/docx-session.ts
315
+ - test/validation/malformed-doc.test.ts
316
+ - test/io/docx-session.test.ts
317
+
318
+ ### Prompt
319
+
320
+ ```text
321
+ Primary goal:
322
+ - Fail closed on malformed documents while still giving the operator useful diagnostics and keeping package failures distinct from later validation failures.
323
+
324
+ Required context before coding:
325
+ - Read docs/reference/repository-guidance.md.
326
+ - Read docs/research/agent-context-sources.md.
327
+ - Read docs/reference/ooxml-compliance.md.
328
+ - Read the malformed-document sections of the local research docs.
329
+
330
+ Specific expectations:
331
+ - no destructive export in diagnostics mode
332
+ - package failures and SDK failures must stay distinguishable
333
+ - read-only diagnostics must preserve the import truth instead of pretending the document is partially editable
334
+ - adopt the shared diagnostics helpers on the live `loadDocxEditorSession` path; helper-only proof is not enough for Wave 7 closure
335
+ - keep malformed-package intake and validation-failure intake on a single conservative diagnostics contract without fabricating editability
336
+
337
+ File ownership (only touch these paths):
338
+ - src/io/opc/corrupt-package.ts
339
+ - src/validation/import-diagnostics.ts
340
+ - src/runtime/read-only-diagnostics-runtime.ts
341
+ - src/io/docx-session.ts
342
+ - test/validation/malformed-doc.test.ts
343
+ - test/io/docx-session.test.ts
344
+ ```
345
+
346
+ ## Agent A4: Preservation And Tracked-Change Baseline Proof
347
+
348
+ ### Executor
349
+
350
+ - profile: proof-owner
351
+ - retry-policy: sticky
352
+
353
+ ### Context7
354
+
355
+ - bundle: word-editor-testing
356
+ - query: "preservation fixtures, tracked-change boundary proof, preserved-part reporting, package fidelity, and malformed-doc diagnostics evidence"
357
+
358
+ ### Skills
359
+
360
+ - role-implementation
361
+ - domain-docx-compatibility
362
+
363
+ ### Components
364
+
365
+ - unsupported-ooxml-preservation
366
+ - tracked-changes-and-review-actions
367
+
368
+ ### Exit contract
369
+
370
+ - completion: authoritative
371
+ - durability: durable
372
+ - proof: integration
373
+ - doc-impact: owned
374
+
375
+ ### Deliverables
376
+
377
+ - docs/plans/waves/reviews/wave-7-preservation-proof.md
378
+ - test/fixtures/docx/F15-sections-headers-footers.docx
379
+ - test/fixtures/docx/F16-footnotes-endnotes.docx
380
+ - test/fixtures/docx/F17-fields-and-toc.docx
381
+ - test/fixtures/docx/F18-content-controls-template.docx
382
+ - test/fixtures/docx/F19-custom-xml-doc-assembly.docx
383
+ - test/fixtures/docx/F20-unknown-ooxml-and-alternatecontent.docx
384
+ - test/fixtures/docx/F21-malformed-broken-docx.docx
385
+
386
+ ### Proof artifacts
387
+
388
+ - path: .tmp/wave-7-preservation/preservation-manifest.json | kind: manifest | required-for: baseline-proved
389
+ - path: .tmp/wave-7-preservation/reattachment-report.json | kind: roundtrip-report | required-for: baseline-proved
390
+ - path: .tmp/wave-7-preservation/package-fidelity-report.json | kind: action-report | required-for: baseline-proved
391
+ - path: .tmp/wave-7-preservation/review-boundary-report.json | kind: integration-report | required-for: baseline-proved
392
+ - path: .tmp/wave-7-preservation/malformed-doc-report.json | kind: diagnostics-report | required-for: baseline-proved
393
+
394
+ ### Prompt
395
+
396
+ ```text
397
+ Primary goal:
398
+ - Produce the bounded proof bundle for preserve-only behavior, tracked-change boundary safety, preserved-part reporting, package fidelity, and malformed-doc handling.
399
+
400
+ Required context before coding:
401
+ - Read docs/reference/repository-guidance.md.
402
+ - Read docs/research/agent-context-sources.md.
403
+ - Read docs/reference/ooxml-compliance.md.
404
+ - Read test/fixtures/docx/README.md.
405
+
406
+ Specific expectations:
407
+ - prove preservation for sections, headers, notes, fields, SDTs, custom XML, and AlternateContent
408
+ - prove canonical imported-redline export remains safe while preserve-only package and review cases stay explicit
409
+ - prove preserve-only imported comment and revision markup are not silently stripped
410
+ - prove diagnostics/read-only handling for malformed packages
411
+ - record any user-visible lock or warning behavior explicitly
412
+
413
+ File ownership (only touch these paths):
414
+ - docs/plans/waves/reviews/wave-7-preservation-proof.md
415
+ - test/fixtures/docx/F15-sections-headers-footers.docx
416
+ - test/fixtures/docx/F16-footnotes-endnotes.docx
417
+ - test/fixtures/docx/F17-fields-and-toc.docx
418
+ - test/fixtures/docx/F18-content-controls-template.docx
419
+ - test/fixtures/docx/F19-custom-xml-doc-assembly.docx
420
+ - test/fixtures/docx/F20-unknown-ooxml-and-alternatecontent.docx
421
+ - test/fixtures/docx/F21-malformed-broken-docx.docx
422
+ - .tmp/wave-7-preservation/
423
+ ```
424
+
425
+ ## Agent A5: OOXML Preservation Compliance Review
426
+
427
+ ### Role prompts
428
+
429
+ - docs/agents/wave-cont-qa-role.md
430
+
431
+ ### Executor
432
+
433
+ - profile: deep-review
434
+
435
+ ### Context7
436
+
437
+ - bundle: word-editor-ooxml
438
+ - query: "unknown parts, relationship retention, AlternateContent, preserve-only review markup, and non-destructive OOXML export boundaries"
439
+
440
+ ### Components
441
+
442
+ - unsupported-ooxml-preservation
443
+ - tracked-changes-and-review-actions
444
+
445
+ ### Exit contract
446
+
447
+ - completion: integrated
448
+ - durability: durable
449
+ - proof: integration
450
+ - doc-impact: owned
451
+
452
+ ### Prompt
453
+
454
+ ```text
455
+ Primary goal:
456
+ - Review the Wave 7 output as an OOXML and package-fidelity slice rather than only a test slice.
457
+
458
+ Required context before coding:
459
+ - Read docs/reference/ooxml-compliance.md.
460
+ - Read docs/reference/repository-guidance.md.
461
+ - Read docs/research/agent-context-sources.md.
462
+ - Read docs/plans/waves/wave-7.md and the preservation proof note.
463
+
464
+ Specific expectations:
465
+ - block closure if unknown relationships or package parts can disappear without an explicit compatibility story
466
+ - block closure if AlternateContent, mc:Ignorable, note parts, field markup, or custom XML wrappers are overclaimed
467
+ - block closure if preserve-only review markup still depends on regex-style stripping or narrative exceptions
468
+
469
+ File ownership (only touch these paths):
470
+ - docs/plans/waves/reviews/wave-7-ooxml-compliance.md
471
+ ```
472
+
473
+ ## Agent A6: Preserve-Only Trust And Warning UX Pass
474
+
475
+ ### Executor
476
+
477
+ - profile: proof-owner
478
+ - retry-policy: sticky
479
+
480
+ ### Context7
481
+
482
+ - bundle: word-editor-ui
483
+ - query: "user trust around locked regions, export blocking, diagnostics mode, and preserve-only warning comprehension"
484
+
485
+ ### Components
486
+
487
+ - unsupported-ooxml-preservation
488
+
489
+ ### Exit contract
490
+
491
+ - completion: authoritative
492
+ - durability: durable
493
+ - proof: integration
494
+ - doc-impact: owned
495
+
496
+ ### Deliverables
497
+
498
+ - docs/plans/waves/reviews/wave-7-trust-ux.md
499
+
500
+ ### Proof artifacts
501
+
502
+ - path: .tmp/wave-7-preservation/trust-ux-checklist.md | kind: proof-note | required-for: baseline-proved
503
+ - path: .tmp/wave-7-preservation/locked-region-ui-smoke.json | kind: integration-report | required-for: baseline-proved
504
+
505
+ ### Prompt
506
+
507
+ ```text
508
+ Primary goal:
509
+ - Prove that preserve-only and diagnostics behavior is understandable, explicit, and calm enough for legal-review workflows.
510
+
511
+ Required context before coding:
512
+ - Read DESIGN.md.
513
+ - Read docs/reference/repository-guidance.md.
514
+ - Read docs/research/agent-context-sources.md.
515
+ - Read docs/plans/waves/wave-7.md.
516
+ - Read the locked-region and diagnostics UI surfaces in source and proof notes.
517
+
518
+ Specific expectations:
519
+ - verify that locked content, preserve-only warnings, blocked export, and diagnostics mode answer "what happened, what is safe, and what can I do next?"
520
+ - record misunderstandings or ambiguity as blocking issues, not polish notes
521
+ - keep the document surface central and warning chrome secondary
522
+
523
+ File ownership (only touch these paths):
524
+ - docs/plans/waves/reviews/wave-7-trust-ux.md
525
+ - .tmp/wave-7-preservation/
526
+ ```