Skip to main content

Admin Dashboard

Coverage management

Coverage management — documentation pending.

Complete

Coverage management is the admin surface for the post-event editorial pipeline. Unlike most modules where admin and content production are separate, Coverage admin IS the production tool — drafting, fact-checking, publishing, and post-publish corrections all happen in admin. The queue is auto-populated from Calendar events flagged coverageEligible.

Admin surfaces

  • /founder-account/admin/coverage — queue of CoverageEligible events without published coverage yet. Sorted by event endDate desc (most recent past events first).
  • /founder-account/admin/coverage/drafts — list of drafts in progress. Each shows: parent event, kind, drafter, last save, fact-check status.
  • /founder-account/admin/coverage/new?parentEventId=X — start a draft for a specific event. parentEventId is required; admin cannot create coverage without picking a parent.
  • /founder-account/admin/coverage/:id/edit — full draft editor. Kind selector (auto-inserts sponsor disclosure when kind=sponsor-spotlight), bilingual title/dek/bodyHtml, mention pickers, cover image.
  • /founder-account/admin/coverage/:id/fact-check — fact-check review surface. 3-gate checklist must all be ticked before "Approve & Publish" enables.

Two-editor publishing rule

The drafter and the fact-checker MUST be different admin users. The fact-check surface enforces this — if the current logged-in user equals the drafter, the "Approve & Publish" button is disabled with the explanation "Fact-check must be performed by a different editor." This is non-negotiable; bypassing the rule via the API directly is a violation flagged in the audit log.