# Warning workflow

## Warning statuses

### Warning created

When a warning gets created punishment actions of the warning get executed.\
At this point the warning is in a state where it is counted during [threshold calculation](/features/warnings/thresholds.md#score-calculation-example).\
A player can [appeal](/features/warnings/appealing.md) the warning, a staff member can manually expire the warning or even delete the warning

### Warning [appealed](/features/warnings/appealing.md)

When a warning gets appealed a staff member has the ability to approve or reject the appeal.\
Once an [appeal is rejected](/features/warnings/appealing.md#staff-manage-appeal) the player can no longer appeal it. When an appeal is approved, [rollback actions](/features/warnings/actions-punishments.md) are triggered and the warning is marked appeal approved. Once an [appeal is approved](/features/warnings/appealing.md#staff-manage-appeal) it is like the warning never existed. It does not get counted when doing [threshold calculations](/features/warnings/thresholds.md#score-calculation-example) and won't show up in the [infractions GUI](/features/infractions.md). However the warning does not get deleted, this makes sure we can keep a history of the warning and appeal reasons.

### Warning expired

Warnings can expire after a configured amount of time. Or manually by a staff member. When a warning is expired the punishments do **not** get [rollbacked](/features/warnings/actions-punishments.md). The only real reason for warning expiration is to make sure this warning no longer gets counted when doing [threshold calculations](/features/warnings/thresholds.md#score-calculation-example). It's a way to ensure warnings won't be held against the player forever.

Notice that a player can still appeal this warning. The reason a player might want to do this is if feels the warning was incorrectly given and although it's expired he still received the [punishment](/features/warnings/actions-punishments.md). So by appealing he asks to rollback his punishment.

### Warning deleted

A staff member can choose to delete a warning completely. This action can always be taken no matter what status the warning is in. When a warning gets deleted, [rollback actions](/features/warnings/actions-punishments.md) are triggered and the warning is removed from the database. All history of the warning is gone.\
In general you should only delete a warning if there was actually a mistake made. In most cases you can use the appeal system to [rollback warnings](/features/warnings/actions-punishments.md) in a clean way.

![Warnings workflow](/files/-MUGZrqJx43Ml5id4iGe)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wiki.staffplusplus.org/features/warnings/warning-workflow.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
