Each committee role now has a dedicated Inbound Forwarding tab where admins
can configure how incoming emails to the role address are delivered
Choose from four forwarding modes: Member's personal email, Custom address,
Multiple recipients, or No forwarding
Multiple-recipient forwarding uses Cloudflare Email Workers, with recipients
selectable from existing members or entered manually
Existing Cloudflare Worker recipients can be imported automatically when detected
Email routing status and actions
A live status banner shows the current state of each role's Cloudflare routing rule:
Forwarding Active (green), Not Configured (amber), Outdated (amber),
Not Available, or Error (red)
One-click Create, Update, and Delete buttons manage routing rules
directly — no need to log into the Cloudflare dashboard
Destination email addresses are automatically registered and verified in Cloudflare
Email routing logs
A new Email Logs tab appears on roles that have an active Cloudflare Worker
View timestamped logs of inbound email processing including sender, recipient,
and delivery status
Logs are sortable and filterable for easy troubleshooting
Outbound email sender configuration
The Outbound Email tab lets admins derive the sender address from the Role
name or the member's Full Name, with domain validation
Inline Brevo sender creation and verification — register, amend, or delete senders
without leaving the page
Sender status is shown at a glance with verification badges
Contact Us integration
The Contact Us tab configures how contact form submissions are routed for each role
A ready-to-use markdown link is generated for embedding in page content, directing
visitors to the contact form pre-filled with the correct role
Inline help documentation
Every tab (Role Details, Outbound Email, Inbound Forwarding, Contact Us, Email Logs)
now includes an editable markdown help section at the top explaining its purpose
Help content is pre-populated with sensible defaults and can be customised per site
Committee settings page improvements
Redesigned committee settings with a sortable, searchable table and inline role editing
URL deep-linking to individual roles via ?edit=role-type query parameter
Role type categorisation (Committee, Group, System) with built-in role mapping
Mail Settings Enhancements
Senders management
New Senders tab in Mail Settings provides a searchable, sortable table of all
Brevo senders
View verification status, associated committee role, and active/inactive state
Delete orphaned or unused senders directly from the list
Senders linked to committee roles are cross-referenced for easy navigation
Brevo template management
New Push Default Template action overwrites the Brevo template content from
local HTML defaults
Template Diff indicator shows whether a Brevo template matches the local default
(colour-coded badge: green = in sync, amber = differs)
Brevo editor links now offer both Rich Text and HTML/Setup editor options via dropdown
Mail settings loading states
All mail settings tabs now show a spinner while configuration is loading, preventing
blank or broken UI during initial load
Environment & Cloudflare Configuration
Per-environment Cloudflare configuration
Cloudflare settings (API token, Zone ID) are now configured per environment,
supporting multi-site deployments where each site has its own Cloudflare zone
Configuration is encrypted with AES-256-GCM when passed as an environment variable
The base domain is automatically derived from each environment's group URL
Environment settings refactor
The environment settings page has been split into focused sub-components:
Global Settings, Per-Environment Settings, and Config Tools
New Cloudflare URL input component for consistent Cloudflare dashboard links
New Cloudflare Settings section showing the resolved per-environment configuration
Technical Changes
New components and services
CloudflareEmailRoutingService — frontend service with BehaviorSubject caching for
rules, destination addresses, workers, catch-all rules, and non-sensitive config
EmailRoutingStatusComponent — reusable routing status display with action buttons
EmailRoutingLogComponent — Cloudflare Worker log viewer with sorting and filtering