Add is_answered to the mail search index

FeatureInitializerService
Shipped
August 14, 2026 at 2:24 AM UTC
Author
Kamo
Commit
f3398b6

Adds **************** so the index records all three IMAP flags rather than two. The message list draws a reply marker from this one, and the index-backed listing in EmailService cannot be turned on until the column exists. Order 0, for the usual reason: SearchIndexEntity maps the column from the moment the shared library carrying it is built, so every runner that loads that entity emits it in its SELECT and ddl-auto cannot add it for us. A late-ordered runner would never execute — an earlier one would die on "column does not exist" and take the run with it. Nullable with a FALSE default and a backfill of existing rows. Not read back from the mail servers: false is already right for the overwhelming majority of messages, and the read path refuses to serve any folder it cannot prove it agrees with the server about, so a row that is stale here is a row it will not use. Re-indexing corrects it.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing