{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://causalyticsimpact.com/specifications/measurement-contract/v0.1/measurement-contract.schema.json",
  "title": "Causalytics Measurement Contract v0.1",
  "type": "object",
  "required": [
    "contract",
    "decision",
    "intervention",
    "population",
    "causal_question",
    "evidence",
    "analysis",
    "value",
    "claim",
    "governance"
  ],
  "properties": {
    "contract": {
      "type": "object",
      "required": ["id", "version", "status", "created_at", "decision_owner", "analysis_owner"],
      "properties": {
        "id": {"type": "string", "minLength": 1},
        "version": {"type": "string", "minLength": 1},
        "status": {"enum": ["draft", "approved", "amended", "closed"]},
        "created_at": {"type": "string", "format": "date"},
        "decision_owner": {"type": "string", "minLength": 1},
        "analysis_owner": {"type": "string", "minLength": 1}
      },
      "additionalProperties": true
    },
    "decision": {"type": "object", "required": ["question", "options"]},
    "intervention": {"type": "object", "required": ["name", "version", "description", "eligibility_rule", "exposure_rule"]},
    "population": {"type": "object", "required": ["unit_of_analysis", "inclusion_criteria"]},
    "causal_question": {"type": "object", "required": ["estimand", "outcome", "comparison", "causal_graph"]},
    "evidence": {"type": "object", "required": ["baseline_period", "observation_period", "required_fields", "data_quality_rules"]},
    "analysis": {"type": "object", "required": ["primary_estimator", "diagnostics", "refusal_conditions"]},
    "value": {"type": "object", "required": ["benefit_unit", "eligible_volume_rule", "costs", "formulas"]},
    "claim": {"type": "object", "required": ["minimum_level", "permitted_if_met", "external_use_requires_approval"]},
    "governance": {"type": "object", "required": ["data_rights_owner", "review_roles", "amendments"]}
  },
  "additionalProperties": true
}
