Skip to Content
v0.8.0 · shippedNative iOS / Android / Flutter / Capacitor SDKs, A2A discovery, SOC 2 readiness, residency, BYO storage, BYOK. Read the changelog →
Admin consoleAnti-gaming
Per-device fingerprint tracker with audit trail · · open live demo ↗

Anti-gaming

Route: /anti-gaming

The Anti-gaming page surfaces reporters whose submission patterns look anomalous — devices sending many near-identical reports, accounts farming reward points, or sessions that appear synthetic. Review flagged reporters here and take action.


How detection works

Mushi runs a set of server-side heuristics on every incoming report batch:

RuleWhat it detects
VelocityMore than N reports from the same device in a 1-hour window
Duplicate contentReport bodies with cosine similarity > 0.95 to a recent report
Reward farmingSubmissions clustered immediately after a quest milestone
Synthetic sessionSessions with no real user interaction (no scroll, no focus events)
Device rotationSame user rotating device IDs to avoid per-device limits

Reports that trip a rule are assigned a risk score (0–100) and surfaced here.


Actions

ActionDescription
Flag reporterMark the reporter as suspected gaming; stops reward accrual
Unflag reporterClear the flag; restore reward eligibility
Ban deviceBlock future reports from this device ID
DismissMark the alert as a false positive; the report proceeds normally
View reportsJump to the Reports page filtered to this reporter

Flagging a reporter stops their reward accrual but does NOT delete their submitted reports. Those reports are still triaged and fixed normally.


Velocity rules

Velocity thresholds are configurable per-project. Defaults:

  • 100 reports / device / hour — trip the velocity alert
  • 500 reports / device / day — auto-ban the device

To change limits, go to Settings → Anti-gaming or use the API:

PUT /v1/admin/projects/:projectId/anti-gaming/rules { "velocity_hour": 100, "velocity_day": 500 }

False positive rate

The classification model targets < 2% false positive rate. If you’re seeing legitimate reporters flagged, consider raising the velocity threshold or reducing the duplicate similarity threshold.


Last updated on