@beyondwork/docx-react-component 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +44 -104
- package/package.json +66 -15
- package/src/api/public-types.ts +1 -1
- package/src/compare/diff-engine.ts +530 -0
- package/src/compare/export-redlines.ts +162 -0
- package/src/compare/snapshot.ts +37 -0
- package/src/core/commands/index.ts +1 -1
- package/src/core/state/editor-state.ts +2 -2
- package/src/index.ts +45 -0
- package/src/legal/bookmarks.ts +196 -0
- package/src/legal/cross-references.ts +356 -0
- package/src/legal/defined-terms.ts +203 -0
- package/src/runtime/document-runtime.ts +3 -5
- package/src/runtime/table-commands.ts +4 -1
- package/src/runtime/table-schema.ts +17 -2
- package/src/runtime/virtualized-rendering.ts +258 -0
- package/src/ui/WordReviewEditor.tsx +256 -35
- package/src/ui-tailwind/editor-surface/tw-editor-surface.tsx +2 -2
- package/src/ui-tailwind/editor-surface/tw-table-node-view.tsx +16 -2
- 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/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,145 +0,0 @@
|
|
|
1
|
-
# Wave 35 cont-QA Review
|
|
2
|
-
|
|
3
|
-
- Wave: 35
|
|
4
|
-
- Agent: A0
|
|
5
|
-
- Role: cont-QA
|
|
6
|
-
- Reviewed: 2026-04-06
|
|
7
|
-
- Verdict: PASS
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## Summary
|
|
12
|
-
|
|
13
|
-
Wave 35 targets the `track-change-extensions` component and declares a single promotion: `baseline-proved`. The implementation is owned by A1. A8 performed integration synthesis. A9 confirmed shared-plan documentation closure.
|
|
14
|
-
|
|
15
|
-
This review judges the landed evidence against the declared exit contract and component promotion target.
|
|
16
|
-
|
|
17
|
-
---
|
|
18
|
-
|
|
19
|
-
## Exit Contract Verification — A1
|
|
20
|
-
|
|
21
|
-
Declared exit contract:
|
|
22
|
-
- completion: authoritative
|
|
23
|
-
- durability: durable
|
|
24
|
-
- proof: integration
|
|
25
|
-
- doc-impact: none
|
|
26
|
-
|
|
27
|
-
### Deliverables check
|
|
28
|
-
|
|
29
|
-
All seven declared deliverables are confirmed present in the landed tree:
|
|
30
|
-
|
|
31
|
-
| File | Status |
|
|
32
|
-
|---|---|
|
|
33
|
-
| `src/io/ooxml/parse-revisions.ts` | Present — `parseTblPropertyRevisions()` and `parseSectPrRevisions()` confirmed at lines 478, 525 |
|
|
34
|
-
| `src/io/export/serialize-revisions.ts` | Present — `serializePropertyChangeMarkup()` confirmed at line 335 |
|
|
35
|
-
| `src/review/store/revision-types.ts` | Present — `PropertyChangeData`, `MoveData`, `SupportedRevisionKind` includes `'property-change'` confirmed |
|
|
36
|
-
| `src/review/store/revision-store.ts` | Present — `createRevisionRecord` passes through `propertyChangeData` and `moveData` (declared in proof bundle) |
|
|
37
|
-
| `src/model/canonical-document.ts` | Present — `RevisionPropertyChangeData`, `RevisionMoveData`, optional metadata fields confirmed |
|
|
38
|
-
| `test/review/property-change-revisions.test.ts` | Present — 10 tests |
|
|
39
|
-
| `test/review/move-revisions.test.ts` | Present — 7 tests |
|
|
40
|
-
| `.tmp/wave-35-track-proof/revisions.json` | Present — proof bundle with full test results and interface change inventory |
|
|
41
|
-
|
|
42
|
-
All deliverables: **confirmed**.
|
|
43
|
-
|
|
44
|
-
### Proof bundle verification
|
|
45
|
-
|
|
46
|
-
Proof artifact: `.tmp/wave-35-track-proof/revisions.json`
|
|
47
|
-
|
|
48
|
-
New test results from the proof bundle:
|
|
49
|
-
- `property-change-revisions.test.ts`: 10/10 passed, 0 failed
|
|
50
|
-
- `move-revisions.test.ts`: 7/7 passed, 0 failed
|
|
51
|
-
|
|
52
|
-
Existing revision test results (regression check):
|
|
53
|
-
- `revision-store.test.ts`: 8/8 passed, 0 failed
|
|
54
|
-
- `revision-actions.test.ts`: 11/11 passed, 0 failed
|
|
55
|
-
|
|
56
|
-
Total: 17 new tests passing, 19 existing tests unaffected (0 regressions).
|
|
57
|
-
|
|
58
|
-
Proof level: **integration** — satisfied. New tests prove accept/reject paths, preserve-only behavior, linked move IDs, and round-trip serialization. Existing tests confirm no regressions in the revision layer.
|
|
59
|
-
|
|
60
|
-
### Interface changes verified
|
|
61
|
-
|
|
62
|
-
Five interface files changed as declared:
|
|
63
|
-
1. `src/review/store/revision-types.ts` — `SupportedRevisionKind` union extended, `PropertyChangeData`, `MoveData`, `PropertyChangeRevision`, `MoveRevision` added
|
|
64
|
-
2. `src/review/store/revision-store.ts` — metadata passthrough added
|
|
65
|
-
3. `src/model/canonical-document.ts` — `RevisionPropertyChangeData`, `RevisionMoveData` added; `RevisionRecord.kind` union extended
|
|
66
|
-
4. `src/io/ooxml/parse-revisions.ts` — two new parsing functions; moveFrom/moveTo and pPrChange/rPrChange carry structured metadata
|
|
67
|
-
5. `src/io/export/serialize-revisions.ts` — `serializePropertyChangeMarkup()` function added; handles accept (remove `*PrChange` element) and reject (replace container with `beforeContainerXml`)
|
|
68
|
-
|
|
69
|
-
All interface changes: **confirmed landed**.
|
|
70
|
-
|
|
71
|
-
### Architecture alignment
|
|
72
|
-
|
|
73
|
-
Per `docs/reference/repository-guidance.md`:
|
|
74
|
-
- Changes route through the canonical model (`src/model/canonical-document.ts`) — satisfied
|
|
75
|
-
- OOXML content is not silently dropped: pPrChange and rPrChange are preserve-only with `PropertyChangeData` in metadata; moveFrom/moveTo are preserve-only with `MoveData` and linked `moveId` — satisfied
|
|
76
|
-
- Actionable property-change kinds (sectPrChange, tblPrChange) have defined accept/reject semantics — satisfied
|
|
77
|
-
- Wave planning lessons rule 12 ("one canonical contract per seam"): the revision contract is extended additively; no parallel runtime envelope created — satisfied
|
|
78
|
-
|
|
79
|
-
No architecture violations identified.
|
|
80
|
-
|
|
81
|
-
---
|
|
82
|
-
|
|
83
|
-
## Component Promotion Verification
|
|
84
|
-
|
|
85
|
-
Declared promotion: `track-change-extensions` → `baseline-proved`
|
|
86
|
-
|
|
87
|
-
Component matrix check (`.json` and `.md`):
|
|
88
|
-
- `component-cutover-matrix.json` line 1037: `"currentLevel": "baseline-proved"` for `track-change-extensions` — **confirmed**
|
|
89
|
-
- `component-cutover-matrix.md` row for `track-change-extensions`: `baseline-proved` with proof surfaces listed — **confirmed**
|
|
90
|
-
- Wave 35 promotion entry present in both files — **confirmed**
|
|
91
|
-
|
|
92
|
-
The declared promotion is satisfied by the landed proof.
|
|
93
|
-
|
|
94
|
-
---
|
|
95
|
-
|
|
96
|
-
## A8 Integration Synthesis Check
|
|
97
|
-
|
|
98
|
-
Integration recommendation: `ready-for-doc-closure`
|
|
99
|
-
|
|
100
|
-
Key integration claims against landed state:
|
|
101
|
-
- "A1 proof complete (17/17 tests, 0 regressions)" — confirmed by proof bundle
|
|
102
|
-
- "5 interface changes in revision layer" — confirmed (5 files)
|
|
103
|
-
- "component matrix and current-state already reflect baseline-proved promotion" — confirmed by direct inspection
|
|
104
|
-
- "0 blockers, 0 conflicts, 0 proof gaps" — consistent with landed state
|
|
105
|
-
|
|
106
|
-
A8 recommendation: **consistent with landed evidence**.
|
|
107
|
-
|
|
108
|
-
---
|
|
109
|
-
|
|
110
|
-
## Documentation Closure Check
|
|
111
|
-
|
|
112
|
-
A9 coordination record (`coord-decision-f0242c53`): "All shared-plan docs already aligned — no-change for wave 35"
|
|
113
|
-
|
|
114
|
-
Verification against actual doc state:
|
|
115
|
-
- `docs/plans/current-state.md`: Wave 35 entry present at "Active Maturity Line" — 17/17 tests, proof artifact path, `track-change-extensions` at `baseline-proved` — **confirmed**
|
|
116
|
-
- `docs/plans/component-cutover-matrix.md`: `track-change-extensions` row present with `baseline-proved` and correct proof surfaces — **confirmed**
|
|
117
|
-
- `docs/plans/component-cutover-matrix.json`: `currentLevel: "baseline-proved"` and promotions entry for wave 35 — **confirmed**
|
|
118
|
-
|
|
119
|
-
The three "documentation gaps" listed in the integration report (`A1:shared:docs/plans/component-cutover-matrix.md`, `A1:shared:docs/plans/component-cutover-matrix.json`, `component-matrix:track-change-extensions`) were tracker residue from A1's handoff before A9 ran. Actual doc state satisfies all three — no gaps remain.
|
|
120
|
-
|
|
121
|
-
A9 no-change declaration: **accepted** (docs verified against actual file state).
|
|
122
|
-
|
|
123
|
-
Documentation gate: **closed**.
|
|
124
|
-
|
|
125
|
-
---
|
|
126
|
-
|
|
127
|
-
## Blocking Set
|
|
128
|
-
|
|
129
|
-
None. All gates clear.
|
|
130
|
-
|
|
131
|
-
---
|
|
132
|
-
|
|
133
|
-
## Gate Summary
|
|
134
|
-
|
|
135
|
-
| Gate | Status | Evidence |
|
|
136
|
-
|---|---|---|
|
|
137
|
-
| Architecture | pass | Canonical model extended additively; no DOM shortcuts; OOXML preserved or structured |
|
|
138
|
-
| Integration | pass | A8 ready-for-doc-closure; 0 conflicts, 0 proof gaps |
|
|
139
|
-
| Durability | pass | 17/17 new tests, 0 regressions in existing 19 revision tests |
|
|
140
|
-
| Live | pass | No live deployment claimed; baseline-proved does not require live proof |
|
|
141
|
-
| Docs | pass | component matrix and current-state confirmed aligned; A9 no-change accepted |
|
|
142
|
-
|
|
143
|
-
---
|
|
144
|
-
|
|
145
|
-
Verdict: PASS
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
# Wave 4 cont-QA Report
|
|
2
|
-
|
|
3
|
-
## 2026-03-26T14:06:41Z Reconciliation Pass
|
|
4
|
-
|
|
5
|
-
Wave 4 is closed under the replanned architecture-only scope.
|
|
6
|
-
|
|
7
|
-
Evidence reviewed:
|
|
8
|
-
|
|
9
|
-
- `docs/reference/repository-guidance.md`
|
|
10
|
-
- `docs/reference/wave-planning-lessons.md`
|
|
11
|
-
- `docs/plans/master-plan.md`
|
|
12
|
-
- `docs/plans/current-state.md`
|
|
13
|
-
- `docs/plans/component-cutover-matrix.md`
|
|
14
|
-
- `docs/plans/component-cutover-matrix.json`
|
|
15
|
-
- `docs/plans/waves/README.md`
|
|
16
|
-
- `docs/plans/waves/wave-4.md`
|
|
17
|
-
- `docs/plans/waves/wave-5.md`
|
|
18
|
-
- `docs/plans/waves/reviews/wave-4-structure-proof.md`
|
|
19
|
-
- `docs/roadmap.md`
|
|
20
|
-
- `src/ui/WordReviewEditor.tsx`
|
|
21
|
-
- `src/ui/editor-surface/editor-surface.tsx`
|
|
22
|
-
- `src/preservation/opaque-fragment-store.ts`
|
|
23
|
-
- `src/validation/compatibility-report.ts`
|
|
24
|
-
- `test/ui/word-review-editor.test.tsx`
|
|
25
|
-
|
|
26
|
-
Reconciliation:
|
|
27
|
-
|
|
28
|
-
- Earlier blocked Wave 4 passes evaluated a superseded closure bar that still treated `F03`/`F05`/`F06`/`F07` structural baseline proof as a Wave 4 deliverable.
|
|
29
|
-
- The current shared plan closes Wave 4 as the live shell architecture bridge: runtime-owned editing, review projections, preservation substrate, and compatibility-report derivation.
|
|
30
|
-
- The historical structural packet in [`docs/plans/waves/reviews/wave-4-structure-proof.md`](/home/coder/docx-react-component/docs/plans/waves/reviews/wave-4-structure-proof.md) remains useful carry-forward evidence, but it is no longer the Wave 4 closure gate.
|
|
31
|
-
- Structural fixture proof and comment OOXML roundtrip proof moved to Wave 5 and are already reflected there in the current shared-plan docs.
|
|
32
|
-
|
|
33
|
-
Gate judgment:
|
|
34
|
-
|
|
35
|
-
- Architecture: pass. The live `WordReviewEditor` path, runtime-owned review surfaces, preservation substrate, and compatibility derivation are the actual Wave 4 deliverables and are consistently described.
|
|
36
|
-
- Integration: pass. Wave 4 no longer needs to close the structural fixture packet itself; that proof is a Wave 5 responsibility and no longer blocks the architecture slice.
|
|
37
|
-
- Durability: pass. The promoted Wave 4 components close at `repo-landed`, not `baseline-proved`, and the shared docs now honor that narrower bar.
|
|
38
|
-
- Live: pass. This wave has no standalone deploy target or live-service gate.
|
|
39
|
-
- Docs: pass. `README`, `roadmap`, `master-plan`, `current-state`, and the component matrix now tell one consistent Wave 4 story.
|
|
40
|
-
|
|
41
|
-
Residual carry-forward:
|
|
42
|
-
|
|
43
|
-
- `F03`/`F05`/`F06`/`F07` structural baseline proof belongs to Wave 5, not Wave 4.
|
|
44
|
-
- Comment OOXML roundtrip proof also belongs to Wave 5.
|
|
45
|
-
|
|
46
|
-
[wave-gate] architecture=pass integration=pass durability=pass live=pass docs=pass detail=Wave 4 closes as the replanned architecture slice; structural baseline proof moved to and closed in Wave 5
|
|
47
|
-
Verdict: PASS
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
# Wave 4 Structural Proof
|
|
2
|
-
|
|
3
|
-
## Status Note
|
|
4
|
-
|
|
5
|
-
This packet is historical carry-forward evidence from the pre-replan structural pass. It remains useful as a record of what was repo-landed before the live-path proof line stabilized, but it is not the controlling Wave 4 closure gate anymore. Numbering and inline-image closure moved forward into the later live-path proof set; `F05` and `F06` remain preserve-only table/package evidence until the deferred legal-fidelity packet lands first-class tables.
|
|
6
|
-
|
|
7
|
-
## 2026-03-26T11:04:31Z Structural Fixture Bundle Refresh
|
|
8
|
-
|
|
9
|
-
Owned deliverables verified:
|
|
10
|
-
|
|
11
|
-
- `docs/plans/waves/reviews/wave-4-structure-proof.md`
|
|
12
|
-
- `test/fixtures/docx/F03-legal-outline-numbering.docx`
|
|
13
|
-
- `test/fixtures/docx/F05-table-heavy-agreement.docx`
|
|
14
|
-
- `test/fixtures/docx/F06-merged-cells-signature-table.docx`
|
|
15
|
-
- `test/fixtures/docx/F07-inline-images-exhibit.docx`
|
|
16
|
-
- `.tmp/wave-4-structure/structure-roundtrip-report.json`
|
|
17
|
-
- `.tmp/wave-4-structure/sdk-validation-report.json`
|
|
18
|
-
- `.tmp/wave-4-structure/fixture-summary.md`
|
|
19
|
-
|
|
20
|
-
Proof commands executed:
|
|
21
|
-
|
|
22
|
-
- `dotnet build services/openxml-validator/OpenXmlValidator.Api.csproj`
|
|
23
|
-
- `curl -fsS http://127.0.0.1:5080/health`
|
|
24
|
-
- `cd services/react-word-editor && ./node_modules/.bin/tsc --ignoreConfig --pretty false --target ES2022 --module nodenext --moduleResolution nodenext --lib ES2022,DOM --types node --typeRoots ./node_modules/@types --esModuleInterop --strict --ignoreDeprecations 6.0 --allowImportingTsExtensions --rewriteRelativeImportExtensions --rootDir ../.. --outDir ../../.tmp/wave-4-structure/build-runtime ../../src/model/cds-1.0.0.ts ../../src/model/canonical-document.ts ../../src/core/commands/list-commands.ts ../../src/io/ooxml/part-manifest.ts ../../src/io/ooxml/parse-main-document.ts ../../src/io/ooxml/parse-numbering.ts ../../src/io/ooxml/parse-tables.ts ../../src/io/ooxml/parse-inline-media.ts ../../src/io/normalize/normalize-text.ts ../../src/io/export/export-session.ts ../../src/io/export/serialize-main-document.ts ../../src/io/export/serialize-numbering.ts ../../src/io/export/serialize-tables.ts ../../src/io/opc/package-reader.ts ../../src/io/opc/package-writer.ts ../../test/io/numbering-roundtrip.test.ts ../../test/io/table-media-roundtrip.test.ts`
|
|
25
|
-
- historical capture note: the 2026-03-26 strict compile attempt hit a then-current import mismatch in `src/core/commands/list-commands.ts` (`CanonicalDocumentEnvelope` vs. the model-layer `CanonicalDocument`). The current repo source no longer carries that drift; the fallback below is retained only as part of the historical capture record.
|
|
26
|
-
- `cd services/react-word-editor && ./node_modules/.bin/tsc --noCheck --ignoreConfig --pretty false --target ES2022 --module nodenext --moduleResolution nodenext --lib ES2022,DOM --types node --typeRoots ./node_modules/@types --esModuleInterop --strict --ignoreDeprecations 6.0 --allowImportingTsExtensions --rewriteRelativeImportExtensions --rootDir ../.. --outDir ../../.tmp/wave-4-structure/build-runtime ../../src/model/cds-1.0.0.ts ../../src/model/canonical-document.ts ../../src/core/commands/list-commands.ts ../../src/io/ooxml/part-manifest.ts ../../src/io/ooxml/parse-main-document.ts ../../src/io/ooxml/parse-numbering.ts ../../src/io/ooxml/parse-tables.ts ../../src/io/ooxml/parse-inline-media.ts ../../src/io/normalize/normalize-text.ts ../../src/io/export/export-session.ts ../../src/io/export/serialize-main-document.ts ../../src/io/export/serialize-numbering.ts ../../src/io/export/serialize-tables.ts ../../src/io/opc/package-reader.ts ../../src/io/opc/package-writer.ts ../../test/io/numbering-roundtrip.test.ts ../../test/io/table-media-roundtrip.test.ts`
|
|
27
|
-
- `node --test .tmp/wave-4-structure/build-runtime/test/io/numbering-roundtrip.test.js .tmp/wave-4-structure/build-runtime/test/io/table-media-roundtrip.test.js`
|
|
28
|
-
- transient validator run held open for the proof refresh shell:
|
|
29
|
-
- `dotnet run --project services/openxml-validator/OpenXmlValidator.Api.csproj --urls http://127.0.0.1:5080`
|
|
30
|
-
- repo-root proof runner `node .tmp/wave-4-structure/generate-structure-proof.mjs` using `.tmp/wave-4-structure/build-runtime/src/...` imports to:
|
|
31
|
-
- load real F03/F05/F06/F07 fixtures
|
|
32
|
-
- parse and normalize each fixture through the current repo import path
|
|
33
|
-
- export a no-op roundtrip variant into `.tmp/wave-4-structure/exports/`
|
|
34
|
-
- validate both source and roundtrip packages through `http://127.0.0.1:5080/validate`
|
|
35
|
-
- write `.tmp/wave-4-structure/structure-roundtrip-report.json`
|
|
36
|
-
- write `.tmp/wave-4-structure/sdk-validation-report.json`
|
|
37
|
-
|
|
38
|
-
Durable proof outcome:
|
|
39
|
-
|
|
40
|
-
- This historical packet recorded a `--noCheck` fallback after a then-current `src/core/commands/list-commands.ts` import mismatch. The current repo source no longer needs that specific workaround, but this document still records the original capture rather than fresh proof.
|
|
41
|
-
- Focused runtime tests passed `4/4`:
|
|
42
|
-
- `numbering-roundtrip.test`
|
|
43
|
-
- `table-media-roundtrip.test`
|
|
44
|
-
- All four source fixtures are now valid `.docx` packages under the Open XML SDK validator.
|
|
45
|
-
- `F03` intentionally carries restart-numbering coverage inside the owned fixture set by using two numbering instances (`numId=1` and `numId=2`) in one legal-outline document.
|
|
46
|
-
- `F03` source and roundtrip packages are both SDK-valid, but the repo still drops list semantics on import or export:
|
|
47
|
-
- source `w:numPr` count is `8`
|
|
48
|
-
- roundtrip `w:numPr` count is `0`
|
|
49
|
-
- normalized numbered paragraph count is `0`
|
|
50
|
-
- restart numbering with `numId=2` disappears from canonical state and export
|
|
51
|
-
- `F05` stays package-valid and preserves `w:tbl` plus `w:tblGrid` on a no-op roundtrip, but the table imports as opaque preserved OOXML instead of a typed table surface.
|
|
52
|
-
- `F06` stays package-valid and preserves `w:gridSpan` plus `w:vMerge` on a no-op roundtrip, but merged-cell tables also remain opaque preserved OOXML instead of canonical table state.
|
|
53
|
-
- `F07` source is SDK-valid, but the roundtrip package fails SDK validation because the serializer emits preserved drawing XML without redeclaring the `wp`, `a`, and `pic` namespaces on `word/document.xml`.
|
|
54
|
-
- `F07` also still imports the drawing as `opaque_inline` content rather than a typed image node.
|
|
55
|
-
|
|
56
|
-
Result:
|
|
57
|
-
|
|
58
|
-
- Wave 4 structural fixtures and refreshed proof artifacts are durably landed.
|
|
59
|
-
- The owned proof bundle is authoritative for the current repo state, but `compatibility-and-word-validation` is still a `gap`, not `baseline-proved`.
|
|
60
|
-
- The current blockers are:
|
|
61
|
-
- numbering metadata is not carried into canonical state for `F03`
|
|
62
|
-
- tables and merged-cell tables are preserve-only for `F05` and `F06`
|
|
63
|
-
- inline-image roundtrip exports are not SDK-valid for `F07`
|
|
64
|
-
|
|
65
|
-
Follow-up required outside A5 ownership:
|
|
66
|
-
|
|
67
|
-
- A1: carry `w:numPr`, `numId`, `ilvl`, and restart semantics into canonical numbering state and back out through export.
|
|
68
|
-
- A2: move tables and inline images off opaque preservation paths into typed structural import or export support.
|
|
69
|
-
- A2: preserve or re-emit required drawing namespaces so exported image fixtures remain SDK-valid.
|
|
@@ -1,158 +0,0 @@
|
|
|
1
|
-
# Wave 5 Comment Baseline Proof
|
|
2
|
-
|
|
3
|
-
## Scope
|
|
4
|
-
|
|
5
|
-
Agent A5 owns the Wave 5 baseline proof bundle for `comments-and-anchor-mapping`.
|
|
6
|
-
|
|
7
|
-
Owned deliverables:
|
|
8
|
-
|
|
9
|
-
- `docs/plans/waves/reviews/wave-5-comment-proof.md`
|
|
10
|
-
- `test/fixtures/docx/F09-comments-single-paragraph.docx`
|
|
11
|
-
- `test/fixtures/docx/F10-threaded-comments-resolve.docx`
|
|
12
|
-
- `test/fixtures/docx/F13-comments-on-deleted-text.docx`
|
|
13
|
-
|
|
14
|
-
Required proof artifacts:
|
|
15
|
-
|
|
16
|
-
- `.tmp/wave-5-comments/comment-anchor-report.json`
|
|
17
|
-
- `.tmp/wave-5-comments/thread-roundtrip-report.json`
|
|
18
|
-
- `.tmp/wave-5-comments/comment-ui-proof.json`
|
|
19
|
-
|
|
20
|
-
Supplemental proof artifacts captured for this note:
|
|
21
|
-
|
|
22
|
-
- `.tmp/wave-5-comments/fixture-sdk-validation.json`
|
|
23
|
-
- `.tmp/wave-5-comments/s01-validator-delta.json`
|
|
24
|
-
|
|
25
|
-
## Commands
|
|
26
|
-
|
|
27
|
-
```bash
|
|
28
|
-
dotnet run --project .tmp/wave-5-comments/CommentFixtureProof.csproj
|
|
29
|
-
pnpm exec tsx .tmp/wave-5-comments/generate-comment-proofs.ts
|
|
30
|
-
pnpm exec tsx --test test/io/comment-roundtrip.test.ts test/review/comment-store.test.ts test/review/comment-remapping.test.ts test/core/mapping.test.ts test/validation/compatibility-engine.test.ts test/ui/comment-review-surface.test.tsx test/ui/word-review-editor.interaction.test.tsx
|
|
31
|
-
pnpm --filter @docx-react-component/react-word-editor-harness test
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
## Durable Proof
|
|
35
|
-
|
|
36
|
-
Fixture validation artifact:
|
|
37
|
-
|
|
38
|
-
- `.tmp/wave-5-comments/fixture-sdk-validation.json`
|
|
39
|
-
- generated at `2026-03-26T11:47:45.9211205Z`
|
|
40
|
-
- generator: `DocumentFormat.OpenXml 3.5.1.0`
|
|
41
|
-
|
|
42
|
-
Anchor remap artifact:
|
|
43
|
-
|
|
44
|
-
- `.tmp/wave-5-comments/comment-anchor-report.json`
|
|
45
|
-
- generated at `2026-03-26T11:47:29.138Z`
|
|
46
|
-
- result: `allCasesPassed = true`
|
|
47
|
-
|
|
48
|
-
Round-trip artifact:
|
|
49
|
-
|
|
50
|
-
- `.tmp/wave-5-comments/thread-roundtrip-report.json`
|
|
51
|
-
- generated by `test/io/comment-roundtrip.test.ts`
|
|
52
|
-
- supported fixture: comment id `7` stayed stable across parse, edit, and export
|
|
53
|
-
- supported import fidelity: leading and trailing whitespace in single-paragraph comment bodies now stays intact across parse and export
|
|
54
|
-
- preserve-only fixture: comment id `9` imported detached and stayed out of active serialization
|
|
55
|
-
|
|
56
|
-
UI integration artifact:
|
|
57
|
-
|
|
58
|
-
- `.tmp/wave-5-comments/comment-ui-proof.json`
|
|
59
|
-
- generated at `2026-03-26T11:48:23.139Z`
|
|
60
|
-
- result: all recorded assertions are `true`
|
|
61
|
-
|
|
62
|
-
Scenario smoke artifact:
|
|
63
|
-
|
|
64
|
-
- `.tmp/wave-5-comments/s01-validator-delta.json`
|
|
65
|
-
- generated at `2026-03-26T11:47:45.9211205Z`
|
|
66
|
-
- `S01` expected vs actual validator delta: package `0 -> 0`, SDK `10 -> 10`
|
|
67
|
-
|
|
68
|
-
## Fixture Results
|
|
69
|
-
|
|
70
|
-
`F09` (`test/fixtures/docx/F09-comments-single-paragraph.docx`)
|
|
71
|
-
|
|
72
|
-
- nested single-paragraph comment anchors on one paragraph
|
|
73
|
-
- package entries: `5`
|
|
74
|
-
- package findings: `0`
|
|
75
|
-
- SDK findings: `0`
|
|
76
|
-
- comment ids: `0`, `1`
|
|
77
|
-
- anchor ids in `word/document.xml`: `0`, `1`
|
|
78
|
-
|
|
79
|
-
`F10` (`test/fixtures/docx/F10-threaded-comments-resolve.docx`)
|
|
80
|
-
|
|
81
|
-
- threaded reply plus resolution metadata
|
|
82
|
-
- package entries: `8`
|
|
83
|
-
- package findings: `0`
|
|
84
|
-
- SDK findings: `0`
|
|
85
|
-
- package includes `word/commentsExtended.xml`, `word/commentsIds.xml`, and `word/people.xml`
|
|
86
|
-
- `commentsExtended` records root `paraId=00AAA111 done=true`
|
|
87
|
-
- reply entry records `paraId=00AAA222 paraIdParent=00AAA111`
|
|
88
|
-
|
|
89
|
-
`F13` (`test/fixtures/docx/F13-comments-on-deleted-text.docx`)
|
|
90
|
-
|
|
91
|
-
- comment range wraps deleted revision content
|
|
92
|
-
- package entries: `5`
|
|
93
|
-
- package findings: `0`
|
|
94
|
-
- SDK findings: `0`
|
|
95
|
-
- `deletedRunCount = 1`
|
|
96
|
-
- comment range id: `0`
|
|
97
|
-
|
|
98
|
-
## Remap And UI Coverage
|
|
99
|
-
|
|
100
|
-
`comment-anchor-report.json` covers:
|
|
101
|
-
|
|
102
|
-
- overlapping single-paragraph anchors surviving inline edit
|
|
103
|
-
- delete-through behavior detaching the stored anchor instead of dropping the thread
|
|
104
|
-
- paragraph merge remapping an anchored range deterministically across a structural edit
|
|
105
|
-
|
|
106
|
-
Observed remap outcomes:
|
|
107
|
-
|
|
108
|
-
- overlap case: outer range `6-16 -> 6-24`, inner range `11-16 -> 19-24`
|
|
109
|
-
- delete-through case: anchor detached with `reason=deleted`, `lastKnownRange=7-9`
|
|
110
|
-
- paragraph merge case: range `6-10 -> 5-9`
|
|
111
|
-
|
|
112
|
-
`comment-ui-proof.json` covers:
|
|
113
|
-
|
|
114
|
-
- initial detached thread visibility
|
|
115
|
-
- runtime-added thread count increase from `1` to `2`
|
|
116
|
-
- anchor decoration visibility after add
|
|
117
|
-
- resolve transition from open to resolved
|
|
118
|
-
- compatibility report still advertising `comments-single-paragraph` with `blockExport=false`
|
|
119
|
-
|
|
120
|
-
## Validation Runs
|
|
121
|
-
|
|
122
|
-
Focused TypeScript proof run:
|
|
123
|
-
|
|
124
|
-
- command: `pnpm exec tsx --test test/io/comment-roundtrip.test.ts test/review/comment-store.test.ts test/review/comment-remapping.test.ts test/core/mapping.test.ts test/validation/compatibility-engine.test.ts test/ui/comment-review-surface.test.tsx test/ui/word-review-editor.interaction.test.tsx`
|
|
125
|
-
- result: `28/28` passing
|
|
126
|
-
|
|
127
|
-
Live runtime correction:
|
|
128
|
-
|
|
129
|
-
- `src/core/commands/index.ts` now routes content-changing edits through detached-anchor normalization instead of raw anchor remap only
|
|
130
|
-
- `src/runtime/document-runtime.ts` now exposes `comments.activeCommentId` in `RuntimeRenderSnapshot`
|
|
131
|
-
- `src/ui/WordReviewEditor.tsx` now passes that runtime value through to `EditorSurface`
|
|
132
|
-
- `src/io/ooxml/parse-comments.ts` now preserves leading and trailing whitespace for supported imported comment bodies instead of trimming them away
|
|
133
|
-
- the live shell regression is covered in `test/ui/word-review-editor.interaction.test.tsx`
|
|
134
|
-
|
|
135
|
-
Harness scenario-manifest run:
|
|
136
|
-
|
|
137
|
-
- command: `pnpm --filter @docx-react-component/react-word-editor-harness test`
|
|
138
|
-
- result: `4/4` passing
|
|
139
|
-
|
|
140
|
-
## Word Caveat
|
|
141
|
-
|
|
142
|
-
`F13` proves that a comment range wrapped around deleted text is structurally valid OOXML with zero SDK findings. Word UI behavior for deleted commented text is still pending Word desktop and Word web certification.
|
|
143
|
-
|
|
144
|
-
Inference from the encoded structure:
|
|
145
|
-
|
|
146
|
-
- once the commented content is deleted, reviewers should expect the comment to surface through revision-oriented review UI rather than as a normal inline active-range highlight
|
|
147
|
-
- the fixture exists to keep that behavior explicit and diagnosable, not to hide the edge case behind a false “clean” baseline
|
|
148
|
-
|
|
149
|
-
## Result
|
|
150
|
-
|
|
151
|
-
Wave 5 comment baseline proof is met at the durable local integration level:
|
|
152
|
-
|
|
153
|
-
- the missing F09/F10/F13 fixtures now exist
|
|
154
|
-
- all three fixtures validate with zero package findings and zero SDK findings in the local SDK proof run
|
|
155
|
-
- the comment remap artifact covers overlapping and edited-anchor cases, and supported single-paragraph comment-body whitespace now roundtrips without trimming
|
|
156
|
-
- the round-trip artifact captures supported single-paragraph stability and preserve-only multi-paragraph handling
|
|
157
|
-
- the UI artifact shows detached, open, and resolved comment state flowing through the live editor shell
|
|
158
|
-
- `S01` was recorded separately as a scenario delta artifact rather than treated as a zero-finding release-gate fixture
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
# Wave 5 cont-QA Report
|
|
2
|
-
|
|
3
|
-
## 2026-03-26T12:50:19Z Manual Closure Pass
|
|
4
|
-
|
|
5
|
-
Wave 5 is now clean enough to close.
|
|
6
|
-
|
|
7
|
-
Evidence reviewed:
|
|
8
|
-
|
|
9
|
-
- `docs/reference/repository-guidance.md`
|
|
10
|
-
- `docs/reference/ooxml-compliance.md`
|
|
11
|
-
- `docs/roadmap.md`
|
|
12
|
-
- `docs/plans/master-plan.md`
|
|
13
|
-
- `docs/plans/current-state.md`
|
|
14
|
-
- `docs/plans/component-cutover-matrix.md`
|
|
15
|
-
- `docs/plans/component-cutover-matrix.json`
|
|
16
|
-
- `docs/plans/waves/wave-5.md`
|
|
17
|
-
- `docs/plans/waves/reviews/wave-5-comment-proof.md`
|
|
18
|
-
- `src/api/public-types.ts`
|
|
19
|
-
- `src/core/commands/index.ts`
|
|
20
|
-
- `src/io/ooxml/parse-comments.ts`
|
|
21
|
-
- `src/io/export/serialize-comments.ts`
|
|
22
|
-
- `src/review/store/comment-remapping.ts`
|
|
23
|
-
- `src/review/store/comment-thread.ts`
|
|
24
|
-
- `src/review/store/revision-store.ts`
|
|
25
|
-
- `src/runtime/document-runtime.ts`
|
|
26
|
-
- `src/runtime/review-runtime.ts`
|
|
27
|
-
- `src/ui/WordReviewEditor.tsx`
|
|
28
|
-
- `src/ui/comments/comment-sidebar.tsx`
|
|
29
|
-
- `src/ui/comments/comment-thread-view.tsx`
|
|
30
|
-
- `test/io/comment-roundtrip.test.ts`
|
|
31
|
-
- `test/io/numbering-roundtrip.test.ts`
|
|
32
|
-
- `test/io/table-media-roundtrip.test.ts`
|
|
33
|
-
- `test/review/comment-remapping.test.ts`
|
|
34
|
-
- `test/review/comment-store.test.ts`
|
|
35
|
-
- `test/review/revision-store.test.ts`
|
|
36
|
-
- `test/ui/comment-review-surface.test.tsx`
|
|
37
|
-
- `test/ui/structural-surface.test.tsx`
|
|
38
|
-
- `test/ui/word-review-editor.interaction.test.tsx`
|
|
39
|
-
- `.tmp/wave-5-comments/comment-anchor-report.json`
|
|
40
|
-
- `.tmp/wave-5-comments/thread-roundtrip-report.json`
|
|
41
|
-
- `.tmp/wave-5-comments/comment-ui-proof.json`
|
|
42
|
-
- `.tmp/wave-5-comments/fixture-sdk-validation.json`
|
|
43
|
-
- `.tmp/wave-5-comments/s01-validator-delta.json`
|
|
44
|
-
|
|
45
|
-
Validation rerun:
|
|
46
|
-
|
|
47
|
-
- `pnpm exec tsx --test test/io/comment-roundtrip.test.ts test/review/comment-store.test.ts test/review/comment-remapping.test.ts test/core/mapping.test.ts test/validation/compatibility-engine.test.ts test/ui/comment-review-surface.test.tsx test/ui/word-review-editor.interaction.test.tsx`
|
|
48
|
-
- `pnpm exec tsx --test test/io/numbering-roundtrip.test.ts test/io/table-media-roundtrip.test.ts test/ui/structural-surface.test.tsx`
|
|
49
|
-
- `pnpm --filter @docx-react-component/react-word-editor-harness test`
|
|
50
|
-
- `pnpm run wave:doctor`
|
|
51
|
-
- `git diff --check`
|
|
52
|
-
|
|
53
|
-
Gate judgment:
|
|
54
|
-
|
|
55
|
-
- Architecture: pass. Comments remain detached from the content tree, anchors only move through transaction mappings, and the live shell now surfaces runtime-owned active-thread state and detached-anchor warnings.
|
|
56
|
-
- Integration: pass. Comment import/export, remapping, structural fixtures, and review UI now line up on one runtime-owned editing path.
|
|
57
|
-
- Durability: pass. Durable artifacts exist under `.tmp/wave-5-comments/`, and the structural/comment test surface reran green after the runtime active-thread and detachment fixes.
|
|
58
|
-
- Live: pass. `S01` remains a delta-tracked scenario artifact with a stable `10 -> 10` SDK-finding baseline, and the harness manifest/tests remain green.
|
|
59
|
-
- Docs: pass. Shared-plan docs and the component matrix now reflect Wave 5 closure, while tracked changes remain bounded to `repo-landed`.
|
|
60
|
-
|
|
61
|
-
Residual later-scope work:
|
|
62
|
-
|
|
63
|
-
- tracked-change OOXML import/export and accept/reject flows remain Wave 6 work
|
|
64
|
-
- package-level preservation baseline and malformed-document diagnostics remain later-wave work
|
|
65
|
-
- `S02` remains the primary real-world redline scenario for Wave 6 and later
|
|
66
|
-
|
|
67
|
-
[wave-gate] architecture=pass integration=pass durability=pass live=pass docs=pass detail=Wave-5 manually closed after structural and comment proof reran green and the live runtime now exposes active-thread plus detached-anchor state end to end
|
|
68
|
-
Verdict: PASS
|