Why
The shared HTML-to-text converter feeds several existing consumers whose HTML branches lack direct integration coverage. This coverage work is deferred from #100 so that PR stays focused on link-preserving conversion and its ingestion, search, and agent-read regressions.
Scope
Add thin tests that verify actual consumer output or stored data for:
- Gmail text/plain MIME alternatives, with and without attachments.
- Reply and forward tools supplying related-message text to compose generation.
- Opened-message summary, action, and reply processing.
- Compose context and reply recomputation, including primary-message versus embedded-message content.
- Ordinary bulk indexing of newly fetched HTML bodies.
Reuse existing fixtures and isolate any required AI or UI test seams. Assertions should prove link addresses reach the consumer, rather than merely execute the conversion call.
This is a test-coverage follow-up, not evidence of additional production defects. No historical reindex, cache repair, older-client compatibility work, or draft/move lifecycle redesign is included.
Additional converter regression cases
The final review identified two further coverage-only cases. The current converter handles both correctly; isolated mutations can break them without failing the existing matrix:
- Whitespace after
= before a quoted value containing >, across HTML whitespace characters: verify the complete link destination and label, and preserved body text for a non-link attribute.
- Slash-separated attribute recovery, such as
<a/href='/report.pdf'>Read</a>: verify label and destination if this malformed-input recovery remains supported.
These additional regression cases are deferred here under the owner's scope decision; they do not identify current production failures.
Why
The shared HTML-to-text converter feeds several existing consumers whose HTML branches lack direct integration coverage. This coverage work is deferred from #100 so that PR stays focused on link-preserving conversion and its ingestion, search, and agent-read regressions.
Scope
Add thin tests that verify actual consumer output or stored data for:
Reuse existing fixtures and isolate any required AI or UI test seams. Assertions should prove link addresses reach the consumer, rather than merely execute the conversion call.
This is a test-coverage follow-up, not evidence of additional production defects. No historical reindex, cache repair, older-client compatibility work, or draft/move lifecycle redesign is included.
Additional converter regression cases
The final review identified two further coverage-only cases. The current converter handles both correctly; isolated mutations can break them without failing the existing matrix:
=before a quoted value containing>, across HTML whitespace characters: verify the complete link destination and label, and preserved body text for a non-link attribute.<a/href='/report.pdf'>Read</a>: verify label and destination if this malformed-input recovery remains supported.These additional regression cases are deferred here under the owner's scope decision; they do not identify current production failures.