Issue 19992 — current-main real-app reproduction Base: a46f80ee28, Linux fs-16, 2026-10-24 UTC. Isolated worktree: /home/ubuntu/wt/issue-19992. Commands: vp install; vp run dev. Server port 14120, Vite port 6080. Browser: T3 collaborative headless Chromium, 1280x800. Requested GPT-6-Astra, medium reasoning, through actual web composer: Output a single fenced TypeScript code block containing 1500 lines. Line N must be export const rowNNNN = { id: N, label: "streaming performance sample" }; with NNNN zero padded. Do not run tools or write files. Output all lines directly in your reply. Runtime helper attached Node inspector to confirmed dev server PID 2391961. Conditional breakpoint recorded 345 splitBufferedAssistantText calls in 44.907 seconds. Input grew monotonically from 35,934 to 49,712 characters. Cumulative input: 14,745,856 characters for 13,778 new characters. Median call interval: 116 ms. Separate live snapshot: mode paragraph, turn_item.updated, 67,809 characters / 907 lines, opening TypeScript fence, previous null. CPU profiles without the breakpoint: inclusive splitter time 26.653 ms / 45.467 seconds (142 samples), and 80.211 ms / 45.332 seconds (458 samples). Second sample: ~0.18% wall time, ~3.24% sampled non-idle time. Breakpoint timings are not CPU measurements. Modest cost; no severe bottleneck claimed. No boundary was delivered during unfinished fence, so the 400ms gate did not engage. Runtime helper removed raw profiling scratch after measurement; this transcript preserves reported results, not raw samples. Server stopped via retained launch terminal afterward. Deterministic red test at 2aee68cb83: vp test run apps/server/src/orchestration-v2/assistantStreaming.test.ts scans each streamed line once while a long code fence is still open AssertionError: expected 81800 to be less than 1600 Tests 1 failed | 2 passed (3) Test feeds 400 growing line appends in an open fence, 400ms apart, counting newline searches.