Deleting a transcript message now retries with a backwards scan instead of giving up.
What's wrong with this entry?
Removing a message from a transcript stored in the newer on-disk format used to abandon the deletion when reading the end of the file failed. It now retries with a record-by-record scan that pages backwards through the file.
- The fallback only runs when the read error matches a specific recoverable case; other errors still abandon as before.
- The scan is bounded by a sliding window size, a page size and a maximum number of bytes read.
- It logs its own failure,
Tombstone removal abandoned: stream stat failed, when it cannot even size the file.
Tombstone removal abandoned: stream stat failed
Strings lifted out of the shipped bundle, so the claim above can be checked against them.