# mailman The site-wide antispam defaults are deliberately empty: ```yaml mailman_antispam_header_checks: [] mailman_antispam_chain_behaviour: discard ``` Mailing-list owners can manage list-specific header matches and select their action (`accept`, `discard`, `hold`, or `reject`) from Postorius. The global chain is used only when a matching rule has no explicit action. Existing lists without any header matches can be initialized through the Mailman database model by enabling the optional seed operation: ```yaml mailman_seed_empty_list_header_matches: true mailman_empty_list_header_matches: - header: 'X-Spam-Flag' pattern: '^YES$' action: 'discard' ``` The operation is idempotent. A list is modified only when its header-match collection is empty; lists with one or more existing rules are left untouched. ## Verified weekly restart The optional weekly restart performs separate stop and start operations. It waits for both systemd and `mailman status` to confirm that Mailman has stopped before starting it, then checks both signals again to confirm startup: ```yaml mailman_enable_weekly_verified_restart: true mailman_weekly_verified_restart_on_calendar: 'Sun *-*-* 04:00:00' mailman_weekly_verified_restart_stop_timeout: 120 mailman_weekly_verified_restart_start_timeout: 120 ``` The timer is deliberately not persistent, so a missed run is not executed immediately after a server boot. Failures are recorded by systemd in the `mailman-verified-restart.service` journal.