docs/slate-issues/open-issues-dossiers/4160-4074.md
hasRange method to core Editorianstormtaylordebt0hasRange lived in ReactEditor even though the logic was core/editor logic, which is exactly the kind of small framework-coupling drift worth cleaning up.
Tiny issue, but a good decoupling signal.
Strong enough.
Acceptable.
Valid.
Keep it as package-boundary hygiene.
share-status
Reply with package-boundary scope.
Indirect.
mention it does not delete the @ sign nor the search value till I delete it manuallyalisciebug0This is just the mentions example being modified in a way that changes its semantics; the reporter switched insertNodes to wrapNodes and got different behavior.
No deeper thread. This is consumer misuse, not core debt.
Strong enough.
Strong.
Invalid.
Do not treat this as architecture pressure.
close-invalid
Explain the misuse and close it.
None.
alisciebug0This is a support question about inserting a divider node, not a clear Slate bug.
No thread, no reduced repro, no real signal beyond “docs/examples could be clearer.”
Not enough.
Poor.
Invalid.
Do not let support questions distort the architecture map.
close-invalid
Reply with docs/examples guidance or close it.
None.
aliak00improvement4Editing deeply nested blocks still causes parent rerenders all the way to the root, which is the same broad invalidation problem seen elsewhere but with depth involved.
The comments are useful because they separate unavoidable React behavior from Slate-specific memoization and children-array churn.
Strong enough.
Poor.
Valid.
Benchmark-worthy, but it overlaps heavily with #4210.
share-status
Keep it tied to rerender-breadth work instead of treating it as an independent architecture theme.
Direct.
meowWhatbug1This is just a vague input-method bug report against an out-of-date example state.
The only comment says it was already fixed and the online example was stale.
Weak.
Strong.
Stale candidate.
Do not let this inflate current IME severity beyond the real issues.
close-stale
Reply with the fixed scope and close it.
None.
aliak00bug0Indenting with wrapNodes from the top level can throw the caret up to the previous block.
The report is crisp and versioned. This is a good direct selection-transform seam.
Strong enough.
Poor.
Valid.
Keep it with indent/wrap selection bugs.
keep-open
Keep it open and scoped to wrap/indent caret behavior.
Direct.
fs-kanayamabug3Entering multibyte characters can crash after clearing the editor or near inline boundaries, which makes placeholder/composition reconciliation look brittle.
The follow-ups matter because they narrow it to placeholder and inline-adjacent composition cases.
Strong enough with minor setup.
Poor.
Valid.
Keep it with placeholder/composition bugs.
keep-open
Keep it open and scoped to multibyte composition.
Direct.
marco-borbug1Deleting leaf content at the start of a block can jump the caret to the previous block instead of keeping it local.
There is even a workaround plugin in the thread, which is usually a good sign the seam is real and painful.
Strong enough.
Acceptable.
Valid.
Keep it in delete/caret positioning.
keep-open
Keep it open and scoped to start-of-block delete behavior.
Direct.
Khaja456none2The richtext example can emit or accept nested list structures that are not truly modeled as a supported list feature.
The comments make the scope clear: Slate core is not shipping a list API here; the example just leaks a half-supported structure.
Strong enough.
Acceptable.
Unclear.
Keep it as example-scope debt.
share-status
Reply with example scope, not core guarantee.
None.
matthewdiamantbug2Under a specific cross-mark selection shape, pressing Delete can erase text before the actual selection range.
The workaround attempts in the thread are useful mainly because they show the bug is serious and not trivial to patch locally.
Strong enough.
Poor.
Valid.
Keep it in selection-overreach, not generic delete bugs.
keep-open
Keep it open and scoped to range-delete correctness.
Direct.
nivekithanfeature5A debug tool was proposed, open-sourced externally, and explicitly agreed to live outside core first.
The thread already resolves the next step. This should not stay open pretending to be undecided.
Strong enough.
Strong.
Valid.
Resolved in thread; do not treat it as open architecture pressure.
close-stale
No reply needed beyond closure.
None.
marko-hologrambug, ⚑ cross platform4IE11 support was much shakier than the docs implied, with selection, DOM APIs, Immer ES5 mode, and scroll behaviors all breaking down.
The comment archaeology is useful, but the end state is clear: docs were updated and IE11 is not a good active design target.
Strong enough with minor setup.
Acceptable.
Stale candidate.
Keep it as browser-support/docs debt, not current engine direction.
close-stale
Share the current support stance if needed.
None.
reinvanimschootbug, ⚑ cross platform1Embeds and inputs inside the editor can show Firefox caret placement in the wrong physical locations.
The only comment points at known Firefox selection weirdness, which suggests this is a real browser bridge seam not a random consumer bug.
Strong enough with minor setup.
Poor.
Valid.
Keep it with browser selection drift.
keep-open
Keep it open and scoped to Firefox embed selection.
Indirect.
githonielbug2Selecting an inline void by itself can break copy/cut behavior, especially once it is rendered with contentEditable={false} and has no text fallback.
The replies muddy block versus inline void, but they do not actually invalidate the inline-void-only case.
Strong enough with minor setup.
Acceptable.
Likely valid.
Keep it with inline-void clipboard handling.
keep-open
Reply with the current inline-void scope rather than dismiss it as generic image copying.
Indirect.
yilmazbingobug0The rich-text example uses narrowings that confuse TypeScript readers because the helper code is written loosely and the node type is broader than the example implies.
No thread, but the report is fair: example typing and runtime narrowing were easy to misread.
Strong enough.
Acceptable.
Valid.
Keep it in docs/example typing.
share-status
Reply with example typing guidance.
None.
Obiwarnbug4Replacing editor content from outside can crash if the old selection points beyond the new shorter text.
The thread is useful because it shows what people actually do today: blur or deselect first, or manually remap selection. That is runtime-contract debt.
Strong enough with minor setup.
Acceptable.
Valid.
Keep it in controlled/external update issues.
keep-open
Keep it open and scoped to external-value updates.
Direct.
beppe9000improvement0People interacting with Slate from browser console or userscripts do not have a clear documented path for setting editor value safely.
No thread, so this is mostly docs and framework-decoupling pressure.
Strong enough.
Poor.
Valid.
Keep it in docs/interop, not core bugs.
share-status
Reply with the current supported interop surface.
None.
jsbroksimprovement, ⚑ needs info0The post-0.50 plugin surface felt too fragmented because consumers had to wire multiple moving parts by hand.
There is no thread, but the request is a clean signal that the plugin seam got more powerful and less ergonomic at the same time.
Strong enough.
Poor.
Valid.
Treat it as plugin API pressure, not a fixable bug.
v2-roadmap
Reply in terms of plugin-surface direction.
Direct.
jsbroksbug1Copying the mentions example range logic into an app can blow up with DOM-point resolution errors.
The linked duplicate hint is useful: this is likely a known example/runtime seam, not an isolated new failure mode.
Strong enough.
Acceptable.
Valid.
Keep it with mentions range logic and link it to #4000.
share-status
Reply with current example scope and related issue context.
Indirect.
anatolzakbug, ⚑ cross platform1Safari Mac autocorrect stops working while Editable carries Slate’s normal data-slate-editor marker.
Short thread, real seam. This is browser-input interop debt.
Strong enough with minor setup.
Poor.
Valid.
Keep it in browser input/autocorrect.
keep-open
Keep it open and scoped to Safari autocorrect.
Direct.
steelbrainbug, ⚑ cross platform0The richtext example had obvious paper cuts around placeholder visibility and deleting the final block.
No thread. Good example debt, weak architecture signal.
Strong enough.
Poor.
Valid.
Keep it in example quality, not core design.
share-status
Reply with example scope or fold it into example maintenance.
None.
Mangattnone4Users wanted an obvious plugin ecosystem path after 0.50 instead of scavenging examples and scattered community packages.
The replies already point at the real state of the world: community packages existed, discoverability was just weak.
Strong enough.
Acceptable.
Valid.
Keep it in ecosystem/discoverability, not core runtime.
share-status
Reply with current ecosystem status or linking strategy.
Indirect.
marcoSvennone20Live reload in CRA can recreate editor state in a way that leaves Slate’s weak-map-backed DOM/editor associations broken.
The thread is the useful part here: it documents the stable-editor-instance rule and the common workarounds.
Strong enough.
Acceptable.
Valid.
Keep it with fast-refresh/editor-singleton issues.
share-status
Reply with the stable-instance rule and current workarounds.
Indirect.
Lavcodesexamples2This is just an examples enhancement request for search-highlighting behavior and color choice.
Ian already green-lit it as an example improvement, which is exactly the right scope.
Strong enough.
Acceptable.
Valid.
Do not mistake example polish for core architecture pressure.
share-status
Reply with example scope.
None.
jarosik10bug, ⚑ cross platform, mlh6Typing inside inline elements in Chrome fails because the browser cannot represent some inline boundary caret positions the way Slate wants.
The later comments are the key value: this is partly a Chromium bug and partly Slate’s default insertText behavior around inlines.
Strong enough with minor setup.
Acceptable.
Valid.
Keep it with inline-boundary browser-selection issues.
share-status
Reply with the browser limitation and workaround context.
Indirect.
Ready with minor setup.