> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kralis.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Promotions

> Promotion rules, section behavior, and how to review school promotion history.

Promotions are a school-scoped academic operation that move students from one
class to the next for a target year.

## Capabilities

The promotion workflow supports:

* controlled year-end student movement
* immutable promotion history
* year and class filtering
* school-wide atomic execution

## Operational rules

* promotions should be run intentionally, not as a side effect of school edits
* the operation is all-or-nothing for a school
* promotion history is read-only through the normal client API
* exceptional cleanup belongs in the Django admin only

## Ordering

Promotion relies on the configured class hierarchy so students are processed in a
safe order.

## Sections during promotion

If a student's current section is tied to a different class than the promoted
class, that section cannot remain attached after the move.

Client workflows should make this outcome explicit so operators understand when a
section will become empty.

## Viewing history

Use the promotions page to:

* review promotion history
* filter by year
* filter by class
* paginate through results

This is the recommended place to run and verify school promotions.

Task page:

* [Run Promotion](run-promotion)

## Feature links

* [Run Promotion](run-promotion)
* [School Settings](https://kralis.app/school)
