docs/plans/2026-04-06-slate-v2-html-formatting-phase8.md
Supporting plan. For current queue and roadmap truth, see master-roadmap.md.
Land the next Phase 8 batch from
docs/slate-v2/package-end-state-roadmap.md:
paste-html surface conservativelyslate-react runtime seamstrongemcodepaste-html examplepaste-html surface only deserializes paragraphs and linksEditableBlocks seam already supports app-owned inline rendering via
renderElementEditableBlocks renderSegment does not carry text-node mark data,
so mark-style rendering is not the obvious minimal seam../slate/site/examples/ts/paste-html.tsx proves the broader semantic
reference, but the v2 slice should stay narrower and explicittask, goal workflow, learnings-researcher, tdd, and
react.tmp/slate-v2 for deeper AGENTS/CLAUDE files: none foundpaste-html example, runtime seam, browser test, and legacy
Slate exampledocs/solutions/logic-errors/2026-04-03-slate-v2-clipboard-boundary-proof-must-split-fragment-semantics-and-dom-transport.mdstrong / em / code
support in playwright/integration/examples/paste-html.test.tsstrong / em / code into explicit inline elements3010:
bash ./scripts/run-slate-browser-local.sh 3010 /examples/paste-html "yarn build:slate-browser:playwright && yarn exec playwright test playwright/integration/examples/paste-html.test.ts --project=chromium --workers=1"yarn tsc:examplesyarn eslint site/examples/ts/components/link-utils.tsx site/examples/ts/components/paste-html-surface.tsx playwright/integration/examples/paste-html.test.tsyarn prettier --check ... on changed slate-v2 filespnpm exec prettier --check ... on changed plate-2 docssite/examples/js/** follow an existing
semicolon-heavy generated style that currently fails targeted repo ESLint
even outside this slice, so lint evidence is intentionally scoped to the
TS/example/test path that backs the proved behavior