Fast local checks
Author lists and link-flood spam are decided before an OpenAI request. More than two URLs is treated as spam; allowlisted authors pass and blocklisted authors are hidden.
The whole system
Every check, outcome, and recovery path below exists in the product today. No invented accuracy scores. No mystery “AI insights.”
01 / Detection
Cheap, deterministic checks run before model-based judgment, so an easy answer stays an easy answer.
Author lists and link-flood spam are decided before an OpenAI request. More than two URLs is treated as spam; allowlisted authors pass and blocklisted authors are hidden.
Eligible replies are evaluated with OpenAI’s current moderation model across 13 safety categories. Replies that share a policy are grouped into bounded batches.
Keyword rules catch exact phrases or safe patterns. AI rules describe a broader idea in plain language and act only when their confidence threshold is met.
02 / Control
Defaults get the system moving; the controls let you define what “too far” means for your audience.
Give each category a threshold and choose Hide, Review, or Allow. The strongest triggered action wins when several categories match.
See WOULD_HIDE decisions in the Queue without changing anything on Threads. It is the safest way to calibrate a new policy before going live.
Give trusted regulars a pass and stop repeat spammers immediately. Author decisions happen before custom rules and category moderation.
03 / Review
The Queue makes the moderation evidence visible and offers only the actions that make sense for each state.
Filter by review, hidden, would-hide, allowed, error, or skipped. Review items can be approved or hidden; failed work can be requeued.
Unhide reverses a visibility action. Marking a false positive also restores the reply and records why the original decision was wrong.
See the moderation reason, strongest category scores, rule source, reply text, author, and time without opening a separate detail screen.
04 / Operations
The intake path stays short while durable work, retries, and account lifecycle handling happen in the background.
Workers claim due rows without double-processing them. Transient failures back off across four delays, and a five-attempt guard prevents poison rows from looping forever.
Verified deliveries are validated and written to durable work before the moderation pipeline begins. Duplicate reply deliveries are absorbed by the database.
Scan recent posts when you first connect, and inspect queue depth, worker presence, delivery freshness, and bounded data-maintenance readiness through the health endpoint.
The next reply is covered