{
  "tool_id": "art-538-custody-segregation-ratio",
  "tool_version": "1.0.0",
  "display_name": "Custody Segregation Ratio",
  "mcp_name": "compute_custody_segregation_ratio",
  "mandate_type": "compliance_control",
  "wave": 84,
  "gpu": false,
  "url": "https://ainumbers.co/chaingraph/art-538-custody-segregation-ratio.html",
  "description": "Generic, jurisdiction-neutral custody-segregation check: segregated_custody_assets_musd / customer_claims_musd, per asset class and rolled up. FULLY_SEGREGATED at or above 1.0, UNDER_SEGREGATED below it, OVER_SEGREGATED above an optional configurable ceiling. A zero-claims line resolves segregation_ratio null and status NO_CLAIMS_OUTSTANDING -- never a division artifact. Aggregate totals only (no per-customer or per-wallet line item). SEC Rule 15c3-3 possession-or-control (17 CFR 240.15c3-3(b)) is named as one crosswalk-annex instance among possibly several -- the arithmetic does not depend on that citation, and the SEC 15c3-3 Exhibit A reserve formula stays a distinct, unedited node (art-396).",
  "input_schema_ref": "chaingraph/art-538-custody-segregation-ratio.html#manifest",
  "consumes": [],
  "feeds": [],
  "status": "live",
  "conformance_fixtures": true,
  "compute_capability": "server",
  "compute_images": [
    {
      "system": "sha256-source",
      "image_id": "sha256:8791e2f24a2de92cbb8f32606cebc9fae0e42650fa20eecd57129ecd6c2fd8a8",
      "valid_from": "2026-07-10"
    },
    {
      "system": "risc0",
      "image_id": "sha256:a1a0bc89b5b1febaeda3519f6dbade0fa5ac16beeb143c4e1b01689573567bc6",
      "valid_from": "2026-08-04"
    }
  ],
  "compute_proof_ready": "ready",
  "deferred_reason": "New shard; awaiting the async GPU proving queue (S18 steady-state).",
  "export_capability": [
    "json"
  ],
  "compute_proof": {
    "type": "ZkVmReceipt",
    "system": "risc0",
    "receiptFormat": "groth16-bn254",
    "imageId": "sha256:a1a0bc89b5b1febaeda3519f6dbade0fa5ac16beeb143c4e1b01689573567bc6",
    "seal": "Gm0C/o7WGaYLe6H/o1VTTingSrmwNY9KgZa/Vy0bl6wk9lEi743VanUTyyZ91AlcJhJsLtxLeQTfRV7x1GUhAxwjAP+DMUmbXcAOZAVmT06TqBSAuFedCZq+kaTb7nkoIDuRnsizAUf5laYFzWxq9O/wm+WzEfQFOYIirvWiAq8RY6QEtksRRujG+1IfkYFtzIsYuZVdQxrLPknlQKrI/xS8GXyHMLkPgNkFnlJK0d1ffaifocsZe5BQBLjnY5doKZch+gKUmwsEQFjrs0jIUphwHVPbbbsDKW10sKWIzPUkBANCPt5c9omwIYCDGaMBfhWSlZmNIvuEVjPAAj5RqA==",
    "journal": {
      "chaingraph_version": "0.4.0",
      "kernel_digest": "sha256:8791e2f24a2de92cbb8f32606cebc9fae0e42650fa20eecd57129ecd6c2fd8a8",
      "output": {
        "custody_location_breakdown": {
          "cold_storage_multisig": 25,
          "qualified_custodian_bank": 90
        },
        "formula": "segregation_ratio = segregated_custody_assets_musd / customer_claims_musd",
        "line_items": [
          {
            "asset_class": "BTC",
            "customer_claims_musd": 20,
            "segregated_custody_assets_musd": 25,
            "segregation_ratio": 1.25,
            "status": "FULLY_SEGREGATED"
          },
          {
            "asset_class": "cash",
            "customer_claims_musd": 50,
            "segregated_custody_assets_musd": 60,
            "segregation_ratio": 1.2,
            "status": "FULLY_SEGREGATED"
          },
          {
            "asset_class": "securities",
            "customer_claims_musd": 30,
            "segregated_custody_assets_musd": 30,
            "segregation_ratio": 1,
            "status": "FULLY_SEGREGATED"
          }
        ],
        "note": "Generic, jurisdiction-neutral segregation check over caller-supplied aggregate totals only (no per-customer or per-wallet line item). Attests the computation over the inputs supplied, not an audit of their source or a determination of regulatory compliance.",
        "over_segregation_ceiling": null,
        "segregation_ratio": 1.15,
        "status": "FULLY_SEGREGATED",
        "total_claims_musd": 100,
        "total_segregated_musd": 115
      }
    }
  }
}
