docs/slate-v2-draft/references/chunking-review.md
Historical/reference doc. Chunking is not a live remaining-work lane. For current queue and roadmap truth, see ../master-roadmap.md.
Answer two questions:
slate-react?slate-react, should chunking still be required?For the #4141 family of problems, chunking should not be required anymore in v2.
For huge block-only documents, some chunking-like view optimization may still be useful, but only as a secondary tactic inside a runtime that is already large-document-safe by default, not as a core runtime crutch.
slate-reactThe deleted chunking tree in legacy slate-react used to:
editor.getChunkSize(...)content-visibility: autoReferences:
So chunking is doing two different jobs today:
content-visibility is usable on huge docsThat distinction matters.
The #4141 benchmark seam is not really a “we need chunks” issue.
It is a render breadth issue:
Reference:
slate-react is already aiming at the structural fix:
useSyncExternalStore selectorsReference:
If that runtime lands correctly, the baseline expectation changes from:
to:
That means chunking stops being the primary answer to nested render-depth pain.
If slate-react still needs chunking to survive ordinary nested edits, then the runtime redesign failed.
This is the real fix.
Fix invalidation at the source before adding view-layer rescue structures.
Coarse render islands should follow document semantics, not arbitrary counts.
Prefer boundaries like:
Arbitrary 1000 children per chunk is blunt. It knows nothing about editing semantics.
Keep a fully live corridor around:
That corridor stays eager and fully materialized.
Outside the active corridor:
content-visibility: autocontain-intrinsic-sizeThis is much safer than full virtualization because DOM stays present.
This should be the default huge-document posture, not a niche mode.
Decorations, search highlights, diagnostics, and annotations should not force broad text-tree rerenders.
They should be projection layers over the committed snapshot model.
Pretext should not be part of normal active editing flow.
It is interesting only for huge-document planning:
The active editing corridor should still trust real DOM geometry and browser truth.
So the right model is hybrid:
Pretext-backed estimatesChunking still has a valid role for:
content-visibilityBut that role should be:
Not:
slate-react surface.slate-react.#4141-style rerender breadth against the selector-first runtime before designing any v2 chunk API.#4141 should become a runtime-subscription benchmark first, not a chunk-API benchmark first?slate-react, or be pushed upward into a more optional product/view layer later?