Fix TUI serial line duplication after soft-wrap rendering#303
Conversation
Implementation PlanProblem AnalysisIssue 301 is now reproducible. The visible duplicate rows are not caused by the soft-wrap row math alone; they are caused by a component-render contract violation that the soft-wrap/live renderer exposed. The TUI assumes The fix should normalize markdown list output so raw CR/LF never appears inside a returned line, and add guardrails/tests so future components cannot silently violate the renderer invariant. Deliverables
Files to Modify
Testing Approach
Acceptance Criteria
Risks and Open Questions
Plan created by mach6 |
Progress UpdateImplemented the issue 301 plan:
Verification completed:
Commit: Progress tracked by mach6 |
Vitest coverage
|
Code ReviewCriticalNone. ImportantNone. SuggestionsFinding 1 — Streamed thinking output is not directly regression-tested Finding 2 — Raw-line-break guard is bypassed for mixed image/text lines Finding 3 — Streaming duplicate assertion is viewport-local Finding 4 — Simplify CR/CRLF normalization Finding 5 — Extract duplicated crash-log/stop/throw plumbing Finding 6 — Remove pass-through streaming test wrapper Strengths
Agents run: code-reviewer, error-auditor, test-reviewer, completeness-checker, simplifier Reviewed by mach6 |
Review AssessmentReview comment: #303 (comment) Classifications
Action Plan
Assessment by mach6 |
Progress UpdateFixed the two genuine review findings from the latest assessment:
Verification completed:
Commit: Progress tracked by mach6 |
Closes #301
Fix TUI serial line duplication after soft-wrap rendering by addressing raw-newline markdown list output during assistant streaming.
Implementation plan posted as a comment below.