{
  "date": "2026-10-01",
  "scope": "Repository evidence; not independent assurance",
  "capabilities": [
    {
      "name": "Player accounts & wallet",
      "category": "Core",
      "status": "Implemented",
      "description": "Registration, account history, cash and bonus balances, ledger reconciliation, withdrawal workflows and seamless-wallet integration.",
      "evidence": "WalletTest.php; SeamlessWalletTest.php; LedgerAuditCommandTest.php"
    },
    {
      "name": "Sportsbook",
      "category": "Sports",
      "status": "Implemented",
      "description": "Pre-match and in-play surfaces, multiple-bet structures, price re-offers, cash-out and correlation-adjusted same-game pricing. Official settlement and commercial feed rights remain deployment gates.",
      "evidence": "docs/marketing-spec/03-feature-sportsbook.md"
    },
    {
      "name": "Odds & trading",
      "category": "Sports",
      "status": "Implemented",
      "description": "Multi-provider adapters, stored bookmaker prices, configurable pricing strategies, exposure reporting and liability sweeps.",
      "evidence": "backend/app/Services/Odds/; backend/app/Services/Betting/"
    },
    {
      "name": "In-house games",
      "category": "Games",
      "status": "Implemented",
      "description": "30 game controllers, game rules, published return figures and seed-based round verification. Internal game-maths tests are evidence for independent testing, not a test-house approval.",
      "evidence": "AdvertisedRtpTest.php; GameEngineCertificationTest.php"
    },
    {
      "name": "Interrupted-round recovery",
      "category": "Games",
      "status": "Implemented",
      "description": "Resume or resolve funded rounds, with abandonment handling for supported game types.",
      "evidence": "backend/app/Console/Commands/ComplianceReadinessCommand.php"
    },
    {
      "name": "Content integrations",
      "category": "Games",
      "status": "Integration required",
      "description": "Seamless-wallet architecture supports a third-party content route. Supplier contracts, content rights, integration acceptance and applicable approvals are still required.",
      "evidence": "SeamlessWalletTest.php"
    },
    {
      "name": "Safer gambling",
      "category": "Controls",
      "status": "Implemented",
      "description": "Financial limits, cooling-off, reality checks, account exclusions and server-side game controls. Market-specific configuration must be reviewed before launch.",
      "evidence": "docs/RTS-MAP.md"
    },
    {
      "name": "AML workflows",
      "category": "Controls",
      "status": "Implemented",
      "description": "Monitoring rules, case handling, withdrawal restrictions and named decisions. The operator must own its policies, thresholds and regulatory responsibilities.",
      "evidence": "backend/app/Services/Compliance/Aml/"
    },
    {
      "name": "Identity & national exclusion",
      "category": "Controls",
      "status": "Integration required",
      "description": "Provider interfaces and drivers exist. Live identity verification and GAMSTOP configuration and acceptance remain outstanding.",
      "evidence": "backend/config/compliance.php; compliance:readiness"
    },
    {
      "name": "Gambling payments & location",
      "category": "Controls",
      "status": "Integration required",
      "description": "Payment and geolocation interfaces exist. Demo payments are simulated; real-money deployment needs contracted providers and verified configuration.",
      "evidence": "compliance:readiness"
    },
    {
      "name": "Multi-brand operations",
      "category": "Operations",
      "status": "Implemented",
      "description": "Tenant resolution, scoped player and brand data, configurable features, per-brand policy and platform administration. Sports odds and some trading exposure are deliberately shared.",
      "evidence": "TenantIsolationTest.php; TenantOwnershipTest.php"
    },
    {
      "name": "Operator back office",
      "category": "Operations",
      "status": "Implemented",
      "description": "Player management, withdrawals, games, promotions, audit, reporting and platform operations. Staff access is evaluated through a guided session.",
      "evidence": "AdminCapabilityHardeningTest.php; AdminWriteAuditCoverageTest.php"
    },
    {
      "name": "CRM & growth",
      "category": "Operations",
      "status": "Implemented",
      "description": "Segmentation, campaigns, promotions, affiliate workflows and loyalty features. Suppression and permissions must be evaluated with the operator configuration.",
      "evidence": "docs/marketing-spec/05-feature-crm.md"
    },
    {
      "name": "Reporting & exports",
      "category": "Operations",
      "status": "Implemented",
      "description": "Regulatory and management-information reporting, flexible breakdowns, bet search and CSV exports. Reports require operator review for the actual jurisdiction and regulatory submissions.",
      "evidence": "backend/app/Services/Reporting/"
    },
    {
      "name": "Affiliate commissioning",
      "category": "Operations",
      "status": "Implemented",
      "description": "Affiliate attribution and commission workflows, with NGR-based calculation described in the product evidence. Commercial rates and contractual settlement are operator-specific.",
      "evidence": "backend/app/Services/Affiliates/AffiliateService.php"
    },
    {
      "name": "Loyalty & gamification",
      "category": "Operations",
      "status": "Implemented",
      "description": "Loyalty and gamification services support retention mechanics and configurable player progression. Customer rules, disclosures and exclusions remain part of acceptance.",
      "evidence": "backend/app/Services/Loyalty/; backend/app/Services/Gamification/"
    },
    {
      "name": "Promotions & bonuses",
      "category": "Operations",
      "status": "Implemented",
      "description": "Data-driven promotion and bonus workflows alongside CRM segmentation. Terms, eligibility and wagering conditions require a defined operator configuration.",
      "evidence": "backend/app/Services/Promotions/"
    },
    {
      "name": "Partner integration keys",
      "category": "Delivery",
      "status": "Implemented",
      "description": "Brand-bound integration access, scopes, rate limiting, revocation and idempotency support for external clients. Review money-moving access and key ownership before deployment.",
      "evidence": "backend/app/Services/Partner/; docs/marketing-spec/09-feature-developer.md"
    },
    {
      "name": "Virtual racing",
      "category": "Games",
      "status": "Implemented",
      "description": "A virtual racing engine provides demonstration capability. It is distinct from a contracted live racing feed and remains within the applicable game testing scope.",
      "evidence": "backend/app/Services/Virtual/VirtualRacingEngine.php"
    },
    {
      "name": "Tournaments & jackpots",
      "category": "Games",
      "status": "Implemented",
      "description": "Tournament, pooled jackpot and shared-game workflows exist alongside the player wallet. Availability and approval depend on the customer launch scope.",
      "evidence": "docs/marketing-spec/04-feature-casino.md"
    },
    {
      "name": "AI-assisted segment proposals",
      "category": "Operations",
      "status": "Integration required",
      "description": "An optional assistant can draft segmentation proposals. A configured model service and validation are required; generated proposals do not replace operator review or control enforcement.",
      "evidence": "backend/app/Services/Ai/SegmentAssistant.php"
    },
    {
      "name": "Headless delivery",
      "category": "Delivery",
      "status": "Implemented",
      "description": "335 documented API operations, an OpenAPI specification, 43 front-end widgets, ten skin presets and four interface locales in the recorded inventory.",
      "evidence": "docs/openapi.json; sites/ledgerfield/stats.json"
    },
    {
      "name": "Native app codebases",
      "category": "Delivery",
      "status": "Implemented",
      "description": "Player, operator and sales app code against the same API. Build, signing, device acceptance and distribution status must be confirmed for each customer release.",
      "evidence": "mobile/README.md"
    },
    {
      "name": "Independent assurance",
      "category": "Controls",
      "status": "External approval required",
      "description": "Game/RNG testing, licensing decisions, an ISO 27001 programme and a SOC 2 examination are separate workstreams. No certificate or assurance report is claimed.",
      "evidence": "docs/RTS-MAP.md; ISO; AICPA"
    }
  ]
}