Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions docs/en/phase-0-reactflow-parity-audit.md
Original file line number Diff line number Diff line change
Expand Up @@ -282,6 +282,10 @@ Phase 563 is GitHub #245 / `avalonia-node-map-kri`, the whiteboard annotation sc

Phase 564 is GitHub #246 / `avalonia-node-map-vyg`, the whiteboard annotation migration and compatibility proof. It adds `WHITEBOARD_ANNOTATION_MIGRATION_COMPATIBILITY_PROOF` as a docs/tests planning gate only: future implementation must define annotation-store versions, primitive references, style/geometry payloads, migration metadata validation, and coverage required before persistence, clipboard/export, or screenshot proof expands. It depends on Phase 560, Phase 561, and Phase 562 after Phase 559. This proof gate keeps no production migration implementation, no persisted annotation state, no file/database I/O, no GraphDocument schema change, no schema version bump, no workspace persistence behavior change, no clipboard/export serialization behavior change, no screenshot manifest expansion, no renderer or pointer behavior change, no public API exposure, and no full React Flow whiteboard parity.

## Phase 565 Update

Phase 565 is GitHub #253 / `avalonia-node-map-wml`, the post-annotation proof implementation queue refresh. It adds `WHITEBOARD_ANNOTATION_POST_PROOF_IMPLEMENTATION_QUEUE_REFRESH` as a docs/tests-only queue refresh after Phase 560 through Phase 564: the next annotation work is split into Phase 566 sidecar serializer contract, Phase 567 workspace sidecar save/load integration, Phase 568 clipboard/export eligibility proof, Phase 569 Cookbook screenshot implementation gate, and Phase 570 public API readiness gate. This queue refresh keeps no production annotation persistence, no file/database I/O, no GraphDocument schema change, no schema version bump, no workspace save/load behavior change, no clipboard/export serialization behavior change, no screenshot manifest expansion, no new Cookbook route, no renderer or pointer behavior change, no toolbar or eraser change, no public API exposure, no saved whiteboard primitive state, and no full React Flow whiteboard parity.

## Phase 489 Update

Phase 489 closed GitHub #101 / `avalonia-node-map-6sc` through PR #102 as a renderer virtualization design spike on branch `perf/renderer-virtualization-spike`. This slice was docs/tests only: it defined the proof contract required before any future ItemsRepeater/Skia-style renderer virtualization, background graph index, or graph-size claim expansion. It made no public API change and no runtime change. The current evidence remains viewport-budgeted scene projection/rendering, not a true renderer virtualization contract; `xlarge` stays telemetry-only.
Expand Down Expand Up @@ -675,6 +679,12 @@ Phase 564 records the whiteboard annotation migration and compatibility proof th
| #244 | `avalonia-node-map-0gi` | Phase 562: whiteboard annotation clipboard/export serialization boundary | P4 | clipboard/export serialization boundary docs and focused compatibility tests | Depends on Phase 559. Owns a boundary gate only for annotation identity/reference and primitive payload eligibility across clipboard fragments, scene export artifacts, and workspace sidecar persistence, with compatibility and migration proof required before serialization behavior changes; no production serialization implementation, clipboard/export behavior change, file/database I/O, GraphDocument schema change, schema version bump, workspace persistence behavior change, screenshot manifest expansion, renderer or pointer behavior change, public API exposure, saved whiteboard primitive state, or full whiteboard parity claim. |
| #245 | `avalonia-node-map-kri` | Phase 563: whiteboard annotation screenshot and Cookbook proof expansion | P4 | screenshot/Cookbook proof planning, route criteria, and non-overlap evidence requirements | Depends on Phase 559. Owns screenshot/Cookbook proof expansion planning only, including Cookbook route expectations, screenshot proof metadata, non-overlap requirements, and separation from persistence/serialization implementation before screenshot manifest expansion, renderer changes, or toolbar/eraser changes. No screenshot manifest expansion, no new Cookbook route, no UI behavior change, no production annotation store, no file/database I/O, no GraphDocument schema change, no workspace persistence behavior change, no clipboard/export behavior change, no renderer or pointer behavior change, no public API exposure, no saved whiteboard primitive state, or full whiteboard parity claim. |
| #246 | `avalonia-node-map-vyg` | Phase 564: whiteboard annotation migration and compatibility proof | P4 | migration/compatibility proof docs, schema policy criteria, and compatibility test plan | Depends on Phase 559 plus Phase 560, Phase 561, and Phase 562. Owns migration/compatibility proof planning only for annotation-store versions, primitive references, style/geometry payloads, migration metadata validation, and coverage required before persistence, clipboard/export, or screenshot proof expands. No production migration implementation, persisted annotation state, file/database I/O, GraphDocument schema change, schema version bump, workspace persistence behavior change, clipboard/export serialization behavior change, screenshot manifest expansion, renderer or pointer behavior change, public API exposure, schema version bumps, saved whiteboard primitive state, or full whiteboard parity claims. |
| #253 | `avalonia-node-map-wml` | Phase 565: refresh post-annotation proof implementation queue | P4 | parity roadmap docs and focused docs tests | Depends on Phase 564; stacked after PR #252 and do not merge before Phase 564. This is a docs/test queue refresh only: it assigns Phase 566 through Phase 570 without production annotation persistence, file/database I/O, GraphDocument schema changes, schema version bumps, workspace save/load behavior changes, clipboard/export serialization behavior changes, screenshot manifest expansion, new Cookbook routes, renderer or pointer behavior changes, toolbar or eraser changes, public API exposure, saved whiteboard primitive state, or full whiteboard parity claim. |
| #254 | `avalonia-node-map-47v` | Phase 566: whiteboard annotation sidecar serializer contract | P3 | internal sidecar document and serializer contract tests | Depends on Phase 565. Owns sidecar payload shape and serializer round-trip validation for annotation metadata, identity/reference, primitive payload, and migration metadata; no workspace save/load integration, GraphDocument schema change, schema version bump, public API exposure, screenshot manifest expansion, renderer or pointer behavior change, or full whiteboard parity claim. |
| #255 | `avalonia-node-map-40h` | Phase 567: whiteboard annotation workspace sidecar save/load integration | P3 | workspace sidecar save/load tests and persistence boundary docs | Depends on Phase 565 and should follow Phase 566. Owns workspace sidecar integration after serializer proof while keeping graph document serialization unchanged; no GraphDocument schema change, schema version bump, clipboard/export serialization behavior change, screenshot manifest expansion, renderer or pointer behavior change, public API exposure, broad database abstraction, or full whiteboard parity claim. |
| #256 | `avalonia-node-map-ctd` | Phase 568: whiteboard annotation clipboard/export eligibility proof | P4 | clipboard/export eligibility docs and focused compatibility tests | Depends on Phase 565 and may reuse Phase 566 payload validation. Owns eligible and ineligible annotation payload boundaries for clipboard fragments and scene export artifacts only; no production clipboard/export annotation serialization, workspace save/load behavior change, GraphDocument schema change, schema version bump, screenshot manifest expansion, renderer or pointer behavior change, public API exposure, or full whiteboard parity claim. |
| #257 | `avalonia-node-map-79a` | Phase 569: whiteboard annotation Cookbook screenshot implementation gate | P4 | screenshot/Cookbook proof planning, route metadata criteria, and non-overlap evidence requirements | Depends on Phase 565 and should wait for sidecar/compatibility proof boundaries. Owns annotation-backed Cookbook route expectations, shell/scene screenshot metadata, and non-overlap criteria only; no screenshot manifest expansion, new Cookbook route implementation, UI behavior change, workspace persistence behavior change, clipboard/export behavior change, GraphDocument schema change, renderer or pointer behavior change, public API exposure, or full whiteboard parity claim. |
| #258 | `avalonia-node-map-k0d` | Phase 570: whiteboard annotation public API readiness gate | P4 | public API readiness docs, exported API guard tests, and host-facing shape decision | Depends on Phase 565 and should wait for internal persistence/compatibility proof candidates. Owns the evidence checklist and API-shape decision before public annotation APIs; no public API exposure, runtime behavior change, workspace persistence behavior change, clipboard/export behavior change, screenshot manifest expansion, renderer or pointer behavior change, GraphDocument schema change, schema version bump, or full whiteboard parity claim. |

## Recommended Parallel Worktree Plan

Expand Down Expand Up @@ -740,6 +750,12 @@ Phase 564 records the whiteboard annotation migration and compatibility proof th
- `docs/phase-562-whiteboard-annotation-clipboard-export-boundary`: owns #244 / `avalonia-node-map-0gi`; future clipboard/export serialization boundary worktree after Phase 559.
- `visual/phase-563-whiteboard-annotation-cookbook-screenshot-proof`: owns #245 / `avalonia-node-map-kri`; future screenshot/Cookbook proof expansion worktree after Phase 559.
- `docs/phase-564-whiteboard-annotation-migration-compatibility-proof`: owns #246 / `avalonia-node-map-vyg`; future migration/compatibility proof worktree after Phase 559 and the adapter/persistence/serialization boundary slices.
- `docs/phase-565-post-annotation-proof-queue-refresh`: owns #253 / `avalonia-node-map-wml`; current stacked docs/test queue refresh after Phase 564, assigning Phase 566-570 without production annotation persistence, file/database I/O, GraphDocument schema changes, workspace save/load behavior changes, clipboard/export serialization behavior changes, screenshot manifest expansion, new Cookbook routes, renderer or pointer behavior changes, toolbar or eraser changes, public API exposure, or full whiteboard parity.
- `feature/phase-566-whiteboard-annotation-sidecar-serializer`: owns #254 / `avalonia-node-map-47v`; future worktree for the internal sidecar document and serializer contract after Phase 565.
- `feature/phase-567-whiteboard-annotation-workspace-sidecar`: owns #255 / `avalonia-node-map-40h`; future worktree for workspace sidecar save/load integration after the serializer contract.
- `docs/phase-568-whiteboard-annotation-clipboard-export-eligibility`: owns #256 / `avalonia-node-map-ctd`; future worktree for clipboard/export annotation eligibility proof without production serialization.
- `visual/phase-569-whiteboard-annotation-cookbook-screenshot-gate`: owns #257 / `avalonia-node-map-79a`; future worktree for annotation-backed Cookbook screenshot implementation gate planning before manifest changes.
- `docs/phase-570-whiteboard-annotation-public-api-readiness`: owns #258 / `avalonia-node-map-k0d`; future worktree for public annotation API readiness evidence without exposing public APIs.

## UI Verification Policy

Expand Down Expand Up @@ -820,4 +836,10 @@ Current coverage includes scene-level route captures plus ten manifest-driven fu
- Phase 562 is GitHub #244 / `avalonia-node-map-0gi`; it records `WHITEBOARD_ANNOTATION_CLIPBOARD_EXPORT_SERIALIZATION_BOUNDARY` as a docs/tests boundary gate for annotation identity/reference and primitive payload eligibility across clipboard fragments, scene export artifacts, and workspace sidecar persistence, with compatibility and migration proof required before serialization behavior changes, while keeping no production serialization implementation, no clipboard/export behavior change, no file/database I/O, no GraphDocument schema change, no schema version bump, no workspace persistence behavior change, no screenshot manifest expansion, no renderer or pointer behavior change, no public API exposure, no saved whiteboard primitive state, and no full React Flow whiteboard parity.
- Phase 563 is GitHub #245 / `avalonia-node-map-kri`; it records `WHITEBOARD_ANNOTATION_SCREENSHOT_COOKBOOK_PROOF_EXPANSION` as a docs/tests planning gate for Cookbook route expectations, screenshot proof metadata, non-overlap requirements, and separation from persistence/serialization implementation before screenshot manifest expansion. It keeps no screenshot manifest expansion, no new Cookbook route, no UI behavior change, no production annotation store, no file/database I/O, no GraphDocument schema change, no workspace persistence behavior change, no clipboard/export behavior change, no renderer or pointer behavior change, no public API exposure, no saved whiteboard primitive state, and no full React Flow whiteboard parity.
- Phase 564 is GitHub #246 / `avalonia-node-map-vyg`; it records `WHITEBOARD_ANNOTATION_MIGRATION_COMPATIBILITY_PROOF` as a docs/tests planning gate for annotation-store versions, primitive references, style/geometry payloads, migration metadata validation, and coverage required before persistence, clipboard/export, or screenshot proof expands. It depends on Phase 560, Phase 561, and Phase 562 after Phase 559, while keeping no production migration implementation, no persisted annotation state, no file/database I/O, no GraphDocument schema change, no schema version bump, no workspace persistence behavior change, no clipboard/export serialization behavior change, no screenshot manifest expansion, no renderer or pointer behavior change, no public API exposure, and no full React Flow whiteboard parity.
- Phase 565 is GitHub #253 / `avalonia-node-map-wml`; it records `WHITEBOARD_ANNOTATION_POST_PROOF_IMPLEMENTATION_QUEUE_REFRESH` and assigns Phase 566 through Phase 570 to the sidecar serializer contract, workspace sidecar save/load integration, clipboard/export eligibility proof, Cookbook screenshot implementation gate, and public API readiness gate. It keeps no production annotation persistence, no file/database I/O, no GraphDocument schema change, no schema version bump, no workspace save/load behavior change, no clipboard/export serialization behavior change, no screenshot manifest expansion, no new Cookbook route, no renderer or pointer behavior change, no toolbar or eraser change, no public API exposure, no saved whiteboard primitive state, and no full React Flow whiteboard parity.
- Phase 566 is GitHub #254 / `avalonia-node-map-47v`; it will own the internal sidecar document and serializer contract for annotation metadata, identity/reference, primitive payload, and migration metadata after Phase 565, while keeping workspace save/load integration, GraphDocument schema changes, public API exposure, screenshot manifest expansion, renderer or pointer behavior, and full React Flow whiteboard parity out of scope.
- Phase 567 is GitHub #255 / `avalonia-node-map-40h`; it will own workspace sidecar save/load integration after Phase 565 and the serializer contract, while keeping GraphDocument serialization unchanged and excluding clipboard/export behavior, screenshot manifest expansion, renderer or pointer behavior, public API exposure, broad database abstractions, and full React Flow whiteboard parity.
- Phase 568 is GitHub #256 / `avalonia-node-map-ctd`; it will own annotation clipboard/export eligibility proof after Phase 565, while keeping production clipboard/export annotation serialization, workspace save/load behavior changes, GraphDocument schema changes, screenshot manifest expansion, public API exposure, and full React Flow whiteboard parity out of scope.
- Phase 569 is GitHub #257 / `avalonia-node-map-79a`; it will own the annotation Cookbook screenshot implementation gate after Phase 565 and the persistence/compatibility proof boundaries, while keeping screenshot manifest expansion, new Cookbook route implementation, UI behavior changes, workspace persistence behavior changes, renderer or pointer behavior, public API exposure, and full React Flow whiteboard parity out of scope.
- Phase 570 is GitHub #258 / `avalonia-node-map-k0d`; it will own the public annotation API readiness gate after Phase 565 and internal persistence/compatibility proof candidates, while keeping public API exposure, runtime behavior changes, persistence behavior changes, screenshot manifest expansion, GraphDocument schema changes, and full React Flow whiteboard parity out of scope.
- Product code remains out of scope for Phase 478, Phase 484, Phase 490, Phase 491, Phase 492, Phase 493, Phase 494, Phase 495, Phase 497, Phase 498, Phase 499, Phase 500, Phase 501, Phase 502, Phase 503, Phase 504, Phase 505, Phase 506, Phase 507, Phase 508, Phase 509, Phase 510, Phase 511, Phase 512, Phase 513, Phase 520, Phase 521, Phase 522, Phase 523, Phase 524, Phase 525, Phase 526, Phase 527, Phase 528, Phase 529, Phase 535, Phase 539, Phase 540, Phase 541, Phase 546, Phase 550, Phase 551, and Phase 557 unless a focused test proves a specific missing contract.
Loading
Loading