Activity log
Every campaign carries a per-campaign activity feed — who edited what, who reviewed an AI diff, who left a comment. It’s the audit trail for collaborative campaign work, distinct from the per-user notification delivery channel.TL;DR
- One activity log per campaign, accessible from the campaign detail “Activity” tab.
- Records edits, status promotions, AI proposals, comments, implementation-task resolutions.
- Updates in real-time so multiple reviewers see each other’s actions live.
- Distinct from the Notification Center widget — the activity log is a dashboard-side feed, not a user-facing channel.
What gets recorded
Per the spec:
Each entry carries:
- Actor — the user (dashboard team member) who performed the action.
- Timestamp — when it happened.
- Type — one of the categories above.
- Payload — type-specific detail (the diff, the comment text, the status transition, …).
How to use it
Real-time updates
The activity tab streams updates as they happen — multiple reviewers see each other’s edits and comments live without refreshing. The mechanism is server-side; the dashboard subscribes once when the tab opens. The streaming channel is dedicated to collaborative team feeds — flat per-campaign updates, one or a few reviewers at a time. The Notification Center widget streams over a different channel optimised for per-user notification inboxes; don’t conflate the two. The activity log isn’t exposed to your customer’s widget: it’s a team-collaboration surface inside the dashboard, not a delivery channel and not part of the public SDK.Retention
Activity entries are retained per the org’s plan, typically aligning with the per-message delivery retention. Aged-out entries are archived rather than deleted — the audit trail survives for compliance even when day-to-day display drops them from the dashboard.Distinct from the Notification Center channel
A common mistake: thinking the activity log and the user-facing Notification Center are the same thing. They’re not:
The naming overlap (“activity”) is unfortunate; treat them as separate domains.
FAQ
Don't see teammate's comment — why?
Don't see teammate's comment — why?
The real-time stream may have disconnected briefly (laptop sleep, flaky wifi). Refreshing the activity tab re-syncs from the last entry you saw and pulls anything missed. If the comment still doesn’t appear, check the timestamp filter — a “last hour” filter hides older entries.
Activity log retention — how long?
Activity log retention — how long?
Aligned with the per-message delivery retention on your plan (typically 90 days for the standard plan). Entries older than the window are archived rather than deleted; an audit-export call can fetch them for compliance reviews.
Export for an audit?
Export for an audit?
Two paths: the dashboard’s “Export activity” button (CSV) for the active retention window, and a backend audit-export endpoint for older archived entries. Both are scoped to the campaign and respect organisation membership.
Stops streaming after a while — is that expected?
Stops streaming after a while — is that expected?
Long-lived connections occasionally drop (load balancer timeouts, idle disconnects). The dashboard auto-reconnects on visibility change and re-syncs from the last entry you saw to fill any gap. If you see persistent stalls, refresh the tab.
Can I subscribe to the activity log from outside the dashboard?
Can I subscribe to the activity log from outside the dashboard?
Not today — the activity log is a dashboard-side surface. If you have an audit pipeline that needs activity events, the right surface is a future webhook (on the roadmap); meanwhile, the periodic export covers most needs.
Comments — Markdown supported?
Comments — Markdown supported?
Plain text + emoji today. Markdown-flavored rendering is on the roadmap. The text is stored verbatim, so future Markdown support will retroactively render existing comments.
See also
Campaigns
Campaign lifecycle and versioning.
Orchestrator
AI proposals and the implementation-task system.
Observability
Tracing actions across the platform.
Notification Center overview
The user-facing channel — distinct from the activity log.