@beyondwork/docx-react-component 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-32W6IVQE.js +7725 -0
- package/dist/chunk-32W6IVQE.js.map +1 -0
- package/dist/index.cjs +23722 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +7 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +16011 -0
- package/dist/index.js.map +1 -0
- package/dist/public-types-DqCURAz8.d.cts +1152 -0
- package/dist/public-types-DqCURAz8.d.ts +1152 -0
- package/dist/tailwind.cjs +8295 -0
- package/dist/tailwind.cjs.map +1 -0
- package/dist/tailwind.d.cts +323 -0
- package/dist/tailwind.d.ts +323 -0
- package/dist/tailwind.js +553 -0
- package/dist/tailwind.js.map +1 -0
- package/package.json +52 -31
- package/.codex/config.toml +0 -5
- package/.corepack/v1/pnpm/10.30.3/.corepack +0 -1
- package/.corepack/v1/pnpm/10.30.3/LICENSE +0 -22
- package/.corepack/v1/pnpm/10.30.3/README.md +0 -240
- package/.corepack/v1/pnpm/10.30.3/dist/node-gyp-bin/node-gyp +0 -6
- package/.corepack/v1/pnpm/10.30.3/dist/node-gyp-bin/node-gyp.cmd +0 -5
- package/.corepack/v1/pnpm/10.30.3/dist/pnpm.cjs +0 -195400
- package/.corepack/v1/pnpm/10.30.3/dist/pnpmrc +0 -2
- package/.corepack/v1/pnpm/10.30.3/dist/reflink.darwin-arm64-2HJ4WGO6.node +0 -0
- package/.corepack/v1/pnpm/10.30.3/dist/reflink.darwin-x64-3G3H6IW4.node +0 -0
- package/.corepack/v1/pnpm/10.30.3/dist/reflink.win32-arm64-msvc-Q6BARPPB.node +0 -0
- package/.corepack/v1/pnpm/10.30.3/dist/reflink.win32-x64-msvc-J2TZHRQI.node +0 -0
- package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.bash +0 -31
- package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.fish +0 -22
- package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.ps1 +0 -193
- package/.corepack/v1/pnpm/10.30.3/dist/templates/completion.zsh +0 -27
- package/.corepack/v1/pnpm/10.30.3/dist/vendor/fastlist-0.3.0-x64.exe +0 -0
- package/.corepack/v1/pnpm/10.30.3/dist/vendor/fastlist-0.3.0-x86.exe +0 -0
- package/.corepack/v1/pnpm/10.30.3/dist/worker.js +0 -10119
- package/.corepack/v1/pnpm/10.30.3/package.json +0 -192
- package/.cursor/mcp.json +0 -7
- package/.github/workflows/ci.yml +0 -35
- package/.mcp.json +0 -7
- package/.openclaw/workspace-state.json +0 -4
- package/.pnpmrc.json +0 -1
- package/.wave-launch.sh +0 -7
- package/.workspace-marker +0 -1
- package/AGENTS.md +0 -78
- package/CHANGELOG.md +0 -177
- package/DESIGN.md +0 -929
- package/HEARTBEAT.md +0 -7
- package/IDENTITY.md +0 -23
- package/SOUL.md +0 -36
- package/TOOLS.md +0 -40
- package/USER.md +0 -17
- package/docs/README.md +0 -107
- package/docs/agents/wave-cont-eval-role.md +0 -36
- package/docs/agents/wave-cont-qa-role.md +0 -52
- package/docs/agents/wave-deploy-verifier-role.md +0 -34
- package/docs/agents/wave-design-role.md +0 -47
- package/docs/agents/wave-documentation-role.md +0 -34
- package/docs/agents/wave-infra-role.md +0 -34
- package/docs/agents/wave-integration-role.md +0 -37
- package/docs/agents/wave-launcher-role.md +0 -41
- package/docs/agents/wave-orchestrator-role.md +0 -52
- package/docs/agents/wave-planner-role.md +0 -39
- package/docs/agents/wave-security-role.md +0 -40
- package/docs/architecture/docx/README.md +0 -10
- package/docs/architecture/future/README.md +0 -8
- package/docs/architecture/ooxml-upgrade-analysis.md +0 -134
- package/docs/architecture/platform/shared-openxml-editor-platform.md +0 -153
- package/docs/architecture/xlsx/canonical-workbook-model-and-commands.md +0 -187
- package/docs/architecture/xlsx/spreadsheet-editor-frontend-architecture.md +0 -150
- package/docs/comment-redline-overview.md +0 -350
- package/docs/concepts/context7-vs-skills.md +0 -118
- package/docs/concepts/operating-modes.md +0 -91
- package/docs/concepts/runtime-agnostic-orchestration.md +0 -111
- package/docs/concepts/what-is-a-wave.md +0 -217
- package/docs/context7/bundles.json +0 -222
- package/docs/context7/planner-agent/README.md +0 -28
- package/docs/context7/planner-agent/manifest.json +0 -83
- package/docs/context7/planner-agent/papers/cooperbench-why-coding-agents-cannot-be-your-teammates-yet.md +0 -3283
- package/docs/context7/planner-agent/papers/dova-deliberation-first-multi-agent-orchestration-for-autonomous-research-automation.md +0 -1699
- package/docs/context7/planner-agent/papers/dpbench-large-language-models-struggle-with-simultaneous-coordination.md +0 -2251
- package/docs/context7/planner-agent/papers/incremental-planning-to-control-a-blackboard-based-problem-solver.md +0 -1729
- package/docs/context7/planner-agent/papers/silo-bench-a-scalable-environment-for-evaluating-distributed-coordination-in-multi-agent-llm-systems.md +0 -3747
- package/docs/context7/planner-agent/papers/todoevolve-learning-to-architect-agent-planning-systems.md +0 -1675
- package/docs/context7/planner-agent/papers/verified-multi-agent-orchestration-a-plan-execute-verify-replan-framework-for-complex-query-resolution.md +0 -1173
- package/docs/context7/planner-agent/papers/why-do-multi-agent-llm-systems-fail.md +0 -5211
- package/docs/context7/planner-agent/topics/planning-and-orchestration.md +0 -24
- package/docs/evals/arm-templates/README.md +0 -13
- package/docs/evals/arm-templates/full-wave.json +0 -15
- package/docs/evals/arm-templates/single-agent.json +0 -15
- package/docs/evals/benchmark-catalog.json +0 -670
- package/docs/evals/cases/README.md +0 -47
- package/docs/evals/cases/wave-blackboard-inbox-targeting.json +0 -73
- package/docs/evals/cases/wave-contradiction-conflict.json +0 -104
- package/docs/evals/cases/wave-expert-routing-preservation.json +0 -69
- package/docs/evals/cases/wave-hidden-profile-private-evidence.json +0 -81
- package/docs/evals/cases/wave-premature-closure-guard.json +0 -71
- package/docs/evals/cases/wave-silo-cross-agent-state.json +0 -77
- package/docs/evals/cases/wave-simultaneous-lockstep.json +0 -92
- package/docs/evals/external-benchmarks.json +0 -85
- package/docs/evals/external-command-config.sample.json +0 -9
- package/docs/evals/external-command-config.swe-bench-pro.json +0 -8
- package/docs/evals/pilots/README.md +0 -47
- package/docs/evals/pilots/swe-bench-pro-public-full-wave-review-10.json +0 -64
- package/docs/evals/pilots/swe-bench-pro-public-pilot.json +0 -111
- package/docs/evals/wave-benchmark-program.md +0 -302
- package/docs/guides/planner.md +0 -220
- package/docs/guides/recommendations-0.8.9.md +0 -133
- package/docs/guides/signal-wrappers.md +0 -165
- package/docs/guides/terminal-surfaces.md +0 -96
- package/docs/image copy.png +0 -0
- package/docs/image.png +0 -0
- package/docs/images/image.png +0 -0
- package/docs/legal-feedback-architecture.md +0 -498
- package/docs/plans/component-cutover-matrix.json +0 -1072
- package/docs/plans/component-cutover-matrix.md +0 -307
- package/docs/plans/context7-wave-orchestrator.md +0 -155
- package/docs/plans/current-state.md +0 -198
- package/docs/plans/docx/README.md +0 -9
- package/docs/plans/examples/wave-benchmark-improvement.md +0 -108
- package/docs/plans/examples/wave-example-live-proof.md +0 -435
- package/docs/plans/master-plan.md +0 -224
- package/docs/plans/migration.md +0 -538
- package/docs/plans/operations/README.md +0 -7
- package/docs/plans/operations/wave-10-word-certification.md +0 -87
- package/docs/plans/operations/wave-8-railway-staging.md +0 -153
- package/docs/plans/operations/wave-9-manual-certification.md +0 -73
- package/docs/plans/platform/README.md +0 -9
- package/docs/plans/reference/legal-checklist-coverage.md +0 -258
- package/docs/plans/wave-orchestrator.md +0 -423
- package/docs/plans/waves/README.md +0 -75
- package/docs/plans/waves/completed/wave-0.md +0 -195
- package/docs/plans/waves/completed/wave-1.md +0 -379
- package/docs/plans/waves/completed/wave-10.md +0 -670
- package/docs/plans/waves/completed/wave-11.md +0 -335
- package/docs/plans/waves/completed/wave-12.md +0 -417
- package/docs/plans/waves/completed/wave-13.md +0 -316
- package/docs/plans/waves/completed/wave-14.md +0 -319
- package/docs/plans/waves/completed/wave-15.md +0 -321
- package/docs/plans/waves/completed/wave-16.md +0 -316
- package/docs/plans/waves/completed/wave-17.md +0 -331
- package/docs/plans/waves/completed/wave-18.md +0 -328
- package/docs/plans/waves/completed/wave-2.md +0 -438
- package/docs/plans/waves/completed/wave-3.md +0 -435
- package/docs/plans/waves/completed/wave-4.md +0 -430
- package/docs/plans/waves/completed/wave-5.md +0 -430
- package/docs/plans/waves/completed/wave-6.md +0 -430
- package/docs/plans/waves/completed/wave-7.md +0 -526
- package/docs/plans/waves/completed/wave-8.md +0 -596
- package/docs/plans/waves/completed/wave-9.md +0 -552
- package/docs/plans/waves/deferred/README.md +0 -14
- package/docs/plans/waves/deferred/encrypted-intake-contracts.md +0 -282
- package/docs/plans/waves/deferred/legal-feedback-wave-expansion.md +0 -308
- package/docs/plans/waves/deferred/wave-encrypted-intake.md +0 -451
- package/docs/plans/waves/design/README.md +0 -5
- package/docs/plans/waves/design/wave-1-a1.md +0 -309
- package/docs/plans/waves/reviews/README.md +0 -5
- package/docs/plans/waves/reviews/wave-0-cont-qa.md +0 -151
- package/docs/plans/waves/reviews/wave-1-cont-qa.md +0 -46
- package/docs/plans/waves/reviews/wave-10-accessibility-and-design.md +0 -51
- package/docs/plans/waves/reviews/wave-10-cont-qa.md +0 -24
- package/docs/plans/waves/reviews/wave-10-dashboard-proof.md +0 -46
- package/docs/plans/waves/reviews/wave-10-performance-signoff.md +0 -55
- package/docs/plans/waves/reviews/wave-10-regression-proof.md +0 -23
- package/docs/plans/waves/reviews/wave-10-release-audit.md +0 -31
- package/docs/plans/waves/reviews/wave-10-service-proof.md +0 -83
- package/docs/plans/waves/reviews/wave-10-word-certification.md +0 -31
- package/docs/plans/waves/reviews/wave-18-ai-contract-closure.md +0 -277
- package/docs/plans/waves/reviews/wave-18-cont-qa.md +0 -255
- package/docs/plans/waves/reviews/wave-18-parity-proof.md +0 -271
- package/docs/plans/waves/reviews/wave-19-cont-qa.md +0 -59
- package/docs/plans/waves/reviews/wave-2-cont-qa.md +0 -72
- package/docs/plans/waves/reviews/wave-20-cont-qa.md +0 -60
- package/docs/plans/waves/reviews/wave-25-cont-qa.md +0 -48
- package/docs/plans/waves/reviews/wave-28-cont-qa.md +0 -46
- package/docs/plans/waves/reviews/wave-29-cont-qa.md +0 -53
- package/docs/plans/waves/reviews/wave-3-cont-qa.md +0 -53
- package/docs/plans/waves/reviews/wave-3-core-proof.md +0 -77
- package/docs/plans/waves/reviews/wave-3-validator-proof.md +0 -73
- package/docs/plans/waves/reviews/wave-32-cont-qa.md +0 -43
- package/docs/plans/waves/reviews/wave-33-cont-qa.md +0 -526
- package/docs/plans/waves/reviews/wave-34-cont-qa.md +0 -100
- package/docs/plans/waves/reviews/wave-35-cont-qa.md +0 -145
- package/docs/plans/waves/reviews/wave-4-cont-qa.md +0 -47
- package/docs/plans/waves/reviews/wave-4-structure-proof.md +0 -69
- package/docs/plans/waves/reviews/wave-5-comment-proof.md +0 -158
- package/docs/plans/waves/reviews/wave-5-cont-qa.md +0 -68
- package/docs/plans/waves/reviews/wave-6-cont-qa.md +0 -416
- package/docs/plans/waves/reviews/wave-6-redline-proof.md +0 -130
- package/docs/plans/waves/reviews/wave-7-cont-qa.md +0 -82
- package/docs/plans/waves/reviews/wave-7-ooxml-compliance.md +0 -85
- package/docs/plans/waves/reviews/wave-7-preservation-proof.md +0 -119
- package/docs/plans/waves/reviews/wave-7-trust-ux.md +0 -87
- package/docs/plans/waves/reviews/wave-8-accessibility-and-design.md +0 -128
- package/docs/plans/waves/reviews/wave-8-cont-qa.md +0 -92
- package/docs/plans/waves/reviews/wave-8-live-proof.md +0 -140
- package/docs/plans/waves/reviews/wave-8-security.md +0 -47
- package/docs/plans/waves/reviews/wave-9-editor-embedding.md +0 -39
- package/docs/plans/waves/reviews/wave-9-fixture-runner.md +0 -56
- package/docs/plans/waves/reviews/wave-9-live-proof.md +0 -105
- package/docs/plans/waves/reviews/wave-9-usability-and-performance.md +0 -152
- package/docs/plans/waves/specs/README.md +0 -5
- package/docs/plans/waves/specs/wave-1-component-boundaries.md +0 -322
- package/docs/plans/waves/specs/wave-1-ooxml-contracts.md +0 -323
- package/docs/plans/waves/specs/wave-1-review-and-ui-contracts.md +0 -339
- package/docs/plans/waves/specs/wave-1-runtime-contracts.md +0 -509
- package/docs/plans/waves/wave-19.md +0 -341
- package/docs/plans/waves/wave-20.md +0 -308
- package/docs/plans/waves/wave-21.md +0 -289
- package/docs/plans/waves/wave-22.md +0 -221
- package/docs/plans/waves/wave-23.md +0 -295
- package/docs/plans/waves/wave-24.md +0 -286
- package/docs/plans/waves/wave-25.md +0 -313
- package/docs/plans/waves/wave-26.md +0 -300
- package/docs/plans/waves/wave-27.md +0 -299
- package/docs/plans/waves/wave-28.md +0 -368
- package/docs/plans/waves/wave-29.md +0 -303
- package/docs/plans/waves/wave-30.md +0 -307
- package/docs/plans/waves/wave-31.md +0 -231
- package/docs/plans/waves/wave-32.md +0 -152
- package/docs/plans/waves/wave-33.md +0 -147
- package/docs/plans/waves/wave-34.md +0 -148
- package/docs/plans/waves/wave-35.md +0 -141
- package/docs/plans/waves/wave-36.md +0 -146
- package/docs/plans/xlsx/README.md +0 -14
- package/docs/plans/xlsx/xlsx-fixture-corpus-and-certification-plan.md +0 -126
- package/docs/reference/cli-reference.md +0 -600
- package/docs/reference/coordination-and-closure.md +0 -487
- package/docs/reference/deep-research-report (15).md +0 -25
- package/docs/reference/docx/README.md +0 -10
- package/docs/reference/legal-checklist.md +0 -445
- package/docs/reference/live-proof-waves.md +0 -199
- package/docs/reference/ooxml-compliance.md +0 -129
- package/docs/reference/ooxml-feature-parity-matrix.md +0 -172
- package/docs/reference/platform/shared-ooxml-platform-guidance.md +0 -77
- package/docs/reference/prototype-agent-prompt-legal-fidelity.md +0 -155
- package/docs/reference/public-api.md +0 -456
- package/docs/reference/repository-guidance.md +0 -58
- package/docs/reference/runtime-config/README.md +0 -182
- package/docs/reference/runtime-config/claude.md +0 -110
- package/docs/reference/runtime-config/codex.md +0 -82
- package/docs/reference/runtime-config/opencode.md +0 -93
- package/docs/reference/sample-waves.md +0 -105
- package/docs/reference/skills.md +0 -237
- package/docs/reference/templates/AGENTS.md +0 -78
- package/docs/reference/templates/HEARTBEAT.md +0 -7
- package/docs/reference/templates/IDENTITY.md +0 -23
- package/docs/reference/templates/SOUL.md +0 -36
- package/docs/reference/templates/TOOLS.md +0 -40
- package/docs/reference/templates/USER.md +0 -17
- package/docs/reference/wave-control.md +0 -184
- package/docs/reference/wave-planning-lessons.md +0 -167
- package/docs/reference/word-review-editor-frontend-architecture.md +0 -479
- package/docs/reference/word-review-editor-ux-guide.md +0 -253
- package/docs/reference/xlsx/xlsx-ooxml-compliance.md +0 -137
- package/docs/research/agent-context-sources.md +0 -178
- package/docs/research/coordination-failure-review.md +0 -290
- package/docs/research/docx-react-component/Canonical Document Schema Specification for a React-based Word-compatible Editor.md +0 -2317
- package/docs/research/docx-react-component/Feature Compatibility Matrix for a React Word Compatible Legal Editor v1.md +0 -219
- package/docs/research/docx-react-component/React Component Architecture and Front-End Structure Specification for a Word-Compatible Legal Review Editor.md +0 -1112
- package/docs/research/docx-react-component/document_compatibility_and_testing_spec.md +0 -751
- package/docs/research/xlsx/raw/README.md +0 -13
- package/docs/roadmap.md +0 -174
- package/docs/superpowers/plans/2026-03-28-harness-control-bar.md +0 -677
- package/docs/superpowers/specs/2026-03-28-harness-control-bar-design.md +0 -274
- package/docs/xlsx-react/README.md +0 -38
- package/docs/xlsx-react/agent-llm-interaction-layer-docx-xlsx.md +0 -621
- package/docs/xlsx-react/canonical-workbook-model-and-commands.md +0 -948
- package/docs/xlsx-react/shared-openxml-editor-platform-docx-xlsx.md +0 -228
- package/docs/xlsx-react/spreadsheet-editor-component-architecture.md +0 -809
- package/docs/xlsx-react/spreadsheet-editor-frontend-architecture.md +0 -537
- package/docs/xlsx-react/spreadsheet-editor-ux-guide.md +0 -520
- package/docs/xlsx-react/xlsx-editor-research-pack.md +0 -871
- package/docs/xlsx-react/xlsx-fixture-corpus-and-certification-plan.md +0 -436
- package/docs/xlsx-react/xlsx-ooxml-compliance.md +0 -320
- package/examples/README.md +0 -16
- package/memory/MEMORY.md +0 -24
- package/pnpm-workspace.yaml +0 -4
- package/scripts/check-no-authored-js.sh +0 -13
- package/scripts/context7-api-check.sh +0 -65
- package/scripts/context7-export-env.sh +0 -42
- package/scripts/run-context7-mcp.sh +0 -8
- package/scripts/run-workspace-tests.sh +0 -15
- package/scripts/start-wave-10-local.sh +0 -189
- package/scripts/wave-agent-attach.sh +0 -47
- package/scripts/wave-auto-answer.sh +0 -118
- package/scripts/wave-dashboard-attach.sh +0 -13
- package/scripts/wave-launch.sh +0 -273
- package/scripts/wave-overnight-supervisor.sh +0 -145
- package/scripts/wave-status.sh +0 -379
- package/scripts/wave-watch.sh +0 -231
- package/services/README.md +0 -17
- package/services/openxml-validator/Dockerfile +0 -29
- package/services/openxml-validator/OpenXmlValidator.Api.csproj +0 -12
- package/services/openxml-validator/Program.cs +0 -436
- package/services/openxml-validator/README.md +0 -152
- package/services/openxml-validator/railway.json +0 -16
- package/services/react-word-editor/.tmp-a4/src/api/public-types.ts +0 -318
- package/services/react-word-editor/.tmp-a4/src/ui/WordReviewEditor.tsx +0 -1302
- package/services/react-word-editor/.tmp-a4/src/ui/editor-surface/editor-surface.tsx +0 -546
- package/services/react-word-editor/.tmp-a4/test/ui/word-review-editor.test.tsx +0 -146
- package/services/react-word-editor/.tmp-a4-build/src/api/public-types.js +0 -2
- package/services/react-word-editor/.tmp-a4-build/src/ui/WordReviewEditor.js +0 -818
- package/services/react-word-editor/.tmp-a4-build/src/ui/editor-surface/editor-surface.js +0 -229
- package/services/react-word-editor/.tmp-a4-build/test/ui/word-review-editor.test.js +0 -121
- package/services/react-word-editor/.tmp-wave-4-a3-tsconfig.json +0 -21
- package/services/react-word-editor/.tmp-wave-4-a3-tsconfig.tsbuildinfo +0 -1
- package/services/react-word-editor/Dockerfile +0 -26
- package/services/react-word-editor/README.md +0 -254
- package/services/react-word-editor/app/api/certification/route.ts +0 -79
- package/services/react-word-editor/app/api/demo-sessions/route.ts +0 -109
- package/services/react-word-editor/app/api/deploy-health/route.ts +0 -23
- package/services/react-word-editor/app/api/exports/[exportId]/route.ts +0 -34
- package/services/react-word-editor/app/api/exports/route.ts +0 -81
- package/services/react-word-editor/app/api/fixtures/[fixtureId]/run/route.ts +0 -100
- package/services/react-word-editor/app/api/health/route.ts +0 -70
- package/services/react-word-editor/app/api/runs/[runId]/route.ts +0 -36
- package/services/react-word-editor/app/api/scenarios/[scenarioId]/run/route.ts +0 -85
- package/services/react-word-editor/app/api/sessions/[sessionId]/route.ts +0 -199
- package/services/react-word-editor/app/api/sessions/[sessionId]/source/route.ts +0 -45
- package/services/react-word-editor/app/api/uploads/route.ts +0 -70
- package/services/react-word-editor/app/api/validate/route.ts +0 -310
- package/services/react-word-editor/app/certification/[runId]/page.tsx +0 -14
- package/services/react-word-editor/app/certification/page.tsx +0 -32
- package/services/react-word-editor/app/dashboard/page.tsx +0 -7
- package/services/react-word-editor/app/demo/page.tsx +0 -30
- package/services/react-word-editor/app/demo/prototype-client.tsx +0 -1080
- package/services/react-word-editor/app/editor/[sessionId]/page.tsx +0 -33
- package/services/react-word-editor/app/fixtures/page.tsx +0 -7
- package/services/react-word-editor/app/globals.css +0 -121
- package/services/react-word-editor/app/layout.tsx +0 -32
- package/services/react-word-editor/app/page.tsx +0 -30
- package/services/react-word-editor/app/runs/[runId]/page.tsx +0 -34
- package/services/react-word-editor/app/wave-10-word-review/page.tsx +0 -7
- package/services/react-word-editor/components/harness-control-bar.tsx +0 -289
- package/services/react-word-editor/components/harness-editor-session-client.tsx +0 -1214
- package/services/react-word-editor/components/harness-workspace-page.tsx +0 -715
- package/services/react-word-editor/components/reduced-motion-toggle.tsx +0 -79
- package/services/react-word-editor/components/workspace-certification-panel.tsx +0 -307
- package/services/react-word-editor/lib/certification-bundle.ts +0 -796
- package/services/react-word-editor/lib/certification-store.ts +0 -661
- package/services/react-word-editor/lib/demo-fixtures.test.mjs +0 -195
- package/services/react-word-editor/lib/demo-fixtures.ts +0 -1519
- package/services/react-word-editor/lib/editor-session-summary.test.mjs +0 -68
- package/services/react-word-editor/lib/editor-session-summary.ts +0 -14
- package/services/react-word-editor/lib/editor-session.ts +0 -228
- package/services/react-word-editor/lib/exports-route.test.mjs +0 -32
- package/services/react-word-editor/lib/harness-client.ts +0 -347
- package/services/react-word-editor/lib/harness-config.json +0 -30
- package/services/react-word-editor/lib/harness-config.test.mjs +0 -31
- package/services/react-word-editor/lib/harness-config.ts +0 -21
- package/services/react-word-editor/lib/harness-editor-datastore.test.mjs +0 -220
- package/services/react-word-editor/lib/harness-editor-datastore.ts +0 -161
- package/services/react-word-editor/lib/private-mode.test.mjs +0 -42
- package/services/react-word-editor/lib/private-mode.ts +0 -61
- package/services/react-word-editor/lib/regression-report.test.mjs +0 -352
- package/services/react-word-editor/lib/regression-report.ts +0 -896
- package/services/react-word-editor/lib/run-artifacts.ts +0 -934
- package/services/react-word-editor/lib/run-history.ts +0 -755
- package/services/react-word-editor/lib/scenario-artifacts.test.mjs +0 -41
- package/services/react-word-editor/lib/scenario-artifacts.ts +0 -44
- package/services/react-word-editor/lib/storage.ts +0 -953
- package/services/react-word-editor/lib/validator-client.test.mjs +0 -54
- package/services/react-word-editor/lib/validator-client.ts +0 -95
- package/services/react-word-editor/lib/workspace-navigation.ts +0 -79
- package/services/react-word-editor/middleware.ts +0 -35
- package/services/react-word-editor/next-env.d.ts +0 -6
- package/services/react-word-editor/next.config.mjs +0 -15
- package/services/react-word-editor/package.json +0 -38
- package/services/react-word-editor/postcss.config.mjs +0 -8
- package/services/react-word-editor/railway.json +0 -21
- package/services/react-word-editor/scripts/wave-10-certification.mjs +0 -101
- package/services/react-word-editor/scripts/wave-9-live-usability-pilot.mjs +0 -911
- package/services/react-word-editor/tsconfig.json +0 -39
- package/services/react-word-editor/tsconfig.tsbuildinfo +0 -1
- package/skills/README.md +0 -48
- package/skills/domain-docx-compatibility/SKILL.md +0 -44
- package/skills/domain-docx-compatibility/skill.json +0 -19
- package/skills/domain-editor-architecture/SKILL.md +0 -49
- package/skills/domain-editor-architecture/skill.json +0 -19
- package/skills/domain-legal-review/SKILL.md +0 -39
- package/skills/domain-legal-review/skill.json +0 -19
- package/skills/provider-aws/SKILL.md +0 -117
- package/skills/provider-aws/adapters/claude.md +0 -1
- package/skills/provider-aws/adapters/codex.md +0 -1
- package/skills/provider-aws/references/service-verification.md +0 -39
- package/skills/provider-aws/skill.json +0 -54
- package/skills/provider-custom-deploy/SKILL.md +0 -64
- package/skills/provider-custom-deploy/skill.json +0 -50
- package/skills/provider-docker-compose/SKILL.md +0 -96
- package/skills/provider-docker-compose/adapters/local.md +0 -1
- package/skills/provider-docker-compose/skill.json +0 -53
- package/skills/provider-github-release/SKILL.md +0 -121
- package/skills/provider-github-release/adapters/claude.md +0 -1
- package/skills/provider-github-release/adapters/codex.md +0 -1
- package/skills/provider-github-release/skill.json +0 -55
- package/skills/provider-kubernetes/SKILL.md +0 -143
- package/skills/provider-kubernetes/adapters/claude.md +0 -1
- package/skills/provider-kubernetes/adapters/codex.md +0 -1
- package/skills/provider-kubernetes/references/kubectl-patterns.md +0 -58
- package/skills/provider-kubernetes/skill.json +0 -52
- package/skills/provider-railway/SKILL.md +0 -123
- package/skills/provider-railway/adapters/claude.md +0 -1
- package/skills/provider-railway/adapters/codex.md +0 -1
- package/skills/provider-railway/adapters/local.md +0 -1
- package/skills/provider-railway/adapters/opencode.md +0 -1
- package/skills/provider-railway/references/verification-commands.md +0 -39
- package/skills/provider-railway/skill.json +0 -71
- package/skills/provider-ssh-manual/SKILL.md +0 -97
- package/skills/provider-ssh-manual/skill.json +0 -54
- package/skills/repo-coding-rules/SKILL.md +0 -55
- package/skills/repo-coding-rules/skill.json +0 -34
- package/skills/role-cont-eval/SKILL.md +0 -91
- package/skills/role-cont-eval/adapters/codex.md +0 -1
- package/skills/role-cont-eval/skill.json +0 -36
- package/skills/role-cont-qa/SKILL.md +0 -100
- package/skills/role-cont-qa/adapters/claude.md +0 -1
- package/skills/role-cont-qa/skill.json +0 -36
- package/skills/role-deploy/SKILL.md +0 -97
- package/skills/role-deploy/skill.json +0 -36
- package/skills/role-design/SKILL.md +0 -50
- package/skills/role-design/skill.json +0 -36
- package/skills/role-documentation/SKILL.md +0 -76
- package/skills/role-documentation/skill.json +0 -36
- package/skills/role-implementation/SKILL.md +0 -45
- package/skills/role-implementation/skill.json +0 -36
- package/skills/role-infra/SKILL.md +0 -81
- package/skills/role-infra/skill.json +0 -36
- package/skills/role-integration/SKILL.md +0 -91
- package/skills/role-integration/skill.json +0 -36
- package/skills/role-planner/SKILL.md +0 -39
- package/skills/role-planner/skill.json +0 -21
- package/skills/role-research/SKILL.md +0 -65
- package/skills/role-research/skill.json +0 -36
- package/skills/role-security/SKILL.md +0 -60
- package/skills/role-security/skill.json +0 -36
- package/skills/runtime-claude/SKILL.md +0 -66
- package/skills/runtime-claude/skill.json +0 -36
- package/skills/runtime-codex/SKILL.md +0 -58
- package/skills/runtime-codex/skill.json +0 -36
- package/skills/runtime-local/SKILL.md +0 -46
- package/skills/runtime-local/skill.json +0 -36
- package/skills/runtime-opencode/SKILL.md +0 -58
- package/skills/runtime-opencode/skill.json +0 -36
- package/skills/signal-hygiene/SKILL.md +0 -51
- package/skills/signal-hygiene/skill.json +0 -20
- package/skills/tui-design/SKILL.md +0 -77
- package/skills/tui-design/references/tui-design.md +0 -259
- package/skills/tui-design/skill.json +0 -36
- package/skills/wave-core/SKILL.md +0 -141
- package/skills/wave-core/references/marker-syntax.md +0 -70
- package/skills/wave-core/skill.json +0 -35
- package/src/README.md +0 -85
- package/src/api/README.md +0 -22
- package/src/api/public-types.ts +0 -525
- package/src/component-inventory.md +0 -99
- package/src/core/README.md +0 -10
- package/src/core/commands/README.md +0 -3
- package/src/core/commands/formatting-commands.ts +0 -161
- package/src/core/commands/image-commands.ts +0 -144
- package/src/core/commands/index.ts +0 -1013
- package/src/core/commands/list-commands.ts +0 -370
- package/src/core/commands/review-commands.ts +0 -108
- package/src/core/commands/text-commands.ts +0 -119
- package/src/core/schema/README.md +0 -3
- package/src/core/schema/text-schema.ts +0 -512
- package/src/core/selection/README.md +0 -3
- package/src/core/selection/mapping.ts +0 -238
- package/src/core/selection/review-anchors.ts +0 -94
- package/src/core/state/README.md +0 -3
- package/src/core/state/editor-state.ts +0 -580
- package/src/core/state/text-transaction.ts +0 -276
- package/src/formats/xlsx/io/parse-shared-strings.ts +0 -41
- package/src/formats/xlsx/io/parse-sheet.ts +0 -289
- package/src/formats/xlsx/io/parse-styles.ts +0 -57
- package/src/formats/xlsx/io/parse-workbook.ts +0 -75
- package/src/formats/xlsx/io/xlsx-session.ts +0 -306
- package/src/formats/xlsx/model/cell.ts +0 -189
- package/src/formats/xlsx/model/sheet.ts +0 -244
- package/src/formats/xlsx/model/styles.ts +0 -118
- package/src/formats/xlsx/model/workbook.ts +0 -449
- package/src/io/README.md +0 -10
- package/src/io/docx-session.ts +0 -1763
- package/src/io/export/README.md +0 -3
- package/src/io/export/export-session.ts +0 -165
- package/src/io/export/minimal-docx.ts +0 -115
- package/src/io/export/reattach-preserved-parts.ts +0 -54
- package/src/io/export/serialize-comments.ts +0 -876
- package/src/io/export/serialize-footnotes.ts +0 -217
- package/src/io/export/serialize-headers-footers.ts +0 -200
- package/src/io/export/serialize-main-document.ts +0 -982
- package/src/io/export/serialize-numbering.ts +0 -97
- package/src/io/export/serialize-revisions.ts +0 -389
- package/src/io/export/serialize-runtime-revisions.ts +0 -265
- package/src/io/export/serialize-tables.ts +0 -147
- package/src/io/export/split-review-boundaries.ts +0 -194
- package/src/io/normalize/README.md +0 -3
- package/src/io/normalize/normalize-text.ts +0 -437
- package/src/io/ooxml/README.md +0 -3
- package/src/io/ooxml/parse-comments.ts +0 -779
- package/src/io/ooxml/parse-complex-content.ts +0 -287
- package/src/io/ooxml/parse-fields.ts +0 -438
- package/src/io/ooxml/parse-footnotes.ts +0 -403
- package/src/io/ooxml/parse-headers-footers.ts +0 -483
- package/src/io/ooxml/parse-inline-media.ts +0 -431
- package/src/io/ooxml/parse-main-document.ts +0 -1846
- package/src/io/ooxml/parse-numbering.ts +0 -425
- package/src/io/ooxml/parse-revisions.ts +0 -658
- package/src/io/ooxml/parse-shapes.ts +0 -271
- package/src/io/ooxml/parse-tables.ts +0 -568
- package/src/io/ooxml/parse-theme.ts +0 -314
- package/src/io/ooxml/part-manifest.ts +0 -136
- package/src/io/ooxml/revision-boundaries.ts +0 -351
- package/src/io/opc/README.md +0 -3
- package/src/io/opc/corrupt-package.ts +0 -166
- package/src/io/opc/docx-package.ts +0 -74
- package/src/io/opc/package-reader.ts +0 -320
- package/src/io/opc/package-writer.ts +0 -273
- package/src/model/README.md +0 -3
- package/src/model/canonical-document.ts +0 -1911
- package/src/model/cds-1.0.0.ts +0 -196
- package/src/model/snapshot.ts +0 -393
- package/src/preservation/README.md +0 -3
- package/src/preservation/markup-compatibility.ts +0 -48
- package/src/preservation/opaque-fragment-store.ts +0 -89
- package/src/preservation/opaque-region.ts +0 -233
- package/src/preservation/package-preservation.ts +0 -120
- package/src/preservation/preserved-part-manifest.ts +0 -56
- package/src/preservation/relationship-retention.ts +0 -57
- package/src/preservation/store.ts +0 -185
- package/src/review/README.md +0 -16
- package/src/review/store/README.md +0 -3
- package/src/review/store/comment-anchors.ts +0 -70
- package/src/review/store/comment-remapping.ts +0 -154
- package/src/review/store/comment-store.ts +0 -331
- package/src/review/store/comment-thread.ts +0 -109
- package/src/review/store/revision-actions.ts +0 -394
- package/src/review/store/revision-store.ts +0 -303
- package/src/review/store/revision-types.ts +0 -168
- package/src/review/store/runtime-comment-store.ts +0 -43
- package/src/runtime/README.md +0 -3
- package/src/runtime/ai-action-policy.ts +0 -764
- package/src/runtime/document-runtime.ts +0 -969
- package/src/runtime/read-only-diagnostics-runtime.ts +0 -232
- package/src/runtime/review-runtime.ts +0 -44
- package/src/runtime/revision-runtime.ts +0 -107
- package/src/runtime/session-capabilities.ts +0 -138
- package/src/runtime/surface-projection.ts +0 -570
- package/src/runtime/table-commands.ts +0 -84
- package/src/runtime/table-schema.ts +0 -125
- package/src/ui/README.md +0 -30
- package/src/ui/WordReviewEditor.tsx +0 -1283
- package/src/ui/comments/README.md +0 -3
- package/src/ui/compatibility/README.md +0 -3
- package/src/ui/editor-surface/README.md +0 -3
- package/src/ui/headless/comment-decoration-model.ts +0 -124
- package/src/ui/headless/revision-decoration-model.ts +0 -128
- package/src/ui/headless/selection-helpers.ts +0 -34
- package/src/ui/headless/use-editor-keyboard.ts +0 -98
- package/src/ui/review/README.md +0 -3
- package/src/ui/shared/revision-filters.ts +0 -31
- package/src/ui/status/README.md +0 -3
- package/src/ui/theme/README.md +0 -3
- package/src/ui/toolbar/README.md +0 -3
- package/src/ui-tailwind/chrome/tw-alert-banner.tsx +0 -48
- package/src/ui-tailwind/chrome/tw-selection-toolbar.tsx +0 -44
- package/src/ui-tailwind/chrome/tw-unsaved-modal.tsx +0 -58
- package/src/ui-tailwind/chrome/use-before-unload.ts +0 -20
- package/src/ui-tailwind/editor-surface/pm-command-bridge.ts +0 -139
- package/src/ui-tailwind/editor-surface/pm-decorations.ts +0 -98
- package/src/ui-tailwind/editor-surface/pm-position-map.ts +0 -123
- package/src/ui-tailwind/editor-surface/pm-schema.ts +0 -452
- package/src/ui-tailwind/editor-surface/pm-state-from-snapshot.ts +0 -327
- package/src/ui-tailwind/editor-surface/search-plugin.ts +0 -157
- package/src/ui-tailwind/editor-surface/tw-caret.tsx +0 -12
- package/src/ui-tailwind/editor-surface/tw-editor-surface.tsx +0 -150
- package/src/ui-tailwind/editor-surface/tw-inline-token.tsx +0 -118
- package/src/ui-tailwind/editor-surface/tw-opaque-block.tsx +0 -52
- package/src/ui-tailwind/editor-surface/tw-paragraph-block.tsx +0 -151
- package/src/ui-tailwind/editor-surface/tw-prosemirror-surface.tsx +0 -215
- package/src/ui-tailwind/editor-surface/tw-segment-view.tsx +0 -111
- package/src/ui-tailwind/editor-surface/tw-table-node-view.tsx +0 -108
- package/src/ui-tailwind/index.ts +0 -61
- package/src/ui-tailwind/review/tw-comment-sidebar.tsx +0 -276
- package/src/ui-tailwind/review/tw-health-panel.tsx +0 -120
- package/src/ui-tailwind/review/tw-review-rail.tsx +0 -120
- package/src/ui-tailwind/review/tw-revision-sidebar.tsx +0 -164
- package/src/ui-tailwind/status/tw-status-bar.tsx +0 -58
- package/src/ui-tailwind/theme/editor-theme.css +0 -190
- package/src/ui-tailwind/toolbar/tw-toolbar-icon-button.tsx +0 -48
- package/src/ui-tailwind/toolbar/tw-toolbar.tsx +0 -231
- package/src/ui-tailwind/tw-review-workspace.tsx +0 -140
- package/src/validation/README.md +0 -3
- package/src/validation/compatibility-engine.ts +0 -317
- package/src/validation/compatibility-report.ts +0 -160
- package/src/validation/diagnostics.ts +0 -203
- package/src/validation/import-diagnostics.ts +0 -128
- package/src/validation/low-priority-word-surfaces.ts +0 -373
- package/test/README.md +0 -16
- package/test/core/formatting-commands.test.ts +0 -285
- package/test/core/image-commands.test.ts +0 -298
- package/test/core/mapping.test.ts +0 -186
- package/test/core/text-commands.test.ts +0 -176
- package/test/fixtures/docx/F01-basic-contract.docx +0 -0
- package/test/fixtures/docx/F01-basic-contract.md +0 -33
- package/test/fixtures/docx/F02-headings-styles.docx +0 -0
- package/test/fixtures/docx/F02-headings-styles.md +0 -33
- package/test/fixtures/docx/F03-legal-outline-numbering.docx +0 -0
- package/test/fixtures/docx/F03-legal-outline-numbering.md +0 -34
- package/test/fixtures/docx/F04-restart-numbering-schedules.docx +0 -0
- package/test/fixtures/docx/F04-restart-numbering-schedules.md +0 -33
- package/test/fixtures/docx/F05-table-heavy-agreement.docx +0 -0
- package/test/fixtures/docx/F05-table-heavy-agreement.md +0 -34
- package/test/fixtures/docx/F06-merged-cells-signature-table.docx +0 -0
- package/test/fixtures/docx/F06-merged-cells-signature-table.md +0 -34
- package/test/fixtures/docx/F07-inline-images-exhibit.docx +0 -0
- package/test/fixtures/docx/F07-inline-images-exhibit.md +0 -34
- package/test/fixtures/docx/F08-hyperlinks.docx +0 -0
- package/test/fixtures/docx/F08-hyperlinks.md +0 -33
- package/test/fixtures/docx/F09-comments-single-paragraph.docx +0 -0
- package/test/fixtures/docx/F09-comments-single-paragraph.md +0 -33
- package/test/fixtures/docx/F10-threaded-comments-resolve.docx +0 -0
- package/test/fixtures/docx/F10-threaded-comments-resolve.md +0 -33
- package/test/fixtures/docx/F11-redlines-basic.docx +0 -0
- package/test/fixtures/docx/F11-redlines-basic.md +0 -33
- package/test/fixtures/docx/F12-redlines-paragraph-joins-splits.docx +0 -0
- package/test/fixtures/docx/F12-redlines-paragraph-joins-splits.md +0 -33
- package/test/fixtures/docx/F13-comments-on-deleted-text.docx +0 -0
- package/test/fixtures/docx/F13-comments-on-deleted-text.md +0 -33
- package/test/fixtures/docx/F14-revisions-in-tables-and-lists.docx +0 -0
- package/test/fixtures/docx/F14-revisions-in-tables-and-lists.md +0 -33
- package/test/fixtures/docx/F15-sections-headers-footers.docx +0 -0
- package/test/fixtures/docx/F15-sections-headers-footers.md +0 -33
- package/test/fixtures/docx/F16-footnotes-endnotes.docx +0 -0
- package/test/fixtures/docx/F16-footnotes-endnotes.md +0 -33
- package/test/fixtures/docx/F17-fields-and-toc.docx +0 -0
- package/test/fixtures/docx/F17-fields-and-toc.md +0 -33
- package/test/fixtures/docx/F18-content-controls-template.docx +0 -0
- package/test/fixtures/docx/F18-content-controls-template.md +0 -33
- package/test/fixtures/docx/F19-custom-xml-doc-assembly.docx +0 -0
- package/test/fixtures/docx/F19-custom-xml-doc-assembly.md +0 -35
- package/test/fixtures/docx/F20-unknown-ooxml-and-alternatecontent.docx +0 -0
- package/test/fixtures/docx/F20-unknown-ooxml-and-alternatecontent.md +0 -33
- package/test/fixtures/docx/F21-malformed-broken-docx.docx +0 -0
- package/test/fixtures/docx/F21-malformed-broken-docx.md +0 -33
- package/test/fixtures/docx/README.md +0 -74
- package/test/fixtures/docx/certification-manifest.json +0 -104
- package/test/fixtures/docx/fixtures.manifest.json +0 -196
- package/test/fixtures/encrypted-docx/README.md +0 -27
- package/test/fixtures/encrypted-docx/certification-manifest.json +0 -9
- package/test/fixtures/encrypted-docx/fixtures.manifest.json +0 -47
- package/test/fixtures/scenarios/docx/README.md +0 -25
- package/test/fixtures/scenarios/docx/S01-sow-template.docx +0 -0
- package/test/fixtures/scenarios/docx/S01-sow-template.md +0 -30
- package/test/fixtures/scenarios/docx/S02-bw-partner-user-licence-agreement-redlines.docx +0 -0
- package/test/fixtures/scenarios/docx/S02-bw-partner-user-licence-agreement-redlines.md +0 -32
- package/test/fixtures/scenarios/docx/scenario-manifest.json +0 -53
- package/test/formats/xlsx/io/xlsx-import.test.ts +0 -766
- package/test/formats/xlsx/model/workbook.test.ts +0 -669
- package/test/helpers/dom-setup.ts +0 -124
- package/test/io/comment-roundtrip.test.ts +0 -272
- package/test/io/complex-content-roundtrip.test.ts +0 -632
- package/test/io/docx-compatibility-regression.test.ts +0 -199
- package/test/io/docx-session.test.ts +0 -1495
- package/test/io/footnotes-roundtrip.test.ts +0 -318
- package/test/io/headers-footers-roundtrip.test.ts +0 -547
- package/test/io/numbering-roundtrip.test.ts +0 -234
- package/test/io/package-reader.test.ts +0 -199
- package/test/io/paragraph-properties-roundtrip.test.ts +0 -129
- package/test/io/preserved-package-roundtrip.test.ts +0 -365
- package/test/io/property-completeness.test.ts +0 -292
- package/test/io/revision-roundtrip.test.ts +0 -347
- package/test/io/structural-blocks.test.ts +0 -202
- package/test/io/table-media-roundtrip.test.ts +0 -448
- package/test/io/table-properties-roundtrip.test.ts +0 -569
- package/test/io/table-roundtrip.test.ts +0 -302
- package/test/io/text-roundtrip.test.ts +0 -344
- package/test/model/canonical-document.test.ts +0 -285
- package/test/preservation/opaque-fragment-store.test.ts +0 -121
- package/test/preservation/package-preservation.test.ts +0 -395
- package/test/preservation/store.test.ts +0 -84
- package/test/review/comment-remapping.test.ts +0 -220
- package/test/review/comment-store.test.ts +0 -180
- package/test/review/move-revisions.test.ts +0 -143
- package/test/review/property-change-revisions.test.ts +0 -225
- package/test/review/revision-actions.test.ts +0 -330
- package/test/review/revision-store.test.ts +0 -193
- package/test/runtime/session-capabilities.test.ts +0 -260
- package/test/runtime/table-commands.test.ts +0 -356
- package/test/runtime/table-schema.test.ts +0 -221
- package/test/runtime/tracked-changes-toggle.test.ts +0 -107
- package/test/ui/comment-review-surface.test.tsx +0 -114
- package/test/ui/reduced-motion-toggle.test.tsx +0 -137
- package/test/ui/word-review-editor.imported-scenarios.test.tsx +0 -169
- package/test/ui/word-review-editor.interaction.test.tsx +0 -1198
- package/test/ui/word-review-editor.test.js +0 -188
- package/test/ui/word-review-editor.test.tsx +0 -280
- package/test/ui-tailwind/search-plugin.test.ts +0 -286
- package/test/validation/compatibility-engine.test.ts +0 -336
- package/test/validation/compatibility-report.test.ts +0 -189
- package/test/validation/low-priority-word-surfaces.test.ts +0 -282
- package/test/validation/malformed-doc.test.ts +0 -113
- package/test-results/.last-run.json +0 -4
- package/wave.config.json +0 -406
|
@@ -1,498 +0,0 @@
|
|
|
1
|
-
# Legal Feedback Architecture
|
|
2
|
-
|
|
3
|
-
## Purpose
|
|
4
|
-
|
|
5
|
-
This memo captures how the legal feedback maps onto the current `WordReviewEditor`
|
|
6
|
-
architecture, what is already credible to claim, what should remain explicitly
|
|
7
|
-
deferred, and how the repo can expand toward first-class tables plus approximate
|
|
8
|
-
curated web-font rendering without breaking its core invariants.
|
|
9
|
-
|
|
10
|
-
This is a decision memo, not a scope expansion claim. It distinguishes:
|
|
11
|
-
|
|
12
|
-
- current runtime truth
|
|
13
|
-
- recommended next architecture
|
|
14
|
-
- proof required before public claims widen
|
|
15
|
-
|
|
16
|
-
## Governing Inputs
|
|
17
|
-
|
|
18
|
-
- `README.md`
|
|
19
|
-
- `docs/reference/public-api.md`
|
|
20
|
-
- `docs/reference/ooxml-compliance.md`
|
|
21
|
-
- `docs/plans/master-plan.md`
|
|
22
|
-
- `docs/plans/current-state.md`
|
|
23
|
-
- `docs/plans/waves/README.md`
|
|
24
|
-
- `src/model/canonical-document.ts`
|
|
25
|
-
- `src/io/ooxml/parse-main-document.ts`
|
|
26
|
-
- `src/runtime/surface-projection.ts`
|
|
27
|
-
- `src/ui/WordReviewEditor.tsx`
|
|
28
|
-
- `services/react-word-editor/components/harness-workspace-page.tsx`
|
|
29
|
-
- `services/react-word-editor/components/harness-editor-session-client.tsx`
|
|
30
|
-
- `src/ui/review/prototype-review-workspace.tsx`
|
|
31
|
-
- `services/react-word-editor/lib/demo-fixtures.ts`
|
|
32
|
-
|
|
33
|
-
## Current Architecture Reality Check
|
|
34
|
-
|
|
35
|
-
The repo is already pointed in the right product direction. It is not trying to
|
|
36
|
-
be a browser clone of Microsoft Word. It is trying to be a Word-compatible legal
|
|
37
|
-
review system with:
|
|
38
|
-
|
|
39
|
-
- a canonical schema-based document model
|
|
40
|
-
- command and transaction ownership of edits
|
|
41
|
-
- explicit compatibility reporting
|
|
42
|
-
- preserve-only handling for unsupported OOXML
|
|
43
|
-
- package-safe import and export
|
|
44
|
-
|
|
45
|
-
That posture is correct and should remain fixed.
|
|
46
|
-
|
|
47
|
-
The important current constraints are:
|
|
48
|
-
|
|
49
|
-
- canonical document content currently models `paragraph` and `opaque_block`
|
|
50
|
-
block-level content, not first-class tables
|
|
51
|
-
- the main document importer currently downgrades non-paragraph body children to
|
|
52
|
-
`opaque_block`
|
|
53
|
-
- the live surface projection currently renders paragraphs plus preserve-only
|
|
54
|
-
blocks, not runtime-backed table blocks
|
|
55
|
-
- the current text model does not carry imported DOCX font-family semantics as
|
|
56
|
-
active canonical editing state
|
|
57
|
-
- `font_substitution` exists as a warning type in the public contracts, but it is
|
|
58
|
-
not yet an active proved runtime behavior
|
|
59
|
-
|
|
60
|
-
In other words, the runtime is already strong where the problem is:
|
|
61
|
-
|
|
62
|
-
- text structure
|
|
63
|
-
- anchoring
|
|
64
|
-
- comments
|
|
65
|
-
- supported insert/delete revisions
|
|
66
|
-
- package preservation
|
|
67
|
-
- explicit trust surfaces
|
|
68
|
-
|
|
69
|
-
It is not yet strong where the problem is:
|
|
70
|
-
|
|
71
|
-
- table structure as a first-class editable document object
|
|
72
|
-
- browser rendering based on imported DOCX font intent
|
|
73
|
-
- Word layout parity
|
|
74
|
-
- generated field semantics
|
|
75
|
-
- advanced page-layout or floating-object behavior
|
|
76
|
-
|
|
77
|
-
## What The Legal Feedback Gets Right
|
|
78
|
-
|
|
79
|
-
The legal feedback is directionally correct in three important ways.
|
|
80
|
-
|
|
81
|
-
First, lawyers do not judge credibility by generic rich-text breadth. They judge
|
|
82
|
-
it by whether the editor preserves meaning under review, especially for:
|
|
83
|
-
|
|
84
|
-
- revisions
|
|
85
|
-
- comments
|
|
86
|
-
- numbering
|
|
87
|
-
- tables
|
|
88
|
-
- references
|
|
89
|
-
- versions
|
|
90
|
-
- controlled editing boundaries
|
|
91
|
-
|
|
92
|
-
Second, visual fidelity alone is not enough. Stable anchors, structured editing,
|
|
93
|
-
review semantics, and round-trip safety matter more than a superficially Word-like
|
|
94
|
-
page.
|
|
95
|
-
|
|
96
|
-
Third, the feedback is right that the product should be built in this order:
|
|
97
|
-
|
|
98
|
-
1. strict structural document model
|
|
99
|
-
2. revision and anchoring system
|
|
100
|
-
3. legal semantics layer
|
|
101
|
-
4. DOCX translation layer
|
|
102
|
-
|
|
103
|
-
That ordering already matches the repo's design intent and should continue to
|
|
104
|
-
govern expansion work.
|
|
105
|
-
|
|
106
|
-
## Recommended Fidelity Targets
|
|
107
|
-
|
|
108
|
-
The legal feedback's `Layer 0` through `Layer 5` model is useful, but it needs to
|
|
109
|
-
be reset to fit the current architecture honestly.
|
|
110
|
-
|
|
111
|
-
### Credible Now Or Near-Term
|
|
112
|
-
|
|
113
|
-
#### Layer 5 or close to it
|
|
114
|
-
|
|
115
|
-
- paragraphs and character runs for the supported text slice
|
|
116
|
-
- supported comments and comment threads on text ranges
|
|
117
|
-
- supported tracked insertions and deletions
|
|
118
|
-
- headings through style references
|
|
119
|
-
- nested lists and restart numbering for the supported numbering slice
|
|
120
|
-
|
|
121
|
-
#### Layer 4 next, not yet full Layer 5
|
|
122
|
-
|
|
123
|
-
- clause-aware heading and numbering semantics
|
|
124
|
-
- bookmarks and stable anchors
|
|
125
|
-
- versions and compare infrastructure
|
|
126
|
-
- styles as policy and validation
|
|
127
|
-
- defined terms
|
|
128
|
-
- cross-reference infrastructure
|
|
129
|
-
|
|
130
|
-
#### Layer 2 to 3 now
|
|
131
|
-
|
|
132
|
-
- inline images as whole-unit review objects
|
|
133
|
-
- hyperlinks
|
|
134
|
-
- print-awareness and pagination cues
|
|
135
|
-
- prototype-only table storytelling in the demo harness
|
|
136
|
-
|
|
137
|
-
### Preserve-Only For Now
|
|
138
|
-
|
|
139
|
-
These should remain explicit preserve-only surfaces until the repo owns their
|
|
140
|
-
full import, canonical representation, edit semantics, export, and Word reopen
|
|
141
|
-
behavior:
|
|
142
|
-
|
|
143
|
-
- sections and page setup
|
|
144
|
-
- headers and footers
|
|
145
|
-
- footnotes and endnotes
|
|
146
|
-
- fields and generated indexes
|
|
147
|
-
- SDTs and content controls
|
|
148
|
-
- embedded objects and OLE payloads
|
|
149
|
-
- unknown OOXML and package parts
|
|
150
|
-
- floating shapes, text boxes, and advanced DrawingML layout
|
|
151
|
-
|
|
152
|
-
### Non-Goals For This Expansion
|
|
153
|
-
|
|
154
|
-
- exact Word pagination parity
|
|
155
|
-
- exact line-break parity
|
|
156
|
-
- native installed-font parity across browsers and operating systems
|
|
157
|
-
- full Word ribbon behavior
|
|
158
|
-
- support claims based on static demo visuals alone
|
|
159
|
-
|
|
160
|
-
## Recommended Table Architecture Expansion
|
|
161
|
-
|
|
162
|
-
### Decision
|
|
163
|
-
|
|
164
|
-
Tables should enter canonical content as first-class block nodes, not remain
|
|
165
|
-
preserve-only blocks and not be faked only in the prototype.
|
|
166
|
-
|
|
167
|
-
### Proposed Canonical Shape
|
|
168
|
-
|
|
169
|
-
Add a typed table subtree under canonical content:
|
|
170
|
-
|
|
171
|
-
- `TableNode`
|
|
172
|
-
- `TableRowNode`
|
|
173
|
-
- `TableCellNode`
|
|
174
|
-
|
|
175
|
-
Each level needs stable identity:
|
|
176
|
-
|
|
177
|
-
- `tableId`
|
|
178
|
-
- `rowId`
|
|
179
|
-
- `cellId`
|
|
180
|
-
|
|
181
|
-
Each cell should own normal block content, starting with a conservative subset:
|
|
182
|
-
|
|
183
|
-
- `ParagraphNode`
|
|
184
|
-
- `OpaqueBlockNode`
|
|
185
|
-
|
|
186
|
-
Cell metadata should capture structural facts the runtime needs to preserve and
|
|
187
|
-
edit safely:
|
|
188
|
-
|
|
189
|
-
- `rowSpan`
|
|
190
|
-
- `colSpan`
|
|
191
|
-
- merge topology
|
|
192
|
-
- width hints or preserved width metadata
|
|
193
|
-
- header-row or header-cell hints
|
|
194
|
-
- preserved unsupported table properties
|
|
195
|
-
|
|
196
|
-
### Editing Model
|
|
197
|
-
|
|
198
|
-
Do not force tables into the current flat text-story abstraction.
|
|
199
|
-
|
|
200
|
-
Instead, extend the runtime with a document-level selection model that can
|
|
201
|
-
distinguish:
|
|
202
|
-
|
|
203
|
-
- text range within a cell
|
|
204
|
-
- cell selection
|
|
205
|
-
- table selection
|
|
206
|
-
|
|
207
|
-
The command system should split into:
|
|
208
|
-
|
|
209
|
-
- cell-local text commands that reuse the current text engine
|
|
210
|
-
- table structural commands for rows, columns, merges, and selection movement
|
|
211
|
-
|
|
212
|
-
Recommended first serious table scope:
|
|
213
|
-
|
|
214
|
-
- in-cell text editing
|
|
215
|
-
- stable import and export of row and cell structure
|
|
216
|
-
- merged-cell preservation
|
|
217
|
-
- selection between cells
|
|
218
|
-
- comments anchored to cells or cell ranges
|
|
219
|
-
- supported insert/delete revisions inside cells
|
|
220
|
-
|
|
221
|
-
Explicitly defer in the first architecture expansion:
|
|
222
|
-
|
|
223
|
-
- tracked structural row and column revisions
|
|
224
|
-
- tracked merge and split semantics
|
|
225
|
-
- complete table style editing
|
|
226
|
-
- full Word table layout parity
|
|
227
|
-
|
|
228
|
-
### Import And Export Path
|
|
229
|
-
|
|
230
|
-
The current `parse-main-document` path should stop treating every non-paragraph
|
|
231
|
-
body child as `opaque_block` once the table slice is adopted.
|
|
232
|
-
|
|
233
|
-
The importer should:
|
|
234
|
-
|
|
235
|
-
- parse `w:tbl` into typed `TableNode` content
|
|
236
|
-
- parse supported rows, cells, and merge structure into canonical state
|
|
237
|
-
- preserve unsupported table descendants and properties as attached preserved
|
|
238
|
-
records rather than discarding them
|
|
239
|
-
- fall back to preserve-only only when a table cannot be represented safely
|
|
240
|
-
|
|
241
|
-
The exporter should:
|
|
242
|
-
|
|
243
|
-
- serialize typed canonical tables back to `w:tbl`
|
|
244
|
-
- preserve stable relationships and supported geometry
|
|
245
|
-
- reattach preserved table properties and descendants when safe
|
|
246
|
-
- block only when unsupported-fatal rewrites would be required
|
|
247
|
-
|
|
248
|
-
### Runtime And UI Implications
|
|
249
|
-
|
|
250
|
-
The runtime surface projection needs a real table view model rather than only
|
|
251
|
-
paragraph and opaque-block projection.
|
|
252
|
-
|
|
253
|
-
The UI should render:
|
|
254
|
-
|
|
255
|
-
- real table blocks from runtime state
|
|
256
|
-
- per-cell editing surfaces
|
|
257
|
-
- comment and revision decorations inside cells
|
|
258
|
-
- explicit preserve-only badges for unsupported table features
|
|
259
|
-
- honest degraded or locked states where the runtime cannot safely expose deeper
|
|
260
|
-
editing
|
|
261
|
-
|
|
262
|
-
This is architecture-compatible because it preserves the repo's core boundary:
|
|
263
|
-
the runtime owns state, the UI renders projections, and unsupported OOXML is
|
|
264
|
-
preserved rather than normalized away.
|
|
265
|
-
|
|
266
|
-
## Recommended Approximate Font Architecture
|
|
267
|
-
|
|
268
|
-
### Decision
|
|
269
|
-
|
|
270
|
-
Do not pursue native Word font parity in the browser.
|
|
271
|
-
|
|
272
|
-
Instead, add a curated web-font approximation layer that improves readability and
|
|
273
|
-
visual consistency while preserving DOCX font intent on import and export where
|
|
274
|
-
possible.
|
|
275
|
-
|
|
276
|
-
### Product Posture
|
|
277
|
-
|
|
278
|
-
The product should promise:
|
|
279
|
-
|
|
280
|
-
- readable legal-document typography in the browser
|
|
281
|
-
- consistent curated font rendering across supported environments
|
|
282
|
-
- explicit approximation rather than false parity
|
|
283
|
-
- preservation of DOCX font metadata where the editor is not rewriting it
|
|
284
|
-
|
|
285
|
-
The product should not promise:
|
|
286
|
-
|
|
287
|
-
- browser rendering identical to Word on the user's machine
|
|
288
|
-
- line wrapping or pagination identical to Word
|
|
289
|
-
- exposure of the full DOCX font system in the editing UI
|
|
290
|
-
|
|
291
|
-
### Proposed Render Model
|
|
292
|
-
|
|
293
|
-
Split font behavior into two layers.
|
|
294
|
-
|
|
295
|
-
#### 1. Document font intent
|
|
296
|
-
|
|
297
|
-
This is the DOCX-facing side:
|
|
298
|
-
|
|
299
|
-
- imported font-family intent where modeled or preserved
|
|
300
|
-
- exported `w:rFonts` behavior
|
|
301
|
-
- source-package font tables and theme parts
|
|
302
|
-
|
|
303
|
-
#### 2. Browser render profile
|
|
304
|
-
|
|
305
|
-
This is the browser-facing side:
|
|
306
|
-
|
|
307
|
-
- a small curated legal-reading font set
|
|
308
|
-
- deterministic fallback behavior
|
|
309
|
-
- explicit substitution signaling
|
|
310
|
-
|
|
311
|
-
Recommended built-in curated roles:
|
|
312
|
-
|
|
313
|
-
- `legalSerif`
|
|
314
|
-
- `legalSans`
|
|
315
|
-
- `legalMono`
|
|
316
|
-
|
|
317
|
-
Recommended behavior:
|
|
318
|
-
|
|
319
|
-
- map imported DOCX fonts to one of the curated roles for browser rendering
|
|
320
|
-
- use those curated roles consistently inside the editor surface
|
|
321
|
-
- preserve original DOCX font intent when round-tripping source-backed sessions
|
|
322
|
-
- emit `font_substitution` warnings when imported font intent cannot be rendered
|
|
323
|
-
as requested in the browser
|
|
324
|
-
|
|
325
|
-
### UI Scope
|
|
326
|
-
|
|
327
|
-
If font choice is exposed at all in the editing UI, keep it constrained to the
|
|
328
|
-
curated families rather than a Word-style full font picker.
|
|
329
|
-
|
|
330
|
-
That means:
|
|
331
|
-
|
|
332
|
-
- a limited family selector or typography preset control
|
|
333
|
-
- no claim of native installed-font fidelity
|
|
334
|
-
- no script-slot editing for `ascii`, `hAnsi`, `cs`, or East Asian font slots in
|
|
335
|
-
the first slice
|
|
336
|
-
|
|
337
|
-
### Why This Fits The Current Architecture
|
|
338
|
-
|
|
339
|
-
The repo is already stronger at structural and package truth than layout truth.
|
|
340
|
-
Approximate curated font rendering builds on that reality instead of fighting it.
|
|
341
|
-
|
|
342
|
-
It also keeps the legal-review surface calm and legible, which aligns with
|
|
343
|
-
`DESIGN.md`.
|
|
344
|
-
|
|
345
|
-
## Prototype Implications
|
|
346
|
-
|
|
347
|
-
The internal `/demo` prototype is useful, but it must remain architecture-true.
|
|
348
|
-
|
|
349
|
-
That means:
|
|
350
|
-
|
|
351
|
-
- it may visualize future table behavior before the runtime lands
|
|
352
|
-
- it may demonstrate curated font approximation choices
|
|
353
|
-
- it must not imply editable support the runtime does not actually own
|
|
354
|
-
- it must keep prototype-only additions clearly tagged
|
|
355
|
-
|
|
356
|
-
Today the prototype uses `_prototypeOnly` table blocks and mock fixture types that
|
|
357
|
-
structurally mirror the runtime snapshot. That is acceptable as a design surface,
|
|
358
|
-
but only if it stays honest about what is real runtime behavior versus UX
|
|
359
|
-
exploration.
|
|
360
|
-
|
|
361
|
-
Prototype work should therefore converge toward:
|
|
362
|
-
|
|
363
|
-
- runtime-shaped table block projections
|
|
364
|
-
- preserved-region trust cues
|
|
365
|
-
- compatibility and substitution messaging
|
|
366
|
-
- curated typography tokens
|
|
367
|
-
|
|
368
|
-
Prototype work should not introduce:
|
|
369
|
-
|
|
370
|
-
- DOM-owned editing semantics
|
|
371
|
-
- fake table support that bypasses canonical structure
|
|
372
|
-
- fake font parity claims
|
|
373
|
-
- review semantics that do not map back to runtime-owned anchors and commands
|
|
374
|
-
|
|
375
|
-
## Proof And Test Requirements
|
|
376
|
-
|
|
377
|
-
No support claim should widen without new proof on the same terms as the existing
|
|
378
|
-
repo proof program.
|
|
379
|
-
|
|
380
|
-
### Existing Proof Model To Reuse
|
|
381
|
-
|
|
382
|
-
The repo already has the right proof posture:
|
|
383
|
-
|
|
384
|
-
- frozen release-gate fixture corpus under `F01` through `F21`
|
|
385
|
-
- separate scenario artifacts for representative real-world documents
|
|
386
|
-
- synthetic XML tests for narrow semantic correctness
|
|
387
|
-
- package-backed session tests for runtime truth
|
|
388
|
-
- mounted `WordReviewEditor` interaction tests for user-visible behavior
|
|
389
|
-
- compatibility taxonomy proof for `supported-roundtrip`, `preserve-only`, and
|
|
390
|
-
`unsupported-fatal`
|
|
391
|
-
- durable `.tmp/wave-*` artifacts for closure
|
|
392
|
-
|
|
393
|
-
Any expansion proposal should keep that model intact.
|
|
394
|
-
|
|
395
|
-
### Table Proof Needed Before Wider Claims
|
|
396
|
-
|
|
397
|
-
First-class tables need proof at all of these layers:
|
|
398
|
-
|
|
399
|
-
#### Canonical and importer proof
|
|
400
|
-
|
|
401
|
-
- typed `TableNode` import from real DOCX fixtures
|
|
402
|
-
- merge topology preservation
|
|
403
|
-
- unsupported table-descendant preservation
|
|
404
|
-
|
|
405
|
-
#### Runtime and session proof
|
|
406
|
-
|
|
407
|
-
- package-backed `loadDocxEditorSession(...)` imports real table fixtures into
|
|
408
|
-
typed canonical table state
|
|
409
|
-
- in-cell text edits survive export without destructive fallback
|
|
410
|
-
|
|
411
|
-
#### UI proof
|
|
412
|
-
|
|
413
|
-
- mounted `WordReviewEditor` interaction test for entering a cell, editing text,
|
|
414
|
-
and exporting
|
|
415
|
-
- comment anchoring and selection behavior inside cells
|
|
416
|
-
|
|
417
|
-
#### Compatibility proof
|
|
418
|
-
|
|
419
|
-
- supported tables classify as `supported-roundtrip`
|
|
420
|
-
- unsupported table behaviors classify as `preserve-only`
|
|
421
|
-
- unsupported-fatal cases fail closed
|
|
422
|
-
|
|
423
|
-
#### Validator and closure proof
|
|
424
|
-
|
|
425
|
-
- source and edited exports validate through the existing package validation path
|
|
426
|
-
- wave review doc records fixture-by-fixture outcomes and durable artifacts
|
|
427
|
-
|
|
428
|
-
### Font Proof Needed Before Wider Claims
|
|
429
|
-
|
|
430
|
-
Approximate curated font rendering needs a different proof bar from Word layout
|
|
431
|
-
parity.
|
|
432
|
-
|
|
433
|
-
The required proof should show:
|
|
434
|
-
|
|
435
|
-
- imported DOCX font intent is preserved or mapped non-destructively
|
|
436
|
-
- source-backed sessions do not drop `fontTable.xml` or related font/theme data
|
|
437
|
-
during export
|
|
438
|
-
- browser substitution triggers explicit `font_substitution` warnings
|
|
439
|
-
- substitution does not silently block export unless another fatal condition is
|
|
440
|
-
present
|
|
441
|
-
- representative Word reopen checks still pass
|
|
442
|
-
|
|
443
|
-
The required proof should not demand:
|
|
444
|
-
|
|
445
|
-
- pixel-identical browser rendering
|
|
446
|
-
- exact page-layout equivalence with Word
|
|
447
|
-
|
|
448
|
-
### Recommended New Test Surfaces
|
|
449
|
-
|
|
450
|
-
Current repo conventions suggest the following kinds of additions when this work
|
|
451
|
-
is eventually implemented:
|
|
452
|
-
|
|
453
|
-
- new `test/io/*` import/export tests for typed tables and font-preservation paths
|
|
454
|
-
- package-backed session proof alongside `test/io/docx-session.test.ts`
|
|
455
|
-
- new mounted-shell interaction proof alongside
|
|
456
|
-
`test/ui/word-review-editor.interaction.test.tsx`
|
|
457
|
-
- compatibility and warning proof under `test/validation/*`
|
|
458
|
-
- later-wave review docs under `docs/plans/waves/reviews/`
|
|
459
|
-
|
|
460
|
-
## What Should Remain Deferred
|
|
461
|
-
|
|
462
|
-
Even after first-class tables and curated web-font rendering are added, these
|
|
463
|
-
should remain deferred unless a later wave explicitly owns them:
|
|
464
|
-
|
|
465
|
-
- exact Word print and pagination parity
|
|
466
|
-
- structural tracked revisions for rows, columns, and merge operations
|
|
467
|
-
- full Word style-definition editing
|
|
468
|
-
- generated-field authoring and refresh semantics
|
|
469
|
-
- general editable support for headers, footers, notes, or sections
|
|
470
|
-
- OLE, macros, or advanced automation surfaces
|
|
471
|
-
|
|
472
|
-
## Recommended Sequence
|
|
473
|
-
|
|
474
|
-
The cleanest sequence is:
|
|
475
|
-
|
|
476
|
-
1. keep Waves 8 through 11 focused on proof, pilot, QA, and fleet readiness for
|
|
477
|
-
the currently declared v1 surface
|
|
478
|
-
2. preserve the legal-feedback expansion as a deferred packet
|
|
479
|
-
3. promote it only as a later numbered wave after the current sequence closes
|
|
480
|
-
4. widen public claims only after runtime, fixture, validator, and Word reopen
|
|
481
|
-
proof all exist
|
|
482
|
-
|
|
483
|
-
## Bottom Line
|
|
484
|
-
|
|
485
|
-
The legal feedback is right about where product credibility comes from, but the
|
|
486
|
-
current architecture can only claim part of that vision honestly today.
|
|
487
|
-
|
|
488
|
-
The most architecture-compatible next step is:
|
|
489
|
-
|
|
490
|
-
- first-class canonical tables
|
|
491
|
-
- table-aware runtime selection and commands
|
|
492
|
-
- curated approximate web-font rendering
|
|
493
|
-
- explicit substitution diagnostics
|
|
494
|
-
- the same proof discipline already used elsewhere in the repo
|
|
495
|
-
|
|
496
|
-
The repo should not chase Word visual parity first. It should extend the
|
|
497
|
-
structured runtime in the areas where legal meaning and review trust depend on it,
|
|
498
|
-
and keep the browser rendering layer honest about approximation.
|