@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,33 @@
1
+ # F09 Comments anchored single paragraph
2
+
3
+ ## Source shape
4
+
5
+ - file: `F09-comments-single-paragraph.docx`
6
+ - source package findings: `0`
7
+ - source SDK findings: `0`
8
+ - observed focus: single-paragraph comment anchors, comment references, and comment-part survival
9
+
10
+ ## Import expectation
11
+
12
+ - single-paragraph comment anchors should import into runtime-owned comment state with stable anchor mapping
13
+ - the relevant comment metadata should remain attached to the owning paragraph instead of falling back to opaque preserved markup
14
+
15
+ ## Edit expectation
16
+
17
+ - supported text edits within the anchored paragraph remain allowed
18
+ - anchor remapping must preserve the comment attachment or surface an explicit warning instead of silently detaching it
19
+
20
+ ## Export expectation
21
+
22
+ - export should preserve comment-part content plus the main-story references needed to reattach the comment
23
+ - reimported output should still resolve the same comment thread to the edited paragraph span
24
+
25
+ ## Validation expectation
26
+
27
+ - package integrity should remain valid after supported edits
28
+ - the source and supported edited exports should remain at `0` package findings and `0` SDK findings
29
+
30
+ ## Word expectation
31
+
32
+ - Word should reopen the edited package without repair prompts
33
+ - the comment should remain attached to the intended paragraph span after export
@@ -0,0 +1,33 @@
1
+ # F10 Threaded comments and resolve
2
+
3
+ ## Source shape
4
+
5
+ - file: `F10-threaded-comments-resolve.docx`
6
+ - source package findings: `0`
7
+ - source SDK findings: `0`
8
+ - observed focus: comment threads, reply ordering, and resolution metadata on single-paragraph anchors
9
+
10
+ ## Import expectation
11
+
12
+ - threaded comments should import into runtime-owned thread state with reply order preserved
13
+ - resolution metadata should remain available to the review UI rather than being flattened away
14
+
15
+ ## Edit expectation
16
+
17
+ - supported thread navigation and text edits within the anchored paragraph remain allowed
18
+ - thread metadata and resolution state must remain stable through supported edits
19
+
20
+ ## Export expectation
21
+
22
+ - export should preserve comment thread structure, reply metadata, and resolution state
23
+ - reimported output should still reconstruct the same thread shape on the same supported anchor range
24
+
25
+ ## Validation expectation
26
+
27
+ - package integrity should remain valid after supported edits
28
+ - the source and supported edited exports should remain at `0` package findings and `0` SDK findings
29
+
30
+ ## Word expectation
31
+
32
+ - Word should reopen the edited package without repair prompts
33
+ - threaded comments and resolution state should remain intact after export
@@ -0,0 +1,33 @@
1
+ # F11 Redlines basic
2
+
3
+ ## Source shape
4
+
5
+ - file: `F11-redlines-basic.docx`
6
+ - source package findings: `0`
7
+ - source SDK findings: `0`
8
+ - observed focus: run-level `w:ins` and `w:del` markup with accept or reject proof on the supported slice
9
+
10
+ ## Import expectation
11
+
12
+ - run-level insertions and deletions should import into runtime-owned revision state
13
+ - revision author and date metadata should remain attached to the imported revision records
14
+
15
+ ## Edit expectation
16
+
17
+ - accept and reject actions on supported run-level insertions and deletions remain supported
18
+ - supported text edits must not silently flatten imported revision markup outside the owned slice
19
+
20
+ ## Export expectation
21
+
22
+ - export should preserve revision markup when no review action is applied
23
+ - accepted and rejected exports should normalize the owned run-level changes without introducing unsupported revision rewrites
24
+
25
+ ## Validation expectation
26
+
27
+ - package integrity should remain valid after supported review actions
28
+ - the source and supported edited exports should remain at `0` package findings and `0` SDK findings
29
+
30
+ ## Word expectation
31
+
32
+ - Word should reopen the edited package without repair prompts
33
+ - tracked insertions and deletions should remain intelligible in Word after roundtrip or supported review actions
@@ -0,0 +1,33 @@
1
+ # F12 Redlines paragraph joins and splits
2
+
3
+ ## Source shape
4
+
5
+ - file: `F12-redlines-paragraph-joins-splits.docx`
6
+ - source package findings: `0`
7
+ - source SDK findings: `0`
8
+ - observed focus: paragraph-mark revision behavior and runtime-owned accept or reject proof for paragraph joins and splits
9
+
10
+ ## Import expectation
11
+
12
+ - paragraph-mark revisions should import into runtime-owned revision state with boundary metadata preserved
13
+ - the runtime should distinguish supported paragraph-mark cases from structural revision cases it does not own
14
+
15
+ ## Edit expectation
16
+
17
+ - supported accept and reject actions on the owned paragraph-mark revision slice remain allowed
18
+ - ambiguous or unsupported structural rewrites must warn or block rather than silently rewrite paragraph boundaries
19
+
20
+ ## Export expectation
21
+
22
+ - export should preserve paragraph-mark revision markup when no supported review action is applied
23
+ - accepted and rejected exports should normalize the owned paragraph boundary changes without losing surrounding content
24
+
25
+ ## Validation expectation
26
+
27
+ - package integrity should remain valid after supported review actions
28
+ - the source and supported edited exports should remain at `0` package findings and `0` SDK findings
29
+
30
+ ## Word expectation
31
+
32
+ - Word should reopen the edited package without repair prompts
33
+ - paragraph join and split behavior should remain intelligible in Word after supported review actions
@@ -0,0 +1,33 @@
1
+ # F13 Comments on deleted text
2
+
3
+ ## Source shape
4
+
5
+ - file: `F13-comments-on-deleted-text.docx`
6
+ - source package findings: `0`
7
+ - source SDK findings: `0`
8
+ - observed focus: comment anchors that interact with deleted text plus runtime diagnostics around comment and revision overlap
9
+
10
+ ## Import expectation
11
+
12
+ - supported comment and revision metadata should import into runtime-owned state where the anchor remains representable
13
+ - overlap cases that fall outside the owned slice must stay explicit through diagnostics rather than being silently flattened
14
+
15
+ ## Edit expectation
16
+
17
+ - supported edits should preserve comment and deletion mapping where the runtime owns that interaction
18
+ - unsupported overlap cases must warn or block rather than detach anchors or rewrite deleted content silently
19
+
20
+ ## Export expectation
21
+
22
+ - export should preserve the comment and deletion interaction for owned cases
23
+ - roundtripped output should keep explicit overlap behavior instead of collapsing the review structure
24
+
25
+ ## Validation expectation
26
+
27
+ - package integrity should remain valid after supported edits
28
+ - the source and supported edited exports should remain at `0` package findings and `0` SDK findings
29
+
30
+ ## Word expectation
31
+
32
+ - Word should reopen the edited package without repair prompts
33
+ - comment and deleted-text behavior should remain explicit and reviewable after export
@@ -0,0 +1,33 @@
1
+ # F14 Revisions in tables and lists
2
+
3
+ ## Source shape
4
+
5
+ - file: `F14-revisions-in-tables-and-lists.docx`
6
+ - source package findings: `0`
7
+ - source SDK findings: `0`
8
+ - observed focus: structural revision markup inside table and list structures that the current runtime does not own semantically
9
+
10
+ ## Import expectation
11
+
12
+ - surrounding supported story content may import into canonical editable state
13
+ - structural revision markup inside tables or list structure should remain preserve-only and explicitly disclosed
14
+
15
+ ## Edit expectation
16
+
17
+ - supported edits may occur outside the preserved structural revision regions
18
+ - preserved structural revision regions must remain atomic and non-editable on the current live path
19
+
20
+ ## Export expectation
21
+
22
+ - export should preserve the original structural revision markup without semantic rewriting
23
+ - table and list revision structure should survive roundtrip intact as preserve-only content
24
+
25
+ ## Validation expectation
26
+
27
+ - package integrity should remain valid after supported surrounding edits
28
+ - the source and preserve-only roundtrip exports should remain at `0` package findings and `0` SDK findings
29
+
30
+ ## Word expectation
31
+
32
+ - Word should reopen the edited package without repair prompts
33
+ - structural review markup in tables and lists should remain intact after export
@@ -0,0 +1,33 @@
1
+ # F15 Sections and headers footers
2
+
3
+ ## Source shape
4
+
5
+ - file: `F15-sections-headers-footers.docx`
6
+ - source package findings: `0`
7
+ - source SDK findings: `0`
8
+ - observed focus: `w:sectPr`, header parts, footer parts, and the relationship wiring that keeps them attached to the document
9
+
10
+ ## Import expectation
11
+
12
+ - body story content may import into canonical editable text where supported
13
+ - section properties plus header and footer content should remain preserve-only package-backed surfaces
14
+
15
+ ## Edit expectation
16
+
17
+ - supported edits may occur in the main story outside preserved section boundaries
18
+ - section, header, and footer surfaces must remain atomic and non-editable on the current live path
19
+
20
+ ## Export expectation
21
+
22
+ - export should preserve header and footer parts, relationship targets, and section-property wiring
23
+ - reattached package state should survive roundtrip without semantic rewriting of the preserved surfaces
24
+
25
+ ## Validation expectation
26
+
27
+ - package integrity should remain valid after supported surrounding edits
28
+ - the source and preserve-only roundtrip exports should remain at `0` package findings and `0` SDK findings
29
+
30
+ ## Word expectation
31
+
32
+ - Word should reopen the edited package without repair prompts
33
+ - section behavior and header or footer content should remain intact after export
@@ -0,0 +1,33 @@
1
+ # F16 Footnotes and endnotes
2
+
3
+ ## Source shape
4
+
5
+ - file: `F16-footnotes-endnotes.docx`
6
+ - source package findings: `0`
7
+ - source SDK findings: `0`
8
+ - observed focus: note references in the main story plus note-part survival in `footnotes.xml` and `endnotes.xml`
9
+
10
+ ## Import expectation
11
+
12
+ - body story content may import into canonical editable text where supported
13
+ - note references and note parts should remain preserve-only package-backed content on the current live path
14
+
15
+ ## Edit expectation
16
+
17
+ - supported edits may occur around preserved note references without rewriting note structure
18
+ - note references and note content must remain atomic and non-editable until first-class note support exists
19
+
20
+ ## Export expectation
21
+
22
+ - export should preserve note references, note parts, and the relationships that keep them attached to the package
23
+ - reattached note content should survive roundtrip without semantic rewriting
24
+
25
+ ## Validation expectation
26
+
27
+ - package integrity should remain valid after supported surrounding edits
28
+ - the source and preserve-only roundtrip exports should remain at `0` package findings and `0` SDK findings
29
+
30
+ ## Word expectation
31
+
32
+ - Word should reopen the edited package without repair prompts
33
+ - footnote and endnote references should continue to resolve correctly after export
@@ -0,0 +1,33 @@
1
+ # F17 Fields and TOC
2
+
3
+ ## Source shape
4
+
5
+ - file: `F17-fields-and-toc.docx`
6
+ - source package findings: `0`
7
+ - source SDK findings: `0`
8
+ - observed focus: field-code markup, TOC-related field structures, and preserve-only field survival
9
+
10
+ ## Import expectation
11
+
12
+ - body story content may import into canonical editable text where supported
13
+ - field-code markup and TOC structures should remain preserve-only package-backed content on the current live path
14
+
15
+ ## Edit expectation
16
+
17
+ - supported edits may occur around preserved field regions without rewriting field semantics
18
+ - field-code and TOC surfaces must remain atomic and non-editable until first-class support exists
19
+
20
+ ## Export expectation
21
+
22
+ - export should preserve `w:fldChar`, `w:instrText`, `w:fldSimple`, and related field markup required by the source package
23
+ - reattached field structures should survive roundtrip without semantic rewriting
24
+
25
+ ## Validation expectation
26
+
27
+ - package integrity should remain valid after supported surrounding edits
28
+ - the source and preserve-only roundtrip exports should remain at `0` package findings and `0` SDK findings
29
+
30
+ ## Word expectation
31
+
32
+ - Word should reopen the edited package without repair prompts
33
+ - field behavior and TOC structure should remain intact after export
@@ -0,0 +1,33 @@
1
+ # F18 Content controls template
2
+
3
+ ## Source shape
4
+
5
+ - file: `F18-content-controls-template.docx`
6
+ - source package findings: `0`
7
+ - source SDK findings: `0`
8
+ - observed focus: `w:sdt` content-control markup, locking semantics, and preserve-only survival
9
+
10
+ ## Import expectation
11
+
12
+ - surrounding supported story content may import into canonical editable text
13
+ - content-control markup should remain preserve-only package-backed content rather than becoming editable canonical structure
14
+
15
+ ## Edit expectation
16
+
17
+ - supported edits may occur outside the preserved content-control region
18
+ - the `w:sdt` surface must remain atomic and non-editable on the current live path
19
+
20
+ ## Export expectation
21
+
22
+ - export should preserve the original content-control subtree and any related package state
23
+ - reattached `w:sdt` markup should survive roundtrip without semantic rewriting
24
+
25
+ ## Validation expectation
26
+
27
+ - package integrity should remain valid after supported surrounding edits
28
+ - the source and preserve-only roundtrip exports should remain at `0` package findings and `0` SDK findings
29
+
30
+ ## Word expectation
31
+
32
+ - Word should reopen the edited package without repair prompts
33
+ - the content-control surface should remain intact and locked after export
@@ -0,0 +1,35 @@
1
+ # F19 Custom XML doc assembly
2
+
3
+ ## Source shape
4
+
5
+ - file: `F19-custom-xml-doc-assembly.docx`
6
+ - source package findings: `0`
7
+ - source SDK findings: `1`
8
+ - observed focus: `w:customXml` wrapper markup plus `/customXml/item1.xml` and `/customXml/itemProps1.xml` package parts
9
+ - inherited SDK note: the source document carries an undeclared `w:uri` attribute on `w:customXml` in `word/document.xml`
10
+
11
+ ## Import expectation
12
+
13
+ - surrounding supported story content may import into canonical editable text
14
+ - the custom XML wrapper and related custom XML parts should remain preserve-only package-backed content on the current live path
15
+
16
+ ## Edit expectation
17
+
18
+ - supported edits may occur outside the preserved custom XML region
19
+ - the `w:customXml` wrapper and related payload must remain atomic and non-editable until first-class support exists
20
+
21
+ ## Export expectation
22
+
23
+ - export should preserve the custom XML wrapper plus the related `/customXml` package parts and relationships
24
+ - roundtrip should remain delta-neutral with respect to the inherited source SDK finding unless the source fixture itself is corrected explicitly
25
+
26
+ ## Validation expectation
27
+
28
+ - package integrity should remain valid after supported surrounding edits
29
+ - preserve-only roundtrip exports should not introduce additional package or SDK findings beyond the inherited source count of `1`
30
+ - this fixture is preserve-only proof, not a zero-finding supported-roundtrip claim
31
+
32
+ ## Word expectation
33
+
34
+ - Word should reopen the edited package without repair prompts
35
+ - the custom XML wrapper and related package payload should remain intact after export
@@ -0,0 +1,33 @@
1
+ # F20 Unknown OOXML and AlternateContent
2
+
3
+ ## Source shape
4
+
5
+ - file: `F20-unknown-ooxml-and-alternatecontent.docx`
6
+ - source package findings: `0`
7
+ - source SDK findings: `0`
8
+ - observed focus: `mc:Ignorable`, `mc:AlternateContent`, unknown namespaced OOXML, preserved package parts, and `altChunk` survival
9
+
10
+ ## Import expectation
11
+
12
+ - surrounding supported story content may import into canonical editable text
13
+ - unknown OOXML, markup-compatibility constructs, and related package parts should remain preserve-only package-backed content
14
+
15
+ ## Edit expectation
16
+
17
+ - supported edits may occur outside the preserved unknown-content regions
18
+ - unknown OOXML and alternate-content surfaces must remain atomic and non-editable on the current live path
19
+
20
+ ## Export expectation
21
+
22
+ - export should preserve `mc:Ignorable`, `mc:AlternateContent`, unknown namespace declarations, `altChunk` references, and related preserved package parts
23
+ - roundtrip should keep the source package’s markup-compatibility envelope intact without semantic rewriting
24
+
25
+ ## Validation expectation
26
+
27
+ - package integrity should remain valid after supported surrounding edits
28
+ - the source and preserve-only roundtrip exports should remain at `0` package findings and `0` SDK findings
29
+
30
+ ## Word expectation
31
+
32
+ - Word should reopen the edited package without repair prompts
33
+ - unknown OOXML and alternate-content fallback behavior should remain intact after export
@@ -0,0 +1,33 @@
1
+ # F21 Malformed broken docx
2
+
3
+ ## Source shape
4
+
5
+ - file: `F21-malformed-broken-docx.docx`
6
+ - source package findings: `0`
7
+ - source SDK or open findings: `1`
8
+ - observed focus: unresolved package relationship state where `word/_rels/document.xml.rels` targets `/word/header1.xml` but that part is missing from the package
9
+
10
+ ## Import expectation
11
+
12
+ - the importer must fail closed into diagnostics or read-only mode rather than claiming a trustworthy editable session
13
+ - the malformed relationship graph must remain explicit as an unsupported-fatal package condition
14
+
15
+ ## Edit expectation
16
+
17
+ - editing that depends on a trusted canonical session must remain blocked
18
+ - the runtime must not silently repair, drop, or rewrite the broken package state
19
+
20
+ ## Export expectation
21
+
22
+ - export must be rejected for this fixture
23
+ - a successful export would be a regression unless the contract is revised deliberately
24
+
25
+ ## Validation expectation
26
+
27
+ - ZIP-level package inspection may still open, but Open XML SDK validation should fail when the package is opened as a `WordprocessingDocument`
28
+ - this fixture proves fail-closed malformed-package handling, not successful roundtrip
29
+
30
+ ## Word expectation
31
+
32
+ - there is no supported editing or export compatibility claim for this fixture
33
+ - the only acceptance bar is explicit diagnostics and blocked export instead of silent destructive repair
@@ -0,0 +1,74 @@
1
+ # DOCX Fixtures
2
+
3
+ This directory is the durable regression corpus for OOXML import, export, preservation, and compatibility proof.
4
+
5
+ Each fixture must have:
6
+
7
+ - a stable fixture ID `F01` through `F21`
8
+ - a human-readable fixture name
9
+ - a declared feature-class focus: `supported-roundtrip`, `preserve-only`, or `unsupported-fatal`
10
+ - companion notes describing import expectations, edit constraints, export expectations, and Word reopen assertions
11
+ - proof-bearing wave ownership so later waves cannot claim compatibility without the named fixture
12
+
13
+ The fixture manifest at `fixtures.manifest.json` now links every frozen fixture entry to its companion note through a stable `noteFileName`.
14
+
15
+ ## Fixture registry
16
+
17
+ | Fixture | Name | Primary focus | Feature class focus | Proof-bearing wave(s) |
18
+ | --- | --- | --- | --- | --- |
19
+ | F01 | Basic contract skeleton | paragraphs, runs, whitespace, paragraph split/merge | `supported-roundtrip` | Wave 3, Wave 10 |
20
+ | F02 | Headings and styles contract | heading styles, paragraph style references, outline-level preservation | `supported-roundtrip` | Wave 3, Wave 10 |
21
+ | F03 | Legal outline numbering | nested numbered and bulleted lists | `supported-roundtrip` | Wave 5, Wave 10 |
22
+ | F04 | Restart numbering schedules | list restart semantics and overrides | `supported-roundtrip` | Wave 5, Wave 10 |
23
+ | F05 | Table-heavy agreement | preserve-only table structure, `tblGrid`, and package-backed cell-content survival | `preserve-only` | Wave 10, Wave 12 if promoted |
24
+ | F06 | Merged-cells signature table | preserve-only horizontal and vertical merged-cell survival | `preserve-only` | Wave 10, Wave 12 if promoted |
25
+ | F07 | Inline images exhibit | inline media parts and relationship integrity | `supported-roundtrip` | Wave 5, Wave 10 |
26
+ | F08 | Hyperlinks exhibit list | external hyperlink rels in body and tables | `supported-roundtrip` | Wave 3, Wave 10 |
27
+ | F09 | Comments anchored single paragraph | supported comment anchors through edits | `supported-roundtrip` | Wave 5, Wave 10 |
28
+ | F10 | Threaded comments and resolve | threaded replies and resolution metadata | `supported-roundtrip` | Wave 5, Wave 10 |
29
+ | F11 | Redlines basic | tracked insertions and deletions with accept/reject | `supported-roundtrip` | Wave 6, Wave 10 |
30
+ | F12 | Redlines paragraph joins/splits | paragraph-mark revision behavior | `supported-roundtrip` | Wave 6, Wave 10 |
31
+ | F13 | Comments on deleted text | comment and deletion interaction diagnostics | `supported-roundtrip` | Wave 6, Wave 10 |
32
+ | F14 | Revisions in tables and lists | structural revision preservation | `preserve-only` | Wave 6, Wave 10 |
33
+ | F15 | Sections + headers/footers | out-of-band section and header/footer survival | `preserve-only` | Wave 7, Wave 10 |
34
+ | F16 | Footnotes and endnotes | note-part survival and mapping | `preserve-only` | Wave 7, Wave 10 |
35
+ | F17 | Fields and TOC | field-code and TOC preservation | `preserve-only` | Wave 7, Wave 10 |
36
+ | F18 | Content controls template | SDT locking and survival | `preserve-only` | Wave 7, Wave 10 |
37
+ | F19 | Custom XML doc assembly | `w:customXml` wrappers and custom XML parts | `preserve-only` | Wave 7, Wave 10 |
38
+ | F20 | Unknown OOXML and AlternateContent | opaque OOXML preservation and markup compatibility | `preserve-only` | Wave 7, Wave 10 |
39
+ | F21 | Malformed/broken docx | safe failure on malformed XML or broken relationships | `unsupported-fatal` | Wave 7, Wave 10 |
40
+
41
+ ## Required companion notes
42
+
43
+ Every fixture note should state:
44
+
45
+ - source shape: the relevant parts, relationships, and OOXML features inside the package
46
+ - import expectation: whether the fixture becomes canonical content, preserved package state, opaque placeholders, or blocked diagnostics
47
+ - edit expectation: what is editable, what is locked, and what destructive actions must warn or block
48
+ - export expectation: whether the serializer regenerates or reattaches the affected surfaces
49
+ - validation expectation: package checks, compatibility-report expectations, and Open XML SDK validation applicability
50
+ - Word expectation: whether Word reopen must match supported editing semantics or preserve-only survival semantics
51
+
52
+ ## Proof policy
53
+
54
+ - Do not claim compatibility for a feature without naming the exact fixture IDs that prove it.
55
+ - Do not replace a preserve-only fixture with a browser-render assertion.
56
+ - `F05` and `F06` currently prove package-backed preserve-only table survival, not runtime-backed table editing.
57
+ - `F19` currently carries one inherited source SDK finding in its custom XML wrapper markup; preserve-only proof for that fixture is judged against a delta-neutral source baseline until the source artifact itself is corrected.
58
+ - If a fixture expands scope, update this registry and the OOXML contract doc in the same change.
59
+ - If a malformed fixture such as F21 starts exporting successfully, treat that as a bug until the contract is explicitly revised.
60
+
61
+ Wave 1 note:
62
+
63
+ - The fixture registry is contract-frozen as the validation backbone for later implementation waves, even though the fixture files themselves still land incrementally.
64
+
65
+ ## Representative Scenario Artifacts
66
+
67
+ Representative real-world documents live under [test/fixtures/scenarios/docx/README.md](/home/coder/docx-react-component/test/fixtures/scenarios/docx/README.md).
68
+
69
+ - They supplement the frozen F01-F21 corpus and do not replace release-gate fixtures.
70
+ - They exercise realistic document combinations that cut across multiple feature classes.
71
+ - They use source-vs-export validator delta tracking because real customer-style documents may already carry source SDK findings.
72
+ - Word reopen and preserve-only survival remain the decisive acceptance gates for those scenario artifacts.
73
+
74
+ Password-to-open Office containers are currently handled upstream of the component. Deferred reference material remains under [test/fixtures/encrypted-docx/README.md](/home/coder/docx-react-component/test/fixtures/encrypted-docx/README.md), but it is not part of the active F01-F21 release-gate corpus.
@@ -0,0 +1,104 @@
1
+ {
2
+ "manifestVersion": "docx-certification/1",
3
+ "wave": 10,
4
+ "bundleRoot": ".tmp/wave-10-certification",
5
+ "automationRoute": "/api/fixtures/[fixtureId]/run",
6
+ "releaseGateFixtures": [
7
+ "F01",
8
+ "F02",
9
+ "F03",
10
+ "F04",
11
+ "F05",
12
+ "F06",
13
+ "F07",
14
+ "F08",
15
+ "F09",
16
+ "F10",
17
+ "F11",
18
+ "F12",
19
+ "F13",
20
+ "F14",
21
+ "F15",
22
+ "F16",
23
+ "F17",
24
+ "F18",
25
+ "F19",
26
+ "F20",
27
+ "F21"
28
+ ],
29
+ "supportedRoundtripFixtures": [
30
+ "F01",
31
+ "F02",
32
+ "F03",
33
+ "F04",
34
+ "F07",
35
+ "F08",
36
+ "F09",
37
+ "F10",
38
+ "F11",
39
+ "F12",
40
+ "F13"
41
+ ],
42
+ "preserveOnlyFixtures": [
43
+ "F05",
44
+ "F06",
45
+ "F14",
46
+ "F15",
47
+ "F16",
48
+ "F17",
49
+ "F18",
50
+ "F19",
51
+ "F20"
52
+ ],
53
+ "unsupportedFatalFixtures": [
54
+ "F21"
55
+ ],
56
+ "representativeScenarios": [
57
+ "S01",
58
+ "S02"
59
+ ],
60
+ "manualReviewFixtures": [
61
+ "F01",
62
+ "F03",
63
+ "F05",
64
+ "F09",
65
+ "F11",
66
+ "F12",
67
+ "F15",
68
+ "F20"
69
+ ],
70
+ "manualReviewScenarios": [
71
+ "S01"
72
+ ],
73
+ "expectedBlockedScenarios": [
74
+ "S02"
75
+ ],
76
+ "requiredArtifacts": [
77
+ "regression-report.json",
78
+ "fixture-coverage.json",
79
+ "certification-freshness.json",
80
+ "accessibility-signoff.md",
81
+ "design-conformance.md",
82
+ "performance-budget.json",
83
+ "large-doc-smoke.json",
84
+ "word-desktop-certification.md",
85
+ "word-web-certification.md"
86
+ ],
87
+ "freshnessPolicy": {
88
+ "requireRepoCommit": true,
89
+ "requireCleanWorkingTree": true,
90
+ "requiredProofWave": 10,
91
+ "requiredCommitPrefixLength": 12,
92
+ "rejectLegacyRoots": [
93
+ ".tmp/wave-8-railway-pilot",
94
+ ".tmp/wave-9-pilot"
95
+ ]
96
+ },
97
+ "notes": [
98
+ "F01 through F21 stay frozen as the v1 release-gate corpus.",
99
+ "Supported-roundtrip fixtures must all run through /api/fixtures/[fixtureId]/run for Wave 10 machine certification.",
100
+ "S01 and S02 are required Wave 10 certification scenarios but remain non-release-gate artifacts.",
101
+ "S02 is an explicit fail-closed scenario in the bounded v1 contract: review actions that would require remapping preserve-only comment anchors must block export instead of rewriting anchors unsafely.",
102
+ "Fresh Wave 10 evidence must be generated on the current commit; older Wave 8 or Wave 9 bundles cannot satisfy this manifest."
103
+ ]
104
+ }