Files
SubMiner/docs/subagents/agents/codex-overlay-whitespace-newline-20260221T040705Z-aw2j.md

1.8 KiB

Agent Log: codex-overlay-whitespace-newline-20260221T040705Z-aw2j

  • alias: codex-overlay-whitespace-newline
  • mission: Fix visible overlay whitespace/newline token rendering bug (blank hoverable tokens) with regression tests.
  • status: completed
  • started_utc: 2026-02-21T04:07:05Z
  • last_update_utc: 2026-02-21T04:14:30Z

Intent

  • Reproduce bug around spaces/newlines + preserveLineBreaks in visible overlay.
  • Add failing renderer/tokenization regression tests first.
  • Patch render/token mapping to avoid hoverable blank tokens and preserve-mode duplication.

Touched Files

  • src/renderer/subtitle-render.ts
  • src/renderer/subtitle-render.test.ts
  • docs/subagents/INDEX.md
  • docs/subagents/collaboration.md
  • docs/subagents/agents/codex-overlay-whitespace-newline-20260221T040705Z-aw2j.md

Decisions

  • Ignore whitespace-only token surfaces in source alignment.
  • Non-preserve mode: flatten token newlines to spaces, whitespace-only surfaces as text nodes.
  • Preserve mode alignment: skip unmatched token surfaces (do not append fallback token) to avoid duplicate tail text.

Verification

  • RED: new whitespace-separator test failed before fix.
  • GREEN: renderer suite pass after first fix.
  • RED: new preserve-mode duplicate-tail mismatch test failed before fix.
  • GREEN: bun run build && node dist/renderer/subtitle-render.test.js pass (11/11).
  • GREEN: node --test dist/renderer/subtitle-render.test.js pass.

Blockers

  • none

Next Step

  • User visual verify with preserveLineBreaks=true + known mixed-width numeral lines.
  • [2026-02-21T04:18:16Z] follow-up: fixed non-token first-paint behavior to collapse line breaks when preserveLineBreaks=false (normalizeSubtitle(..., collapseLineBreaks=true) in fallback path); added regression test for normalize collapse.