fix(tts): keep status detail truncation UTF-16 safe#101301
Conversation
|
Codex review: needs real behavior proof before merge. Reviewed July 6, 2026, 11:49 PM ET / 03:49 UTC. Summary PR surface: Source +3, Tests +48. Total +51 across 2 files. Reproducibility: yes. source inspection is enough to reproduce the bug boundary: current main uses raw String.slice for the status-detail cap, and the proposed regression case places an emoji exactly at that cut. I did not execute the test in this read-only review. Review metrics: none identified. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Proof guidance:
Risk before merge
Maintainer options:
Next step before merge
Security Review detailsBest possible solution: Merge the narrow helper-based fix after redacted real behavior proof is added and current-main merge validation remains green, keeping normalizeStatusDetail as the single status-detail truncation path. Do we have a high-confidence way to reproduce the issue? Yes, source inspection is enough to reproduce the bug boundary: current main uses raw String.slice for the status-detail cap, and the proposed regression case places an emoji exactly at that cut. I did not execute the test in this read-only review. Is this the best way to solve the issue? Yes, the implementation is the narrowest maintainable fix because all affected status-detail fields already funnel through normalizeStatusDetail and the repo already has a UTF-16-safe truncation helper. The remaining blocker is proof quality, not code shape. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 0fd69dc3d2b8. Label changesLabel changes:
Label justifications:
Evidence reviewedPR surface: Source +3, Tests +48. Total +51 across 2 files. View PR surface stats
What I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
0d77e24 to
d6937f8
Compare
d6937f8 to
351d0cd
Compare
|
Closing as superseded by the canonical UTF-16 boundary consolidation: The relevant fix from this PR was incorporated into the canonical change with @Alix-007 preserved as co-author. The landed patch consolidates the equivalent owner-local truncation boundaries, with exact changed gates, 142 focused tests, and clean exact-head CI. |
Summary
Linked context
Real behavior proof (required for external PRs)
Tests and validation
Risk checklist
Did user-visible behavior change? (
Yes/No)Yes. Malformed truncated text is now avoided while preserving existing caps and truncation markers.
Did config, environment, or migration behavior change? (
Yes/No)No.
Did security, auth, secrets, network, or tool execution behavior change? (
Yes/No)No.
What is the highest-risk area?
TTS status/config display text formatting.
How is that risk mitigated?
The patch is limited to the existing truncation boundary and is covered by focused regression proof above.
Current review state
What is the next action?
ClawSweeper re-review and maintainer review after this proof/body refresh.
What is still waiting on author, maintainer, CI, or external proof?
Nothing is waiting on the author after this proof update; waiting on CI/ClawSweeper/maintainer review.
Which bot or reviewer comments were addressed?
Addressed ClawSweeper's needs-proof feedback by using exact Real behavior proof field labels and adding copied terminal output from the current PR head.