Process — Creative Submission & Moderation
Process — Creative Submission & Moderation
Section titled “Process — Creative Submission & Moderation”Parent spec: 2026-05-23-03-ad-moderation-design.md
Subsystem: 03 ad-moderation
Date: 2026-05-23
Covers the end-to-end happy path (upload → auto-filter → admin queue → approval), the rejection branch, and the post-approval revocation branch. Inputs from 02 (session/user), outputs consumed by 04 (placement gate) and 05 (saga re-validation per D27).
Happy-path: upload → approved
Section titled “Happy-path: upload → approved”Rejection branch (auto-filter blocks)
Section titled “Rejection branch (auto-filter blocks)”24 h SLA fallback (hourly cron):
Revocation branch (approved → revoked)
Section titled “Revocation branch (approved → revoked)”- All
moderation_decisionswrites are append-only; noUPDATEon prior rows. is_approved(ad_id)is a service-binding RPC (not HTTP), <50 ms p95 — required by 05 saga step budgets.- House ads (
users.id='house') bypass auto-filter; admin-only path; used by 05 as cascade terminal. - Sentry tags every step with
subsystem=ad-moderation, plusauto_filter_verdictandclassifier_modelon relevant spans.