Problem/Motivation

The existing exact-recipient inspector is useful for suppression recovery, but support staff investigating one message cannot easily follow its accepted delivery, bounce and complaint history.

Proposed resolution

Add a permission-controlled, paginated history view with exact MessageID lookup and bounded source/type/time filters. Reuse retained normalized events; avoid collecting new message content or engagement metadata.

Acceptance criteria

  • Group related events without confusing message identity with event identity; sort by provider occurrence and show receipt-time fallback.
  • Show delivery as provider evidence rather than proof of inbox placement, and explain that delivery does not override suppression.
  • State when history has been purged or predates installation; never claim the view is a complete provider archive.
  • Keep raw recipients and message identifiers out of lookup URLs and logs, restrict access and escape displayed data.
  • Test pagination, index use, permission denial, delayed events and retention; include accessible empty/error states.

Scope and dependencies

Optional follow-up after stable release; not a blocker for #3621224: Complete the 1.0.0 stable release verification gates. Builds on #3621130: Add a protected suppression inspector and audited recovery workflow; the completed original issue remains fixed.

Comments

jmcerda created an issue. See original summary.

  • jmcerda committed 6bc5dbf2 on 1.x
    Issue #3621234: Return an actionable error for invalid timeline source...

  • jmcerda committed 42890324 on 1.x
    Issue #3621234: Evaluate suppression once per unique timeline recipient
    

  • jmcerda committed bd33bb22 on 1.x
    Issue #3621234: Assert timeline results independently of the form intro...

  • jmcerda committed 4f2a02a6 on 1.x
    Issue #3621234: Add a protected MessageID delivery timeline
    
jmcerda’s picture

Assigned: Unassigned » jmcerda
Status: Active » Fixed

Landed on 1.x-dev.

A permission-controlled MessageID timeline is available under Reports. Operators submit an exact MessageID in the form, optionally filtered by event type, source and UTC date range. Identifiers are not placed in lookup URLs or logs. Events are grouped by MessageID, ordered by provider occurrence then receipt time, and keep event identity distinct from message identity.

The view uses retained local events only. It is not a complete provider archive. Empty results may mean the identifier is wrong, history was purged, or the message predates installation. Delivery is provider evidence, not proof of inbox placement, and does not override suppression. Raw payloads and legacy descriptions are omitted.

Kernel and HTTP coverage include permission denial, delayed-event order, pagination, index use, escaping, and empty states. This is not a stable-release gate.

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.