Expand moderation case workflows
CI / checks (push) Successful in 6m49s

This commit is contained in:
2026-10-17 16:19:33 -04:00
parent 4501eba873
commit 7f2205e9c4
22 changed files with 2815 additions and 167 deletions
+37 -11
View File
@@ -125,18 +125,44 @@ resetting its cache or credentials.
## Cases, evidence and review
Create a case for a report, investigation or appeal. Staff notes are explicitly
labeled as notes. Selecting archived chat verifies the target GUID and original
message against the recorded match and saves an independent snapshot, including
the original timing context. Unknown or estimated timestamps remain such; the
snapshot does not turn them into exact observations. Unarchived or already
deleted chat cannot be attached as verified evidence.
Create a case for a report, investigation or appeal. Each case has a dedicated,
shareable page with the player identity, evidence, staff notes, linked restrictions,
and an activity timeline. These pages require moderation access. Give a case a
priority and assign it to an eligible administrator or moderator. Filter the case
queue by status, priority, or assignment; active cases appear first, ordered by
priority and most recent update.
Cases can be resolved or dismissed with a recorded reason. Evidence, restrictions
and append-only moderation events survive source-match cleanup and server
deletion. They currently have no automatic retention cleanup. Authentication
audit cleanup does not remove moderation history. Correct decisions by adding
notes or revoking restrictions; there is no history-erasing delete endpoint.
Move active cases between **Open**, **In review**, and **Escalated**, recording a
reason for workflow changes. Close a case with one of these outcomes: **Resolved**,
**Dismissed**, **Warning issued**, **Restriction applied**, **No action needed**,
**Duplicate**, **Appeal upheld**, or **Appeal denied**. Every decision requires a
reason. Reopen a closed case when new evidence or an appeal needs review; earlier
decisions remain in its history. Editing case details does not reopen a case.
Apply a ban or mute directly from an active case. The case fixes the target game
and GUID and records the resulting restriction alongside the evidence. The same
role, scope, and duration limits apply as elsewhere in Moderation. Applying a
restriction leaves the case active so staff can finish reviewing it. Selecting a
closure outcome records a decision; it does not itself send a warning, create a
restriction, or revoke one. Linked restrictions can be revoked separately with
the required permission and reason, including after a case closes. Reopening a
case also leaves its restrictions in place. Check enforcement coverage after
applying or revoking a restriction.
Staff notes are explicitly labeled as notes. Selecting archived chat when opening
a case, or attaching a match ID and exact message within an existing case, verifies
the target GUID and original message against the recorded match and saves an
independent snapshot, including the original timing context. Unknown or estimated
timestamps remain such; the snapshot does not turn them into exact observations.
Unarchived or already deleted chat cannot be attached as verified evidence.
Case decisions, edits, and restrictions check the current revision; refresh before
retrying a decision if another staff member has changed the case. Evidence,
restrictions and append-only moderation events survive source-match cleanup and
server deletion. They currently have no automatic retention cleanup.
Authentication audit cleanup does not remove moderation history. Correct decisions
by reopening, adding notes, or revoking restrictions; there is no history-erasing
delete endpoint.
Leaderboard disqualification, bank balance changes, automatic escalation and a
public report/appeal portal are separate features. This workflow supports staff