- Shipped
- August 6, 2026 at 12:48 AM UTC
- Author
- kamo
- Commit
- d1327b6
Replying to a message sent from Kamo showed the signature twice: the live one, and above it a mangled version of the quoted original's, drawn as a bordered spreadsheet. Two separate causes, both fixed here. The gridlines were a regression from a1798507. That change gave every <table> in a mail body cell borders and padding, on the assumption a table is a table of data. It is not — signature templates are laid out with tables, and so is most of the newsletter mail people quote, so every quoted signature came out as a grid. Once Quill has converted a table there is nothing left to tell a layout table from a data table, so no decoration is invented at all now. The only thing removed is what Quill itself adds on the way out: `data-row` bookkeeping and the hard-coded 1px black outline getSemanticHTML() stamps on every table, which was in nobody's original. The duplication is older. buildQuotedReply quotes the original htmlBody whole, and a Kamo-sent message carries its signature baked in, so the composer appended a second one at send. The quote now stops at the `--` delimiter, which is where a signature begins by long convention (RFC 3676) and which buildTemplateWrappedHtml writes as a monospace div immediately before it. Only that exact marker is matched — another client's signature is left alone, because silently dropping part of a quote cannot be undone. A thread carries one marker per generation, each the last child of its own wrapper, so every generation's signature goes while the quoted history between them stays.