{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "TaxYearRuleDiffOutput",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "service",
    "service_version",
    "evaluated_at_utc",
    "evidence_mode",
    "source_fresh_for_current_use",
    "evidence_valid_until_utc",
    "corpus_sha256",
    "source_review_sha256",
    "request_sha256",
    "tax_years",
    "requested_source_pairs",
    "overall_status",
    "topic_results",
    "caller_assertions",
    "limitations",
    "byte_change_is_rule_change",
    "comprehensive_legal_change_history",
    "scope",
    "fee_eligibility"
  ],
  "properties": {
    "service": {
      "const": "tax-year-rule-diff-evidence"
    },
    "service_version": {
      "const": "tax-year-rule-diff-1.0.0"
    },
    "evaluated_at_utc": {
      "type": "string"
    },
    "evidence_mode": {
      "type": "string",
      "enum": [
        "current",
        "snapshot_replay"
      ]
    },
    "source_fresh_for_current_use": {
      "type": "boolean"
    },
    "evidence_valid_until_utc": {
      "type": "string"
    },
    "corpus_sha256": {
      "type": "string",
      "pattern": "^[0-9a-f]{64}$"
    },
    "source_review_sha256": {
      "type": "string",
      "pattern": "^[0-9a-f]{64}$"
    },
    "request_sha256": {
      "type": "string",
      "pattern": "^[0-9a-f]{64}$"
    },
    "tax_years": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "from",
        "to"
      ],
      "properties": {
        "from": {
          "const": 2025
        },
        "to": {
          "const": 2026
        }
      }
    },
    "requested_source_pairs": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "overall_status": {
      "type": "string",
      "enum": [
        "COMPLETE",
        "CONFLICT",
        "UNKNOWN"
      ]
    },
    "topic_results": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "caller_assertions": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "limitations": {
      "type": "array",
      "minItems": 8,
      "items": {
        "type": "string"
      }
    },
    "byte_change_is_rule_change": {
      "const": false
    },
    "comprehensive_legal_change_history": {
      "const": false
    },
    "scope": {
      "const": "PUBLIC_PRODUCTION_SNAPSHOT"
    },
    "fee_eligibility": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "eligible",
        "price_atomic",
        "currency",
        "rule",
        "conflict_no_charge",
        "unknown_no_charge",
        "settlement_claimed"
      ],
      "properties": {
        "eligible": {
          "type": "boolean"
        },
        "price_atomic": {
          "const": "20000"
        },
        "currency": {
          "const": "USDC"
        },
        "rule": {
          "const": "COMPLETE_ONLY_IF_VALIDATED"
        },
        "conflict_no_charge": {
          "const": true
        },
        "unknown_no_charge": {
          "const": true
        },
        "settlement_claimed": {
          "const": false
        }
      }
    }
  }
}
