{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://github.com/alphazede/bearing-lite/schemas/seit.schema.json",
  "title": "Bearing Lite seit.json",
  "description": "Canonical JSON Schema-validated tailored V&V plan. CONTRACT-EMV-007 always-on sections must appear as named objects or lists with content, not as a labels-only always_on_sections array: scope/baseline; responsibility/change authority; applicable documents/precedence; requirements flowdown/architecture context; V&V methods; verification and validation matrices; levels/integration sequence; environments/fixtures/data/simulations/support; procedures/commands; evidence/pass-fail; anomaly/corrective/closure. System fields only where applicable. Proof cases require the full canonical field set including observable_evidence and pass_fail_rule. Extra lifecycle metadata is allowed.",
  "type": "object",
  "additionalProperties": true,
  "required": [
    "schema_version",
    "source_baseline",
    "decision_baseline",
    "responsibility_and_change_authority",
    "applicable_documents_and_precedence",
    "system_description_and_requirements_flowdown",
    "vv_methods",
    "levels",
    "environments_fixtures_data_simulations_support",
    "procedures_and_commands",
    "evidence_and_pass_fail",
    "anomaly_corrective_closure",
    "integration_vv_sequence",
    "proof_cases"
  ],
  "$defs": {
    "contentfulObject": {
      "type": "object",
      "minProperties": 1,
      "additionalProperties": true
    },
    "contentfulArray": {
      "type": "array",
      "minItems": 1
    },
    "contentfulString": {
      "type": "string",
      "minLength": 1
    },
    "proofCase": {
      "type": "object",
      "additionalProperties": true,
      "required": [
        "id",
        "kind",
        "requirement_id",
        "design_id",
        "command_id",
        "method",
        "preconditions",
        "stimulus_or_procedure",
        "expected_result",
        "observable_evidence",
        "pass_fail_rule",
        "method_fields",
        "negative_or_failure_case"
      ],
      "properties": {
        "id": { "$ref": "#/$defs/contentfulString" },
        "kind": { "$ref": "#/$defs/contentfulString" },
        "requirement_id": { "$ref": "#/$defs/contentfulString" },
        "design_id": { "$ref": "#/$defs/contentfulString" },
        "command_id": { "$ref": "#/$defs/contentfulString" },
        "method": { "$ref": "#/$defs/contentfulString" },
        "preconditions": {
          "type": "array",
          "minItems": 1,
          "items": { "type": "string", "minLength": 1 }
        },
        "stimulus_or_procedure": { "$ref": "#/$defs/contentfulString" },
        "expected_result": { "$ref": "#/$defs/contentfulString" },
        "observable_evidence": { "$ref": "#/$defs/contentfulString" },
        "pass_fail_rule": { "$ref": "#/$defs/contentfulString" },
        "method_fields": { "$ref": "#/$defs/contentfulObject" },
        "negative_or_failure_case": { "$ref": "#/$defs/contentfulString" }
      }
    }
  },
  "properties": {
    "schema_version": { "$ref": "#/$defs/contentfulString" },
    "artifact": { "$ref": "#/$defs/contentfulObject" },
    "source_baseline": { "$ref": "#/$defs/contentfulObject" },
    "decision_baseline": {
      "type": "object",
      "minProperties": 1,
      "additionalProperties": true,
      "description": "Stable decision-baseline projection of confirmed decision identities and open-item statuses. Not the whole-file journey.json digest.",
      "properties": {
        "kind": { "type": "string" },
        "confirmed_decisions": { "type": "object", "additionalProperties": true },
        "open_items": { "type": "array", "items": { "type": "object", "additionalProperties": true } }
      }
    },
    "responsibility_and_change_authority": { "$ref": "#/$defs/contentfulObject" },
    "applicable_documents_and_precedence": { "$ref": "#/$defs/contentfulObject" },
    "system_description_and_requirements_flowdown": { "$ref": "#/$defs/contentfulObject" },
    "vv_methods": { "$ref": "#/$defs/contentfulObject" },
    "levels": { "$ref": "#/$defs/contentfulArray" },
    "environments_fixtures_data_simulations_support": { "$ref": "#/$defs/contentfulObject" },
    "procedures_and_commands": { "$ref": "#/$defs/contentfulArray" },
    "evidence_and_pass_fail": { "$ref": "#/$defs/contentfulObject" },
    "anomaly_corrective_closure": { "$ref": "#/$defs/contentfulObject" },
    "integration_vv_sequence": { "$ref": "#/$defs/contentfulArray" },
    "proof_cases": {
      "type": "array",
      "minItems": 1,
      "items": { "$ref": "#/$defs/proofCase" }
    }
  }
}
