Back to Plate

3705 3568

docs/slate-issues/test-candidate-map/3705-3568.md

53.0.69.9 KB
Original Source

Issue #3705

  • package: slate-history
  • TDD readiness: not-a-test-candidate
  • public test seam: history should not emit incomplete partial set_selection when no selection exists.

Why Not A Direct Test Candidate

This is better treated as duplicate cleanup and history context than as a fresh red-test target.


Issue #3696

  • package: slate-react
  • TDD readiness: ready-now
  • public test seam: tab focus should survive same-tick rerenders and allow immediate typing.

Minimal Repro Setup

  • Use the linked sandbox or the official example from the thread.
  • Follow the issue steps as written.
  • Assert through the public editor surface, not private helpers.

Expected Failing Assertion

  • Tabbing into the editor should leave it focused and ready to type immediately.

Issue #3695

  • package: cross-package
  • TDD readiness: ready-with-minor-setup
  • public test seam: Chinese input next to bold text should not double-render or desync after arrow navigation.

Minimal Repro Setup

  • Use the linked sandbox or the official example from the thread.
  • Follow the issue steps as written.
  • Assert through the public editor surface, not private helpers.

Expected Failing Assertion

  • IME input beside bold text after arrow navigation should not produce duplicate rendering or data-view desync.

Issue #3689

  • package: slate
  • TDD readiness: ready-now
  • public test seam: normalization should not remove a valid sibling in the reproduced nested text tree.

Minimal Repro Setup

  • Use the linked sandbox or the official example from the thread.
  • Follow the issue steps as written.
  • Assert through the public editor surface, not private helpers.

Expected Failing Assertion

  • Running normalization on the reproduced tree should preserve the intended node instead of deleting it.

Issue #3682

  • package: cross-package
  • TDD readiness: ready-with-minor-setup
  • public test seam: creating a list on Safari should keep the caret in the list instead of jumping to the document top.

Minimal Repro Setup

  • Use the linked sandbox or the official example from the thread.
  • Follow the issue steps as written.
  • Assert through the public editor surface, not private helpers.

Expected Failing Assertion

  • Turning a paragraph into a list on Safari should leave the caret in the new list item.

Issue #3671

  • package: slate
  • TDD readiness: not-a-test-candidate
  • public test seam: edge-anchor Editor.addMark should affect only the intended node.

Why Not A Direct Test Candidate

The thread already points at a likely fix, so this is weak as a fresh red-test target.


Issue #3656

  • package: slate-react
  • TDD readiness: not-a-test-candidate
  • public test seam: leaf rerender breadth inside one block should stay local during edits.

Why Not A Direct Test Candidate

This wants a benchmark lane more than a red-green correctness loop.


Issue #3641

  • package: cross-package
  • TDD readiness: not-a-test-candidate
  • public test seam: DOM and selection mapping failures should not crash the whole app by default.

Why Not A Direct Test Candidate

This is architecture and runtime-policy pressure, not a narrow current red test.


Issue #3636

  • package: slate
  • TDD readiness: ready-now
  • public test seam: Transforms.unwrapNodes should satisfy the exact nested test case from the issue body.

Minimal Repro Setup

  • Use the linked sandbox or the official example from the thread.
  • Follow the issue steps as written.
  • Assert through the public editor surface, not private helpers.

Expected Failing Assertion

  • Transforms.unwrapNodes should produce the exact expected tree from the nested repro in the issue body.

Issue #3634

  • package: slate-react
  • TDD readiness: ready-now
  • public test seam: ReactEditor.focus should allow immediate typing even when focus moves between editors.

Minimal Repro Setup

  • Use the linked sandbox or the official example from the thread.
  • Follow the issue steps as written.
  • Assert through the public editor surface, not private helpers.

Expected Failing Assertion

  • After ReactEditor.focus, the editor should accept typing immediately without another click.

Issue #3621

  • package: slate-react
  • TDD readiness: not-a-test-candidate
  • public test seam: editor plugins should not be rebuilt every onChange just to read external state.

Why Not A Direct Test Candidate

This is mainly misuse of the current editor lifetime contract, not a good direct red test.


Issue #3618

  • package: slate-react
  • TDD readiness: not-a-test-candidate
  • public test seam: DOM ref access for Editable should be possible without private hacks.

Why Not A Direct Test Candidate

This is API-surface pressure, not a current behavior regression.


Issue #3614

  • package: site/examples
  • TDD readiness: not-a-test-candidate
  • public test seam: paste-html belongs in domain code, not as a core packaged example dependency.

Why Not A Direct Test Candidate

This is example-scope product discussion, not a current red-test target.


Issue #3611

  • package: cross-package
  • TDD readiness: ready-with-minor-setup
  • public test seam: IME composition while a void image is selected should not enter text into its spacer.

Minimal Repro Setup

  • Use the linked sandbox or the official example from the thread.
  • Follow the issue steps as written.
  • Assert through the public editor surface, not private helpers.

Expected Failing Assertion

  • Composing text with a selected void image should not insert text into the void spacer.

Issue #3605

  • package: cross-package
  • TDD readiness: ready-now
  • public test seam: select-all then delete should remove all empty blocks and trailing void blocks.

Minimal Repro Setup

  • Use the linked sandbox or the official example from the thread.
  • Follow the issue steps as written.
  • Assert through the public editor surface, not private helpers.

Expected Failing Assertion

  • After select-all then delete, the editor should be fully empty instead of leaving empty blocks or void remnants behind.

Issue #3601

  • package: slate-react
  • TDD readiness: ready-with-minor-setup
  • public test seam: background timers and rerenders should not immediately steal editor focus back.

Minimal Repro Setup

  • Use the linked sandbox or the official example from the thread.
  • Follow the issue steps as written.
  • Assert through the public editor surface, not private helpers.

Expected Failing Assertion

  • Background timers should not cause the editor to immediately lose focus after a click.

Issue #3599

  • package: ecosystem
  • TDD readiness: not-a-test-candidate
  • public test seam: framework wrappers outside React belong to the ecosystem, not Slate core.

Why Not A Direct Test Candidate

This is framework ecosystem demand, not a current public behavior test.


Issue #3587

  • package: cross-package
  • TDD readiness: ready-with-minor-setup
  • public test seam: Chinese IME should not produce data-view inconsistency on the official examples.

Minimal Repro Setup

  • Use the linked sandbox or the official example from the thread.
  • Follow the issue steps as written.
  • Assert through the public editor surface, not private helpers.

Expected Failing Assertion

  • Chinese IME input should not leave Slate data and rendered view out of sync.

Issue #3586

  • package: cross-package
  • TDD readiness: ready-now
  • public test seam: formatting keyboard shortcuts handled in onDOMBeforeInput should not crash DOM-point resolution.

Minimal Repro Setup

  • Use the linked sandbox or the official example from the thread.
  • Follow the issue steps as written.
  • Assert through the public editor surface, not private helpers.

Expected Failing Assertion

  • Formatting keyboard shortcuts should style the text without crashing DOM-point resolution.

Issue #3585

  • package: cross-package
  • TDD readiness: blocked-on-repro
  • public test seam: clicking should update selection before consumer onClick reads it.

Current Blocker

The current thread is too intermittent and vague to turn into a reliable public failing case.


Issue #3584

  • package: cross-package
  • TDD readiness: not-a-test-candidate
  • public test seam: read-only editors may still need set_selection-driven onChange semantics.

Why Not A Direct Test Candidate

This is API and runtime-semantics pressure, not a first-pass red test.


Issue #3582

  • package: cross-package
  • TDD readiness: ready-now
  • public test seam: editors rendered inside iframes should still receive events and onChange.

Minimal Repro Setup

  • Use the linked sandbox or the official example from the thread.
  • Follow the issue steps as written.
  • Assert through the public editor surface, not private helpers.

Expected Failing Assertion

  • An editor rendered inside an iframe should still receive events and fire onChange normally.

Issue #3581

  • package: docs-only
  • TDD readiness: not-a-test-candidate
  • public test seam: docs around Editor.isBlock and custom elements.

Why Not A Direct Test Candidate

This is docs cleanup, not a current red-test target.


Issue #3573

  • package: ecosystem
  • TDD readiness: not-a-test-candidate
  • public test seam: Android support demand is real even when current Slate does not support it.

Why Not A Direct Test Candidate

This is platform and ecosystem signal, not a current public behavior test.


Issue #3568

  • package: cross-package
  • TDD readiness: ready-now
  • public test seam: calling addMark in onDOMBeforeInput with an expanded selection should not crash.

Minimal Repro Setup

  • Use the linked sandbox or the official example from the thread.
  • Follow the issue steps as written.
  • Assert through the public editor surface, not private helpers.

Expected Failing Assertion

  • Calling addMark during onDOMBeforeInput on an expanded selection should not crash the editor.