docs/solutions/performance-issues/2026-04-11-shell-only-large-document-islands-must-preserve-far-subtrees-during-dom-reconciliation.md
The first shell-only large-document experiment had a hidden correctness trap.
EditableBlocks reconciles from DOM by reading [data-slate-node="text"]
nodes and rebuilding text content in snapshot order. That works only when the
whole editable tree is mounted.
Once far islands become cheap shells, that assumption becomes false.
EditableText''In editable-text-blocks.tsx, keep DOM reconciliation scoped to mounted top-level islands:
This keeps shell mode honest:
The shell layer changed the runtime contract.
Before shells:
After shells:
So reconciliation must also become subset-aware. Once that happens: