docs/plans/2026-04-26-slate-v2-browser-stress-command-plan.md
Complete.
Add a sparse, opt-in browser stress lane for Slate v2 editing behavior.
This must not slow default CI. The command should be useful when we need a human-like browser sweep, release proof, or replay for a reported editing bug.
/Users/zbeyens/git/slate-v2./Users/zbeyens/git/plate-2.bun test:stress.STRESS_REPLAY=<artifact> bun test:stress:replay.STRESS_ROUTES.STRESS_FAMILIES.bun check.slate-browser scenario infrastructure.scenario.run, replay serialization, kernel trace checks, and DOM
shape assertions.playwright/stress..tmp/stress-artifacts.test:stress and test:stress:replay scripts.active goal state synchronized.slate-browser build.slate-browser/playwright already exposes
scenario.run, replay serialization, rendered DOM shape assertions,
kernel trace checks, and runtime error capture.playwright/stress/generated-editing.test.ts,
playwright/stress/replay.test.ts, and shared stress artifact utilities in
/Users/zbeyens/git/slate-v2./Users/zbeyens/git/slate-v2/package.json:
bun test:stress and bun test:stress:replay. These scripts are not wired
into bun check.packages/slate-browser/src/playwright/index.ts to detect multiline paste by
joined rendered block text before using fallback insertion./Users/zbeyens/git/slate-v2/tmp/stress-artifacts/chromium/ for:
plaintext/select-all-multiline-paste,
plaintext/select-all-type-delete-undo,
richtext/select-all-multiline-paste,
richtext/select-all-type-delete-undo, and
forced-layout/select-all-multiline-paste.docs/solutions/logic-errors/2026-04-26-slate-browser-native-multiline-paste-success-must-block-fallback-insertion.md.curl -fsS http://localhost:3100/examples/plaintext >/dev/null && echo ready || echo not-ready
-> readybun typecheck:root -> passed.bun --filter slate-browser test:proof -> passed, 19 tests.PLAYWRIGHT_BASE_URL=http://localhost:3100 STRESS_ROUTES=plaintext STRESS_FAMILIES=select-all-multiline-paste bun test:stress
-> failed before the helper fix with duplicated multiline paste, then passed
after the fix.PLAYWRIGHT_BASE_URL=http://localhost:3100 bun test:stress -> passed, 5
tests.STRESS_REPLAY=.tmp/stress-artifacts/chromium/plaintext/default-plaintext-select-all-multiline-paste.json PLAYWRIGHT_BASE_URL=http://localhost:3100 bun test:stress:replay
-> passed.bun lint:fix -> passed, formatted 3 files.bun lint -> passed, checked 1567 files.bun --filter slate-browser typecheck && bun typecheck:root -> passed.STRESS_REPLAY=.tmp/stress-artifacts/chromium/richtext/default-richtext-select-all-type-delete-undo.json PLAYWRIGHT_BASE_URL=http://localhost:3100 bun test:stress:replay
-> passed.