01What gets screened, and does the user wait for it?
Every submission passes a synchronous fast path at post time — a perceptual-hash match against known-bad media plus a cheap classifier; heavier ML scoring happens asynchronously after the content is live.
02What is allowed to block posting, versus taken down after the fact?
Only the fast path blocks at submit: a hash hit or a near-certain classifier verdict rejects immediately; everything else posts right away and the async tier can retract it minutes later.
03The model is unsure — who decides?
Two per-category confidence thresholds split the async score: above the upper one auto-remove, below the lower one auto-allow, and the band in between routes to a human review queue — the thresholds are the human-workload dial.
04A user says the takedown was wrong — then what?
An appeals flow routes the case to a different reviewer who sees the original evidence and the policy version it was judged under; overturns restore the content and feed back into thresholds and training data.
05Do user reports actually do anything?
User reports raise a post’s review priority alongside predicted reach and violation severity, so the queue is ordered by expected harm, not arrival time.
06Can we prove, later, why something was removed?
Every decision — automated or human — is logged with the model score, evidence, and policy version, so appeals and regulators can replay exactly what was known at decision time.