docs/slate-issues/open-issues-dossiers/2694-790.md
lnicolabug, ♥ help2Shift+Delete is standard cut behavior on Windows and Linux, so treating it as plain delete leaves Slate with a small but real clipboard hole.
The thread is short, but it surfaces a concrete gap in Slate’s DOM event coverage rather than vague platform whining.
No linked artifacts surfaced in the current thread.
Strong enough.
Poor.
Valid.
Keep it as a small clipboard-bridge bug, not a strategy issue.
keep-open
Acknowledge the platform shortcut gap and point at the DOM event seam.
Indirect.
This is testable, but it needs browser-level cut event setup instead of a tiny unit test.
brendancarneydiscussion0This is not a runtime bug; it is an observability request to make real Slate bottlenecks easier to see while profiling.
No thread, but the ask is clear and still useful as tooling pressure.
No linked artifacts surfaced in the current thread.
Strong enough.
Strong.
Valid.
Keep it as tooling signal, not runtime architecture pressure.
share-status
Reply with observability scope and current profiling alternatives.
Indirect.
This is tooling design, not a red-test target.
ianstormtaylordiscussion4This is one of the clearest old examples of Slate’s structural restrictions becoming product pressure, especially around nested lists and richer block hierarchies.
The comments add real use cases, but this is still architecture pressure, not a small patch request.
No linked artifacts surfaced in the current thread.
Strong enough.
Acceptable.
Valid.
Keep it as core data-model pressure, not random feature sprawl.
v2-roadmap
Reply with current valid structures and keep it tied to deeper model constraints.
Direct.
This is architecture pressure around the model contract, not a first red test.
folkjcdiscussion2This is a direct complaint about Slate’s mutate-then-normalize execution model, not a cosmetic API preference.
The thread is tiny, but Ian’s response confirms this is legitimate design space rather than misuse.
No linked artifacts surfaced in the current thread.
Strong enough.
Poor.
Valid.
Keep it as real engine pressure.
v2-roadmap
Reply in terms of execution semantics, not just schema helpers.
Direct.
This is better captured as engine design pressure than as a single failing assertion.
thesunnydocs1This is contributor-process documentation, not product or engine pressure.
The issue is basically a note to self about merge guidelines and code style.
No linked artifacts surfaced in the current thread.
Strong enough.
Strong.
Stale candidate.
Do not let this pollute architecture weighting.
close-stale
Close it as stale process debt if it still matters nowhere else.
None.
Docs/process issue, not a test target.
nikushximprovement, ♥ help7Placeholder alignment exposes the ugly tradeoff between visual rendering and caret placement in Slate’s placeholder implementation.
The comments are useful because they show why the naive CSS fix breaks caret behavior.
The thread points to PR #2661, which is useful failed-fix context.
Strong enough.
Acceptable.
Valid.
Keep it as placeholder implementation debt, not a broad rendering indictment.
share-status
Acknowledge the caret-vs-layout tradeoff and point to custom placeholder escape hatches if needed.
Indirect.
This is mostly visual and caret-behavior debt, so it is weak as a first-pass red test.
thalladabug, ♥ help8This is the same core complaint as the older issue, just with newer fallout like sanitization and screen reader behavior.
The later comments add fresh consequences, but they still point back to the same sentinel strategy.
The thread directly points back to Issue #1971 and later fallout like Issue #5141.
Strong enough.
Poor.
Duplicate candidate.
Keep the newer fallout, but fold it into the stronger parent issue.
close-duplicate
Point to the root issue and preserve the accessibility consequences.
Direct.
This is root-cause tracking around sentinel strategy, not a clean first red test by itself.
bkilraindiscussion5The original ask was about passing aria-* props through to the editable element, but the later thread says the runtime already does this and docs are the real gap.
This is useful because it shows how an old feature request can decay into a docs problem.
No linked artifacts surfaced in the current thread.
Strong enough.
Acceptable.
Stale candidate.
Treat it as documentation drift, not engine pressure.
close-stale
Point to current Editable behavior and tighten docs if needed.
Indirect.
Docs/API discoverability issue, not a fresh red test target.
alanchrtdiscussion1This is clean API-model pressure around the fuzzy overlap between marks, inlines, and decorations.
The thread is small but it frames the conceptual confusion well.
No linked artifacts surfaced in the current thread.
Strong enough.
Acceptable.
Valid.
Keep it as conceptual model pressure, not docs-only confusion.
v2-roadmap
Reply in terms of model semantics and tradeoffs, not one-off examples.
Direct.
This is API-model pressure, not a first red test.
brycehill♥ help, examples0This is a concrete paste-html example bug around list ingest and stray zero-width output, not a support request.
There is no thread, so the repro itself carries the issue.
No linked artifacts surfaced in the current thread.
Strong enough.
None.
Likely valid.
Keep it as example deserializer debt until proved otherwise.
share-status
Acknowledge the example bug and anchor it to HTML ingest behavior.
Indirect.
This is testable, but it needs the example paste harness or a focused HTML ingest fixture.
CodePlayerbug, ♥ help, ⚑ cross platform3This is a real DOM range ownership bug around tables in Firefox, not generic “tables are hard” noise.
The follow-up comment is useful because it narrows the bad DOM range containers when selection starts inside a cell.
No linked artifacts surfaced in the current thread.
Strong enough.
Poor.
Valid.
Keep it as table-selection bridge debt.
keep-open
Acknowledge the Firefox DOM range difference and point at table-selection boundary logic.
Direct.
This is browser-interaction testable, but it needs a real selection harness instead of a small unit test.
aleksblendwerkbug, ♥ help9This is a long-lived structural delete bug around select-all and lists, and the later comments show it generalizes to tables too.
The workaround discussion is ugly, which is useful: people are papering over real delete semantics debt.
No linked artifacts surfaced in the current thread.
Strong enough.
Poor.
Valid.
Keep it as structural delete/reset debt.
keep-open
Acknowledge the delete semantics bug and avoid workaround theater.
Direct.
This is a clean current-behavior regression family with a sane public test seam.
alanchrtdiscussion13This is one of the best old explanations of how Slate’s leaf splitting fights complex interactive mark rendering.
The thread is valuable because it gets all the way to why render-time-only markup wants a different abstraction than document inlines.
No linked artifacts surfaced in the current thread.
Strong enough.
Poor.
Valid.
Keep it as runtime rendering pressure, not just API taste.
v2-roadmap
Reply in terms of render-time model limits and leaf splitting, not just mark precedence.
Direct.
This is renderer design pressure, not a first red test.
cameracker⚑ perf, discussion6The original proposal is API-shaped, but the thread ends up pointing at the deeper problem: normalization granularity and execution cost.
This is useful because the comments pivot from a narrow schema API idea to operation-level normalization pressure.
No linked artifacts surfaced in the current thread.
Strong enough.
Poor.
Valid.
Keep it as execution-model pressure, not a demand for more schema flags.
v2-roadmap
Reply in terms of normalization cost and operation-level semantics.
Direct.
This is a design/perf discussion, not a clean red test target.
ianstormtaylorfeature1This issue exposes a missing mirror of node normalization on the selection side, which is a real model gap.
The follow-up comment matters because it immediately hits the hard part: invalid intermediate selections during drag.
The thread points to Issue #2200 for related selection-end behavior.
Strong enough.
Poor.
Valid.
Keep it as selection model pressure.
v2-roadmap
Reply in terms of selection commit boundaries, not just a new callback.
Direct.
This is better treated as selection-model design pressure than as a first red test.
bryanphdiscussion3This is direct pressure on Slate’s operation granularity: large structural edits are harder to follow and less efficient because ops are too single-node oriented.
The thread stays conceptual, but the ProseMirror follow-up years later makes the comparison more concrete.
The body ties this to Issue #2075.
Strong enough.
Acceptable.
Valid.
Keep it as op-model design pressure.
v2-roadmap
Reply in terms of op granularity and external step models, not ad hoc helper APIs.
Direct.
This is engine-model pressure, not a first red test.
ianstormtaylor⚑ perf, improvement, ♥ help2This is a clean low-level perf complaint: Slate is paying dirty-path cost for text nodes that can never normalize.
The comments immediately tie it to large-paste latency and point at the hot path.
No linked artifacts surfaced in the current thread.
Strong enough.
Poor.
Valid.
Keep it as a benchmark-worthy internal perf seam.
share-status
Reply with the dirty-path angle, not generic perf advice.
Direct.
This is benchmark material, not a functional red test.
ericedem♥ help, debt17This is old but still excellent maintainer signal: a huge percentage of Slate bugs live in browser interaction seams that unit tests miss.
The long thread is useful because it narrows the real need to browser-backed interaction tests instead of fantasy JSDOM coverage.
The thread later points to Issue #4589 as related follow-up work.
Strong enough.
Poor.
Valid.
Keep it as infrastructure debt, not product architecture.
share-status
Reply in terms of real-browser interaction harnesses and maintenance cost.
Indirect.
Meta issue about the test stack, not a direct product red test.
<Island> componentianstormtaylorfeature, idea3This is a strong early articulation of the need for explicit embedded UI boundaries inside contenteditable.
The thread stays small, but the linked issues make it clear this was standing boundary pressure, not a one-off placeholder complaint.
The body explicitly links Issue #2034, Issue #1397, Issue #1344, and Issue #1769.
Strong enough.
Acceptable.
Valid.
Keep it as boundary architecture pressure.
v2-roadmap
Reply in terms of contenteditable boundary semantics, not just placeholder behavior.
Direct.
This is boundary design pressure, not a first red test.
ianstormtaylorimprovement, debt, ⚑ cross platform, idea, ⚑ ime, ⚑ mobile7This is one of the best old issue threads on Slate’s core renderer tradeoff: always rerendering keeps semantics simple, but it fights mobile, IME, spellcheck, and perf.
The thread is valuable because it explores a concrete alternative: rerender higher up the tree while aborting at the leaf level.
The thread points to Issue #2059, Issue #2062, Issue #2060, and Issue #2061 as follow-on slices.
Strong enough.
Poor.
Valid.
Keep it as primary runtime architecture pressure.
v2-roadmap
Reply in terms of runtime execution strategy and userland render guarantees.
Direct.
This is benchmark and architecture work, not a first red test.
ianstormtaylorimprovement, ♥ help3This is contributor DX around schema normalization: the current infinite-loop errors hide the useful context.
The thread is small but concrete, with an implementation direction and an older related PR.
The comments point to PR #1805 as related work.
Strong enough.
Poor.
Valid.
Keep it as debuggability debt, not core model pressure.
share-status
Reply with normalization error context and any existing debug hooks.
Indirect.
This is diagnostics work, not a first red test.
for zero-width white spacesmattkrickimprovement, ♥ help4This is a foundational Slate issue: the zero-width sentinel strategy sits under IME, Android, performance, copy-paste, and whitespace behavior.
The thread is worth preserving because it explains the historical tradeoff and why keeps coming back.
The body explicitly ties this to Issue #838, Issue #910, Issue #1181, Issue #1932, Issue #1938, and Issue #1969.
Strong enough.
Poor.
Valid.
Keep it as a root issue, not a leaf symptom.
v2-roadmap
Reply in terms of sentinel strategy and competing browser constraints.
Direct.
This is root-cause architecture pressure, not a first red test.
uipoptartimprovement, ♥ help1This is a real focus-entry UX seam: tabbing into Slate should not feel worse than a textarea.
The thread is short, but it makes the desired behavior clear and even points at dir pass-through as related surface area.
No linked artifacts surfaced in the current thread.
Strong enough.
Acceptable.
Valid.
Keep it as focus-entry behavior debt.
share-status
Acknowledge the focus-entry mismatch and point at current focus/caret behavior if any.
Direct.
This is a clean interaction seam with a sane browser-backed test target.
majelbstoatfeature, ♥ help7This is direct pressure from collaboration and network cost: Slate’s raw operation stream is too chatty without composition.
The comments are useful because they split the problem into editor sync, undo/redo, and backend transport granularities.
The body points to Issue #1730 as adjacent higher-level work.
Strong enough.
Poor.
Valid.
Keep it as collaboration/history architecture pressure.
v2-roadmap
Reply in terms of operation composition and transport granularity, not just network bandwidth.
Direct.
This is op-model architecture work, not a first red test.
zhouzibug, ♥ help3This is a classic focus-state desync around non-editable content embedded inside the editor.
The thread is short, but it makes the regression and its user-visible consequence very clear.
No linked artifacts surfaced in the current thread.
Strong enough.
Poor.
Valid.
Keep it as real focus-state ownership debt.
keep-open
Acknowledge the focus-state desync and tie it to non-editable boundary handling.
Direct.
This is browser-interaction testable, but it needs a real focus harness.
camerackerdiscussion5This is one of the cleanest old articulations of “container boundaries” as a first-class editing concept.
The thread stays grounded in real cases like tables and title blocks rather than abstract tree purity.
No linked artifacts surfaced in the current thread.
Strong enough.
Poor.
Valid.
Keep it as structural editing semantics pressure.
v2-roadmap
Reply in terms of merge/split boundaries and container semantics.
Direct.
This is model and operation semantics pressure, not a first red test.
jasonphillipsbug, ♥ help, ⚑ ux2This is a legit ecosystem paper cut: a default CRA Babel config can poison Slate hyperscript values with unserializable debug metadata.
The thread is short but well investigated, which makes it unusually actionable for an old issue.
No linked artifacts surfaced in the current thread.
Strong enough.
Acceptable.
Valid.
Keep it as hyperscript interop debt, not docs noise.
keep-open
Acknowledge the Babel metadata conflict and point at attribute filtering.
Indirect.
This has a clean package-scoped test seam in slate-hyperscript.
amitm02bug, ♥ help7RTL handling is not just styling here; it leaks directly into caret placement after block splits.
The thread is small, but it usefully exposes both the caret bug and uncertainty around direction props.
No linked artifacts surfaced in the current thread.
Strong enough.
Acceptable.
Valid.
Keep it as bidi caret behavior debt.
share-status
Acknowledge the RTL caret mismatch and point at direction handling if it exists.
Direct.
This needs browser-aware bidi setup, so it is not the easiest first test but it is testable.
realbisoyediscussion21This is a real ecosystem desire, but it is effectively asking for a new runtime, not a normal current-Slate feature.
The long thread is useful mainly because it documents the webview fallback and the Android pain, not because it offers a near-term core patch.
The thread points to PR #1935 and Issue #725 as related context.
Strong enough.
Acceptable.
Stale candidate.
Keep it as ecosystem portability signal, not current-core bug pressure.
share-status
Reply with current webview reality and package-boundary expectations.
Indirect.
This is an ecosystem/runtime request, not a first red test.
danburzoimprovement5This is exactly the kind of clipboard/schema-boundary pressure that gets worse as more editors share the Slate fragment format.
The follow-up proposal is strong enough that this reads more like deferred design than unresolved confusion.
No linked artifacts surfaced in the current thread.
Strong enough.
Poor.
Valid.
Keep it as clipboard interoperability pressure.
v2-roadmap
Reply in terms of transfer format identity and schema boundaries.
Direct.
This is format design pressure, not a first red test.
evanmarshall⚑ perf, idea17This is the oldest strong signal that Slate’s renderer/runtime model needs a strategy for very large documents, whether that ends up as windowing, deferred rendering, or something else.
The long thread is useful because it distinguishes “virtualization fantasy” from more realistic staged rendering and normalization bottlenecks.
The thread later points at Issue #2658 for normalization cost during huge-document load.
Strong enough.
Poor.
Valid.
Keep it as major runtime and performance roadmap pressure.
v2-roadmap
Reply in terms of runtime strategy and the constraints contenteditable imposes on virtualization.
Direct.
This is benchmark and architecture work, not a first red test.