{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://agoragentic.com/schema/finance-agent-readiness-requirements.v1.json",
  "title": "Finance Agent Readiness Requirements V1",
  "description": "Read-only owner/admin readiness-requirements response for Version C finance-agent launch gates. This schema describes queryable launch modes, required external evidence, owner approval checklist, stop-control drill, data minimization plan, supporting gate-evidence record schema refs, stored gate summaries, and forced-false live authority. It does not run Robinhood MCP probes, dispatch providers, approve live action, enable options execution, mutate wallet/x402 state, call execute/invoke, publish listings, or publish capabilities.",
  "type": "object",
  "required": [
    "schema",
    "schema_ref",
    "deployment_id",
    "owner_id",
    "source",
    "read_only",
    "no_live_action_assertion",
    "readiness_proof_route",
    "gate_evidence_record_route",
    "evidence_schemas",
    "required_external_gates",
    "launch_modes",
    "next_safe_actions",
    "policy_summary",
    "stop_control_summary",
    "live_authority",
    "mutation_flags",
    "redaction_summary",
    "current_external_gate_status",
    "version_c_gate_matrix"
  ],
  "properties": {
    "schema": { "type": "string", "const": "agoragentic.agent-os.finance-agent-readiness-requirements.v1" },
    "schema_ref": { "type": "string", "const": "/schema/finance-agent-readiness-requirements.v1.json" },
    "deployment_id": { "type": ["string", "null"] },
    "owner_id": { "type": ["string", "null"] },
    "source": { "type": "string" },
    "read_only": { "type": "boolean", "const": true },
    "no_live_action_assertion": { "type": "boolean", "const": true },
    "readiness_proof_route": { "type": "string", "const": "/api/agent-os/finance/deployments/{deployment_id}/readiness-proofs" },
    "gate_evidence_record_route": { "type": "string", "const": "/api/agent-os/finance/deployments/{deployment_id}/gate-evidence-records" },
    "evidence_schemas": { "$ref": "#/$defs/evidence_schemas" },
    "required_external_gates": {
      "type": "array",
      "minItems": 3,
      "items": { "$ref": "#/$defs/external_gate_requirement" }
    },
    "launch_modes": {
      "type": "array",
      "minItems": 6,
      "items": { "$ref": "#/$defs/launch_mode_requirement" }
    },
    "next_safe_actions": {
      "type": "array",
      "items": { "type": "string" }
    },
    "policy_summary": { "type": "object" },
    "stop_control_summary": {
      "type": "object",
      "required": [
        "owner_can_disable_connector_policy",
        "disabled_connector_blocks_dispatch",
        "no_live_connector_route_exists_in_v1",
        "provider_dispatch_enabled",
        "public_execute_enabled"
      ],
      "properties": {
        "owner_can_disable_connector_policy": { "type": "boolean", "const": true },
        "disabled_connector_blocks_dispatch": { "type": "boolean", "const": true },
        "no_live_connector_route_exists_in_v1": { "type": "boolean", "const": true },
        "public_text_cannot_override_policy": { "type": "boolean", "const": true },
        "metadata_cannot_override_policy": { "type": "boolean", "const": true },
        "provider_dispatch_enabled": { "type": "boolean", "const": false },
        "public_execute_enabled": { "type": "boolean", "const": false }
      },
      "additionalProperties": true
    },
    "live_authority": { "$ref": "#/$defs/live_authority" },
    "mutation_flags": { "$ref": "#/$defs/mutation_flags" },
    "redaction_summary": { "$ref": "#/$defs/redaction_summary" },
    "current_external_gate_status": { "$ref": "#/$defs/current_external_gate_status" },
    "version_c_gate_matrix": { "$ref": "https://agoragentic.com/schema/finance-agent-version-c-gate-matrix.v1.json" }
  },
  "not": {
    "anyOf": [
      { "required": ["raw_schema"] },
      { "required": ["raw_payload"] },
      { "required": ["account_values"] },
      { "required": ["card_values"] },
      { "required": ["order_values"] },
      { "required": ["payment_values"] },
      { "required": ["wallet_values"] },
      { "required": ["auth_token"] },
      { "required": ["access_token"] },
      { "required": ["refresh_token"] }
    ]
  },
  "additionalProperties": true,
  "$defs": {
    "evidence_schemas": {
      "type": "object",
      "required": [
        "finance_policy",
        "mcp_schema_proof",
        "compliance_approval",
        "readiness_requirements",
        "version_c_gate_matrix",
        "gate_evidence_record",
        "external_gate_bundle",
        "owner_approval_checklist",
        "stop_control_drill",
        "data_minimization_plan",
        "options_review_packet",
        "financial_research_job",
        "robinhood_connector"
      ],
      "properties": {
        "finance_policy": { "type": "string", "const": "/schema/finance-agent-policy.v1.json" },
        "mcp_schema_proof": { "type": "string", "const": "/schema/finance-agent-mcp-schema-proof.v1.json" },
        "compliance_approval": { "type": "string", "const": "/schema/finance-agent-compliance-approval.v1.json" },
        "readiness_requirements": { "type": "string", "const": "/schema/finance-agent-readiness-requirements.v1.json" },
        "version_c_gate_matrix": { "type": "string", "const": "/schema/finance-agent-version-c-gate-matrix.v1.json" },
        "gate_evidence_record": { "type": "string", "const": "/schema/finance-agent-gate-evidence-record.v1.json" },
        "external_gate_bundle": { "type": "string", "const": "/schema/finance-agent-external-gate-bundle.v1.json" },
        "owner_approval_checklist": { "type": "string", "const": "/schema/finance-agent-owner-approval-checklist.v1.json" },
        "stop_control_drill": { "type": "string", "const": "/schema/finance-agent-stop-control-drill.v1.json" },
        "data_minimization_plan": { "type": "string", "const": "/schema/finance-agent-data-minimization-plan.v1.json" },
        "options_review_packet": { "type": "string", "const": "/schema/finance-agent-options-review-packet.v1.json" },
        "financial_research_job": { "type": "string", "const": "/schema/financial-research-job.v1.json" },
        "robinhood_connector": { "type": "string", "const": "/schema/robinhood-agent-os-connector.v1.json" }
      },
      "additionalProperties": true
    },
    "external_gate_requirement": {
      "type": "object",
      "required": ["gate", "required_for", "schema"],
      "properties": {
        "gate": {
          "type": "string",
          "enum": [
            "owner_authenticated_robinhood_mcp_schema_probe",
            "finance_agent_owner_legal_commercial_approval",
            "finance_agent_options_review_approval"
          ]
        },
        "required_for": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "approved_trading",
              "approved_card",
              "options_signal_intelligence",
              "options_review_packet"
            ]
          }
        },
        "schema": {
          "type": "string",
          "enum": [
            "/schema/finance-agent-mcp-schema-proof.v1.json",
            "/schema/finance-agent-compliance-approval.v1.json"
          ]
        },
        "route_can_collect_credentials": { "type": "boolean", "const": false },
        "route_can_run_probe": { "type": "boolean", "const": false },
        "route_can_dispatch_provider": { "type": "boolean", "const": false },
        "route_can_approve_live_actions": { "type": "boolean", "const": false },
        "route_can_approve_public_claims": { "type": "boolean", "const": false },
        "route_can_approve_marketplace_publication": { "type": "boolean", "const": false },
        "route_can_enable_options_execution": { "type": "boolean", "const": false },
        "options_review_requires_trading_schema_proof": { "type": "boolean", "const": true }
      },
      "additionalProperties": true
    },
    "launch_mode_requirement": {
      "type": "object",
      "properties": {
        "launch_mode": {
          "type": "string",
          "enum": ["research_only", "order_review", "approved_trading", "approved_card", "options"]
        },
        "instrument_scope": {
          "type": "string",
          "enum": ["options_signal_intelligence"]
        },
        "mode_type": { "type": "string" },
        "readiness_status_when_complete": {
          "type": "string",
          "enum": ["passed", "failed", "research_only_metadata"]
        },
        "required_evidence": {
          "type": "array",
          "items": { "type": "string" }
        },
        "required_external_evidence": {
          "type": "array",
          "items": {
            "type": "object",
            "required": ["kind", "schema"],
            "properties": {
              "kind": {
                "type": "string",
                "enum": [
                  "owner_authenticated_mcp_schema_probe",
                  "finance_agent_owner_legal_commercial_approval"
                ]
              },
              "connector": {
                "type": "string",
                "enum": ["robinhood_trading", "robinhood_banking"]
              },
              "approval_state": {
                "type": "string",
                "const": "approved_for_no_action_readiness"
              },
              "schema": {
                "type": "string",
                "enum": [
                  "/schema/finance-agent-mcp-schema-proof.v1.json",
                  "/schema/finance-agent-compliance-approval.v1.json"
                ]
              }
            },
            "additionalProperties": true
          }
        },
        "required_policy": {
          "type": "array",
          "items": { "type": "string" }
        },
        "allowed_outputs": {
          "type": "array",
          "items": { "type": "string" }
        },
        "blockers_when_missing": {
          "type": "array",
          "items": { "type": "string" }
        },
        "prohibited": {
          "type": "array",
          "items": { "type": "string" }
        },
        "review_packet_contract": { "$ref": "#/$defs/options_review_packet_contract" }
      },
      "additionalProperties": true
    },
    "options_review_packet_contract": {
      "type": "object",
      "required": [
        "artifact",
        "allowed_only_with_instrument_scope",
        "purpose",
        "required_packet_flags",
        "forced_false_execution_flags",
        "prohibited_fields",
        "review_packet_schema",
        "approval_evidence_route",
        "approval_evidence_schema",
        "approval_evidence_scopes",
        "route_can_approve_options_execution",
        "route_can_execute",
        "route_can_dispatch_provider"
      ],
      "properties": {
        "artifact": { "type": "string", "const": "options_review_packet" },
        "allowed_only_with_instrument_scope": { "type": "string", "const": "options_signal_intelligence" },
        "purpose": { "type": "string", "const": "owner_compliance_review_evidence_only" },
        "required_packet_flags": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "owner_approval_required",
              "compliance_review_required",
              "brokerage_options_approval_required",
              "mcp_schema_proof_required",
              "non_personalized"
            ]
          }
        },
        "forced_false_execution_flags": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "executable_directly",
              "can_execute_orders",
              "provider_dispatch_enabled",
              "options_execution_enabled",
              "option_order_schema_allowed"
            ]
          }
        },
        "prohibited_fields": {
          "type": "array",
          "items": { "type": "string" }
        },
        "review_packet_schema": { "type": "string", "const": "/schema/finance-agent-options-review-packet.v1.json" },
        "approval_evidence_route": { "type": "string", "const": "/api/agent-os/finance/deployments/{deployment_id}/compliance-approvals" },
        "approval_evidence_schema": { "type": "string", "const": "/schema/finance-agent-compliance-approval.v1.json" },
        "approval_evidence_scopes": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": ["options_signal_intelligence", "options_review_packet"]
          }
        },
        "route_can_approve_options_execution": { "type": "boolean", "const": false },
        "route_can_execute": { "type": "boolean", "const": false },
        "route_can_dispatch_provider": { "type": "boolean", "const": false }
      },
      "additionalProperties": true
    },
    "current_external_gate_status": {
      "type": "object",
      "required": [
        "mcp_schema_proofs",
        "compliance_approval",
        "compliance_approvals_by_scope",
        "supporting_gate_evidence",
        "live_authority"
      ],
      "properties": {
        "mcp_schema_proofs": {
          "type": "object",
          "required": ["trading", "banking"],
          "properties": {
            "trading": { "$ref": "#/$defs/redacted_mcp_evidence" },
            "banking": { "$ref": "#/$defs/redacted_mcp_evidence" }
          },
          "additionalProperties": true
        },
        "compliance_approval": { "$ref": "#/$defs/redacted_compliance_evidence" },
        "compliance_approvals_by_scope": {
          "type": "object",
          "required": ["approved_trading", "approved_card", "options_review_packet"],
          "properties": {
            "approved_trading": { "$ref": "#/$defs/redacted_compliance_evidence" },
            "approved_card": { "$ref": "#/$defs/redacted_compliance_evidence" },
            "options_review_packet": { "$ref": "#/$defs/redacted_compliance_evidence" }
          },
          "additionalProperties": true
        },
        "supporting_gate_evidence": {
          "type": "object",
          "required": [
            "external_gate_bundle",
            "owner_approval_checklist",
            "stop_control_drill",
            "data_minimization_plan"
          ],
          "properties": {
            "external_gate_bundle": { "$ref": "#/$defs/redacted_gate_evidence_record" },
            "owner_approval_checklist": { "$ref": "#/$defs/redacted_gate_evidence_record" },
            "stop_control_drill": { "$ref": "#/$defs/redacted_gate_evidence_record" },
            "data_minimization_plan": { "$ref": "#/$defs/redacted_gate_evidence_record" }
          },
          "additionalProperties": true
        },
        "live_authority": { "$ref": "#/$defs/live_authority" }
      },
      "additionalProperties": true
    },
    "bounded_ref": {
      "type": "string",
      "minLength": 1,
      "maxLength": 256,
      "not": {
        "anyOf": [
          { "pattern": "^[a-z][a-z0-9+.-]*://" },
          { "pattern": "^data:" },
          { "pattern": "^[\\[{]" },
          { "pattern": "[\\r\\n]" },
          { "pattern": "([Bb][Ee][Aa][Rr][Ee][Rr]|[Bb][Aa][Ss][Ii][Cc])\\s+[A-Za-z0-9._~+/=-]{8,}" },
          { "pattern": "\\b([Aa][Cc][Cc][Ee][Ss][Ss]|[Rr][Ee][Ff][Rr][Ee][Ss][Hh]|[Aa][Uu][Tt][Hh]|[Oo][Aa][Uu][Tt][Hh])[_-]?[Tt][Oo][Kk][Ee][Nn]\\b" },
          { "pattern": "\\b([Aa][Pp][Ii][_-]?[Kk][Ee][Yy]|[Ss][Ee][Cc][Rr][Ee][Tt]|[Cc][Rr][Ee][Dd][Ee][Nn][Tt][Ii][Aa][Ll]|[Pp][Aa][Ss][Ss][Ww][Oo][Rr][Dd]|[Mm][Ff][Aa]|[Oo][Tt][Pp]|[Cc][Vv][Vv]|[Cc][Vv][Cc]|[Pp][Aa][Nn]|[Ss][Ss][Nn])\\b" },
          { "pattern": "\\b([Aa][Cc][Cc][Oo][Uu][Nn][Tt]|[Cc][Aa][Rr][Dd]|[Pp][Aa][Yy][Mm][Ee][Nn][Tt]|[Ww][Aa][Ll][Ll][Ee][Tt]|[Rr][Oo][Uu][Tt][Ii][Nn][Gg])[_-]?([Nn][Uu][Mm][Bb][Ee][Rr]|[Pp][Aa][Yy][Ll][Oo][Aa][Dd]|[Rr][Aa][Ww]|[Vv][Aa][Ll][Uu][Ee]|[Vv][Aa][Ll][Uu][Ee][Ss])\\b" },
          { "pattern": "[?&]([Tt][Oo][Kk][Ee][Nn]|[Aa][Cc][Cc][Ee][Ss][Ss]_[Tt][Oo][Kk][Ee][Nn]|[Rr][Ee][Ff][Rr][Ee][Ss][Hh]_[Tt][Oo][Kk][Ee][Nn]|[Aa][Pp][Ii]_[Kk][Ee][Yy]|[Kk][Ee][Yy]|[Ss][Ee][Cc][Rr][Ee][Tt]|[Aa][Cc][Cc][Oo][Uu][Nn][Tt]|[Cc][Aa][Rr][Dd]|[Pp][Aa][Yy][Mm][Ee][Nn][Tt]|[Ww][Aa][Ll][Ll][Ee][Tt]|[Aa][Uu][Tt][Hh][Oo][Rr][Ii][Zz][Aa][Tt][Ii][Oo][Nn])=" },
          { "pattern": "\\b([Ss][Kk]|[Pp][Kk]|[Aa][Mm][Kk]|[Xx][Oo][Xx][BbAaPpRrSs]|[Gg][Hh][PpOoUuSsRr])_[A-Za-z0-9_=-]{8,}\\b" }
        ]
      }
    },
    "nullable_bounded_ref": {
      "anyOf": [
        { "type": "null" },
        { "$ref": "#/$defs/bounded_ref" }
      ]
    },
    "redacted_gate_evidence_record": {
      "type": ["object", "null"],
      "properties": {
        "record_id": { "type": ["string", "null"] },
        "evidence_kind": {
          "type": ["string", "null"],
          "enum": ["external_gate_bundle", "owner_approval_checklist", "stop_control_drill", "data_minimization_plan", null]
        },
        "status": { "type": ["string", "null"], "enum": ["recorded", "archived", null] },
        "record_state": { "type": ["string", "null"], "enum": ["recorded_redacted_ref", null] },
        "reviewed_schema_ref": { "type": ["string", "null"] },
        "artifact_ref": { "$ref": "#/$defs/nullable_bounded_ref" },
        "artifact_hash": { "$ref": "#/$defs/nullable_bounded_ref" },
        "receipt_id": { "type": ["string", "null"] },
        "route_records_evidence_only": { "type": "boolean", "const": true },
        "route_can_run_probe": { "type": "boolean", "const": false },
        "route_can_dispatch_provider": { "type": "boolean", "const": false },
        "route_can_approve_live_actions": { "type": "boolean", "const": false },
        "route_can_enable_options_execution": { "type": "boolean", "const": false },
        "route_can_create_live_read_route": { "type": "boolean", "const": false },
        "gate_evidence_record_grants_live_authority": { "type": "boolean", "const": false }
      },
      "additionalProperties": true
    },
    "redacted_mcp_evidence": {
      "type": ["object", "null"],
      "properties": {
        "connector_type": { "type": ["string", "null"] },
        "proof_id": { "type": ["string", "null"] },
        "status": { "type": ["string", "null"], "enum": ["verified", "failed", "archived", null] },
        "validation_reason": { "type": ["string", "null"] },
        "mcp_server_name": { "type": ["string", "null"] },
        "endpoint_ref": { "type": ["string", "null"] },
        "schema_probe_completed": { "type": "boolean" },
        "tools_visible": { "type": "boolean" },
        "owner_authenticated": { "type": "boolean" },
        "schema_hash": { "$ref": "#/$defs/nullable_bounded_ref" },
        "evidence_ref": { "$ref": "#/$defs/nullable_bounded_ref" },
        "evidence_hash": { "$ref": "#/$defs/nullable_bounded_ref" },
        "receipt_id": { "type": ["string", "null"] },
        "provider_dispatch_performed": { "type": "boolean", "const": false },
        "live_action_performed": { "type": "boolean", "const": false }
      },
      "additionalProperties": true
    },
    "redacted_compliance_evidence": {
      "type": ["object", "null"],
      "properties": {
        "approval_id": { "type": ["string", "null"] },
        "status": { "type": ["string", "null"], "enum": ["verified", "failed", "archived", null] },
        "validation_reason": { "type": ["string", "null"] },
        "launch_modes": {
          "type": "array",
          "items": { "type": "string" }
        },
        "approval_ref": { "$ref": "#/$defs/nullable_bounded_ref" },
        "approval_hash": { "$ref": "#/$defs/nullable_bounded_ref" },
        "brokerage_options_approval_ref": { "$ref": "#/$defs/nullable_bounded_ref" },
        "brokerage_options_approval_hash": { "$ref": "#/$defs/nullable_bounded_ref" },
        "route_can_approve_live_actions": { "type": "boolean", "const": false },
        "route_can_enable_options_execution": { "type": "boolean", "const": false },
        "provider_dispatch_approved": { "type": "boolean", "const": false },
        "options_execution_approved": { "type": "boolean", "const": false },
        "options_order_schema_approved": { "type": "boolean", "const": false },
        "options_provider_dispatch_approved": { "type": "boolean", "const": false },
        "marketplace_publication_approved": { "type": "boolean", "const": false },
        "x402_settlement_approved": { "type": "boolean", "const": false }
      },
      "additionalProperties": true
    },
    "live_authority": {
      "type": "object",
      "required": [
        "robinhood_provider_dispatch",
        "external_provider_call",
        "order_placement",
        "order_cancellation",
        "card_detail_fetch",
        "card_purchase",
        "wallet_mutation",
        "x402_settlement",
        "public_execute_mutation",
        "global_execute_mutation",
        "global_invoke_mutation",
        "marketplace_publication",
        "capability_publication"
      ],
      "properties": {
        "robinhood_provider_dispatch": { "type": "boolean", "const": false },
        "external_provider_call": { "type": "boolean", "const": false },
        "order_placement": { "type": "boolean", "const": false },
        "order_cancellation": { "type": "boolean", "const": false },
        "card_detail_fetch": { "type": "boolean", "const": false },
        "card_purchase": { "type": "boolean", "const": false },
        "wallet_mutation": { "type": "boolean", "const": false },
        "x402_settlement": { "type": "boolean", "const": false },
        "public_execute_mutation": { "type": "boolean", "const": false },
        "global_execute_mutation": { "type": "boolean", "const": false },
        "global_invoke_mutation": { "type": "boolean", "const": false },
        "marketplace_publication": { "type": "boolean", "const": false },
        "capability_publication": { "type": "boolean", "const": false }
      },
      "additionalProperties": false
    },
    "mutation_flags": {
      "type": "object",
      "required": [
        "provider_dispatch_enabled",
        "provider_dispatch_performed",
        "live_order_placement_enabled",
        "live_order_placement_performed",
        "order_cancellation_enabled",
        "card_detail_fetch_enabled",
        "card_purchase_enabled",
        "wallet_mutation_enabled",
        "x402_settlement_enabled",
        "x402_readiness_mutation_enabled",
        "public_execute_enabled",
        "global_execute_mutation_enabled",
        "global_invoke_mutation_enabled",
        "marketplace_publication_enabled",
        "capability_publication_enabled"
      ],
      "properties": {
        "provider_dispatch_enabled": { "type": "boolean", "const": false },
        "provider_dispatch_performed": { "type": "boolean", "const": false },
        "live_order_placement_enabled": { "type": "boolean", "const": false },
        "live_order_placement_performed": { "type": "boolean", "const": false },
        "order_cancellation_enabled": { "type": "boolean", "const": false },
        "card_detail_fetch_enabled": { "type": "boolean", "const": false },
        "card_purchase_enabled": { "type": "boolean", "const": false },
        "wallet_mutation_enabled": { "type": "boolean", "const": false },
        "x402_settlement_enabled": { "type": "boolean", "const": false },
        "x402_readiness_mutation_enabled": { "type": "boolean", "const": false },
        "public_execute_enabled": { "type": "boolean", "const": false },
        "global_execute_mutation_enabled": { "type": "boolean", "const": false },
        "global_invoke_mutation_enabled": { "type": "boolean", "const": false },
        "marketplace_publication_enabled": { "type": "boolean", "const": false },
        "capability_publication_enabled": { "type": "boolean", "const": false }
      },
      "additionalProperties": true
    },
    "redaction_summary": {
      "type": "object",
      "required": [
        "raw_account_values_excluded",
        "raw_card_values_excluded",
        "raw_order_values_excluded",
        "raw_position_values_excluded",
        "raw_transaction_values_excluded",
        "raw_payment_payload_excluded",
        "wallet_private_data_excluded",
        "settlement_internals_excluded",
        "provider_credentials_excluded",
        "private_ecf_excluded",
        "secrets_excluded"
      ],
      "properties": {
        "raw_account_values_excluded": { "type": "boolean", "const": true },
        "raw_card_values_excluded": { "type": "boolean", "const": true },
        "raw_order_values_excluded": { "type": "boolean", "const": true },
        "raw_position_values_excluded": { "type": "boolean", "const": true },
        "raw_transaction_values_excluded": { "type": "boolean", "const": true },
        "raw_payment_payload_excluded": { "type": "boolean", "const": true },
        "wallet_private_data_excluded": { "type": "boolean", "const": true },
        "settlement_internals_excluded": { "type": "boolean", "const": true },
        "provider_credentials_excluded": { "type": "boolean", "const": true },
        "private_ecf_excluded": { "type": "boolean", "const": true },
        "secrets_excluded": { "type": "boolean", "const": true }
      },
      "additionalProperties": true
    }
  }
}
