{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/africanmarketos-com/json-schema/africanmarketos-com-decision-support-response-schema.json",
  "title": "DecisionSupportResponse",
  "x-generated": "2026-10-31",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/africanmarketos-com-openapi.yml#/components/schemas/DecisionSupportResponse",
  "type": "object",
  "properties": {
    "confidence_semantics": {
      "type": "object",
      "required": [
        "decision_confidence",
        "evidence_quality",
        "evidence_completeness"
      ],
      "properties": {
        "decision_confidence": {
          "type": "object",
          "required": [
            "kind",
            "calibrated_probability",
            "measures_evidence_completeness",
            "interpretation"
          ],
          "properties": {
            "kind": {
              "type": "string",
              "enum": [
                "heuristic_support_index"
              ]
            },
            "calibrated_probability": {
              "type": "boolean",
              "enum": [
                false
              ]
            },
            "measures_evidence_completeness": {
              "type": "boolean",
              "enum": [
                false
              ]
            },
            "interpretation": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "evidence_quality": {
          "type": "object",
          "required": [
            "kind",
            "is_decision_confidence",
            "interpretation"
          ],
          "properties": {
            "kind": {
              "type": "string",
              "enum": [
                "source_and_rubric_assessment"
              ]
            },
            "is_decision_confidence": {
              "type": "boolean",
              "enum": [
                false
              ]
            },
            "interpretation": {
              "type": "string"
            }
          },
          "additionalProperties": false
        },
        "evidence_completeness": {
          "type": "object",
          "required": [
            "value",
            "measurement_status",
            "interpretation"
          ],
          "properties": {
            "value": {
              "nullable": true,
              "enum": [
                null
              ]
            },
            "measurement_status": {
              "type": "string",
              "enum": [
                "no_global_percentage_estimated"
              ]
            },
            "interpretation": {
              "type": "string"
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    },
    "status": {
      "type": "string",
      "description": "not_relevant, awaiting_scope_clarification or relevance_checked may terminate routing."
    },
    "source_decision_status": {
      "type": [
        "string",
        "null"
      ]
    },
    "why_no_verdict": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "status": {
          "type": "string"
        },
        "primary_reason": {
          "type": "string"
        },
        "quotable_summary": {
          "type": "string"
        }
      },
      "additionalProperties": true
    },
    "claim_review": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "status": {
          "type": "string"
        },
        "blocking": {
          "type": "boolean"
        }
      },
      "additionalProperties": true
    },
    "local_relational_assessment": {
      "type": "object",
      "properties": {
        "score_summary": {
          "$ref": "#/$defs/CandidateScoreSummary"
        }
      },
      "additionalProperties": true
    },
    "action_authorization": {
      "$ref": "#/$defs/ActionAuthorizationBoundary"
    },
    "output_use_authorization": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "not_assessed",
            "not_permitted",
            "permitted_for_listed_uses_only"
          ]
        },
        "permitted_uses": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "internal_review",
              "working_draft",
              "internal_planning",
              "planning",
              "pilot_design",
              "board_reporting",
              "internal_backtest_evaluation"
            ]
          },
          "description": "Document/analysis handling only. Launch, pilot execution, payment and other external actions are never output uses."
        },
        "execution_permission": {
          "type": "boolean",
          "enum": [
            false
          ]
        }
      },
      "additionalProperties": true
    },
    "execution_authorization_state": {
      "type": "string",
      "enum": [
        "not_authorized"
      ]
    },
    "human_review_required": {
      "type": "boolean"
    },
    "answer": {
      "type": "object",
      "properties": {
        "processing_status": {
          "type": [
            "string",
            "null"
          ]
        },
        "source_decision_status": {
          "type": [
            "string",
            "null"
          ]
        },
        "recommendation": {
          "type": [
            "string",
            "null"
          ]
        },
        "action_headline": {
          "type": "string",
          "enum": [
            "NOT YET",
            "NOT APPLICABLE"
          ],
          "description": "NOT APPLICABLE means the declared task is outside MVR scope, not that the underlying action is approved."
        },
        "human_review_required": {
          "type": "boolean"
        },
        "action_authorization": {
          "$ref": "#/$defs/ActionAuthorizationBoundary"
        },
        "analysis_use": {
          "$ref": "#/$defs/AnalysisUse"
        },
        "action_capability": {
          "$ref": "#/$defs/ActionCapability"
        },
        "authorization_status": {
          "type": [
            "string",
            "null"
          ],
          "deprecated": true,
          "not": {
            "enum": [
              "authorized"
            ]
          },
          "description": "Legacy bounded output-use alias; use analysis_use. Never execution permission."
        }
      },
      "additionalProperties": true,
      "required": [
        "action_headline",
        "action_authorization",
        "human_review_required"
      ]
    },
    "response_meta": {
      "type": "object",
      "properties": {
        "deployment_revision": {
          "type": "string"
        }
      },
      "additionalProperties": true
    },
    "analysis_use": {
      "$ref": "#/$defs/AnalysisUse"
    },
    "action_capability": {
      "$ref": "#/$defs/ActionCapability"
    },
    "decision_authorization": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string",
          "deprecated": true,
          "description": "Legacy output-use alias. The positive value is permitted_for_listed_uses_only, never authorized. Negative and unknown states do not permit use; prefer analysis_use.",
          "not": {
            "enum": [
              "authorized"
            ]
          }
        },
        "authorized_use": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "internal_review",
              "working_draft",
              "internal_planning",
              "planning",
              "pilot_design",
              "board_reporting",
              "internal_backtest_evaluation"
            ]
          },
          "description": "Document/analysis handling only. Launch, pilot execution, payment and other external actions are never output uses."
        }
      },
      "additionalProperties": true
    },
    "receipt_evidence_findings": {
      "type": "array",
      "maxItems": 15,
      "items": {
        "$ref": "#/$defs/ReceiptEvidenceFinding"
      }
    },
    "receipt_validation": {
      "type": "object",
      "properties": {
        "performed": {
          "type": "boolean",
          "enum": [
            false
          ]
        },
        "status": {
          "type": "string",
          "enum": [
            "not_checked"
          ]
        },
        "validity": {
          "type": "string",
          "enum": [
            "unknown"
          ]
        },
        "expiry": {
          "type": "string",
          "enum": [
            "unknown"
          ]
        },
        "revocation": {
          "type": "string",
          "enum": [
            "unknown"
          ]
        }
      }
    },
    "total_errors": {
      "type": "integer",
      "minimum": 0
    },
    "validation_errors_truncated": {
      "type": "boolean"
    },
    "code": {
      "type": "string",
      "description": "Codes: FIELD_PROVENANCE_REQUIRED,FIELD_PROVENANCE_CONFLICT,FIELDWORK_CAPACITY_CONTRADICTION,SOURCE_INDEPENDENCE_CONTRADICTION,SOURCE_VERIFICATION_CONTRADICTION,FIELD_SOURCE_MODALITY_CONFLICT,DECISION_GEOGRAPHY_SCOPE_REQUIRED,DECISION_SCOPE_REQUIRED,DECISION_SCOPE_REVIEW_REQUIRED,DECISION_SCOPE_CROSS_CHECK_LIMIT,SOURCE_EXTRACTION_INVALID,SOURCE_EXTRACTION_REFERENCE_CONFLICT,ADVERSE_SOURCE_REVIEW_REQUIRED,INVALID_CLAIM_INPUT,OUTPUT_RECEIPT_NOT_REQUEST_AUTHORITY,ARTIFACT_ROLE_NOT_SOURCE_EVIDENCE. HTTP 422: details/validation_errors; fix missing_fields. Never invent facts. These codes do not authenticate sources or authorize action. /docs/mcp-integration.md. Also DUPLICATE_COMPARISON_OPTION_ID for colliding comparison identifiers."
    },
    "calibration_disposition": {
      "$ref": "#/$defs/CalibrationDisposition"
    },
    "public_reality": {
      "type": "object",
      "properties": {
        "calibration_disposition": {
          "$ref": "#/$defs/CalibrationDisposition"
        }
      },
      "additionalProperties": true
    },
    "activation_outcome": {
      "type": "string",
      "description": "relevance_unresolved: clarify scope."
    },
    "workflow_id": {
      "type": [
        "string",
        "null"
      ]
    },
    "workflow_status": {
      "type": "string"
    },
    "mcp_next_call": {
      "type": [
        "object",
        "null"
      ]
    },
    "not_a_verdict": {
      "type": "boolean"
    },
    "artifact_role_findings": {
      "type": "array",
      "maxItems": 15,
      "items": {
        "$ref": "#/$defs/ArtifactRoleEvidenceFinding"
      }
    },
    "strict_eligible": {
      "type": "boolean",
      "enum": [
        false
      ]
    },
    "schema_and_reviewer_eligible": {
      "type": "boolean",
      "enum": [
        false
      ]
    },
    "decision_continuity": {
      "type": "object",
      "properties": {
        "record_role": {
          "type": "string",
          "enum": [
            "historical_assessment"
          ]
        },
        "current_reliance_authorized": {
          "type": "boolean",
          "enum": [
            false
          ]
        },
        "fresh_evaluation_required": {
          "type": "boolean",
          "enum": [
            true
          ]
        },
        "evaluated_at": {
          "type": [
            "string",
            "null"
          ]
        },
        "decision_check_id": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "additionalProperties": true
    },
    "narrative_report": {
      "type": "object",
      "properties": {
        "title": {
          "type": "string"
        },
        "market": {
          "type": "string"
        },
        "verdict_summary": {
          "type": [
            "string",
            "null"
          ]
        },
        "sections": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "title": {
                "type": "string"
              },
              "content": {
                "type": "string"
              }
            },
            "additionalProperties": true
          }
        },
        "rendering_note": {
          "type": "string"
        }
      },
      "additionalProperties": true
    },
    "format": {
      "type": "string"
    },
    "export_class": {
      "type": "string"
    },
    "content": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "source_assertions": {
              "type": "object",
              "properties": {
                "evidence_register": {
                  "type": "array",
                  "maxItems": 500,
                  "items": {
                    "type": "object",
                    "properties": {},
                    "additionalProperties": true
                  },
                  "description": "Untrusted caller-authored rows, never canonical AMOS verdict, capability or output-use fields."
                }
              },
              "additionalProperties": true
            },
            "source_material_status": {
              "type": "string",
              "enum": [
                "unverified_caller_assertions"
              ]
            },
            "source_authenticity_verified": {
              "type": "boolean",
              "enum": [
                false
              ]
            },
            "action_authorization": {
              "$ref": "#/$defs/ActionAuthorizationBoundary"
            },
            "output_use_authorization": {
              "$ref": "#/$defs/AnalysisUse"
            },
            "execution_authorization_state": {
              "type": "string",
              "enum": [
                "not_authorized"
              ]
            },
            "human_review_required": {
              "type": "boolean"
            }
          },
          "additionalProperties": true
        },
        {
          "type": "string"
        }
      ],
      "description": "Object envelope, or markdown wrapping that JSON; never a top-level caller row array. Evidence-only rows are namespaced under source_assertions, unverified and non-authorizing. Canonical blocked boundaries belong to the envelope and are not injected into rows. Ready formats are structures, not binary files. No new source truth, verdict, scope, reliance permission or signature is issued."
    },
    "csv_evidence_register": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string"
          },
          "stakeholder_class": {
            "type": "string"
          },
          "evidence_origin": {
            "type": "string"
          },
          "freshness_date": {
            "type": "string"
          }
        }
      },
      "description": "Lossy projection of string-valued allowlisted fields only, not verified evidence or a canonical authority surface."
    },
    "export_ready_only": {
      "type": "boolean"
    },
    "file_generation": {
      "type": "boolean",
      "enum": [
        false
      ]
    },
    "renderer_required": {
      "type": "boolean"
    },
    "residual_risk_register": {
      "$ref": "#/$defs/ResidualRiskRegister"
    },
    "review_intake": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string"
        },
        "item_count": {
          "type": "integer",
          "minimum": 0,
          "maximum": 8
        },
        "missing_metadata_count": {
          "type": "integer",
          "minimum": 0
        },
        "evidence_items_created": {
          "const": 0
        },
        "scoring_eligible": {
          "const": false
        },
        "source_authenticity_verified": {
          "const": false
        }
      },
      "additionalProperties": true
    },
    "action_boundary": {
      "$ref": "#/$defs/PreflightActionBoundary"
    },
    "evidence_authentication_status": {
      "enum": [
        "not_authenticated",
        "partially_authenticated"
      ]
    },
    "authenticated_verified_count": {
      "type": "integer",
      "minimum": 0
    },
    "evidence_authentication_basis": {
      "type": "string"
    },
    "caller_declared_verified_count": {
      "type": "integer",
      "minimum": 0
    },
    "declared_completeness_gate_passed": {
      "type": "boolean"
    },
    "verified_evidence_count_semantics": {
      "type": "string"
    },
    "evidence_gate_passed_semantics": {
      "type": "string"
    },
    "recommendation_scope": {
      "type": "string"
    },
    "external_use_ceiling": {
      "type": "object",
      "required": [
        "external_use_allowed",
        "capability_issued"
      ],
      "properties": {
        "external_use_allowed": {
          "const": false
        },
        "capability_issued": {
          "const": false
        },
        "max_capital_commitment_usd": {
          "const": 0
        }
      }
    }
  },
  "additionalProperties": true,
  "required": [
    "action_authorization",
    "execution_authorization_state",
    "human_review_required",
    "answer",
    "analysis_use",
    "action_capability"
  ],
  "$defs": {
    "ActionAuthorizationBoundary": {
      "type": "object",
      "required": [
        "contract",
        "decision",
        "capability_issued",
        "execution_authorized",
        "source_authenticity_verified",
        "signer_standing_verified",
        "revocation_checked",
        "signature"
      ],
      "properties": {
        "contract": {
          "type": "string",
          "enum": [
            "mvr-action-boundary@1"
          ]
        },
        "decision": {
          "type": "string",
          "enum": [
            "BLOCKED"
          ]
        },
        "capability_issued": {
          "type": "boolean",
          "enum": [
            false
          ]
        },
        "execution_authorized": {
          "type": "boolean",
          "enum": [
            false
          ]
        },
        "reason": {
          "type": "string"
        },
        "source_authenticity_verified": {
          "type": "boolean",
          "enum": [
            false
          ]
        },
        "signer_standing_verified": {
          "type": "boolean",
          "enum": [
            false
          ]
        },
        "revocation_checked": {
          "type": "boolean",
          "enum": [
            false
          ]
        },
        "signature": {
          "enum": [
            null
          ],
          "nullable": true
        }
      },
      "additionalProperties": false,
      "description": "Required fail-closed action boundary, not a signed permission capability. Missing, malformed or unknown boundaries must be treated as BLOCKED by the host. This release cannot emit ALLOWED. Independent authority is required outside AMOS. Legacy authorized output-use labels never lift this boundary."
    },
    "ActionCapability": {
      "type": "object",
      "required": [
        "status",
        "reason",
        "capability_issued",
        "execution_authorized"
      ],
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "not_issued"
          ]
        },
        "reason": {
          "type": "string"
        },
        "capability_issued": {
          "type": "boolean",
          "enum": [
            false
          ]
        },
        "execution_authorized": {
          "type": "boolean",
          "enum": [
            false
          ]
        }
      },
      "additionalProperties": false,
      "description": "No execution capability exists in this release. action_authorization.decision remains BLOCKED; this is not a capability issuer or verifier."
    },
    "AnalysisUse": {
      "type": "object",
      "required": [
        "status",
        "permitted_uses",
        "execution_permission"
      ],
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "not_assessed",
            "not_permitted",
            "permitted_for_listed_uses_only"
          ]
        },
        "permitted_uses": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "internal_review",
              "working_draft",
              "internal_planning",
              "planning",
              "pilot_design",
              "board_reporting",
              "internal_backtest_evaluation"
            ]
          },
          "description": "Document/analysis handling only. Launch, pilot execution, payment and other external actions are never output uses."
        },
        "execution_permission": {
          "type": "boolean",
          "enum": [
            false
          ]
        }
      },
      "additionalProperties": false,
      "description": "Bounded use of this analysis only. Never permission to execute the proposed action."
    },
    "ArtifactRoleEvidenceFinding": {
      "type": "object",
      "required": [
        "path",
        "evidence_id",
        "marker",
        "path_truncated",
        "evidence_id_truncated",
        "artifact_role"
      ],
      "properties": {
        "path": {
          "type": "string",
          "maxLength": 1024,
          "description": "RFC 6901 JSON Pointer into the submitted body. Truncated pointers are not directly resolvable."
        },
        "evidence_id": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 160
        },
        "marker": {
          "type": "string"
        },
        "path_truncated": {
          "type": "boolean"
        },
        "evidence_id_truncated": {
          "type": "boolean"
        },
        "artifact_role": {
          "type": "string",
          "enum": [
            "derived_summary",
            "model_inferred",
            "decision_output",
            "historical_context",
            "unknown"
          ]
        }
      },
      "additionalProperties": false,
      "description": "Explicit prohibited role declaration, not source authentication. unknown means an explicit unknown role, never absent classification."
    },
    "CalibrationDisposition": {
      "type": "object",
      "description": "A serving hold, not empirical validation. Governed retirement requires a verified retirement record; otherwise the hold is quarantined. Neither permits substitution.",
      "required": [
        "status",
        "namespace",
        "key",
        "manifest_key",
        "serving_prohibited",
        "replacement_available",
        "source_truth_verified",
        "attested",
        "retirement_verified"
      ],
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "calibration_retired",
            "calibration_quarantined"
          ]
        },
        "namespace": {
          "type": "string"
        },
        "key": {
          "type": "string"
        },
        "manifest_key": {
          "type": "string"
        },
        "decision_ref": {
          "type": "string"
        },
        "reason_code": {
          "type": "string"
        },
        "approved_at": {
          "type": "string",
          "format": "date-time"
        },
        "serving_prohibited": {
          "type": "boolean",
          "enum": [
            true
          ]
        },
        "replacement_available": {
          "type": "boolean",
          "enum": [
            false
          ]
        },
        "source_truth_verified": {
          "type": "boolean",
          "enum": [
            false
          ]
        },
        "attested": {
          "type": "boolean",
          "enum": [
            false
          ]
        },
        "retirement_verified": {
          "type": "boolean"
        }
      },
      "oneOf": [
        {
          "properties": {
            "status": {
              "enum": [
                "calibration_retired"
              ]
            },
            "retirement_verified": {
              "enum": [
                true
              ]
            }
          },
          "required": [
            "decision_ref",
            "reason_code",
            "approved_at"
          ]
        },
        {
          "properties": {
            "status": {
              "enum": [
                "calibration_quarantined"
              ]
            },
            "retirement_verified": {
              "enum": [
                false
              ]
            }
          }
        }
      ],
      "additionalProperties": true
    },
    "CandidateScoreSummary": {
      "type": [
        "object",
        "null"
      ],
      "properties": {
        "candidate_verdict_released": {
          "type": "boolean",
          "description": "A candidate was released for decision support, never permission to execute. Optional on diagnostic-only or abstained responses."
        },
        "candidate_verdict_authorized": {
          "type": "boolean",
          "deprecated": true,
          "description": "Legacy alias of candidate_verdict_released. This is not action authorization."
        },
        "candidate_verdict_authorized_meaning": {
          "type": "string"
        }
      },
      "additionalProperties": true,
      "description": "Null when no score summary was produced, including abstention. Both flags, when present, have identical values. Absence does not mean authorization. action_authorization remains authoritative for the execution boundary."
    },
    "PreflightActionBoundary": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "contract_version",
        "decision_state",
        "next_safe_action",
        "stop",
        "allowed_effects",
        "forbidden_effects",
        "max_capital_commitment_usd",
        "external_contact_allowed",
        "customer_launch_allowed",
        "revalidate_before_effect",
        "historical_output_is_not_current_permission",
        "execution_authorized",
        "external_action_authorized",
        "capability_issued"
      ],
      "properties": {
        "contract_version": {
          "const": "mvr.preflight-action-boundary/1"
        },
        "decision_state": {},
        "next_safe_action": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "type",
            "availability",
            "required_host_inputs",
            "handoff_source"
          ],
          "properties": {
            "type": {},
            "availability": {},
            "required_host_inputs": {},
            "handoff_source": {}
          }
        },
        "stop": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "required",
            "applies_to",
            "analytical_chain_required",
            "reason_codes",
            "unknown_risks_remain"
          ],
          "properties": {
            "required": {
              "const": true
            },
            "applies_to": {
              "const": "all_consequential_external_actions"
            },
            "analytical_chain_required": {},
            "reason_codes": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "unknown_risks_remain": {
              "const": true
            }
          }
        },
        "allowed_effects": {},
        "forbidden_effects": {
          "const": [
            "spend",
            "external_contact",
            "contract",
            "customer_launch",
            "pilot_execution",
            "payment",
            "deployment"
          ]
        },
        "max_capital_commitment_usd": {
          "const": 0
        },
        "external_contact_allowed": {
          "const": false
        },
        "customer_launch_allowed": {
          "const": false
        },
        "revalidate_before_effect": {
          "const": true
        },
        "historical_output_is_not_current_permission": {
          "const": true
        },
        "execution_authorized": {
          "const": false
        },
        "external_action_authorized": {
          "const": false
        },
        "capability_issued": {
          "const": false
        }
      },
      "oneOf": [
        {
          "properties": {
            "decision_state": {
              "enum": [
                "assessment_in_progress"
              ]
            },
            "allowed_effects": {
              "const": [
                "read_only_assessment"
              ]
            },
            "next_safe_action": {
              "properties": {
                "type": {
                  "enum": [
                    "continue_evidence_assessment"
                  ]
                },
                "availability": {
                  "const": "exact_server_handoff"
                },
                "required_host_inputs": {
                  "const": []
                },
                "handoff_source": {
                  "const": "mcp_next_call"
                }
              }
            },
            "stop": {
              "properties": {
                "analytical_chain_required": {
                  "const": false
                }
              }
            }
          }
        },
        {
          "properties": {
            "decision_state": {
              "enum": [
                "abstain_pending_evidence",
                "assessment_completed"
              ]
            },
            "allowed_effects": {
              "const": [
                "versioned_internal_plan"
              ]
            },
            "next_safe_action": {
              "properties": {
                "type": {
                  "enum": [
                    "evidence_collection_design",
                    "internal_pilot_design"
                  ]
                },
                "availability": {
                  "const": "authenticated_case_handoff"
                },
                "required_host_inputs": {
                  "const": [
                    "current_case",
                    "expected_revision",
                    "operation_id"
                  ]
                },
                "handoff_source": {
                  "const": "review_progress.bounded_next_actions"
                }
              }
            },
            "stop": {
              "properties": {
                "analytical_chain_required": {
                  "const": true
                }
              }
            }
          }
        },
        {
          "properties": {
            "decision_state": {
              "enum": [
                "outside_declared_mvr_scope"
              ]
            },
            "allowed_effects": {
              "const": []
            },
            "next_safe_action": {
              "properties": {
                "type": {
                  "enum": [
                    "ordinary_task_outside_mvr"
                  ]
                },
                "availability": {
                  "const": "routing_only_not_permission"
                },
                "required_host_inputs": {
                  "const": []
                },
                "handoff_source": {
                  "const": null
                }
              }
            },
            "stop": {
              "properties": {
                "analytical_chain_required": {
                  "const": true
                }
              }
            }
          }
        },
        {
          "properties": {
            "decision_state": {
              "enum": [
                "blocked_invalid_or_unavailable"
              ]
            },
            "allowed_effects": {
              "const": []
            },
            "next_safe_action": {
              "properties": {
                "type": {
                  "enum": [
                    "correct_input_or_restore_current_state"
                  ]
                },
                "availability": {
                  "const": "blocked"
                },
                "required_host_inputs": {
                  "const": [
                    "valid_input_and_current_state"
                  ]
                },
                "handoff_source": {
                  "const": null
                }
              }
            },
            "stop": {
              "properties": {
                "analytical_chain_required": {
                  "const": true
                }
              }
            }
          }
        },
        {
          "properties": {
            "decision_state": {
              "enum": [
                "abstain_pending_evidence",
                "assessment_completed"
              ]
            },
            "allowed_effects": {
              "const": [
                "local_internal_draft"
              ]
            },
            "next_safe_action": {
              "properties": {
                "type": {
                  "enum": [
                    "internal_evidence_plan"
                  ]
                },
                "availability": {
                  "const": "draft_only_no_external_effect"
                },
                "required_host_inputs": {
                  "const": [
                    "human_review_of_unknowns"
                  ]
                },
                "handoff_source": {
                  "const": null
                }
              }
            },
            "stop": {
              "properties": {
                "analytical_chain_required": {
                  "const": true
                }
              }
            }
          }
        }
      ]
    },
    "ReceiptEvidenceFinding": {
      "type": "object",
      "required": [
        "path",
        "evidence_id",
        "marker",
        "path_truncated",
        "evidence_id_truncated"
      ],
      "properties": {
        "path": {
          "type": "string",
          "maxLength": 1024,
          "description": "RFC 6901 JSON Pointer into the submitted body. Truncated pointers are not directly resolvable."
        },
        "evidence_id": {
          "type": [
            "string",
            "null"
          ],
          "maxLength": 160
        },
        "marker": {
          "type": "string"
        },
        "path_truncated": {
          "type": "boolean"
        },
        "evidence_id_truncated": {
          "type": "boolean"
        }
      },
      "additionalProperties": false
    },
    "ResidualRiskRegister": {
      "type": "object",
      "properties": {
        "contract_version": {
          "const": "mvr.residual-risk-register/1"
        },
        "scope": {
          "type": "string",
          "enum": [
            "reported_checks_only",
            "outside_declared_mvr_scope"
          ]
        },
        "taxonomy_url": {
          "type": "string"
        },
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "code": {
                "type": "string"
              },
              "state": {
                "type": "string",
                "enum": [
                  "open",
                  "recorded_review_satisfied",
                  "closed"
                ]
              },
              "status": {
                "type": "string",
                "enum": [
                  "open",
                  "procedural_requirement_recorded",
                  "resolved",
                  "accepted_by_accountable_owner"
                ]
              },
              "source_codes": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "additionalProperties": true
          }
        },
        "complete_risk_inventory": {
          "const": false
        },
        "omitted_risks_unknown": {
          "const": true
        },
        "underlying_decision_unchanged": {
          "const": true
        },
        "evidence_gap_closure": {
          "const": false
        },
        "execution_authorized": {
          "const": false
        },
        "registry_version": {
          "type": "string"
        },
        "assessed_domains": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "unassessed_domains_unknown": {
          "const": true
        },
        "case_basis": {
          "type": [
            "object",
            "null"
          ],
          "properties": {
            "case_id": {
              "type": "string"
            },
            "case_revision": {
              "type": "integer"
            },
            "basis_sha256": {
              "type": "string"
            }
          },
          "additionalProperties": true
        },
        "instances": {
          "type": "array",
          "maxItems": 40,
          "items": {
            "type": "object",
            "properties": {
              "residual_id": {
                "type": "string"
              },
              "risk_code": {
                "type": "string"
              },
              "scope_ref": {
                "type": "string"
              },
              "disposition": {
                "type": "string",
                "enum": [
                  "open",
                  "procedural_requirement_recorded",
                  "resolved",
                  "accepted_by_accountable_owner"
                ]
              },
              "evidence_path": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "claim_ref": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "requirements_ref": {
                "type": "string"
              },
              "proof_reference": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "verification_method": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "source_valid_until": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "allowed_action_ceiling": {
                "const": "internal_planning_only"
              }
            },
            "additionalProperties": true
          }
        },
        "instances_truncated": {
          "type": "boolean"
        },
        "factual_closure_available": {
          "type": "boolean"
        }
      },
      "additionalProperties": true
    }
  }
}