docs/research/decisions/slate-v2-post-closure-architecture-review.md
Do not pivot to Lexical, ProseMirror, or Tiptap.
The Slate v2 direction is still the best Slate-shaped architecture:
editor.read / editor.updateThe honest post-closure status is stronger than "promising", but still not "impossible to regress".
editor.update is the right public write boundary.editor.update preserve Slate's flexible
custom-node DX better than semantic method explosion.EditorCommit is the right local runtime fact for history, collaboration,
React, DOM repair, and tests.Transforms.*, stale mutable editor
fields, and direct method replacement patterns.editor.update
currently auto-transaction instead of failing everywhere.Transforms.* still appears in internal runtime, legacy transform tests,
history tests, and compatibility lanes. That is acceptable only because the
primary public surface is guarded.The architecture is the right one. The remaining risk is not "wrong engine"; it is proof maturity and escape-hatch pressure.
If future cursor regressions keep appearing, the answer is not another API pivot. The answer is to harden proof:
Transforms.*, public mirror, repair bridge,
and selection bridge useArchitecture direction: high.
Implementation closure for the scoped release claim: high.
Regression-free browser editing across unknown user behavior: not high enough to claim perfection. Browser editing earns confidence through adversarial soak, real-device coverage, and dogfooding, not through a closed plan file.