{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://twinethos.com/schemas/tier-c-watchlist-v0.1.schema.json",
  "title": "Tier C Standards Watchlist (v0.1)",
  "description": "Officially sourced disposition register for licensed standards considered by the AI-integration corpus. It stores no licensed text.",
  "type": "object",
  "additionalProperties": false,
  "required": ["schema_version", "catalog_id", "as_of", "entries"],
  "properties": {
    "schema_version": { "const": "0.1" },
    "catalog_id": { "const": "tier-c-published-standards-watchlist" },
    "as_of": { "type": "string", "format": "date" },
    "entries": {
      "type": "array",
      "minItems": 1,
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "standard_id",
          "title",
          "issuing_body",
          "official_url",
          "publication_status",
          "status_as_of",
          "public_scope_summary",
          "code_surface_assessment",
          "disposition",
          "disposition_reason"
        ],
        "properties": {
          "standard_id": { "type": "string", "pattern": "^[a-z0-9]+(?:[._-][a-z0-9]+)*$" },
          "title": { "type": "string", "minLength": 10 },
          "issuing_body": { "type": "string", "minLength": 2 },
          "official_url": { "type": "string", "format": "uri" },
          "publication_status": { "type": "string", "enum": ["published", "under_development", "withdrawn"] },
          "status_as_of": { "type": "string", "format": "date" },
          "public_scope_summary": { "type": "string", "minLength": 20 },
          "code_surface_assessment": { "type": "string", "enum": ["candidate", "out_of_scope", "not_assessed"] },
          "disposition": { "type": "string", "enum": ["encoded", "deferred", "out_of_scope", "not_applicable"] },
          "disposition_reason": { "type": "string", "minLength": 20 },
          "review_due": { "type": "string", "format": "date" },
          "tracked_pack": { "type": "string" }
        },
        "allOf": [
          {
            "if": { "properties": { "disposition": { "const": "deferred" } }, "required": ["disposition"] },
            "then": { "required": ["review_due"] }
          },
          {
            "if": { "properties": { "disposition": { "const": "encoded" } }, "required": ["disposition"] },
            "then": { "required": ["tracked_pack"] }
          }
        ]
      }
    }
  }
}