{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://developer.reits.tech/schemas/runner-controller-dossier-store-production-port-contracts.v1.schema.json",
  "title": "D05 dossier store production port contracts",
  "type": "object",
  "additionalProperties": false,
  "required": ["schemaVersion", "status", "evaluatedAt", "mode", "program", "summary", "upstreamEvaluator", "portContract", "productionEvaluation", "bindingMatrix", "portMatrix", "operationMatrix", "compositionSequence", "fixtureResults", "selectedDenialTrace", "decisionCodes", "invariants", "safetyTruth", "discovery"],
  "properties": {
    "schemaVersion": { "const": "developer.reits.tech/runner-controller-dossier-store-production-port-contracts/v1" },
    "status": { "enum": ["PORT_CONTRACTS_BOUND_IMPLEMENTATIONS_UNCONFIGURED", "UPSTREAM_EVALUATOR_CONTRACT_UNAVAILABLE"] },
    "evaluatedAt": { "type": "string", "format": "date-time" },
    "mode": { "const": "CONTRACT_ONLY_TEST_CONFORMANCE_NO_RUNTIME_BINDINGS_NO_EXTERNAL_EFFECTS" },
    "program": { "$ref": "#/$defs/program" },
    "summary": { "$ref": "#/$defs/summary" },
    "upstreamEvaluator": { "oneOf": [{ "type": "null" }, { "$ref": "#/$defs/upstreamEvaluator" }] },
    "portContract": { "oneOf": [{ "type": "null" }, { "$ref": "#/$defs/portContract" }] },
    "productionEvaluation": { "$ref": "#/$defs/evaluation" },
    "bindingMatrix": { "type": "array", "minItems": 4, "maxItems": 4, "items": { "$ref": "#/$defs/binding" } },
    "portMatrix": { "type": "array", "minItems": 4, "maxItems": 4, "items": { "$ref": "#/$defs/port" } },
    "operationMatrix": { "type": "array", "minItems": 10, "maxItems": 10, "items": { "$ref": "#/$defs/operation" } },
    "compositionSequence": { "type": "array", "minItems": 8, "maxItems": 8, "items": { "$ref": "#/$defs/sequenceStep" } },
    "fixtureResults": { "type": "array", "minItems": 14, "maxItems": 14, "items": { "$ref": "#/$defs/fixtureResult" } },
    "selectedDenialTrace": { "$ref": "#/$defs/fixtureResult" },
    "decisionCodes": { "type": "array", "minItems": 12, "maxItems": 12, "uniqueItems": true, "items": { "type": "string" } },
    "invariants": { "type": "array", "minItems": 20, "maxItems": 20, "uniqueItems": true, "items": { "type": "string" } },
    "safetyTruth": { "$ref": "#/$defs/safetyTruth" },
    "discovery": { "$ref": "#/$defs/discovery" }
  },
  "$defs": {
    "program": {
      "type": "object", "additionalProperties": false,
      "required": ["acceptedKnives", "totalKnives", "currentKnife", "closeoutCut", "remainingIncludingCurrent", "remainingAfterAcceptance", "d05Accepted"],
      "properties": {
        "acceptedKnives": { "const": 4 }, "totalKnives": { "const": 36 }, "currentKnife": { "const": "D05" }, "closeoutCut": { "const": 16 },
        "remainingIncludingCurrent": { "const": 32 }, "remainingAfterAcceptance": { "const": 31 }, "d05Accepted": { "const": false }
      }
    },
    "summary": {
      "type": "object", "additionalProperties": false,
      "required": ["upstreamEvaluatorContractAvailable", "portContractBound", "portsRequired", "portsConfigured", "operationsSpecified", "conformanceGatesSpecified", "healthReceiptsObserved", "fixtureCases", "fixtureAssertionsPassed", "fixtureAccepted", "fixtureDenied", "productionBindingCandidatesObserved", "productionPortCalls", "externalReadsExecuted", "externalWritesExecuted", "resourcesCreated", "provisioningPermitted", "decision"],
      "properties": {
        "upstreamEvaluatorContractAvailable": { "type": "boolean" }, "portContractBound": { "type": "boolean" },
        "portsRequired": { "const": 4 }, "portsConfigured": { "const": 0 }, "operationsSpecified": { "const": 10 }, "conformanceGatesSpecified": { "const": 16 }, "healthReceiptsObserved": { "const": 0 },
        "fixtureCases": { "const": 14 }, "fixtureAssertionsPassed": { "const": 14 }, "fixtureAccepted": { "const": 1 }, "fixtureDenied": { "const": 13 },
        "productionBindingCandidatesObserved": { "const": 0 }, "productionPortCalls": { "const": 0 }, "externalReadsExecuted": { "const": 0 }, "externalWritesExecuted": { "const": 0 }, "resourcesCreated": { "const": 0 }, "provisioningPermitted": { "const": false }, "decision": { "type": "string", "minLength": 1 }
      }
    },
    "upstreamEvaluator": {
      "type": "object", "additionalProperties": false,
      "required": ["id", "contentDigest", "sourceRevision", "productionReady", "executable"],
      "properties": { "id": { "type": "string" }, "contentDigest": { "$ref": "#/$defs/digest" }, "sourceRevision": { "type": "string", "pattern": "^[0-9a-f]{40}$" }, "productionReady": { "const": false }, "executable": { "const": false } }
    },
    "portContract": {
      "type": "object", "additionalProperties": false,
      "required": ["id", "contentDigest", "canonicalBytes", "subject", "productionReady", "executable"],
      "properties": { "id": { "type": "string" }, "contentDigest": { "$ref": "#/$defs/digest" }, "canonicalBytes": { "type": "integer", "minimum": 1 }, "subject": { "type": "object" }, "productionReady": { "const": false }, "executable": { "const": false } }
    },
    "evaluation": {
      "type": "object", "additionalProperties": false,
      "required": ["code", "terminal", "failedPort", "portsChecked", "productionReady"],
      "properties": { "code": { "type": "string" }, "terminal": { "enum": ["CONFORMANT_FIXTURE", "DENIED"] }, "failedPort": { "type": ["string", "null"] }, "portsChecked": { "type": "integer", "minimum": 0, "maximum": 4 }, "productionReady": { "const": false } }
    },
    "binding": {
      "type": "object", "additionalProperties": false,
      "required": ["ordinal", "portId", "name", "interfaceVersion", "owner", "implementationId", "configRef", "healthReceipt", "status"],
      "properties": { "ordinal": { "type": "integer", "minimum": 1, "maximum": 4 }, "portId": { "pattern": "^PORT-0[1-4]$" }, "name": { "type": "string" }, "interfaceVersion": { "type": "string" }, "owner": { "type": "string" }, "implementationId": { "type": "null" }, "configRef": { "type": "null" }, "healthReceipt": { "type": "null" }, "status": { "const": "UNCONFIGURED" } }
    },
    "port": {
      "type": "object", "additionalProperties": false,
      "required": ["ordinal", "id", "name", "owner", "trustZone", "purpose", "interfaceVersion", "operations", "conformanceGates", "prohibited", "configured", "callable"],
      "properties": {
        "ordinal": { "type": "integer", "minimum": 1, "maximum": 4 }, "id": { "pattern": "^PORT-0[1-4]$" }, "name": { "type": "string" }, "owner": { "type": "string" }, "trustZone": { "type": "string" }, "purpose": { "type": "string" }, "interfaceVersion": { "type": "string" },
        "operations": { "type": "array", "minItems": 2, "maxItems": 3, "items": { "$ref": "#/$defs/policyOperation" } },
        "conformanceGates": { "type": "array", "minItems": 4, "maxItems": 4, "items": { "type": "string" } },
        "prohibited": { "type": "array", "minItems": 4, "maxItems": 4, "items": { "type": "string" } },
        "configured": { "const": false }, "callable": { "const": false }
      }
    },
    "policyOperation": {
      "type": "object", "additionalProperties": false,
      "required": ["ordinal", "method", "input", "output", "idempotency", "effect"],
      "properties": { "ordinal": { "type": "integer", "minimum": 1, "maximum": 10 }, "method": { "type": "string" }, "input": { "type": "string" }, "output": { "type": "string" }, "idempotency": { "type": "string" }, "effect": { "type": "string" } }
    },
    "operation": {
      "type": "object", "additionalProperties": false,
      "required": ["ordinal", "method", "input", "output", "idempotency", "effect", "portId", "portName", "configured", "callsObserved"],
      "properties": { "ordinal": { "type": "integer", "minimum": 1, "maximum": 10 }, "method": { "type": "string" }, "input": { "type": "string" }, "output": { "type": "string" }, "idempotency": { "type": "string" }, "effect": { "type": "string" }, "portId": { "pattern": "^PORT-0[1-4]$" }, "portName": { "type": "string" }, "configured": { "const": false }, "callsObserved": { "const": 0 } }
    },
    "sequenceStep": {
      "type": "object", "additionalProperties": false,
      "required": ["ordinal", "stage", "portId", "operation", "requires", "failure", "executed", "status"],
      "properties": { "ordinal": { "type": "integer", "minimum": 1, "maximum": 8 }, "stage": { "type": "string" }, "portId": { "type": "string" }, "operation": { "type": "string" }, "requires": { "type": "string" }, "failure": { "type": "string" }, "executed": { "const": false }, "status": { "const": "BLOCKED_PORTS_UNCONFIGURED" } }
    },
    "fixtureResult": {
      "type": "object", "additionalProperties": false,
      "required": ["ordinal", "id", "scenario", "expectedCode", "actualCode", "terminal", "passed", "failedPort", "portsChecked", "productionReady"],
      "properties": { "ordinal": { "type": "integer", "minimum": 1, "maximum": 14 }, "id": { "pattern": "^PBC-0(0[1-9]|1[0-4])$" }, "scenario": { "type": "string" }, "expectedCode": { "type": "string" }, "actualCode": { "type": "string" }, "terminal": { "enum": ["CONFORMANT_FIXTURE", "DENIED"] }, "passed": { "const": true }, "failedPort": { "type": ["string", "null"] }, "portsChecked": { "type": "integer", "minimum": 0, "maximum": 4 }, "productionReady": { "const": false } }
    },
    "safetyTruth": {
      "type": "object", "additionalProperties": false,
      "required": ["portsRequired", "portsConfigured", "healthReceiptsObserved", "productionBindingCandidatesObserved", "productionPortCalls", "fixtureCases", "fixtureAccepted", "fixtureDenied", "fixtureAssertionsPassed", "privateKeysLoaded", "rawNoncesPersisted", "rawSignaturesExposed", "externalReadsExecuted", "externalWritesExecuted", "ledgerWritesExecuted", "resourcesCreated", "controllerListenerStarts", "paidResourcesCreated", "provisioningPermitted", "d05Accepted"],
      "properties": {
        "portsRequired": { "const": 4 }, "portsConfigured": { "const": 0 }, "healthReceiptsObserved": { "const": 0 }, "productionBindingCandidatesObserved": { "const": 0 }, "productionPortCalls": { "const": 0 },
        "fixtureCases": { "const": 14 }, "fixtureAccepted": { "const": 1 }, "fixtureDenied": { "const": 13 }, "fixtureAssertionsPassed": { "const": 14 },
        "privateKeysLoaded": { "const": 0 }, "rawNoncesPersisted": { "const": 0 }, "rawSignaturesExposed": { "const": 0 }, "externalReadsExecuted": { "const": 0 }, "externalWritesExecuted": { "const": 0 }, "ledgerWritesExecuted": { "const": 0 }, "resourcesCreated": { "const": 0 }, "controllerListenerStarts": { "const": 0 },
        "paidResourcesCreated": { "const": false }, "provisioningPermitted": { "const": false }, "d05Accepted": { "const": false }
      }
    },
    "discovery": {
      "type": "object", "additionalProperties": false,
      "required": ["workbench", "schema", "evaluator", "provisioningAdmission", "liveIdentity"],
      "properties": { "workbench": { "const": "/release-foundation#runner-controller-dossier-store-production-port-contracts" }, "schema": { "const": "/schemas/runner-controller-dossier-store-production-port-contracts.v1.schema.json" }, "evaluator": { "const": "/api/runner-controller/dossier-store-provisioning-evaluator" }, "provisioningAdmission": { "const": "/api/runner-controller/dossier-store-provisioning-admission" }, "liveIdentity": { "const": "/api/release-unit" } }
    },
    "digest": { "type": "string", "pattern": "^sha256:[0-9a-f]{64}$" }
  }
}
