[
  {
    "id": "M01",
    "name": "Whole-day completion with any accepted mode",
    "numerator": "Evaluable planned person-days meeting all required destinations, windows, practical requirements and final destination, including accepted fallback",
    "denominator": "All evaluable planned person-days in the defined comparison condition",
    "missing": "Also report all planned person-days, missing outcomes and best/worst-case bounds; do not code missing as success.",
    "unit": "person-day",
    "boundary": "Planning definition and revisions frozen; service-only completion reported separately. Primary analysis counts one study/site/person_day_id at original plan_version=0; later versions are secondary and never add denominator rows.",
    "evaluable_exclusions": [
      "NO_PLANNED_TRAVEL_FIXED_BEFORE_DAY",
      "CONSENT_WITHDRAWN_BEFORE_OUTCOME_COLLECTION"
    ],
    "not_exclusions": [
      "service failure",
      "late meeting",
      "missed return",
      "declined service",
      "revised plan",
      "missing outcome"
    ],
    "revision_analysis": "Primary score stays against version 0; legitimate revision may fail the original-plan outcome without being attributed as a service-caused failure. Secondary revised-plan result and sensitivity using only changes documented before the affected leg; report revisions by arm.",
    "outcome_source_rule": "Freeze the same source availability and reconciliation hierarchy in every arm; if unavailable, label self-report and validate an independently recorded subsample only after approved prospective design.",
    "coder_and_blinding": "Named trained coder and separate discrepancy adjudicator must be appointed before data collection; record blinding to arm where feasible and disclose breaks.",
    "role": "Co-primary for H01; local freeze required"
  },
  {
    "id": "M02",
    "name": "Service-only whole-day completion",
    "numerator": "Evaluable planned person-days meeting M01 requirements entirely with the intended service",
    "denominator": "Same evaluable planned person-days as M01",
    "missing": "Same missingness accounting as M01.",
    "unit": "person-day",
    "boundary": "Fallback success is useful but does not count as service-only completion. Primary analysis counts one study/site/person_day_id at original plan_version=0; later versions are secondary and never add denominator rows.",
    "evaluable_exclusions": [
      "NO_PLANNED_TRAVEL_FIXED_BEFORE_DAY",
      "CONSENT_WITHDRAWN_BEFORE_OUTCOME_COLLECTION"
    ],
    "not_exclusions": [
      "service failure",
      "late meeting",
      "missed return",
      "declined service",
      "revised plan",
      "missing outcome"
    ],
    "revision_analysis": "Primary score stays against version 0; legitimate revision may fail the original-plan outcome without being attributed as a service-caused failure. Secondary revised-plan result and sensitivity using only changes documented before the affected leg; report revisions by arm.",
    "outcome_source_rule": "Freeze the same source availability and reconciliation hierarchy in every arm; if unavailable, label self-report and validate an independently recorded subsample only after approved prospective design.",
    "coder_and_blinding": "Named trained coder and separate discrepancy adjudicator must be appointed before data collection; record blinding to arm where feasible and disclose breaks.",
    "role": "Co-primary for H01; local freeze required"
  },
  {
    "id": "M03",
    "name": "Passenger leg completion",
    "numerator": "Requested legs reaching the required door/destination within the defined time and practical requirements",
    "denominator": "All requested legs, including declined/abandoned/cancelled service outcomes",
    "missing": "Report missing leg outcomes separately and test sensitivity.",
    "unit": "passenger-leg",
    "boundary": "Legs cluster within people; vehicle circuits and bookings are not the numerator.",
    "role": "Secondary request-conditional measure; always show M01/M02 and M06 beside it"
  },
  {
    "id": "M04",
    "name": "Operating availability",
    "numerator": "Minutes the defined service operated",
    "denominator": "Scheduled service minutes for the same boundary",
    "missing": "Document unscheduled/unknown intervals.",
    "unit": "service interval",
    "boundary": "Suitable assistance-capable availability is also reported; uptime is not person completion."
  },
  {
    "id": "M05",
    "name": "Cost per completed working day",
    "numerator": "Actual attributed cash cost in one named payer account over the comparison period",
    "denominator": "Completed person-days in the same option and period",
    "missing": "If denominator is zero report undefined and total cost; retain unallocated costs.",
    "unit": "currency/person-day",
    "boundary": "Employee, employer, property and provider accounts separate; valuation assumptions separate from cash."
  },
  {
    "id": "M06",
    "name": "Population to completed use",
    "numerator": "Distinct people in each observed eligible/informed/offered/enrolled/requesting/served state",
    "denominator": "Underlying population and preceding state, each labeled",
    "missing": "Retain unknown/nonresponse and suppressed cells.",
    "unit": "people by stratum",
    "boundary": "State-specific eligibility/intent can differ; do not force nested counts without matching cohort/time."
  },
  {
    "id": "M07",
    "name": "Additional paid work",
    "numerator": "Observed administration, assistance and exception minutes plus attributable actual paid cost",
    "denominator": "State the exposure denominator:person-day, leg or service-hour",
    "missing": "Separate unobserved minutes and unaccepted tasks.",
    "unit": "minutes and currency",
    "boundary": "No automatic avoided-labor saving from an assignment diagram."
  },
  {
    "id": "M08",
    "name": "Resource and mode change",
    "numerator": "Occupied/empty distance, passenger distance, energy and induced/displaced journeys under a named system boundary",
    "denominator": "Same period/person-day or passenger-km as explicitly reported",
    "missing": "Report component gaps rather than impute a net environmental benefit.",
    "unit": "km, passenger-km, k Wh",
    "boundary": "No universal emissions factor or derived saving supplied."
  },
  {
    "id": "M09",
    "name": "Rider unpaid access work",
    "unit": "minutes, contacts per secured leg and request shares by stratum",
    "numerator": "Booking/coordination effort and contacts; unplanned requests completed",
    "denominator": "Matched eligible/requested legs and population/need stratum; state each denominator",
    "missing": "Accessible self-report method, nonresponse and missing effort remain visible",
    "boundary": "Reported alongside M07; rider work is not a staff saving. Booking lead time and unplanned-request service must be disaggregated by practical need without diagnoses."
  }
]
