Short answer: Instant Expunge is enabled by default on your Citadel server. It makes message deletion behave the way users and modern email programs expect. You do not need to turn it on, and you will almost certainly never need to turn it off.
The original IMAP specification (RFC 3501) does not actually delete a message when you hit the delete key. Instead, it requires a two-step process:
\Deleted flag (often showing it crossed out or greyed out in older mail clients).EXPUNGE command to permanently purge those flagged messages from the mailbox.This design originated with the UW IMAP reference server in the late 1980s. Because UW IMAP stored
entire mailboxes in single flat files (the mbox format), deleting one message required rewriting
the entire mailbox file to disk. To prevent the disk from grinding to a halt on every single delete,
Mark Crispin wrote a workaround where deletions were deferred until an explicit expunge, and then codified
that workaround into the internet standard.
Citadel does not use flat mailbox files; it stores mail in a high-performance database. Deleting a single record from a database is an immediate, lightweight operation. Keeping deleted messages lingering in a mailbox until an obscure second command is sent makes no sense in a database-backed mail server.
To handle this cleanly, Citadel provides two built-in behaviors:
Almost certainly not. Modern desktop and mobile email apps (Apple Mail, Thunderbird, Outlook, iOS, Android) do not rely on two-stage flagging. When a user deletes an email, the app moves it into the Trash folder. Instant Expunge fits this workflow perfectly.
The only time you would ever consider disabling Instant Expunge is if you are running vintage or specialized client software from the 1990s (such as an ancient terminal client) that explicitly depends on seeing the two-phase flag-and-expunge sequence. For everything else, leave the default alone.