Context
The anti-cheat runtime has moved away from automatic cumulative penalty locking. Risk events are now recorded with evidence when available, while actionable monitoring failures move the participant to paused and require pre-check. LOCKED is intended to be a TA/manual action path.
The frontend settings UI has removed the visible Penalty Policy section to avoid exposing controls that no longer drive the runtime behavior.
Deprecated / cleanup candidates
Contest.max_cheat_warnings
Contest.warning_timeout_seconds
Contest.allow_auto_unlock
Contest.auto_unlock_minutes
- API/config response fields that only support the old automatic penalty UI
- i18n/docs copy that describes cumulative violations, warning timeout, auto-lock, or auto-unlock as the normal anti-cheat flow
Proposed follow-up
- Audit serializer and anticheat-config response usage for these fields.
- Keep read compatibility where required, but stop presenting them as active policy controls.
- Decide whether
violation_count remains as risk-count/reporting data only.
- Add a migration plan to drop or rename stale fields after frontend/backend compatibility is confirmed.
- Update exam consent/report copy to describe: event recording, evidence windows, pause + pre-check, and TA manual lock.
Acceptance criteria
- No admin UI labels the old behavior as
Penalty Policy.
- New anti-cheat docs do not claim general violations auto-lock participants.
- Backend fields are either explicitly marked legacy/compatibility or removed through migration.
- Tests cover the current behavior: risk count records, environment failures pause, TA/manual lock remains separate.
Context
The anti-cheat runtime has moved away from automatic cumulative penalty locking. Risk events are now recorded with evidence when available, while actionable monitoring failures move the participant to
pausedand require pre-check.LOCKEDis intended to be a TA/manual action path.The frontend settings UI has removed the visible
Penalty Policysection to avoid exposing controls that no longer drive the runtime behavior.Deprecated / cleanup candidates
Contest.max_cheat_warningsContest.warning_timeout_secondsContest.allow_auto_unlockContest.auto_unlock_minutesProposed follow-up
violation_countremains as risk-count/reporting data only.Acceptance criteria
Penalty Policy.