{
  "tool_id": "fallback_chain_simulator",
  "slug": "fallback-chain-simulator",
  "path": "/fallback-chain-simulator/",
  "mode": "client_side",
  "usage": "Client-side calculator. Open https://aifinhub.io/fallback-chain-simulator/ and fill in the inputs; results render in-browser. Also importable as ES module from https://aifinhub.io/engines/fallback-chain-simulator.js — call compute(input) with the JSON shape below.",
  "methodology": "https://aifinhub.io/methodology/fallback-chain-simulator/",
  "sample_input": {
    "tool": "fallback_chain_simulator",
    "provider_id": "",
    "model_id": "",
    "rate_429": 0,
    "p99_latency_ms": 0,
    "deadline_ms": 0,
    "input_tokens": 0,
    "output_tokens": 0,
    "trials": 1000,
    "seed": 1
  },
  "input_schema": {
    "type": "object",
    "properties": {
      "tool": {
        "type": "string"
      },
      "provider_id": {
        "type": "string"
      },
      "model_id": {
        "type": "string"
      },
      "rate_429": {
        "type": "number"
      },
      "p99_latency_ms": {
        "type": "number"
      },
      "deadline_ms": {
        "type": "number"
      },
      "input_tokens": {
        "type": "number"
      },
      "output_tokens": {
        "type": "number"
      },
      "trials": {
        "type": "number"
      },
      "seed": {
        "type": "number"
      }
    },
    "required": [
      "tool",
      "provider_id",
      "model_id",
      "rate_429",
      "p99_latency_ms",
      "deadline_ms",
      "input_tokens",
      "output_tokens",
      "trials",
      "seed"
    ]
  },
  "output_schema": {
    "type": "object",
    "properties": {
      "providers": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "models": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        }
      },
      "hint": {
        "type": "string"
      }
    }
  }
}
