docs/plans/2026-04-14-slate-v2-decorations-annotations-cluster-research.md
Write and then expand a control-repo doc that explains the legacy Slate decorations and annotations issue cluster, then turns it into an architecture-grade rewrite recommendation, grounded in:
docs/slate-issues/** research#3383#4997 comments + changed files#4993 comments + changed filesdocs/slate-v2/** design docs and solutionsdocs/analysis/editor-architecture-candidates.md..The output should separate:
docs/slate-issuesdocs/slate-v2/#3383 is the clean semantic-model issue: flattening overlays into leaf props loses multiple same-semantic payloads.#4993 is the “contract ambiguity + top-down invalidation explosion” PR.#4997 is the “selector-style subscriptions help perf but still break under async/external redecorate timing” PR.slate-v2 docs already support a projection-first split:
core range semantics, React overlay store, transaction-aware range refs, and corridor-first huge-doc postureuseSyncExternalStore for overlay subscriptions, startTransition only for non-urgent overlay work, useDeferredValue for lagging side panes not editor truth, useEffectEvent for stable bridge listeners, and Activity for hidden panes/page surfaces with preserved state but torn-down effectsgoal workflow.docs/slate-issues/** files and grep hits for decorat|annotat.issue-clusters.md, requirements-from-issues.md, key ledger rows, and targeted open-issue dossiers covering cross-node decorate, IME/decorated selection failures, and async decorate caret jumps.#3383 thread.#4997 and #4993 PR discussions plus changed-file diffs; both had zero inline review comments./Users/zbeyens/git/plate-2/docs/slate-v2/decorations-annotations-cluster.md.docs/slate-v2/** docs and docs/solutions/** for projection, range-ref, decorated DOM bridge, clipboard, huge-doc, and annotation ideas already proved locally.use-editable, rich-textarea, edix, TanStack DB, and EditContext.useSyncExternalStore, transitions, useDeferredValue, useEffectEvent, and Activity.docs/research:
ce-compound extraction needed because the requested deliverable is itself the durable knowledge capture.