Match Management
At a glance
Match management captures every detail of a played match: status, score by mène, optional throw-level analytics, timers, photo proof, and dispute resolution. Score entry is open to officials, scorers, and team delegates with confirmation by both teams or the umpire, and incident reports flow into the jury workflow.
How it works
Each match in the draw is a state machine: scheduled → in progress → completed, with side states for suspended and forfeit. Score entry happens through one of three roles — official scorekeeper, designated scorer, or a team delegate — chosen per competition. Real-time score tracking pushes updates to the live feed (SSE) the moment a mène ends.
The mène is the basic unit: which team scored, how many points, and optional cochonnet position. A configurable per-tenant/level match timer enforces total match time (Spain: 60 min, CEP: 75 min) and per-throw time (Spain: 30 seconds), each with distinct enforcement UI — the total clock counts down in the header while the throw timer flashes near the active player. When both teams reach the points-to-win, the result is confirmed by both captains or by the umpire on the spot.
If a team disputes the result, the score dispute resolution workflow flips the match into a held state, surfaces the conflicting entries side by side, and routes the matter to the appointed jury (see F05). Court change management lets the umpire move a match mid-play (broken court, weather) while preserving the score history. Match comments and incident reports record protests, fouls, behavioural issues, and weather interruptions.
Photo and video attachments support both routine documentation and disputed measurements — a referee can upload a phone shot of contested boules and tag it to the mène. Optional throw-level tracking lifts analytics another notch: every throw is classified as a point (portée/raspaille/donnée) or a tir (carreau/palet/raté), recorded as successful or missed, with distance from the cochonnet captured for the precision stats. The match timeline view replays the mène-by-mène progression, while forfeit and withdrawal handling propagate the result through standings, ranking points, and bracket advancement.
Key capabilities
- Match state machine: scheduled, in progress, completed, suspended, forfeit
- Score entry by official, scorer, or team delegate with confirmation by both sides
- Configurable match timer and per-throw timer with distinct enforcement UI
- Mène-level tracking (team, points, cochonnet position) plus optional throw-level analytics
- Throw classification: point (portée/raspaille/donnée), tir (carreau/palet/raté), success/miss/distance
- Dispute workflow, court change, incident reports, photo/video attachments per mène
- Match timeline replay and forfeit propagation into standings and rankings
In practice
On court 12 a doublette match enters the seventh mène at 11–10. The scorekeeper taps the host team's score widget on her tablet and adds 2 points; live viewers refresh in under a second. The throw timer flashes amber at 25 seconds when a shooter delays his tir.
At match point the visiting captain disputes the cochonnet measurement; the umpire snaps a photo, attaches it to the mène, and pushes the match into dispute. The jury reviews the photo and the throw record on a separate device, confirms the host team's 13–10 win, and the result locks. Bracket advancement updates within ten seconds.
Features in this subsystem
20| ID | Status | Features |
|---|---|---|
| F04.05.01 | Shipped | Match score entry (by official, scorer, or team delegate) — PL-F0405a ✅ PL-F0405a |
| F04.05.02 | Shipped | Real-time score tracking — PL-F0405a ✅ PL-F0405a |
| F04.05.03 | Shipped | Match status tracking (scheduled, in progress, completed, suspended, forfeit) — PL-F0405a ✅ PL-F0405a |
| F04.05.04 | Shipped | Match timer — configurable: total match time limit (Spain: 60 min, CEP: 75 min) AND per-throw time limit (Spain: 30 seconds). Both optional and configurable per tenant/competition level. Distinct enforcement UI for each. — PL-F0405a ✅ PL-F0405a |
| F04.05.05 | Shipped | Match result confirmation (both teams or umpire) — PL-F0405a ✅ PL-F0405a |
| F04.05.06 | Shipped | Score dispute resolution workflow — PL-F0405a ✅ PL-F0405a |
| F04.05.07 | Shipped | Forfeit and withdrawal handling — PL-F0405b ✅ PL-F0405b |
| F04.05.08 | Shipped | Court change management — PL-F0405b ✅ PL-F0405b |
| F04.05.09 | Shipped | Match comments and incident reporting — PL-F0405b ✅ PL-F0405b |
| F04.05.10 | Shipped | Photo/video attachment to match records — PL-F0405b ✅ PL-F0405b |
| F04.05.11 | Shipped | Mène (end/round) tracking — score progression per mène within a match — PL-F0405b ✅ PL-F0405b |
| F04.05.12 | Shipped | Mène-level detail: which team scored, how many points, cochonnet position — PL-F0405b ✅ PL-F0405b |
| F04.05.13 | Shipped | Individual throw tracking (optional, for detailed analytics) — PL-F0405c ✅ PL-F0405c |
| F04.05.14 | Shipped | Throw type classification: point (portée/raspaille/donnée), tir (carreau/palet/raté) — PL-F0405c ✅ PL-F0405c |
| F04.05.15 | Shipped | Throw outcome recording: successful/missed, distance from cochonnet — PL-F0405c ✅ PL-F0405c |
| F04.05.16 | Shipped | Photo proof upload per mène (disputed measurements) — PL-F0405c ✅ PL-F0405c |
| F04.05.17 | Shipped | Match timeline view (mène-by-mène score progression) — PL-F0405c ✅ PL-F0405c |
| F04.05.18 | Shipped | Court Ops Console — live-board för marshal/jury president med color-coded threshold-flaggor och SSE-stream per event — PL-T223 ✅ PL-T223 |
| F04.05.19 | Shipped | Threshold alerts — warn/overrun/escalate (75/100/125 % default), tenant/event-config, audit-trail i CourtOpsAlert med ack-flow — PL-T223 ✅ PL-T223 |
| F04.05.20 | Shipped | Marshal broadcast — audience ∈ {all_marshals, all_teams, court_neighbors, next_up}, multi-lang body, F09.02-fan-out — PL-T223 ✅ PL-T223 |
Related subsystems
Stakeholders who need this subsystem
Surfaces in 1 stakeholder analyses