Back to Plate

Yjs Collaboration Editor-Test Harvest Plan

docs/plans/2026-05-13-yjs-collaboration-harvest.md

53.0.61.7 KB
Original Source

Yjs Collaboration Editor-Test Harvest Plan

status: done owner_skill: .agents/skills/editor-test-harvester/SKILL.md report: docs/editor-test-harvester/yjs-collaboration/report.md completion: active goal state

Goal

Run a license-gated harvest of Yjs collaboration tests from ../slate-yjs, ../lexical/packages/lexical-yjs, ../y-prosemirror, and ../yjs; classify portable behavior, map it to Slate v2 and Plate owners, and leave report-only artifacts.

Phases

  • Skill analysis and goal setup
  • Resolve target repos and license modes
  • Build exhaustive test inventories
  • Extract fixture/test names
  • Classify every row
  • Map behavior to Slate v2 and Plate owners
  • Write report, inventory, test-index, and completion state
  • Verify report sections and completion check

Key Findings

  • All four targets are MIT/permissive from local license evidence.
  • ../lexical/packages/lexical-yjs has no runnable test files under the harvester inventory pattern.
  • Slate v2 already has strong raw collaboration substrate coverage in .tmp/slate-v2/packages/slate/test/collab-history-runtime-contract.ts.
  • Plate already has useful Yjs slow fixtures, but it can still profit from a compact adapter-conversion pack for unicode, marks, nested moves, split/merge/set-node, and cursor projection.

Verification

  • rg -n "License Gate|Confidence Score|Pass-State Ledger|Matrix|Skips|Next Slice|Full Inventory Appendix" docs/editor-test-harvester/yjs-collaboration/report.md
  • test -f docs/editor-test-harvester/yjs-collaboration/inventory.md
  • test -f docs/editor-test-harvester/yjs-collaboration/test-index.md
  • bun run completion-check -- --id 019e1c53-3e25-78c0-9083-355925be3817