feat(stats): count emails forwarded to the catch-all fallback

Adds an emails_forwarded counter (a subset of emails_rejected) bumped on a
successful FALLBACK_FORWARD_ADDRESS forward. Dropped = rejected − forwarded.
Surfaced in the /api/v1/stats response and the public status page.

Co-Authored-By: Claude Opus 4.7 <[email protected]>
This commit is contained in:
Julien HerrandClaude Opus 4.7 committed 2026-05-24 17:19:12 +02:00
1 parent 1583e95875
commit 81e46c9026
7 files changed
+64

No files matched your search

+2
View File
@@ -11,6 +11,7 @@ const EMPTY_COUNTERS: Counters = {
feeds_deleted: 0,
emails_received: 0,
emails_rejected: 0,
emails_forwarded: 0,
unsubscribes_sent: 0,
};
@@ -41,6 +42,7 @@ export async function bumpCounters(
current.feeds_deleted += changes.feeds_deleted ?? 0;
current.emails_received += changes.emails_received ?? 0;
current.emails_rejected += changes.emails_rejected ?? 0;
current.emails_forwarded += changes.emails_forwarded ?? 0;
current.unsubscribes_sent += changes.unsubscribes_sent ?? 0;
if (changes.last_email_at) current.last_email_at = changes.last_email_at;
if (changes.last_feed_created_at)