docs/slate-issues/open-issues-dossiers/4268-4162.md
itsameandreabug, examples2The paste-html example preserves DOMParser whitespace and lands the caret awkwardly, so the official example behaves worse than users expect from rich paste.
The comments narrow it quickly: this is mostly an example/parser seam, not a mysterious core editor failure.
Strong enough.
Acceptable.
Valid.
Keep it in the example cluster and do not let it inflate core architecture pressure.
share-status
Reply with the current scope and point at the example/parser seam.
None.
brynshanahanbug0Mod+Delete regressed so empty blocks stop collapsing the way users expect, leaving command-delete behavior inconsistent across versions.
The report is tight and version-scoped, so this is a clean current bug instead of a vague editor preference debate.
Strong enough.
Poor.
Valid.
Keep it in the delete/caret cluster.
keep-open
Keep it open and scoped to command-delete behavior.
Direct.
thesunnyimprovement2The test harness was hard to discover and hard to run selectively, which made core contribution friction higher than it should be.
Ian’s response is the useful part: the pain is real, but better test utilities mattered more than switching runners.
Strong enough.
Acceptable.
Valid.
Keep it in contributor DX, not architecture.
share-status
Reply with scope rather than treat it like a v2 requirement.
None.
thesunnyimprovement, discussion3The issue argues that built-in delete behavior should not silently unwrap or lift nodes, because that creates structurally surprising intermediate states.
The thread does not settle the whole proposal, but it exposes a real missing contract around hanging selections and structural transforms.
Strong enough.
Poor.
Valid.
Keep it as architecture signal, not a one-off bug.
v2-roadmap
Reply with the current contract and capture it as structural-runtime pressure.
Direct.
thesunnybug2Deleting backward inside nested empty blocks can unwrap and delete the wrong structure, which makes normalization rules brittle and hard to reason about.
The provided tests are the valuable part here: this is a real structural-runtime seam, not a fuzzy complaint.
Strong enough.
Poor.
Valid.
Keep it in the structural delete cluster.
keep-open
Keep it open and scoped to nested empty-block delete semantics.
Direct.
AyushAgarwal-0311bug0This is just an empty issue template about Chrome extensions with no repro, no scope, and no actionable detail.
There is no thread to rescue it.
Not enough.
None.
Invalid.
Do not let this contaminate the signal.
close-invalid
Request a real repro or close it.
None.
warnwarbug, ⚑ cross platform1Old IE11 support with legacy slate-html-serializer falls into exception-heavy typing because required DOM APIs were missing.
The only useful signal is that IE11 support was more brittle than the docs implied, not that this old stack should drive v2 design.
Strong enough with minor setup.
Acceptable.
Stale candidate.
Keep it with browser-support debt, not current runtime architecture.
close-stale
Share the current support stance instead of treating it like active product debt.
None.
schwamicbug2Editable hardcodes a min-height style that can override consumer styling, so basic editor layout starts fighting normal CSS control.
The thread is short but enough: this is a runtime default/style surface issue, not a deep editor model problem.
Strong enough.
Acceptable.
Valid.
Keep it in runtime surface ergonomics.
share-status
Reply with the supported styling seam or current workaround.
Indirect.
lucasmfredmarkbug2After select-all delete, entering composition mode can reverse input and even paste page text into the editor on blur.
The comments sharpen it: this is a composition-mode bug, not random typing corruption.
Strong enough with minor setup.
Poor.
Valid.
Keep it adjacent to #4231, not merged into generic IME noise.
keep-open
Keep it open and scoped to composition after select-all delete.
Direct.
lucasmfredmarkbug2Deleting everything after Cmd+A can leave the editor with an invisible or ghost selection state.
The valuable detail is in the follow-up: the original symptom was fixed in 0.62.1, but empty-editor selection weirdness remained.
Strong enough.
Acceptable.
Stale candidate.
Treat the original report as mostly fixed and keep any residual empty-editor issue separate.
close-stale
Reply with the fixed scope and ask for a fresh minimal repro if the residual case still exists.
Indirect.
churichardbug2Deleting a line behaves differently depending on whether the line contains marks, which means the caret model still leaks formatting structure into basic delete behavior.
The comment points at normalization-driven node removal, which makes this more useful than a cosmetic cursor complaint.
Strong enough.
Poor.
Valid.
Keep it in delete/caret positioning.
keep-open
Keep it open and scoped to delete-line caret consistency.
Direct.
xixixaobug0Collapsed marks do not render anything, so cursor-affecting formatting like color cannot reflect the current editor state.
No noisy thread here. The report is already a clean runtime/rendering seam.
Strong enough.
Poor.
Valid.
Keep it with renderer-state issues, not general formatting UX.
keep-open
Keep it open and scoped to collapsed-mark rendering.
Direct.
thesunnyfeature, android8This is the first strong articulation that Android support should live in swappable reconciliation hooks instead of a forked Editable.
The comments are gold. They capture abstraction level, mutation timing, testability, and long-term maintainability tradeoffs instead of just “Android is hard.”
Strong enough.
Poor.
Valid.
Treat it as architecture signal, not a bug ticket.
v2-roadmap
Reply in architecture terms, not patch terms.
Direct.
ugrinovskybug, ⚑ cross platform2On Firefox, select-all in an empty editor highlights the placeholder, which exposes the empty-editor rendering bridge bleeding into native selection.
The thread is light but it confirms the browser-specific behavior persisted.
Strong enough.
Poor.
Valid.
Keep it in empty-editor/placeholder behavior.
keep-open
Keep it open and scoped to the Firefox placeholder seam.
Indirect.
juliankrispelimprovement2The GitHub latest-release badge was wrong because release titles were not automated.
Pure release-process hygiene, nothing architectural.
Strong enough.
Acceptable.
Valid.
Keep it out of v2 architecture.
share-status
Reply with the release workflow scope.
None.
Mangattbug0Even tiny edits and cursor moves can light up the whole document in React devtools, which is exactly the renderer invalidation problem people keep tripping over.
There is no noisy thread. The issue is already a clean renderer-performance signal.
Strong enough.
Poor.
Valid.
This is a core rerender-breadth benchmark issue.
keep-open
Keep it open and scoped to subscription breadth.
Direct.
churichardimprovement12Transforms.setNodes can make nodes disappear entirely when normalization and inline/void semantics are not aligned with the target structure.
The thread is messy, but the useful core is clear: the transform contract feels too easy to violate and too hard to reason about.
Strong enough.
Acceptable.
Valid.
Keep it in structural transform contract issues.
keep-open
Keep it open and scoped to setNodes contract and normalization interaction.
Direct.
ianstormtaylorimprovement4The default placeholder check walks more of the tree than it probably needs to, which makes placeholder rendering look heavier than necessary.
Useful as an implementation note, not as a major architecture driver.
Strong enough.
Acceptable.
Valid.
Keep it as implementation/perf hygiene.
share-status
Reply with current scope rather than over-indexing on it.
Indirect.
juliankrispelbug, mlh1Pressing Enter at the edge of a marked leaf creates the new block but leaves the caret in the wrong place.
The linked prior issue strengthens it: this is recurring split/caret debt, not a one-off example glitch.
Strong enough.
Poor.
Valid.
Keep it near split/caret issues and linked to #4163.
keep-open
Keep it open and scoped to Enter/split behavior.
Direct.
beornbug0Some tests were aliasing input as output, so they could pass while asserting nothing meaningful.
This is exactly the kind of testing debt that should be fixed instead of romanticized.
Strong enough.
Strong.
Valid.
Keep it in test infrastructure.
keep-open
Share status or merge the obvious fix path.
None.
KeyPressnivekithanfeature1The request is for per-element keypress hooks, but the current supported seam is still editor method overrides, not event handlers injected into render elements.
The comment is enough: this is a current-contract mismatch, not a missing hidden API.
Strong enough.
Acceptable.
Likely invalid.
Useful as plugin ergonomics signal, but not a current bug.
share-status
Reply with the supported override seam and keep it as API pressure only.
Indirect.
chasefarmer2808feature6There is no built-in way to distinguish local, remote, and programmatic operations, which makes collaboration-aware business logic ugly and fragile.
The comments are useful because they show the current apply override trick is not good enough once collaboration middleware strips metadata.
Strong enough.
Poor.
Valid.
Treat this as collaboration/runtime architecture pressure.
v2-roadmap
Reply in terms of engine contracts, not local plugin tricks.
Direct.
Transforms.rewrapNode methodthesunnyimprovement4Replacing a node shell while preserving children is common enough that people keep reinventing it or doing unsafe type mutation.
The interesting part is the typing discussion underneath: transform APIs and normalization do not line up cleanly with stronger type safety.
Strong enough.
Acceptable.
Valid.
Keep it as transform API pressure, not a must-ship bug.
v2-roadmap
Share status and treat it as API-shape pressure.
Indirect.
useSlate to useEditor (same for static)ianstormtaylorimprovement, ✶ breaking3useSlate mixes “give me the editor object” with “rerender me on editor state changes,” which makes the hook surface misleading and harder to optimize.
Ian’s comment is the valuable part: this is exactly the split between stable editor access and stateful subscription that slate-react still needs.
Strong enough.
Acceptable.
Valid.
Treat it as hook-surface architecture pressure.
v2-roadmap
Reply in terms of hook contracts and subscription semantics.
Direct.
aliak00improvement9Getting the current word under a collapsed cursor is far more complicated than it should be, especially once custom delimiters matter.
The comments prove this is not one user whining. Everyone keeps reimplementing the same stepping logic.
Strong enough.
Poor.
Valid.
Keep it as API ergonomics, not core correctness.
share-status
Reply with current scope and keep it as helper-surface pressure.
Indirect.
Not a direct test candidate.