Describe the feature
Plumb the IMAP SEARCH command (and ESEARCH extension when supported) so users can search the entire mailbox without paginating through every UID. Pair it with the local index — local hits show instantly; the server search backfills.
Why this matters
For inboxes with 100k+ messages, downloading everything to build a local index is impractical at first run. Server-side SEARCH gives an instant first-pass result while the local index warms up.
Notes
- Map our search DSL to IMAP search keys:
from:, to:, subject:, body:, since:, larger:.
- Use
ESEARCH RETURN (ALL) (RFC 4731) to get UID lists in one round-trip.
- Gracefully degrade to
SEARCH UID for old servers.
Describe the feature
Plumb the IMAP
SEARCHcommand (andESEARCHextension when supported) so users can search the entire mailbox without paginating through every UID. Pair it with the local index — local hits show instantly; the server search backfills.Why this matters
For inboxes with 100k+ messages, downloading everything to build a local index is impractical at first run. Server-side SEARCH gives an instant first-pass result while the local index warms up.
Notes
from:,to:,subject:,body:,since:,larger:.ESEARCH RETURN (ALL)(RFC 4731) to get UID lists in one round-trip.SEARCH UIDfor old servers.