Aller au contenu principal
Petanque Life
← Retour à toutes les fonctionnalités
16

Platform Operations & Cross-Cutting Concerns

61 fonctionnalités · 6 sous-systèmes

Cross-cutting capabilities that affect the entire platform: offline support, print integration, localization beyond language, and operational resilience. These are critical for real-world adoption by federations operating in varied conditions.

Offline & Resilience

F16.01
Planifié

Essential for outdoor venues, rural areas, and international competitions with unreliable connectivity.

ID Status Fonctionnalités
F16.01.01 Planifié Offline tournament management (draw, score entry, standings — sync when online)
F16.01.02 Planifié Offline license verification (cached license data on device)
F16.01.03 Planifié Conflict-free data sync (CRDT or last-write-wins with conflict UI)
F16.01.04 Planifié Offline check-in at events (QR code scan against cached participant list)
F16.01.05 Planifié Background sync with retry and queue management
F16.01.06 Planifié Sync status indicator (what's pending, what's synced)
F16.01.07 Planifié Graceful degradation (features that work offline vs. require connectivity)
F16.01.08 Planifié Manual fallback procedures (paper score sheets that can be digitized later)

Print & Paper Integration

F16.02
Planifié

Many venues and officials still rely on paper. The system must bridge digital and paper workflows.

ID Status Fonctionnalités
F16.02.01 Planifié Printable draw sheets (formatted for posting at venue)
F16.02.02 Planifié Printable bracket posters (knockout/elimination tournaments)
F16.02.03 Planifié Printable score sheets (per match, for manual scoring)
F16.02.04 Planifié Printable court maps (venue layout with court numbers)
F16.02.05 Planifié QR codes on printed documents linking to digital records
F16.02.06 Planifié OCR/photo scan of paper score sheets for digital entry
F16.02.07 Planifié Printable license cards and certificates
F16.02.08 Planifié Printable competition regulations and rules summary
F16.02.09 Planifié PDF report generation (results, rankings, financial reports)

Localization & Federation Customization

F16.03
Plateforme+

Each national federation has different rules, categories, fee structures, and administrative traditions.

ID Status Fonctionnalités
F16.03.01 Planifié Configurable competition class registry — each tenant defines its own age/gender classes with: code, name, type (age/gender/open), min/max age, gender filter, ranking eligibility. Examples: Sweden (M/YJ/J/Ö/D/V55/V65), France (Poussin/Benjamin/Minime/Cadet/Junior/Sénior/Vétéran), Spain (Benjamín→Veterano+Sub-23).
F16.03.02 Planifié Configurable game format registry — each tenant defines: code, name, players per team, boules per player, mixed gender required. Standard formats (s/d/t/Mxd/Mxt) pre-seeded, tenants can add variants.
F16.03.03 Planifié Configurable competition level registry — each tenant defines its levels with: code, name, who can sanction, ranking eligibility, ranking coefficient, required referee grade, venue requirements, sanction deadline, quota. Not hardcoded.
F16.03.04 Planifié Configurable fee structure with OrgNode-level components — license fee can be split across multiple OrgNode levels (federation + region + district + insurance). Each level sets its own component. Supports regional price variation.
F16.03.05 Planifié Configurable license type registry — each tenant defines its license types with: code, name, competition eligibility, insurance inclusion, age limits, duration (annual/time-limited), medical certificate requirement, renewability.
F16.03.06 Planifié Configurable transfer rules — per tenant: transfer window dates, max transfers per season, required approvals (player/old club/new club/federation/district), cross-region extra approval, outstanding debt blocking, quarantine during league.
F16.03.07 Planifié Configurable ranking algorithm — per tenant: point scale per level × placement × participant count, validity period (1/2/3 years), weighting across years (Germany: 3×/2×/1×), max competitions counted, separate per class/format/gender.
F16.03.08 Planifié Configurable OrgNode hierarchy — per tenant: number of levels (0-3+), type names per level, capabilities per level (can_sanction, can_set_license_price, has_discipline_body, can_issue_licenses).
F16.03.09 Planifié Configurable umpire grade registry — per tenant: grade names, count, progression path, playing-umpire allowed per level.
F16.03.10 Planifié Configurable discipline rules — per tenant: penalty amounts, suspension rules, who can decide (only federation vs also district).
F16.03.11 Planifié Configurable medical requirements — per tenant: medical certificate required (yes/no), at first license only, renewal cycle, attestation sur l'honneur, health certificate for international play.
F16.03.12 Plateforme+ Multi-language UI (43+ languages — all FIPJP member nations). Implemented (PL-1701): i18n framework with 4 launch languages (en/fr/es/sv), language picker, per-tenant default language, translation management API, completeness reporting. See specs/shared/i18n.md.
F16.03.13 Planifié Multi-language content management (rules, news, documents)
F16.03.14 Planifié Locale-aware formatting (dates, numbers, currency)
F16.03.15 Planifié Right-to-left language support. Implemented (PL-1701): RTL detection and layout mirroring for Arabic, Hebrew, Persian, Urdu via I18nManager (React Native) and dir="rtl" (web).
F16.03.16 Plateforme+ Tenant-level branding (logo, colors, terminology per federation)
F16.03.17 Planifié Federation-specific terminology mapping — each tenant maps generic terms to local equivalents (e.g., "district"→"distrikt"/"Landesverband"/"ligue"/"federación autonómica", "competition class"→"spelklass"/"Spielklasse"/"catégorie", "sanction"→"sanktion"/"Genehmigung"/"homologation")
F16.03.18 Planifié Game variant support — Jeu Provençal as separate game variant alongside Pétanque and Sport-Boules. Each variant has its own rules, court dimensions, and competition classes. Configurable per tenant.
F16.03.19 Planifié Variable OrgNode depth per branch within tenant — some nations have different hierarchy depth in different regions (Spain: Canary Islands have 3 levels autonomía→insular→club while mainland has 2). System must support non-uniform depth within a single tenant.
F16.03.20 Planifié Delegated admin and CMS per OrgNode level — autonomous sub-federations (Spain) need their own branded admin portal view and public CMS website within the parent tenant. Each OrgNode with has_own_admin: true gets a scoped admin dashboard and a separate CMS site.

Data Visibility & Public Access

F16.04
Plateforme+

Controls what data is publicly visible, visible within a nation, or restricted.

ID Status Fonctionnalités
F16.04.01 Plateforme Public user role (unauthenticated access to public data)
F16.04.02 Plateforme+ Per-resource public field configuration
F16.04.03 Planifié Global public data: world rankings, calendar, federation directory, rules
F16.04.04 Planifié National public data: national rankings, results, club directory
F16.04.05 Planifié Player privacy settings (what's visible on public profile)
F16.04.06 Plateforme Capability-based field visibility (sensitive fields hidden by role)
F16.04.07 Planifié Public API for rankings, results, calendar (open data)
F16.04.08 Planifié SEO-friendly public pages (for discoverability)

Event Day Contingency

F16.05
Planifié

Handling real-world disruptions during competitions.

ID Status Fonctionnalités
F16.05.01 Livré Weather-triggered tournament pause/cancellation workflow
F16.05.02 Livré Participant no-show management with automatic draw adjustment
F16.05.03 Livré Court unavailability handling (reassignment, schedule recalculation)
F16.05.04 Livré Partial results handling (some rounds completed, tournament cancelled)
F16.05.05 Livré Refund/credit processing for cancelled events
F16.05.06 Livré Tournament continuation from saved state (resume next day)
F16.05.07 Livré Emergency communication to all participants

Federation Reporting & Compliance

F16.06
Plateforme+

**Status:** Implemented (PL-1706)

ID Status Fonctionnalités
F16.06.01 Livré Mandatory report templates per federation level — ReportTemplate with configurable sections, deadlines, frequency
F16.06.02 Livré Automated report generation from system data — GeneratedReport with typed KPI sections (membership, competitions, financial, umpires, sponsors)
F16.06.03 Livré Report submission deadline tracking and reminders — ReportDeadline with reminder/escalation workflow
F16.06.04 Livré Upward reporting (club > nation > continent > FIPJP) — Aggregation endpoint combines child reports into parent
F16.06.05 Livré Government/sports council report generation — GovernmentReportSection with Riksidrottsförbundet-compatible fields
F16.06.06 Livré Sponsor reporting (participation data, exposure metrics) — SponsorSection with impressions, clicks, value
F16.06.07 Livré Audit-ready data with full trail — is_audit_ready flag on reports, revision tracking on all documents
F16.06.08 Livré Compliance checklist automation (tournament had jury, insurance, etc.) — ComplianceChecklist with auto-scoring and action items
F16.06.09 Livré Data breach notification workflow (GDPR Article 33/34) — DataBreachNotification with 72h tracking and full timeline