Ir al contenido principal
Petanque Life

Disciplinary System

F05.05 32 funcionalidades Planificado

En resumen

The Disciplinary System is the federation's end-to-end judicial pipeline for misconduct, cheating, doping, violence, and abuse cases. It runs incident reporting through classification, investigation, hearing, decision, sanction enforcement, and multi-tier appeal, with a full immutable audit trail, configurable alternative dispute resolution paths, and cross-federation sanction sharing so that suspended individuals cannot circumvent active bans by competing elsewhere.

Cómo funciona

Any authorised actor (umpire, official, player, or registered observer) may file an incident report directly from the competition app or web console. The report is classified at intake into one of the established categories: misconduct, cheating, doping, violence, or abuse. Classification routes the case to the correct commission and triggers the appropriate procedural template (deadlines, required evidence, mandatory hearing, anonymisation rules).

A disciplinary case progresses through clearly defined states: open, under investigation, hearing scheduled, decided, closed. During investigation, the assigned commission attaches evidence (photographs, video clips, witness statements, umpire reports) and may request additional submissions from involved parties. Hearings are scheduled with all relevant parties summoned through the platform; the hearing record captures attendees, the questions raised, and the testimony heard. The commission issues a sanction drawn from the catalogue: warning, fine, suspension for a defined period, ban, or competition-points deduction. Some federations support an alternative dispute resolution path, for instance Spain's arbitraje de equidad with a three-arbiter panel, and the configurable escalation rules determine when ADR replaces full proceedings.

Once a sanction is recorded, enforcement is automatic. Active suspensions block the individual from being entered into any competition during the suspension period; the entry pipeline rejects them and notifies the organiser. Notification fans out to all relevant parties: the sanctioned individual, their club, the home federation, and (for cross-tenant cases) any federations where the person is licensed. The sanction register is searchable by federation level, with expiry dates triggering automatic rehabilitation when the suspension lapses.

Appeals escalate to higher federation levels following the configured chain. Every action, document, and state transition is captured in an immutable audit trail so that the case file is forensically complete should it eventually reach the Court of Arbitration for Sport.

Capacidades clave

  • Multi-channel incident reporting from umpires, officials, players, and observers with classification-driven routing
  • Full case lifecycle (open, investigate, hearing, decide, close) with hearing scheduling, summons, and testimony capture
  • Sanction catalogue covering warnings, fines, suspensions, bans, and point deductions
  • Automatic enforcement of active suspensions across the entry pipeline
  • Cross-federation sanction sharing preventing forum shopping during a ban
  • Configurable alternative dispute resolution paths (ADR/arbitration)
  • Immutable audit trail across all disciplinary actions and appeal escalation

En la práctica

An umpire files a violence-classified incident report at a regional event. The case auto-routes to the regional disciplinary commission, which gathers two witness statements and a video clip from the official broadcast. A hearing is convened within the procedural deadline; the player attends, the commission deliberates, and a six-month suspension is issued from the sanction catalogue.

The notification fans out to the player, club, and federation. Two weeks later the player attempts to enter a competition in a neighbouring federation; the cross-tenant sanction registry blocks the entry and notifies the receiving organiser. The player files an appeal, which escalates one tier under the configured chain.

Funcionalidades de este subsistema

32
ID Status Funcionalidades
F05.05.01 Entregado Incident reporting (by umpire, official, player, or observer) ✅ PL-F0505a
F05.05.02 Entregado Incident classification (misconduct, cheating, doping, violence, abuse) ✅ PL-F0505a
F05.05.03 Entregado Disciplinary case management (open > investigate > hearing > decision) ✅ PL-F0505a
F05.05.04 Entregado Hearing scheduling and management ✅ PL-F0505a
F05.05.05 Entregado Evidence attachment (photos, videos, witness statements) ✅ PL-F0505a
F05.05.06 Entregado Sanction types (warning, fine, suspension, ban, point deduction) ✅ PL-F0505b
F05.05.07 Entregado Sanction enforcement (automatic competition ban during suspension) ✅ PL-F0505b
F05.05.08 Entregado Appeal process (to higher federation level) ✅ PL-F0505b
F05.05.09 Entregado Sanction notification to all relevant parties ✅ PL-F0505b
F05.05.10 Entregado Sanction register (searchable by federation level) ✅ PL-F0505b
F05.05.11 Entregado Sanction expiry and rehabilitation tracking ✅ PL-F0505c
F05.05.12 Entregado Cross-federation sanction sharing (suspended player cannot play elsewhere) ✅ PL-F0505c
F05.05.13 Entregado Full audit trail on all disciplinary actions ✅ PL-F0505c
F05.05.14 Entregado Alternative dispute resolution — configurable per tenant: formal arbitration/mediation as alternative to disciplinary proceedings (Spain: arbitraje de equidad with 3 arbiters). Configurable escalation path. ✅ PL-F0505c
F05.05.15 Entregado Discipline case-spine — full state-machine: draft → submitted → triage → evidence_collection → hearing_scheduled → hearing_in_progress → deliberation → decision_issued → appeal_window_open → appeal_window_closed/under_appeal → appeal_decision_issued → archived (+ withdrawn/dismissed/escalated side-paths). ✅ PL-T213
F05.05.16 Entregado Role-template-based intake — five role-driven intake forms (club_referee, court_marshal, event_marshal, jury_president, public) with required-field validation per role. ✅ PL-T213
F05.05.17 Entregado Severity auto-classification — derives severity_hint from offence-code → severity rank table at submit time; manual override requires rationale. ✅ PL-T213
F05.05.18 Entregado Tenant offence vocabulary — per-tenant offence taxonomy (codes, names, severity defaults) layered on canonical FIPJP offences; configurable per federation. ✅ PL-T213
F05.05.19 Entregado Tamper-evident evidence locker — SHA-256 hash chain per case (chain_hash = sha256(prev | content_hash || iso(submitted_at) || submitted_by)); periodic verifier flags integrity_alert. | ✅ PL-T213
F05.05.20 Entregado WORM evidence blob storage — Azure Blob immutability policy via EvidenceBlobStore protocol; locked retention (default 10 years), MIME-type allow-list, EXIF stripping for photos. ✅ PL-T213
F05.05.21 Entregado Evidence supersede / withdraw / redact — versioned evidence with chain-preserving supersede, withdrawal marker, and GDPR-redaction overlay (original blob untouched). ✅ PL-T213
F05.05.22 Entregado Sanction catalog with recommended-range engine — propose-sanction validates against precedent-derived [min,max] window; deviation requires rationale. ✅ PL-T213
F05.05.23 Entregado Panel decision with optimistic locking — confirm_panel_decision requires expected_deliberation_version; majority-vote enforced; auto-advances case to appeal_window_open. ✅ PL-T213
F05.05.24 Entregado Sanction lifecycle ticks — appeal_window_close_tick (5 min), sanction_expiry_tick (15 min), automatic pending_appeal_window → active → expired. ✅ PL-T213
F05.05.25 Entregado Formal appeals workflow — file → admissibility → hearing → decided (overturned/modified/upheld/dismissed); cascades sanction status; opens next-tier escalation window if upheld/modified. ✅ PL-T213
F05.05.26 Entregado Cross-tenant suspension registry — published to FIPJP tenant, signed payload (HMAC-SHA512 stub → ES512 in prod), replicated to subscriber LocalSuspensionCache for O(1) license checks. ✅ PL-T213
F05.05.27 Entregado Cross-tenant fan-out reconciler — every 4 h: retries pending fan-outs (max 8 attempts), expires entries past effective_until, ack tracking per tenant. ✅ PL-T213
F05.05.28 Entregado Precedent materializer — every 1 h: snapshots terminal cases into SanctionPrecedent registry (anonymised case-id hash) so search & recommended-range stay warm. ✅ PL-T213
F05.05.29 Entregado Public protocol publication — anonymised, locked Markdown ProtocolDocument; refuses safeguarding cases and minor subjects; corrections appended as immutable diffs (original markdown preserved). ✅ PL-T213
F05.05.30 Entregado GDPR legal-hold + retention sweep — cases default legal_hold=True; case_retention_sweep (24 h) flags expired non-held archived cases for purge. ✅ PL-T213
F05.05.31 Entregado Discipline audit dual-write — every action writes both DisciplinaryAuditEntry (domain-specific) and platform AuditLog. ✅ PL-T213
F05.05.32 Entregado Self-service player view — /me/discipline/cases lists own cases & sanctions; /me/discipline/sanctions/{id}/appeal files appeal within window. ✅ PL-T213