cmux-next agent pane: render nested and numbered markdown lists
Part of the cmux-next parity work listed in #16174 (comment). One of the four agent pane bugs from the real-agent clip in #16231 (comment).
Problem
Markdown lists rendered one level only. A nested list showed inline in its parent item's text, and a numbered list starting at 3 started at 1.
Change
- List items render nested lists as their own indented lists, at any depth. Numbered lists render as
<ol>with their start number. - The row height measure includes nested items at their indented width, so the virtual transcript places rows correctly.
Verification
- Red first: commit 1 adds tests in
transcript.test.tsx(DOM shape) andmodel.test.ts(height), which fail before the fix. bun test src/agent-session/acpmux(91 pass), typecheck,lint:ci,build-agent-pane-web.sh --check.
Screenshots
A real-agent clip from one fleet build with all four transcript fixes (feat-cmux-next-transcript-fixes-demo) will be added here. The mock transport writes rows directly and skips the client reducer, so a mock capture cannot show this fix.
🤖 Generated with Claude Code
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.
Summary by cubic
Fixes the cmux-next agent pane so markdown lists render fully: nested lists now appear as their own indented lists instead of inline text, and numbered lists keep their starting number instead of restarting at 1.
- Nested list items render at any depth, and numbered lists render as
<ol>with their start attribute. - Row height estimation now measures nested items at their indented width, so the virtual transcript places rows correctly.
- Adds tests covering the rendered DOM shape and row height for nested lists.