{
    "schema": "lottoexpert.research.methodology.v1",
    "game": {
        "game_id": "801",
        "label": "EuroMillions",
        "classification": "regular",
        "ordered": false,
        "replacement": false,
        "main_min": 1,
        "main_max": 50,
        "main_count": 5,
        "bonus_min": 1,
        "bonus_max": 12,
        "bonus_count": 2,
        "linked_bonus_game_id": null,
        "leading_zeros": false,
        "jurisdiction": "Europe",
        "jurisdiction_code": "UK",
        "group_order": 40,
        "group_label": "Europe - Multi-Country Lotteries",
        "rule_hash": "0c58e62a88ab65a08f914a7528aceb52118ea9da7a842f3e72235a722ece206c",
        "user_selectable": true,
        "format_label": "5 from 1-50 + 2 extra from 1-12",
        "rule_contract_hash": "e87ce1fdf7d022b29c25e06526271c610f551f6ea09777e26717fdc719a8c8b4"
    },
    "methodology": {
        "canonical_game_id": "801",
        "authoritative_configuration": "lottery_skip_config.json",
        "official_result_contract": "Configured table, canonical game_id, configured draw date, and configured result fields.",
        "main_and_bonus_separation": true,
        "main_pair_counting": "Every unordered pair of main values is counted at most once per accepted drawing. Extra and bonus values are excluded.",
        "source_identity": "The configured table and canonical game_id are authoritative. Every structurally valid source row is retained by its database row ID, including separate rows that share a calendar date.",
        "deduplication": "Only repeated input with the same stable source-row identity is treated as a duplicate. If an input without a stable source identity contains two different results for one identity, both are left out and counted.",
        "rule_era_policy": "Structural compatibility is not treated as proof of a historical effective date.",
        "member_data_used": false
    },
    "data_quality": {
        "input_rows": 1054,
        "accepted_draws": 1054,
        "duplicate_rows_removed": 0,
        "conflicting_rows_held": 0,
        "conflicting_draws_excluded": 0,
        "additional_source_rows_on_same_date": 0,
        "structurally_invalid_rows": 0,
        "rule_era_exclusions": 0,
        "scheduled_dates_without_accepted_result": null,
        "schedule_gap_status": "Not checked yet because the past rule dates and drawing schedule still need to be confirmed."
    },
    "rule_eras": {
        "status": "verification_required",
        "current_configuration_known": true,
        "historical_effective_date_verified": false,
        "explanation": "We checked that each drawing fits the lottery’s current number ranges and number count. That does not prove the lottery used those same rules for every older drawing."
    },
    "generated_at_utc": "2026-11-01T21:42:05+00:00"
}
