Sport Integrity
At a glance
Sport Integrity protects the credibility of petanque competition by continuously monitoring results for unusual patterns, taking confidential tip-offs through an anonymous channel, verifying equipment homologation at events, and managing investigations with the discipline and audit rigour expected by international integrity bodies. Every flag, report and sanction is captured in a tamper-evident trail so decisions can be defended at any future appeal or regulatory review.
How it works
Result data flowing in from competitions is continuously scanned for statistical anomalies: improbable score sequences, late surges that match betting markets, repeated head-to-head outcomes between the same pairings, or sudden form reversals at decisive moments. Suspicious patterns are flagged for review by a small group of integrity officers and never auto-published.
In parallel, an anonymous reporting channel lets players, officials, families and sponsors raise concerns about match-fixing, undue influence or corrupt approaches. Reports are encrypted, given a reference token, and routed only to the integrity team. The reporter can return with the token to add information or read updates without ever revealing identity.
When a flag or report becomes a case, the investigation case management module takes over. It captures the case timeline, evidence files, statements from involved parties, interview notes and decisions, with strict access control: only assigned investigators see the file. Where regulators or betting integrity bodies are involved, the platform supports structured information sharing under a clear legal basis.
Equipment integrity is the second pillar. Officials at events can scan boules and target jacks with a QR check that verifies homologation against the manufacturer registry. Non-compliant or tampered equipment can be confiscated; the confiscation is logged with photos, owner, lane and umpire signature, and the equipment follows a chain-of-custody until destroyed or returned. Every integrity action — flag, report, decision, sanction — is written to a tamper-evident audit trail.
Key capabilities
- Statistical monitoring of match data for unusual result and pattern anomalies
- Anonymous suspicious-activity reporting with secure reference tokens
- Investigation case management with strict access control and timeline tracking
- Equipment homologation verification via QR scan at events
- Equipment confiscation tracking with chain-of-custody
- Information-sharing channel with betting integrity bodies where applicable
- Tamper-evident audit trail on all integrity actions
In practice
An integrity analyst opens the morning queue and sees three flagged matches from a national championship: the same triplet has lost five qualifying rounds by exactly thirteen-to-nothing. She opens an investigation, marks it confidential, and pulls in a colleague. They review video, interview the umpires, and request statements through the platform — the players see only that an enquiry is open, not who reported what.
Meanwhile a tip arrives via the anonymous channel describing a betting approach in the same regional circuit. The case is merged. Two weeks later a sanction is recorded, the rationale is documented, the affected results are voided in the rankings module, and the audit trail will hold up at any future appeal.
Features in this subsystem
7| ID | Status | Features |
|---|---|---|
| F17.03.01 | Shipped | Match integrity monitoring (unusual result patterns) ✅ c948eac0.m-5 — regelstyrd, DETERMINISTISK mönsterdetektering över färdigspelade resultat: den slutna katalogen ranking_deviation|dead_rubber|repeated_deviation som RENA funktioner med deklarerade konstanter (rankingdifferensen 300 ELO, körlängden 3, historikfönstret 365 d), förbundets tre kontroller (flag_threshold_bps default 6500 bps, ranking_deviation_mode, dead_rubber_enabled) bakom integrity:configure, timsvepet integrity_monitoring_scan_tick som bokför VARJE utvärderad match (också den rena) och är flaggornas ENDA producent, flaggkön FLG-<ÅÅÅÅ>-<NNNN> med basis som RÄKNADE indata och de tre verben begin-assessment|dismiss|escalate, samt eskaleringen som föder ett riktigt INT--ärende med källan automatic_flag. Ingen severity, ingen sannolikhetsmodell, ingenting publikt (legacy: PL-F1703a) |
| F17.03.02 | Shipped | Suspicious activity reporting (anonymous) ✅ c948eac0.m-1 — publik tipskanal (POST /v1/public/integrity/tips) med referenstoken, honeypot, IP-tak och tokenuppföljning; avgränsning: integritetskategorier, inte D-SAFE:s trygghetskanal (legacy: PL-F1703a) |
| F17.03.03 | Shipped | Investigation case management ✅ c948eac0.m-1 — INT-<ÅÅÅÅ>-<NNNN>, femstegs-FSM och överlämning till D-DISCIPLINE:s case-spine via den reserverade intagsrollen integrity_officer (legacy: PL-F1703a) |
| F17.03.04 | Shipped | Equipment verification at events (boule homologation check via QR) ✅ c948eac0.m-2 — domarens kontroll på tävling (POST /v1/equipment-homologation/inspections, mandatet homologation:inspect) med serienummer ELLER QR-token som handtag, RÄKNAT utfall (approved|expired|revoked|superseded|level_not_covered|unknown|ambiguous|not_published), kontrollpunkter ur förbundets kravprofil och flaggning till m-1:s tipskö (legacy: PL-F1703a) |
| F17.03.05 | Shipped | Equipment confiscation tracking ✅ c948eac0.m-4 — beslaget som en spårbar sak: BSL-<ÅÅÅÅ>-<NNNN> ur en radlåst serie, fött ur den UNDERKÄNDA kontrollen (ett approved-utfall kan aldrig beslagtas; ett beslag per kontroll är en DB-invariant), FSM:en confiscated → stored → returned|forfeited utan ångring, förvaringskedjan som append-only RADER, ärendekopplingen som EN sanning, beslags-/återlämningskvittot som en A4-handling utan QR, de sju additiva kedjeorden och svepet equipment_confiscation_custody_tick (30/90 dygn, största fönstret bär beskedet) (legacy: PL-F1703b) |
| F17.03.06 | Shipped | Integration with betting integrity bodies (where applicable) ✅ c948eac0.m-6 — förbundets EGEN organkatalog (alert_exchange|reporting_obligation|case_escalation, tenant-data och aldrig hårdkod), det SIGNERADE larmintaget (POST /v1/public/integrity/betting-alerts/{intake_ref} — signaturen ÄR auth, HMAC-SHA256 över "{timestamp}.{råa body}", hemligheten FÖRSEGLAD och visad exakt en gång med 24 h roterande överlappsfönster, fyra BYTE-IDENTISKA opaka 404 och idempotensen som en DB-invariant), larmkön LRM-<ÅÅÅÅ>-<NNNN> med m-5:s tre verb och den LOGGADE payload-läsningen, eskaleringen till ett riktigt INT--ärende med källan external_body, rapporteringspliktens materialiserade perioder med en MÄTT rapport som FRYSES med sin content_hash (JSON/CSV) och deklarerar sina egna luckor, incidentrapporten ÅÅÅÅ-INC-NNNN för incident_only, samt överlämningen av ett AVGJORT ärende som en BOKFÖRD handling med ett fryst paket och sin kvittens. Avgränsning: huset SÄNDER ingenting till ett organ (D-14 — :report bokför att en människa skickat filen; utgående avisering är ett bokfört ⊘ utan ägare), och ingenting av det här är publikt utom intaget, som är uteslutet MED SKÄL ur partnerprojektionen (legacy: PL-F1703b) |
| F17.03.07 | Shipped | Audit trail on all integrity actions ✅ c948eac0.m-1 — hashkedjad, append-only integritetslogg per förbund med GET /v1/integrity/audit/verify och det nattliga svepet integrity_audit_chain_verify (legacy: PL-F1703b) |
Stakeholders who need this subsystem
Surfaces in 1 stakeholder analyses