feat: show mail import history

This commit is contained in:
Christian Krakau-Louis
2026-05-22 19:44:18 +02:00
parent 40f7d52df2
commit 69aa1459eb
6 changed files with 145 additions and 4 deletions
+2 -1
View File
@@ -26,6 +26,8 @@ Recently improved:
- Mail source imports now create sanitized import-history records for manual and scheduled polls.
- Parsed upload, Gmail, and IMAP reports are now persisted to `dmarc_reports` and `report_records`.
- Report/domain API reads can hydrate the dashboard projection from persisted data after restart.
- Mail source import history is visible in the Mail Sources UI.
- The current Alpine-based UI is allowed by CSP and renders dynamic tables in real browsers.
Implementation note:
- The legacy `ReportStore` remains as a projection layer for existing report/dashboard code, but durable report data now lives in the database.
@@ -36,7 +38,6 @@ Objective: make mailbox imports auditable and make report totals trustworthy.
Priority tasks:
- Expand import attempts with message ID, source, attachment filename, outcome, and sanitized error details.
- Show import history on mail source detail pages.
- Report duplicate skips separately from parse failures.
- Add backfill controls for Gmail and IMAP sources.
- Improve source rollups so a source IP tracks pass/fail counts over time.
+2 -1
View File
@@ -61,10 +61,11 @@ Recently delivered:
- Tests now cover a real Google-style ZIP attachment path rather than only mocked parser behavior.
- Mail source imports now persist sanitized import-history records for manual and scheduled polls.
- Uploaded, Gmail-imported, and IMAP-imported reports are now persisted to report/record tables and can be reloaded into report/domain views.
- Mail source import history is now visible from the Mail Sources UI.
- The current Alpine-based UI can run under the configured CSP, so dynamic tables render in real browsers.
Next tasks:
- Add per-import result details: skipped duplicates, parse failures, unsupported attachments, and imported report IDs.
- Add a UI import history view for each mail source.
- Add mailbox search controls for date range/backfill without requiring code changes.
- Improve source aggregation so each sender IP keeps pass/fail totals instead of only the latest result.
+1
View File
@@ -90,6 +90,7 @@ This file tracks the specific implementation tasks for each milestone of the DMA
- [x] Skip duplicate domain/report IDs during IMAP imports
- [x] Persist sanitized import errors for API/UI review
- [x] Count duplicate skips separately from parse failures
- [x] Show recent import history in the Mail Sources UI
- [ ] Add retry/backfill controls per mail source
## Milestone 3: Database Integration