# Revision 03 — Approved MJ Admin Expansion Points

This revision adds schema and implementation guardrails needed by the approved Mah Jongg Tournament workspace. It does **not** require the Foundation milestone to build the complete MJ Admin UI now.

## Approved workflow

1. Superadmin assigns the published `Mah Jongg Tournament` workspace profile and `MJ Tournament Reports v1` report collection to the competition.
2. The customer supplies competitors plus each player's Round 1 table and N/E/S/W position.
3. B360 validates readiness and the MJ admin clicks **Calculate assignments**.
4. B360 deterministically generates every configured round and records a version plus validation results.
5. The MJ admin reviews and clicks **Lock assignments**. This is the only manual preparation approval.
6. The MJ admin clicks **Generate score sheets**. B360 records the PDF version, checksum and exact assignment version.
7. OMR accepts clean sheets automatically. Ambiguous, invalid or duplicate sheets remain outside authoritative scores until resolved.
8. Rounds may be scanned in any order or mixed in a batch. There is no round open/close workflow.
9. An authorized MJ Organization Admin finalizes and locks the competition results.

## Preparation state derivation

- Competitors complete: all active competitors have unique IDs and valid Round 1 table/seat assignments.
- Assignments complete: one validated assignment exists for every active competitor and configured round.
- Assignments locked: an authorized admin explicitly locked the current assignment version.
- Score sheets generated: a successful generation references the current locked assignment version.

Do not implement free-form checklist management or manual `mark complete` controls.

## MJ score-sheet order

For the current 12-round preset, output six 2-up pages per player, ordered by Player ID. Pair R1/R7, R2/R8, through R6/R12. After printing and cutting the full stack, pile one contains R1–R6 and pile two contains R7–R12, each grouped by player in handout order. The implementation must derive the pairing from the configured round count/preset and must not hard-code the UI to 12 columns.

## Reports

Reports visible to the customer come only from the versioned report collection assigned by Superadmin. Initial `MJ Tournament Reports v1` contains roster, assignments by round, assignments by player, missing scores, OMR reconciliation, preliminary standings, final results, and corrections/audit.
