{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://aiwg.io/schemas/dataset/conformance-manifest.v1.schema.json",
  "title": "AIWG Dataset Intelligence Conformance Manifest v1",
  "type": "object",
  "additionalProperties": false,
  "required": ["contract", "schemaVersion", "corpusVersion", "cells"],
  "properties": {
    "contract": { "const": "aiwg.dataset.conformance/v1" },
    "schemaVersion": { "$ref": "#/$defs/version" },
    "corpusVersion": { "$ref": "#/$defs/version" },
    "cells": { "type": "array", "minItems": 1, "items": { "$ref": "#/$defs/cell" } }
  },
  "$defs": {
    "version": { "type": "string", "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+(?:[-+][0-9A-Za-z.-]+)?$" },
    "digest": { "type": "string", "pattern": "^sha256:[0-9a-f]{64}$" },
    "cell": {
      "type": "object", "additionalProperties": false,
      "required": ["id", "area", "requiredCapabilities", "sourceClass", "runtimeClass", "fixture", "expected", "maturity", "evidence", "resourceEnvelope"],
      "properties": {
        "id": { "type": "string", "pattern": "^[a-z0-9][a-z0-9.-]+$" },
        "area": { "enum": ["adapter", "capability", "replay", "checkpoint", "provenance", "security", "offline", "parity", "standards", "migration"] },
        "requiredCapabilities": { "type": "array", "items": { "type": "string", "minLength": 1 }, "uniqueItems": true },
        "sourceClass": { "enum": ["synthetic", "file", "directory", "jsonl", "csv", "http", "cache", "fortemi"] },
        "runtimeClass": { "enum": ["local", "fortemi-core", "fortemi-server"] },
        "fixture": { "type": "object", "additionalProperties": false, "required": ["path", "digest", "revision"], "properties": { "path": { "type": "string", "pattern": "^test/fixtures/dataset-intelligence/" }, "digest": { "$ref": "#/$defs/digest" }, "revision": { "$ref": "#/$defs/version" } } },
        "expected": { "type": "object", "additionalProperties": false, "required": ["result"], "properties": { "result": { "enum": ["pass", "reject", "pending"] }, "diagnostic": { "type": "string", "minLength": 1 } } },
        "maturity": { "enum": ["experimental", "qualified", "stable"] },
        "evidence": { "type": "array", "minItems": 1, "items": { "enum": ["fixture", "real-source", "cross-repo", "live-qualification"] }, "uniqueItems": true },
        "resourceEnvelope": { "type": "object", "additionalProperties": false, "required": ["maxBytes", "maxRecords", "maxDurationMs"], "properties": { "maxBytes": { "type": "integer", "minimum": 1 }, "maxRecords": { "type": "integer", "minimum": 1 }, "maxDurationMs": { "type": "integer", "minimum": 1 } } },
        "liveAuthorizationRequired": { "type": "boolean" }
      }
    }
  }
}
