Skip to content

spam detection with decision models - #933

Open
sgfost wants to merge 3 commits into
comses:mainfrom
sgfost:feat/spam-detection-final-final
Open

sgfost wants to merge 3 commits into
comses:mainfrom
sgfost:feat/spam-detection-final-final

Conversation

@sgfost

@sgfost sgfost commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

Adds spam detection that runs on every newly created codebase, event, job, and on every update for member profiles (huey tasks). You can configure a primary model provider and fallback, currently a choice between ASU Voyager (free) and cloudflare (generous free daily usage) served models. The intended/default setup here is to use Gemma 4 instruct from voyager and if it fails or takes too long, fall back to clef-omni from cloudflare. Though it can easily be configured to only use one or the other and simply wait/retry.

Since these perform so well, SpamModeration no longer primarily acts as a review queue, though we still track when a moderator manually marks something and will not overwrite these decisions.

Flagged content remains hidden from public view and the admin page not only works again but looks a bit nicer (see below)

Also:

  • removes the old honeypot and form timing checks (these were fragile anyways)
  • add sentry reporting for huey tasks

Note

Deployment: Spam detection defaults to off. Enable and configure it in Wagtail → Settings → Spam detection, and ensure the provider API credentials are deployed.

===

image image

Remove hidden form fields, load-time tracking, serializer heuristics, and the timing threshold. Keep manual moderation and existing spam records intact.

Remove obsolete heuristic tests and exercise public spam filtering through manual moderation. Automatic detection is disabled until the replacement detector is introduced separately.
@sgfost

sgfost commented Oct 26, 2026

Copy link
Copy Markdown
Contributor Author

supersedes #772

@sgfost
sgfost force-pushed the feat/spam-detection-final-final branch from 927158a to 184193c Compare October 27, 2026 23:24

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant