{
  "openapi": "3.1.0",
  "info": {
    "title": "POSTHUMAN Network Hub Public API",
    "version": "1.14.0",
    "description": "Fixed public JSON projections and one bounded, non-mutating Celestia transport probe used by POSTHUMAN Network Hub. No arbitrary RPC proxy, private infrastructure, wallet access, signing, broadcast, deployment or host control is exposed."
  },
  "servers": [
    {
      "url": "https://hub.posthuman.digital",
      "description": "Public Network Hub"
    }
  ],
  "security": [],
  "x-posthuman": {
    "authority": "public-read-and-bounded-transport-probe",
    "rateLimitPolicy": "Static snapshot routes have no application-level numeric quota. Account, validator and Photon reads share 60 requests per client per minute; transaction and block reads share a separate 60; the Celestia probe and fixed RPC diagnostic share 20. Forwarded client identity is accepted only from the explicit loopback-proxy trust boundary. Cache idempotent GET responses where allowed, use finite timeouts, and retry only with bounded backoff.",
    "corsPolicy": "Cross-origin browser access is not guaranteed by this contract; same-origin UI and server-side HTTPS clients are supported.",
    "versioning": "Existing unversioned /api routes are canonical for this release.",
    "headPolicy": "Every fixed GET endpoint accepts HEAD and returns the same status and representation headers as GET with no response body. HEAD is transport metadata for those GET operations, not an additional data operation.",
    "unknownApiPolicy": "Unknown /api routes return JSON 404. Exact known routes with malformed path identity return JSON 404; disallowed query input returns JSON 400; unsupported methods return JSON 405 with Allow."
  },
  "tags": [
    {
      "name": "IBC"
    },
    {
      "name": "Governance"
    },
    {
      "name": "Networks"
    },
    {
      "name": "Validators"
    },
    {
      "name": "Accounts"
    },
    {
      "name": "Explorer"
    },
    {
      "name": "Assets"
    },
    {
      "name": "Node Ops"
    },
    {
      "name": "Axelar"
    },
    {
      "name": "Celestia"
    }
  ],
  "paths": {
    "/api/account/{networkId}/{address}": {
      "get": {
        "operationId": "getAccount",
        "summary": "Get an exact public account",
        "description": "Returns balances, delegations, unbonding, rewards, vesting, NFT identifiers and bounded recent history for one reviewed chain address.",
        "tags": [
          "Accounts"
        ],
        "parameters": [
          {
            "name": "networkId",
            "in": "path",
            "required": true,
            "description": "Reviewed Network Hub network identifier.",
            "schema": {
              "$ref": "#/components/schemas/AccountNetworkId"
            }
          },
          {
            "name": "address",
            "in": "path",
            "required": true,
            "description": "Exact bech32 account address for the selected network.",
            "schema": {
              "type": "string",
              "minLength": 8,
              "maxLength": 128
            }
          }
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Live bounded request with a short service cache",
          "provenance": "Reviewed public Cosmos REST and fixed RPC",
          "recordCap": "Limits returned in scope; recent history capped at 20 transactions",
          "head": "same-status-and-representation-headers-no-body",
          "rateLimit": "Shared account-service limit: 60 requests per client per minute"
        },
        "responses": {
          "200": {
            "description": "Account snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AccountSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/arc-network": {
      "get": {
        "operationId": "getArcNetwork",
        "summary": "Get Arc mainnet network projection",
        "description": "Returns the Arc mainnet committed head with its safe and finalized tags, a measured block interval, gas and fee state, USDC as the gas token at both of its scales, the block proposers observed over a bounded window, and the release each of the two endpoints is running. Two independent public execution endpoints are compared at the same height and the verdict is published, because a single endpoint that has forked or stalled returns entirely plausible numbers. Arc finalises on commit, so latest, safe and finalized are the same block when the chain is healthy and any separation is consensus failing rather than a queue draining. There is no validator set, staking APR, delegation or unbonding, and that is not an omission: Arc's validator set is permissioned and the chain has no chain-level staking. Those appear in notApplicable, separately from notPublished, which holds validator identities, a consensus API and mempool state \u2014 all of which exist and none of which a public Arc endpoint serves.",
        "tags": [
          "Networks"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Two-minute collector; HTTP cache up to 60 seconds. Arc commits a block about every 500 ms, so the published head is always slightly behind; the snapshot publishes the age of the head it read and the reader refuses a snapshot older than fifteen minutes.",
          "provenance": "Two independent public Arc execution JSON-RPC endpoints, read server-side on the Hub host. POSTHUMAN operates an Arc testnet node and nothing on mainnet; no third-party API key is used and only endpoint hostnames are published.",
          "recordCap": "One network projection with at most 512 observed proposers; no caller-supplied query is accepted",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Arc mainnet network projection",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ArcNetworkSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/axelar-network": {
      "get": {
        "operationId": "getAxelarNetwork",
        "summary": "Get bounded Axelar cross-chain data",
        "description": "Returns the complete validated getAssets response within a 300-record bound, explicitly bonded and non-jailed validators with complete EVM maintainership coverage, Amplifier verifiers and rewards, recent EVM polls, and command batches.",
        "tags": [
          "Axelar"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Collector snapshot; HTTP cache up to 60 seconds",
          "provenance": "Fixed public AxelarScan API methods",
          "recordCap": "200 chains, complete getAssets response up to 300 assets, active validators selected by status=BOND_STATUS_BONDED and jailed=false, 500 verifiers, 1,000 reward rows, and 100 recent polls and batches",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Bounded Axelar network snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AxelarNetworkSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/base-network": {
      "get": {
        "operationId": "getBaseNetwork",
        "summary": "Get Base mainnet network projection",
        "description": "Returns the Base mainnet unsafe head with the safe and finalized heads derived from Ethereum L1, both derivation lags, gas and fee state, and the L1 origin the current head was derived against. Two independent public execution endpoints are compared at the same height and the verdict is published, because a single endpoint that has forked or stalled returns entirely plausible numbers. The unsafe-to-safe lag is the signal worth reading: the unsafe head advances every two seconds whether or not the chain can still read Ethereum. There is no validator set, total stake or staking APR, and that is not an omission: Base has one sequencer, operated by Coinbase, and no chain-level staking. Those appear in notApplicable, separately from notPublished.",
        "tags": [
          "Networks"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Two-minute collector; HTTP cache up to 60 seconds. Base produces a block every two seconds, so the published head is always slightly behind; the snapshot publishes the age of the head it read and the reader refuses a snapshot older than fifteen minutes.",
          "provenance": "Two independent public Base execution JSON-RPC endpoints, read server-side on the Hub host. No Ethereum endpoint is used: the L1 anchor comes from the L1Block predeploy on Base. POSTHUMAN operates no Base node; no third-party API key is used and only endpoint hostnames are published.",
          "recordCap": "One network projection; no list is returned and no caller-supplied query is accepted",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Base mainnet network projection",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BaseNetworkSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/block/{networkId}/{reference}": {
      "get": {
        "operationId": "getBlock",
        "summary": "Get an exact committed block",
        "description": "Returns one block by positive height or exact block hash with header, commit and bounded transaction hashes.",
        "tags": [
          "Explorer"
        ],
        "parameters": [
          {
            "name": "networkId",
            "in": "path",
            "required": true,
            "description": "Reviewed Network Hub network identifier.",
            "schema": {
              "$ref": "#/components/schemas/BlockNetworkId"
            }
          },
          {
            "name": "reference",
            "in": "path",
            "required": true,
            "description": "Positive decimal height or 64-character hexadecimal block hash.",
            "schema": {
              "type": "string",
              "pattern": "^(?:[1-9][0-9]*|[A-Fa-f0-9]{64})$"
            }
          }
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Live exact lookup; successful immutable results may be cached",
          "provenance": "Fixed public Cosmos RPC and REST endpoints",
          "recordCap": "One committed block; maximum 100 transaction hashes",
          "head": "same-status-and-representation-headers-no-body",
          "rateLimit": "Shared transaction-service limit: 60 requests per client per minute"
        },
        "responses": {
          "200": {
            "description": "Block snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BlockSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/burn-observations": {
      "get": {
        "operationId": "getBurnObservations",
        "summary": "Get exact Cosmos Hub burn observations",
        "description": "Returns forward-only exact bank burn events observed after the published baseline.",
        "tags": [
          "Assets"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Collector snapshot; HTTP cache up to 120 seconds",
          "provenance": "Fixed reviewed Cosmos RPC exact bank burn events",
          "recordCap": "180-day retention; maximum 2,000 exact burn events",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Burn observation snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BurnObservationsSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/canton-validators": {
      "get": {
        "operationId": "getCantonValidators",
        "summary": "Get Canton validator projection",
        "description": "Returns the Canton validator licence set and the Super Validators of the Global Synchronizer for MainNet, TestNet and DevNet, with the network version and migration ID from the public Splice info endpoint. Canton has no delegation, commission, jail or slashing, so no stake-weighted validator set exists. MainNet and TestNet Scan answer only from an onboarded validator IP: those networks publish their version and migration ID together with an explicit scan_ip_restricted reason instead of an empty validator list.",
        "tags": [
          "Networks"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Fifteen-minute collector; HTTP cache up to 300 seconds. Each network also carries scan.observedAt for the moment its licence list was read.",
          "provenance": "Public Splice network info endpoints, the public DevNet Scan API, and for the permissioned networks a spool written by a POSTHUMAN validator host. No third-party API key.",
          "recordCap": "validators.publishedLimit rows per network, ordered most recently active first; validators.count reports the full licence set",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Canton validator projection",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CantonValidatorsSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/celestia/bridge-probe": {
      "post": {
        "operationId": "probeCelestiaBridgeNode",
        "summary": "Probe one exact reviewed Celestia bootstrap endpoint",
        "description": "Accepts only an exact network, peer ID and public multiaddr already present in the reviewed registry. The service rejects query strings and private/metadata DNS answers, pins a validated public address and performs one no-payload TCP connect to port 2121. It never accepts a URL, arbitrary host or port, Celestia JSON-RPC token or method. Success proves transport reachability only, not peer identity, DA health, ownership or owner health.",
        "tags": [
          "Celestia"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CelestiaBridgeProbeRequest"
              }
            }
          }
        },
        "x-posthuman": {
          "mode": "bounded-transport-probe",
          "freshness": "User-triggered live TCP connect; successful result cache up to 30 seconds",
          "provenance": "Exact reviewed registry tuple and public DNS resolution at request time",
          "recordCap": "2,048-byte request; one TCP/2121 connect; 3.5-second connect timeout; 20 client requests per minute; eight concurrent operations",
          "sdk": false,
          "rateLimit": "Shared Celestia dynamic-operation limit: 20 requests per client per minute"
        },
        "responses": {
          "200": {
            "description": "Bounded transport-only reachability result",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CelestiaBridgeProbeResult"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/celestia/bridges/{network}": {
      "get": {
        "operationId": "listCelestiaBridgeNodes",
        "summary": "List reviewed Celestia bootstrap endpoints",
        "description": "Returns an intentionally partial registry copied from the pinned official celestia-node bootstrap source. Celestia mainnet and current Mocha-5 are strictly separate; Mocha-4 and third-party discovery are excluded.",
        "tags": [
          "Celestia"
        ],
        "parameters": [
          {
            "name": "network",
            "in": "path",
            "required": true,
            "description": "Exact Celestia application network profile; only celestia or mocha-5.",
            "schema": {
              "$ref": "#/components/schemas/CelestiaBridgeNetwork"
            }
          }
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Pinned source review at 2026-09-04; HTTP cache up to 300 seconds",
          "provenance": "Official celestia-node v0.32.1 commit 8fc6945a38db8af6277d906c5d313a70db33c444, nodebuilder/p2p/bootstrap.go",
          "recordCap": "Maximum 16 reviewed official bootstrap endpoints per network",
          "sdk": false,
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Partial reviewed Celestia bridge registry",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CelestiaBridgeRegistry"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/celestia/rpc/mainnet": {
      "get": {
        "operationId": "checkPosthumanCelestiaRpc",
        "summary": "Check the fixed POSTHUMAN Celestia mainnet RPC",
        "description": "Checks only https://rpc-celestia-mainnet.posthuman.digital for exact chain identity, status, block and validators capability, retention start, tx-index declaration and advancing height. It accepts no upstream input and does not modify RPC, CORS or indexing configuration.",
        "tags": [
          "Celestia"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "User-triggered fixed-source check; successful result cache up to 30 seconds",
          "provenance": "One fixed POSTHUMAN Celestia mainnet consensus RPC",
          "recordCap": "Two status reads and one block plus one-validator request at one exact height",
          "sdk": false,
          "head": "same-status-and-representation-headers-no-body",
          "rateLimit": "Shared Celestia dynamic-operation limit: 20 requests per client per minute"
        },
        "responses": {
          "200": {
            "description": "Fixed Celestia mainnet RPC capability result",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CelestiaRpcCheck"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/chain-params": {
      "get": {
        "operationId": "listChainParameters",
        "summary": "List reviewed chain parameters",
        "description": "Returns staking, slashing, distribution, supply and mint projections when public sources are available.",
        "tags": [
          "Networks"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Collector snapshot; HTTP cache up to 60 seconds",
          "provenance": "Fixed public Cosmos REST endpoints",
          "recordCap": "Reviewed network catalogue",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Chain parameter snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ChainParamsSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/dev-activity": {
      "get": {
        "operationId": "getDeveloperActivity",
        "summary": "Rank reviewed networks by public repository activity",
        "description": "Returns 52 weekly non-merge commit buckets and bounded linked-contributor counts for one fixed primary public GitHub repository per Explorer network. Activity is not a project-quality, productivity, delivery, decentralization or investment score.",
        "tags": [
          "Networks"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Six-hour collector; HTTP cache up to 600 seconds; exact previous observations may be marked stale",
          "provenance": "GitHub public repository metadata, participation statistics and linked-contributor listing for 26 fixed reviewed repositories",
          "recordCap": "26 networks; one repository and 52 weekly buckets per network; linked contributors capped at 500",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Developer activity snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DevActivitySnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/ethereum-network": {
      "get": {
        "operationId": "getEthereumNetwork",
        "summary": "Get Ethereum mainnet network projection",
        "description": "Returns the Ethereum mainnet execution head with safe and finalized blocks, gas and fee state, the deposit contract balance, cumulative deposit count and deposit root, and the beacon chain finality position. Two independent public execution endpoints are compared at the same height and the verdict is published, because a single endpoint that has forked or stalled returns entirely plausible numbers. The validator set, activation and exit queues, total stake and staking APR are deliberately not published and are named in notPublished: each needs a beacon state that no keyless endpoint serves, and none is inferred from the deposit contract, whose balance is cumulative and diverged from the stake at Shapella.",
        "tags": [
          "Networks"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Two-minute collector; HTTP cache up to 60 seconds. The snapshot publishes the age of the execution head it read, and the reader refuses a snapshot older than fifteen minutes.",
          "provenance": "Two independent public Ethereum execution JSON-RPC endpoints and one public Beacon API endpoint, all read server-side on the Hub host. POSTHUMAN operates no Ethereum node; no third-party API key is used and only endpoint hostnames are published.",
          "recordCap": "One network projection; no list is returned and no caller-supplied query is accepted",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Ethereum mainnet network projection",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EthereumNetworkSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/gov-participation": {
      "get": {
        "operationId": "listGovernanceParticipation",
        "summary": "List validator governance participation",
        "description": "Returns observed validator votes only for the bounded set of published voting periods.",
        "tags": [
          "Governance"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Collector snapshot; HTTP cache up to 120 seconds",
          "provenance": "Fixed public Cosmos REST endpoints",
          "recordCap": "Observed voting periods only; bounded pagination and missed identifiers",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Governance participation snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GovParticipationSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/governance": {
      "get": {
        "operationId": "listGovernanceProposals",
        "summary": "List governance proposals",
        "description": "Returns active proposals and a bounded recent-proposal slice for reviewed Cosmos networks.",
        "tags": [
          "Governance"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Collector snapshot; HTTP cache up to 30 seconds",
          "provenance": "Fixed public Cosmos REST endpoints",
          "recordCap": "Active proposals plus up to 30 recent proposals per network",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Governance snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GovernanceSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/lsm-stats": {
      "get": {
        "operationId": "getLiquidStakingStats",
        "summary": "Get Cosmos Hub liquid staking statistics",
        "description": "Returns tokenized-share and liquid-staking state with bounded day, week and historical comparisons.",
        "tags": [
          "Assets"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "15-minute sampling; HTTP cache up to 120 seconds",
          "provenance": "Fixed reviewed Cosmos REST endpoints",
          "recordCap": "35-day retention; up to 168 published series points",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Liquid staking statistics snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/LsmStatsSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/market": {
      "get": {
        "operationId": "getMarketSnapshot",
        "summary": "Get the bounded market snapshot",
        "description": "Returns USD price, 24-hour change, market capitalisation, 24-hour volume and a bounded 7-day sparkline for the reviewed coin list, read server-side from the public CoinGecko markets endpoint once per five minutes. Published so that a browser never has to call CoinGecko itself: a rate-limited 429 there carries no allow-origin header and removes every price from the page.",
        "tags": [
          "Networks"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Five-minute collector; HTTP cache up to 60 seconds, stale-if-error one hour",
          "provenance": "Public CoinGecko markets endpoint, one fixed query over a pinned coin list, no key",
          "recordCap": "One quote per reviewed coin, sparkline capped at 256 points",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Bounded market snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MarketSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/network-stats": {
      "get": {
        "operationId": "getNetworkStats",
        "summary": "Get reviewed network statistics",
        "description": "Returns current aligned projections with bounded day, week and historical series for supported reviewed networks, including Celestia mainnet when every required source passes freshness and completeness checks.",
        "tags": [
          "Networks"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "15-minute sampling; HTTP cache up to 120 seconds",
          "provenance": "Fixed local projections derived from reviewed public sources",
          "recordCap": "35-day retention; up to 168 published series points",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Network statistics snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NetworkStatsSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/network-watchers": {
      "get": {
        "operationId": "listNetworkWatchers",
        "summary": "List consensus health observations",
        "description": "Returns bounded consensus, block-time, round and upgrade observations for reviewed networks.",
        "tags": [
          "Networks"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Collector snapshot; HTTP cache up to 30 seconds",
          "provenance": "Fixed public Cosmos RPC and REST endpoints",
          "recordCap": "Reviewed networks; bounded recent blocks and vote summaries",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Network watcher snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NetworkWatcherSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/photon/{networkId}": {
      "get": {
        "operationId": "getPhotonState",
        "summary": "Get AtomOne Photon module state",
        "description": "Returns the reviewed AtomOne mainnet Photon conversion rate, module flags and ATONE/PHOTON supplies. This is a fixed read-only projection, not an arbitrary chain proxy.",
        "tags": [
          "Assets"
        ],
        "parameters": [
          {
            "name": "networkId",
            "in": "path",
            "required": true,
            "description": "Exact supported Photon network identifier; currently atomone only.",
            "schema": {
              "type": "string",
              "const": "atomone"
            }
          }
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Live fixed upstream read; HTTP cache up to 15 seconds",
          "provenance": "POSTHUMAN reviewed AtomOne public REST endpoint",
          "recordCap": "One exact AtomOne mainnet module snapshot",
          "head": "same-status-and-representation-headers-no-body",
          "rateLimit": "Shared account-service limit: 60 requests per client per minute"
        },
        "responses": {
          "200": {
            "description": "AtomOne Photon module snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AtomOnePhotonSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/relayer-performance": {
      "get": {
        "operationId": "getRelayerPerformance",
        "summary": "Get managed-path relayer performance",
        "description": "Returns forward-only packet observations for fixed POSTHUMAN-managed IBC paths.",
        "tags": [
          "IBC"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Collector snapshot; HTTP cache up to 30 seconds",
          "provenance": "Exact IBC events from fixed reviewed Cosmos RPC",
          "recordCap": "Five managed paths; seven-day forward-only retention",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Relayer performance snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RelayerPerformanceSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/relayers": {
      "get": {
        "operationId": "listRelayerRoutes",
        "summary": "List observed IBC routes",
        "description": "Returns bounded IBC route activity and POSTHUMAN-managed path expiry observations.",
        "tags": [
          "IBC"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Collector snapshot; HTTP cache up to 30 seconds",
          "provenance": "Map of Zones plus fixed public Cosmos RPC",
          "recordCap": "Reviewed network and managed-path catalogue",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "IBC route snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RelayerSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/rich-list": {
      "get": {
        "operationId": "listRichListAssets",
        "summary": "List complete holder projections",
        "description": "Returns Top 100 non-module holders only for assets whose owner scan passed completeness checks.",
        "tags": [
          "Assets"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Collector snapshot; HTTP cache up to 300 seconds",
          "provenance": "Reviewed read-only chain and indexer sources",
          "recordCap": "Top 100 holders for complete eligible asset projections",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Rich-list snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RichListSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/slash-observations": {
      "get": {
        "operationId": "getSlashObservations",
        "summary": "Get Cosmos Hub slash-risk observations",
        "description": "Returns current public validator risk signals and forward-only observed validator state transitions.",
        "tags": [
          "Validators"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Collector snapshot; HTTP cache up to 120 seconds",
          "provenance": "Fixed local projection from reviewed validator data",
          "recordCap": "180-day retention; maximum 1,000 observed transitions",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Slash observation snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SlashObservationsSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/snapshots": {
      "get": {
        "operationId": "listSnapshotArtifacts",
        "summary": "List public node snapshot metadata",
        "description": "Returns published artifact metadata and restore-readiness checks without downloading archive bodies.",
        "tags": [
          "Node Ops"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Collector snapshot; HTTP cache up to 300 seconds",
          "provenance": "POSTHUMAN public snapshot metadata",
          "recordCap": "Reviewed snapshot network catalogue; metadata only",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Snapshot artifact catalogue",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SnapshotCatalog"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/solana-network": {
      "get": {
        "operationId": "getSolanaNetwork",
        "summary": "Get Solana mainnet-beta network projection",
        "description": "Returns the Solana mainnet-beta epoch position, native supply and staked share, inflation rate, measured throughput, the whole vote-account set summarised \u2014 counts, active stake, the current and delinquent split, stake concentration including the Nakamoto coefficient, and commission distribution \u2014 a bounded table of the largest vote accounts, and any tracked vote accounts published separately because the table cannot reach them. Two independent public endpoints are read at the same moment and compared, because a single RPC that has forked, stalled or fallen an epoch behind returns entirely plausible numbers. Stake and supply are lamport decimal strings throughout: mainnet totals leave the range a double holds exactly, and a validator's active stake passes it at roughly 9,007,199 SOL. Endpoints on different client versions are published and are deliberately not a warning; a disagreement about the epoch or a wide slot gap is. There is no governance module, unbonding queue or slashing on this chain, and those appear in notApplicable, separately from notPublished, which holds block production, the leader schedule, MEV rewards and individual stake accounts \u2014 all of which exist and none of which this collector reads.",
        "tags": [
          "Networks"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Five-minute collector; HTTP cache up to 120 seconds. The validator set is fixed for the epoch and stake changes at epoch boundaries, so nothing here moves on a sub-minute scale; the reader refuses a snapshot older than twenty minutes.",
          "provenance": "Two independent public Solana JSON-RPC endpoints, read server-side on the Hub host. POSTHUMAN operates a Solana mainnet validator and this projection is deliberately not read from it; only endpoint hostnames are published, never a path, because a path is where an API key hides.",
          "recordCap": "One network projection with at most 250 published vote accounts and 16 tracked accounts; no caller-supplied query is accepted",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Solana mainnet-beta network projection",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SolanaNetworkSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/solana-testnet-network": {
      "get": {
        "operationId": "getSolanaTestnetNetwork",
        "summary": "Get Solana testnet network projection",
        "description": "Returns the Solana testnet epoch position, native supply and staked share, inflation rate, measured throughput, the whole vote-account set summarised \u2014 counts, active stake, the current and delinquent split, stake concentration including the Nakamoto coefficient, and commission distribution \u2014 a bounded table of the largest vote accounts, and any tracked vote accounts published separately because the table cannot reach them. Same collector and same schema as the mainnet-beta projection; networkId is solana-testnet and cluster is testnet, and a client should check the pair rather than either alone, because a valid testnet payload read as mainnet is wrong in a way that every individual number in it looks right. Two independent public endpoints are read at the same moment and compared, which matters more here than on mainnet: testnet halts, forks and restarts deliberately, and during the 2026-09-09 restart fork one public endpoint answered HTTP 503 for hours while another served a stale fork. Stake and supply are lamport decimal strings throughout. The delinquent count is not the whole story on this cluster: getVoteAccounts omits delinquent vote accounts holding no stake unless explicitly asked, and this collector does not ask \u2014 on 2026-09-20 asking returned 15,088 delinquents of which 15,063 held exactly zero stake. Endpoints on different client versions are published and are deliberately not a warning; a disagreement about the epoch or a wide slot gap is. There is no governance module, unbonding queue or slashing on this chain, and those appear in notApplicable, separately from notPublished, which holds block production, the leader schedule, MEV rewards and individual stake accounts \u2014 all of which exist and none of which this collector reads.",
        "tags": [
          "Networks"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Five-minute collector; HTTP cache up to 120 seconds. The validator set is fixed for the epoch and stake changes at epoch boundaries, so nothing here moves on a sub-minute scale; the reader refuses a snapshot older than twenty minutes.",
          "provenance": "Two independent public Solana testnet JSON-RPC endpoints, read server-side on the Hub host. POSTHUMAN operates a Solana testnet validator and this projection is deliberately not read from it; only endpoint hostnames are published, never a path, because a path is where an API key hides.",
          "recordCap": "One network projection with at most 250 published vote accounts and 16 tracked accounts; no caller-supplied query is accepted",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Solana testnet network projection",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SolanaNetworkSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/sp1-blobstream": {
      "get": {
        "operationId": "getSp1BlobstreamStatus",
        "summary": "Get SP1 Blobstream mainnet status",
        "description": "Returns Celestia mainnet tip and VERSION()/latestBlock() from the three mainnet contracts in the official SP1 Blobstream v1.1.0 deployment registry. Mocha-5 is explicitly unavailable because published testnet contract height is incompatible with its restart-at-1 progression.",
        "tags": [
          "Networks"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Five-minute collector; HTTP cache up to 120 seconds",
          "provenance": "Official SP1 Blobstream v1.1.0 registry plus fixed reviewed Celestia and EVM RPC endpoints",
          "recordCap": "Exactly three mainnet registry contracts; VERSION and latestBlock calls only",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "SP1 Blobstream status snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Sp1BlobstreamSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/the-graph-indexers": {
      "get": {
        "operationId": "getTheGraphIndexers",
        "summary": "Get The Graph indexer projection",
        "description": "Returns the registered indexer set on Arbitrum One with self-stake, delegation, allocations, reward and query fee cuts, derived delegation capacity and head room, plus protocol parameters and the pinned POSTHUMAN addresses. Read from the POSTHUMAN network subgraph, with the Arbitrum One chain head read separately so the projection's own staleness is published rather than hidden.",
        "tags": [
          "Networks"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Ten-minute collector; HTTP cache up to 300 seconds. The projection is additionally only as fresh as subgraph.lagBlocks says.",
          "provenance": "POSTHUMAN network subgraph plus a POSTHUMAN Arbitrum One JSON-RPC chain-head read. No third-party API key.",
          "recordCap": "indexerLimit indexers; a list at the cap is declared truncated in warnings",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "The Graph indexer projection",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TheGraphIndexerSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/tx/{networkId}/{hash}": {
      "get": {
        "operationId": "getTransaction",
        "summary": "Get an exact transaction",
        "description": "Returns one exact 32-byte transaction hash with bounded decoded messages, fees, gas, events and failure data. Celestia hashes mirror celestia-core v0.40.8 canonical one-level INDX/BLOB unwrapping before SHA-256.",
        "tags": [
          "Explorer"
        ],
        "parameters": [
          {
            "name": "networkId",
            "in": "path",
            "required": true,
            "description": "Reviewed transaction-enabled Network Hub identifier, including Celestia mainnet and Mocha-5.",
            "schema": {
              "$ref": "#/components/schemas/TransactionNetworkId"
            }
          },
          {
            "name": "hash",
            "in": "path",
            "required": true,
            "description": "64-character hexadecimal transaction hash.",
            "schema": {
              "type": "string",
              "pattern": "^[A-Fa-f0-9]{64}$"
            }
          }
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Live exact lookup; successful immutable results may be cached",
          "provenance": "Fixed public Cosmos RPC and REST endpoints; Celestia requires exact-chain tx_index=on and canonical hash verification",
          "recordCap": "Maximum 20 messages, 50 events and 24 attributes per event",
          "head": "same-status-and-representation-headers-no-body",
          "rateLimit": "Shared transaction-service limit: 60 requests per client per minute"
        },
        "responses": {
          "200": {
            "description": "Transaction snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TransactionSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/validator/{networkId}/{operatorAddress}": {
      "get": {
        "operationId": "getValidator",
        "summary": "Get exact validator rewards detail",
        "description": "Returns public commission, outstanding rewards and self-delegation for one reviewed validator operator address.",
        "tags": [
          "Validators"
        ],
        "parameters": [
          {
            "name": "networkId",
            "in": "path",
            "required": true,
            "description": "Reviewed Network Hub network identifier.",
            "schema": {
              "$ref": "#/components/schemas/AccountNetworkId"
            }
          },
          {
            "name": "operatorAddress",
            "in": "path",
            "required": true,
            "description": "Exact bech32 validator operator address for the selected network.",
            "schema": {
              "type": "string",
              "minLength": 12,
              "maxLength": 128
            }
          }
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Live bounded request with a short service cache",
          "provenance": "Fixed public Cosmos REST endpoints",
          "recordCap": "One exact validator; public distribution and staking state only",
          "head": "same-status-and-representation-headers-no-body",
          "rateLimit": "Shared account-service limit: 60 requests per client per minute"
        },
        "responses": {
          "200": {
            "description": "Validator detail snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidatorDetailSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/validators": {
      "get": {
        "operationId": "listValidators",
        "summary": "List public validator sets",
        "description": "Returns bounded validator, staking and signing-info projections for reviewed networks.",
        "tags": [
          "Validators"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Collector snapshot; HTTP cache up to 120 seconds",
          "provenance": "Fixed public Cosmos REST endpoints",
          "recordCap": "Reviewed networks with bounded pagination and explicit warnings",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Validator-set snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidatorSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    },
    "/api/wasm-assets": {
      "get": {
        "operationId": "listWasmAssets",
        "summary": "List recent Wasm code and chain assets",
        "description": "Returns a bounded recent Wasm-code slice and bounded asset metadata for reviewed networks.",
        "tags": [
          "Assets"
        ],
        "x-posthuman": {
          "mode": "read-only",
          "freshness": "Collector snapshot; HTTP cache up to 180 seconds",
          "provenance": "Fixed public Cosmos REST endpoints",
          "recordCap": "Recent-slice only; up to 25 code records plus bounded asset metadata",
          "head": "same-status-and-representation-headers-no-body"
        },
        "responses": {
          "200": {
            "description": "Wasm and asset snapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WasmAssetsSnapshot"
                }
              }
            }
          },
          "default": {
            "$ref": "#/components/responses/Error"
          }
        }
      }
    }
  },
  "components": {
    "responses": {
      "Error": {
        "description": "Invalid input, unavailable upstream, rate limit or service failure.",
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/Error"
            }
          }
        }
      }
    },
    "schemas": {
      "AccountDelegation": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "validatorAddress",
          "amount",
          "denom"
        ],
        "properties": {
          "validatorAddress": {
            "type": "string"
          },
          "amount": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "denom": {
            "type": "string"
          }
        }
      },
      "AccountIdentity": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "type",
          "accountNumber",
          "sequence",
          "publicKeyType"
        ],
        "properties": {
          "type": {
            "type": "string"
          },
          "accountNumber": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "sequence": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "publicKeyType": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      },
      "AccountNetworkId": {
        "type": "string",
        "enum": [
          "cosmoshub",
          "osmosis",
          "neutron",
          "axelar",
          "celestia",
          "juno",
          "mantra",
          "atomone",
          "oraichain",
          "verona",
          "fetchhub",
          "shentu",
          "fuel",
          "provenance",
          "firmachain",
          "warden",
          "dymension",
          "agoric",
          "akash",
          "humans",
          "dungeon",
          "beezee",
          "babylon",
          "union",
          "lava",
          "axone",
          "exrp",
          "cosmoshub-testnet",
          "atomone-testnet",
          "axelar-testnet",
          "babylon-testnet",
          "celestia-testnet",
          "warden-testnet",
          "limonata",
          "pchain"
        ]
      },
      "AccountNft": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "classId",
          "id",
          "uri",
          "uriHash",
          "className",
          "classSymbol"
        ],
        "properties": {
          "classId": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "uri": {
            "type": [
              "string",
              "null"
            ]
          },
          "uriHash": {
            "type": [
              "string",
              "null"
            ],
            "pattern": "^[A-F0-9]{64}$"
          },
          "className": {
            "type": [
              "string",
              "null"
            ]
          },
          "classSymbol": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      },
      "AccountNftCollection": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "state",
          "items",
          "truncated",
          "total"
        ],
        "properties": {
          "state": {
            "enum": [
              "ready",
              "unsupported",
              "unavailable"
            ]
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AccountNft"
            },
            "maxItems": 40
          },
          "truncated": {
            "type": "boolean"
          },
          "total": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          }
        }
      },
      "AccountReward": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "validatorAddress",
          "reward"
        ],
        "properties": {
          "validatorAddress": {
            "type": "string"
          },
          "reward": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Coin"
            },
            "maxItems": 60
          }
        }
      },
      "AccountSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networkId",
          "chainId",
          "address",
          "denom",
          "balances",
          "spendableBalances",
          "account",
          "vesting",
          "validator",
          "transactions",
          "tokenMetadata",
          "nfts",
          "stargazeNfts",
          "delegations",
          "unbonding",
          "rewards",
          "scope",
          "warnings"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.account/v3"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "reviewed-public-cosmos-rest+rpc"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "chainId": {
            "type": "string"
          },
          "address": {
            "type": "string"
          },
          "denom": {
            "$ref": "#/components/schemas/Denom"
          },
          "balances": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Coin"
            },
            "maxItems": 60
          },
          "spendableBalances": {
            "type": [
              "array",
              "null"
            ],
            "items": {
              "$ref": "#/components/schemas/Coin"
            },
            "maxItems": 60
          },
          "account": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/AccountIdentity"
              },
              {
                "type": "null"
              }
            ]
          },
          "vesting": {
            "$ref": "#/components/schemas/AccountVesting"
          },
          "validator": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "operatorAddress",
              "commission"
            ],
            "properties": {
              "operatorAddress": {
                "type": "string"
              },
              "commission": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Coin"
                },
                "maxItems": 60
              }
            }
          },
          "transactions": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "state",
              "items",
              "outgoingTotal",
              "incomingTotal",
              "truncated"
            ],
            "properties": {
              "state": {
                "enum": [
                  "ready",
                  "unsupported",
                  "unavailable"
                ]
              },
              "items": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AccountTransaction"
                },
                "maxItems": 20
              },
              "outgoingTotal": {
                "$ref": "#/components/schemas/NullableNonNegativeInteger"
              },
              "incomingTotal": {
                "$ref": "#/components/schemas/NullableNonNegativeInteger"
              },
              "truncated": {
                "type": "boolean"
              }
            }
          },
          "tokenMetadata": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AccountTokenMetadata"
            },
            "maxItems": 30
          },
          "nfts": {
            "$ref": "#/components/schemas/AccountNftCollection"
          },
          "stargazeNfts": {
            "$ref": "#/components/schemas/AccountStargazeNfts"
          },
          "delegations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AccountDelegation"
            },
            "maxItems": 100
          },
          "unbonding": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AccountUnbonding"
            },
            "maxItems": 100
          },
          "rewards": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "perValidator",
              "total"
            ],
            "properties": {
              "perValidator": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/AccountReward"
                },
                "maxItems": 100
              },
              "total": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Coin"
                },
                "maxItems": 60
              }
            }
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "maximumDelegations",
              "balancesLimit",
              "tokenMetadataLimit",
              "nftLimit",
              "stargazeNftLimit",
              "transactionLimit"
            ],
            "properties": {
              "maximumDelegations": {
                "const": 100
              },
              "balancesLimit": {
                "const": 60
              },
              "tokenMetadataLimit": {
                "const": 30
              },
              "nftLimit": {
                "const": 40
              },
              "stargazeNftLimit": {
                "const": 40
              },
              "transactionLimit": {
                "const": 20
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 32
          }
        }
      },
      "AccountStargazeNft": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "contractAddress",
          "tokenId",
          "name",
          "collectionName",
          "imageUrl",
          "rarityRank",
          "acquiredAt"
        ],
        "properties": {
          "contractAddress": {
            "type": "string"
          },
          "tokenId": {
            "type": "string"
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "collectionName": {
            "type": [
              "string",
              "null"
            ]
          },
          "imageUrl": {
            "type": [
              "string",
              "null"
            ],
            "format": "uri"
          },
          "rarityRank": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 1
          },
          "acquiredAt": {
            "$ref": "#/components/schemas/NullableTimestamp"
          }
        }
      },
      "AccountStargazeNfts": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "state",
          "source",
          "items",
          "truncated",
          "total",
          "collections"
        ],
        "properties": {
          "state": {
            "enum": [
              "ready",
              "unsupported",
              "unavailable"
            ]
          },
          "source": {
            "const": "stargaze-fusion-indexer"
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AccountStargazeNft"
            },
            "maxItems": 40
          },
          "truncated": {
            "type": "boolean"
          },
          "total": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "collections": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          }
        }
      },
      "AccountTokenMetadata": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "base",
          "display",
          "symbol",
          "name",
          "exponent",
          "source"
        ],
        "properties": {
          "base": {
            "type": "string"
          },
          "display": {
            "type": "string"
          },
          "symbol": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "exponent": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 0,
            "maximum": 24
          },
          "source": {
            "enum": [
              "chain-bank-metadata",
              "ibc-denom-trace",
              "ibc-trace+reviewed-network-profile"
            ]
          }
        }
      },
      "AccountTransaction": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "hash",
          "height",
          "status",
          "code",
          "direction",
          "actions"
        ],
        "properties": {
          "hash": {
            "$ref": "#/components/schemas/Hash64"
          },
          "height": {
            "type": "string",
            "pattern": "^\\d{1,30}$"
          },
          "status": {
            "enum": [
              "success",
              "failed"
            ]
          },
          "code": {
            "type": "integer",
            "minimum": 0,
            "maximum": 65535
          },
          "direction": {
            "enum": [
              "incoming",
              "outgoing",
              "self",
              "unknown"
            ]
          },
          "actions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 6
          }
        }
      },
      "AccountUnbonding": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "validatorAddress",
          "entries"
        ],
        "properties": {
          "validatorAddress": {
            "type": "string"
          },
          "entries": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "balance",
                "completionTime"
              ],
              "properties": {
                "balance": {
                  "$ref": "#/components/schemas/UnsignedAmount"
                },
                "completionTime": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "maxItems": 12
          }
        }
      },
      "AccountVesting": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "state",
          "type",
          "original",
          "delegatedFree",
          "delegatedVesting",
          "delegatable",
          "startTime",
          "endTime"
        ],
        "properties": {
          "state": {
            "enum": [
              "not-vesting",
              "vesting",
              "unavailable"
            ]
          },
          "type": {
            "type": [
              "string",
              "null"
            ]
          },
          "original": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Coin"
            },
            "maxItems": 60
          },
          "delegatedFree": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Coin"
            },
            "maxItems": 60
          },
          "delegatedVesting": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Coin"
            },
            "maxItems": 60
          },
          "delegatable": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Coin"
            },
            "maxItems": 60
          },
          "startTime": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "endTime": {
            "$ref": "#/components/schemas/NullableTimestamp"
          }
        }
      },
      "ArcNetworkSnapshot": {
        "type": "object",
        "description": "Bounded Arc mainnet projection assembled from two independent public execution endpoints, read server-side.",
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networkId",
          "chainId",
          "state",
          "execution",
          "node",
          "nativeAsset",
          "proposers",
          "notApplicable",
          "notPublished",
          "scope",
          "warnings"
        ],
        "additionalProperties": false,
        "properties": {
          "schemaVersion": {
            "type": "string",
            "const": "posthuman.arc-network/v1"
          },
          "generatedAt": {
            "type": "string",
            "description": "When the collector assembled this projection.",
            "format": "date-time"
          },
          "source": {
            "type": "string",
            "const": "public-execution-rpc"
          },
          "networkId": {
            "type": "string",
            "const": "arc"
          },
          "chainId": {
            "type": "string",
            "const": "5042"
          },
          "state": {
            "type": "string",
            "description": "attention exactly when warnings is non-empty.",
            "enum": [
              "ready",
              "attention"
            ]
          },
          "execution": {
            "type": "object",
            "description": "Execution head, instant-finality tags and the two-source agreement verdict.",
            "required": [
              "primaryHost",
              "secondaryHost",
              "agreement",
              "head",
              "safeNumber",
              "finalizedNumber",
              "latestFinalizedLagBlocks",
              "finalityLagAttentionBlocks",
              "windowSpanSeconds"
            ],
            "additionalProperties": false,
            "properties": {
              "primaryHost": {
                "type": "string",
                "description": "Hostname of the primary execution endpoint. Paths are never published."
              },
              "secondaryHost": {
                "type": "string",
                "description": "Hostname of the independent secondary execution endpoint."
              },
              "agreement": {
                "type": "object",
                "description": "Whether the two endpoints report the same block at the same height.",
                "required": [
                  "comparedHeight",
                  "agreed",
                  "primaryHash",
                  "secondaryHash",
                  "headSkewBlocks"
                ],
                "additionalProperties": false,
                "properties": {
                  "comparedHeight": {
                    "type": "string",
                    "description": "The lower of the two heads. Arc commits about twice a second, so comparing two latest hashes directly would report a fork continuously."
                  },
                  "agreed": {
                    "type": "boolean"
                  },
                  "primaryHash": {
                    "type": "string"
                  },
                  "secondaryHash": {
                    "type": "string"
                  },
                  "headSkewBlocks": {
                    "type": "string",
                    "description": "Distance between the two reported heads."
                  }
                }
              },
              "head": {
                "type": "object",
                "description": "The latest committed block, as reported by the primary endpoint.",
                "required": [
                  "number",
                  "hash",
                  "timestamp",
                  "ageSeconds",
                  "gasUsed",
                  "gasLimit",
                  "baseFeePerGas",
                  "transactionCount",
                  "proposer"
                ],
                "additionalProperties": false,
                "properties": {
                  "number": {
                    "type": "string"
                  },
                  "hash": {
                    "type": "string"
                  },
                  "timestamp": {
                    "type": "string",
                    "description": "Unix seconds. Arc block timestamps have one-second resolution and consecutive blocks frequently share one."
                  },
                  "ageSeconds": {
                    "type": "string",
                    "description": "Age of the head when the collector read it."
                  },
                  "gasUsed": {
                    "type": "string"
                  },
                  "gasLimit": {
                    "type": "string"
                  },
                  "baseFeePerGas": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "description": "Wei per gas. Arc's documented mempool floor is 20 gwei and its base-fee cap is 20,000 gwei."
                  },
                  "transactionCount": {
                    "type": "string",
                    "description": "Transactions in the head block."
                  },
                  "proposer": {
                    "type": "string",
                    "description": "The block's miner field, which on Arc is the proposer that committed it."
                  }
                }
              },
              "safeNumber": {
                "type": "string",
                "description": "The safe tag. On a healthy Arc node this equals the latest block: Malachite finalises on commit."
              },
              "finalizedNumber": {
                "type": "string",
                "description": "The finalized tag. Equal to latest when consensus is committing normally."
              },
              "latestFinalizedLagBlocks": {
                "type": "string",
                "description": "latest minus finalized. Zero is the healthy value; any separation is consensus failing to commit, not a queue draining."
              },
              "finalityLagAttentionBlocks": {
                "type": "string",
                "description": "Threshold above which finality_lagging is published."
              },
              "windowSpanSeconds": {
                "type": "string",
                "description": "Seconds spanned by the proposer window, from which a measured block interval can be derived. Reported as the raw span because a single block pair cannot show a sub-second cadence at one-second timestamp resolution."
              }
            }
          },
          "node": {
            "type": "object",
            "description": "The release each endpoint is running. Arc activates forks on a wall-clock timestamp with no on-chain plan, so this is an operational fact rather than trivia.",
            "required": [
              "primary",
              "secondary",
              "versionsMatch",
              "commitsMatch"
            ],
            "additionalProperties": false,
            "properties": {
              "primary": {
                "type": "object",
                "description": "A reported Arc node build.",
                "required": [
                  "version",
                  "commit"
                ],
                "additionalProperties": false,
                "properties": {
                  "version": {
                    "type": "string",
                    "description": "Release string reported by arc_getVersion, for example v0.8.0."
                  },
                  "commit": {
                    "type": "string",
                    "description": "The 40-character commit the node was built from. Two endpoints reporting the same version from different commits is ordinary; the commit is the fact and the version is a label."
                  }
                }
              },
              "secondary": {
                "type": "object",
                "description": "A reported Arc node build.",
                "required": [
                  "version",
                  "commit"
                ],
                "additionalProperties": false,
                "properties": {
                  "version": {
                    "type": "string",
                    "description": "Release string reported by arc_getVersion, for example v0.8.0."
                  },
                  "commit": {
                    "type": "string",
                    "description": "The 40-character commit the node was built from. Two endpoints reporting the same version from different commits is ordinary; the commit is the fact and the version is a label."
                  }
                }
              },
              "versionsMatch": {
                "type": "boolean",
                "description": "False publishes node_versions_differ: one endpoint will stop accepting blocks at the next fork deadline."
              },
              "commitsMatch": {
                "type": "boolean",
                "description": "Published without a warning. On 2026-09-18 both public endpoints answered v0.8.0 from different commits, which is the ordinary state of this network."
              }
            }
          },
          "nativeAsset": {
            "type": "object",
            "description": "USDC as Arc's gas token, stated at both of its scales so neither can be applied to the other's number.",
            "required": [
              "predeploy",
              "symbol",
              "erc20Decimals",
              "nativeDecimals",
              "totalSupply"
            ],
            "additionalProperties": false,
            "properties": {
              "predeploy": {
                "type": "string",
                "description": "The stablecoin-native ERC-20 predeploy. decimals() and symbol() are re-read every run and a payload that stops answering 6/USDC is refused."
              },
              "symbol": {
                "type": "string",
                "const": "USDC"
              },
              "erc20Decimals": {
                "type": "string",
                "description": "6. The scale of totalSupply below.",
                "const": "6"
              },
              "nativeDecimals": {
                "type": "string",
                "description": "18. The scale of balances, msg.value and gas accounting. Applying it to totalSupply understates the chain's supply by a factor of 10^12.",
                "const": "18"
              },
              "totalSupply": {
                "type": "string",
                "description": "ERC-20 total supply, at erc20Decimals."
              }
            }
          },
          "proposers": {
            "type": "object",
            "description": "Block proposers observed over a bounded window. Arc publishes no validator set \u2014 there is no consensus API and arc_getValidators does not exist \u2014 so this is an inference from block headers and never a roster.",
            "required": [
              "windowBlocks",
              "distinctProposers",
              "strictRotation",
              "rotationObservable",
              "maximumGapBlocks",
              "observed"
            ],
            "additionalProperties": false,
            "properties": {
              "windowBlocks": {
                "type": "string",
                "description": "Blocks read backwards from the head, contiguous and verified by number."
              },
              "distinctProposers": {
                "type": "string",
                "description": "Distinct proposers in the window; a lower bound on the validator set."
              },
              "strictRotation": {
                "type": "boolean",
                "description": "True when every proposer recurred at exactly distinctProposers blocks, which is what a full round-robin looks like from outside."
              },
              "rotationObservable": {
                "type": "boolean",
                "description": "False when the window did not contain two full rounds, in which case no spacing claim is made."
              },
              "maximumGapBlocks": {
                "type": "string",
                "description": "Largest observed gap between one proposer's turns."
              },
              "observed": {
                "type": "array",
                "description": "One entry per distinct proposer; the evidence for the count beside it.",
                "maxItems": 512,
                "items": {
                  "type": "object",
                  "description": "A proposer and how many blocks it committed in the window.",
                  "required": [
                    "address",
                    "blocks"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "address": {
                      "type": "string"
                    },
                    "blocks": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "notApplicable": {
            "type": "array",
            "description": "Things this chain does not have, as distinct from things this collector cannot read. Arc's validator set is permissioned and there is no chain-level staking.",
            "items": {
              "type": "string"
            }
          },
          "notPublished": {
            "type": "array",
            "description": "Things that exist and no public Arc endpoint serves. Verified 2026-09-18: arc_getValidators, arc_getConsensusStatus and txpool_status all answer method not supported.",
            "items": {
              "type": "string"
            }
          },
          "scope": {
            "type": "object",
            "description": "Capability statement. firstPartySources is false: POSTHUMAN operates no Base node.",
            "required": [
              "readOnly",
              "firstPartySources",
              "arbitraryQuery",
              "arbitraryChain",
              "wallet",
              "signing",
              "broadcast",
              "transactions",
              "nodeControl"
            ],
            "additionalProperties": false,
            "properties": {
              "readOnly": {
                "type": "boolean"
              },
              "firstPartySources": {
                "type": "boolean"
              },
              "arbitraryQuery": {
                "type": "boolean"
              },
              "arbitraryChain": {
                "type": "boolean"
              },
              "wallet": {
                "type": "boolean"
              },
              "signing": {
                "type": "boolean"
              },
              "broadcast": {
                "type": "boolean"
              },
              "transactions": {
                "type": "boolean"
              },
              "nodeControl": {
                "type": "boolean"
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "AtomOnePhotonSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networkId",
          "chainId",
          "appVersion",
          "conversionRate",
          "mintDisabled",
          "feeException",
          "supply"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.atomone-photon/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "reviewed-public-cosmos-rest"
          },
          "networkId": {
            "const": "atomone"
          },
          "chainId": {
            "const": "atomone-1"
          },
          "appVersion": {
            "type": "string"
          },
          "conversionRate": {
            "type": "string"
          },
          "mintDisabled": {
            "type": "boolean"
          },
          "feeException": {
            "type": "boolean"
          },
          "supply": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "uatone",
              "uphoton"
            ],
            "properties": {
              "uatone": {
                "type": "string"
              },
              "uphoton": {
                "type": "string"
              }
            }
          }
        }
      },
      "AxelarAsset": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "symbol",
          "name",
          "denom",
          "decimals",
          "nativeChain",
          "chainCount"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "symbol": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "denom": {
            "type": [
              "string",
              "null"
            ]
          },
          "decimals": {
            "type": "integer",
            "minimum": 0,
            "maximum": 36
          },
          "nativeChain": {
            "type": [
              "string",
              "null"
            ]
          },
          "chainCount": {
            "type": "integer",
            "minimum": 0
          }
        }
      },
      "AxelarBatch": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "chain",
          "status",
          "keyId",
          "observedAt",
          "commandCount",
          "signed"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "chain": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "keyId": {
            "type": [
              "string",
              "null"
            ]
          },
          "observedAt": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "commandCount": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "signed": {
            "type": "boolean"
          }
        }
      },
      "AxelarChain": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "name",
          "chainType",
          "nativeSymbol",
          "gateway",
          "deprecated",
          "maintainerCount"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "chainType": {
            "type": "string"
          },
          "nativeSymbol": {
            "type": [
              "string",
              "null"
            ]
          },
          "gateway": {
            "type": "boolean"
          },
          "deprecated": {
            "type": "boolean"
          },
          "maintainerCount": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          }
        }
      },
      "AxelarChainPerformance": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "chain",
          "total",
          "yes",
          "no",
          "unsubmitted"
        ],
        "properties": {
          "chain": {
            "type": "string"
          },
          "total": {
            "type": "integer",
            "minimum": 0
          },
          "yes": {
            "type": "integer",
            "minimum": 0
          },
          "no": {
            "type": "integer",
            "minimum": 0
          },
          "unsubmitted": {
            "type": "integer",
            "minimum": 0
          }
        }
      },
      "AxelarNetworkSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networkId",
          "chainId",
          "state",
          "warnings",
          "scope",
          "totals",
          "chains",
          "assets",
          "validators",
          "verifiers",
          "rewards",
          "polls",
          "batches"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.axelar-network/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "public-axelarscan-api"
          },
          "networkId": {
            "const": "axelar"
          },
          "chainId": {
            "const": "axelar-dojo-1"
          },
          "state": {
            "enum": [
              "ready",
              "attention"
            ]
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 20
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "pollsLimit",
              "batchesLimit",
              "chainLimit",
              "assetLimit",
              "assetCollection",
              "activeValidatorFilter",
              "activeValidatorStateRequired",
              "evmMaintainershipCoverage",
              "validatorVotesWindow",
              "verifierPerformanceWindow",
              "maintainerCallsBounded",
              "arbitraryInput",
              "signing",
              "broadcast",
              "transactions",
              "keyAccess",
              "nodeControl"
            ],
            "properties": {
              "pollsLimit": {
                "const": 100
              },
              "batchesLimit": {
                "const": 100
              },
              "chainLimit": {
                "const": 200
              },
              "assetLimit": {
                "const": 300
              },
              "assetCollection": {
                "const": "complete-getAssets-response-or-unavailable"
              },
              "activeValidatorFilter": {
                "const": "status=BOND_STATUS_BONDED and jailed=false"
              },
              "activeValidatorStateRequired": {
                "const": true
              },
              "evmMaintainershipCoverage": {
                "const": "all-nondeprecated-gateway-enabled-evm-chains-or-unavailable"
              },
              "validatorVotesWindow": {
                "const": "axelarscan-latest-10000-blocks"
              },
              "verifierPerformanceWindow": {
                "const": "axelarscan-latest-10000-blocks"
              },
              "maintainerCallsBounded": {
                "const": true
              },
              "arbitraryInput": {
                "const": false
              },
              "signing": {
                "const": false
              },
              "broadcast": {
                "const": false
              },
              "transactions": {
                "const": false
              },
              "keyAccess": {
                "const": false
              },
              "nodeControl": {
                "const": false
              }
            }
          },
          "totals": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "chains",
              "evmChains",
              "assets",
              "validators",
              "verifiers",
              "rewards",
              "polls",
              "batches"
            ],
            "properties": {
              "chains": {
                "type": "integer",
                "minimum": 0
              },
              "evmChains": {
                "type": "integer",
                "minimum": 0
              },
              "assets": {
                "type": "integer",
                "minimum": 0
              },
              "validators": {
                "type": "integer",
                "minimum": 0
              },
              "verifiers": {
                "type": "integer",
                "minimum": 0
              },
              "rewards": {
                "type": "integer",
                "minimum": 0
              },
              "polls": {
                "type": "integer",
                "minimum": 0
              },
              "batches": {
                "type": "integer",
                "minimum": 0
              }
            }
          },
          "chains": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AxelarChain"
            },
            "maxItems": 200
          },
          "assets": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AxelarAsset"
            },
            "maxItems": 300,
            "uniqueItems": true
          },
          "validators": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AxelarValidator"
            },
            "maxItems": 2000
          },
          "verifiers": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AxelarVerifier"
            },
            "maxItems": 500
          },
          "rewards": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AxelarReward"
            },
            "maxItems": 1000
          },
          "polls": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AxelarPoll"
            },
            "maxItems": 100
          },
          "batches": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AxelarBatch"
            },
            "maxItems": 100
          }
        }
      },
      "AxelarPerformance": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "total",
          "yes",
          "no",
          "unsubmitted",
          "chains"
        ],
        "properties": {
          "total": {
            "type": "integer",
            "minimum": 0
          },
          "yes": {
            "type": "integer",
            "minimum": 0
          },
          "no": {
            "type": "integer",
            "minimum": 0
          },
          "unsubmitted": {
            "type": "integer",
            "minimum": 0
          },
          "chains": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AxelarChainPerformance"
            },
            "maxItems": 200
          }
        }
      },
      "AxelarPoll": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "height",
          "observedAt",
          "sourceChain",
          "destinationChain",
          "transactionId",
          "initiatedTxHash",
          "event",
          "symbol",
          "participantCount",
          "success",
          "expired",
          "failed"
        ],
        "properties": {
          "height": {
            "type": "integer",
            "minimum": 0
          },
          "observedAt": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "sourceChain": {
            "type": "string"
          },
          "destinationChain": {
            "type": [
              "string",
              "null"
            ]
          },
          "transactionId": {
            "type": "string"
          },
          "initiatedTxHash": {
            "type": [
              "string",
              "null"
            ]
          },
          "event": {
            "type": [
              "string",
              "null"
            ]
          },
          "symbol": {
            "type": [
              "string",
              "null"
            ]
          },
          "participantCount": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "success": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "expired": {
            "type": "boolean"
          },
          "failed": {
            "type": "boolean"
          }
        }
      },
      "AxelarReward": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "address",
          "totalRewards",
          "distributions",
          "chains"
        ],
        "properties": {
          "address": {
            "type": "string"
          },
          "totalRewards": {
            "type": "number",
            "minimum": 0
          },
          "distributions": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "chains": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "chain",
                "amount",
                "distributions"
              ],
              "properties": {
                "chain": {
                  "type": "string"
                },
                "amount": {
                  "type": "number",
                  "minimum": 0
                },
                "distributions": {
                  "type": "integer",
                  "minimum": 0
                }
              }
            },
            "maxItems": 200
          }
        }
      },
      "AxelarValidator": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "operatorAddress",
          "broadcasterAddress",
          "moniker",
          "active",
          "supportedChains",
          "votes"
        ],
        "properties": {
          "operatorAddress": {
            "type": "string"
          },
          "broadcasterAddress": {
            "type": "string"
          },
          "moniker": {
            "type": "string"
          },
          "active": {
            "const": true
          },
          "supportedChains": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 200,
            "uniqueItems": true
          },
          "votes": {
            "$ref": "#/components/schemas/AxelarPerformance"
          }
        }
      },
      "AxelarValidatorMetrics": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "broadcasterAddress",
          "uptimeBps",
          "proposedBlocks",
          "proposedBlocksShareBps",
          "quadraticVotingPower",
          "startProxyHeight",
          "heartbeatUptimeBps",
          "staleHeartbeats"
        ],
        "properties": {
          "broadcasterAddress": {
            "type": [
              "string",
              "null"
            ]
          },
          "uptimeBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "proposedBlocks": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "proposedBlocksShareBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "quadraticVotingPower": {
            "type": [
              "number",
              "null"
            ],
            "minimum": 0
          },
          "startProxyHeight": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "heartbeatUptimeBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "staleHeartbeats": {
            "type": "boolean"
          }
        }
      },
      "AxelarVerifier": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "address",
          "supportedChains",
          "votes",
          "signs"
        ],
        "properties": {
          "address": {
            "type": "string"
          },
          "supportedChains": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 200,
            "uniqueItems": true
          },
          "votes": {
            "$ref": "#/components/schemas/AxelarPerformance"
          },
          "signs": {
            "$ref": "#/components/schemas/AxelarPerformance"
          }
        }
      },
      "BaseNetworkSnapshot": {
        "type": "object",
        "description": "Bounded Base mainnet projection assembled from two independent public execution endpoints, read server-side.",
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networkId",
          "chainId",
          "state",
          "execution",
          "l1Origin",
          "notApplicable",
          "notPublished",
          "scope",
          "warnings"
        ],
        "additionalProperties": false,
        "properties": {
          "schemaVersion": {
            "type": "string",
            "const": "posthuman.base-network/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time",
            "description": "When the collector assembled this projection."
          },
          "source": {
            "type": "string",
            "const": "public-execution-rpc"
          },
          "networkId": {
            "type": "string",
            "const": "base"
          },
          "chainId": {
            "type": "string",
            "const": "8453"
          },
          "state": {
            "type": "string",
            "enum": [
              "ready",
              "attention"
            ],
            "description": "attention exactly when warnings is non-empty."
          },
          "execution": {
            "type": "object",
            "description": "Execution-layer head with both derivation lags and the two-source agreement verdict.",
            "required": [
              "primaryHost",
              "secondaryHost",
              "agreement",
              "head",
              "safeNumber",
              "finalizedNumber",
              "unsafeSafeLagBlocks",
              "safeFinalizedLagBlocks",
              "safeLagAttentionBlocks",
              "finalizedLagAttentionBlocks"
            ],
            "additionalProperties": false,
            "properties": {
              "primaryHost": {
                "type": "string",
                "description": "Hostname of the primary execution endpoint. Paths are never published."
              },
              "secondaryHost": {
                "type": "string",
                "description": "Hostname of the independent secondary execution endpoint."
              },
              "agreement": {
                "type": "object",
                "required": [
                  "comparedHeight",
                  "agreed",
                  "primaryHash",
                  "secondaryHash",
                  "headSkewBlocks"
                ],
                "additionalProperties": false,
                "properties": {
                  "comparedHeight": {
                    "type": "string",
                    "description": "The lower of the two heads. At two-second blocks the endpoints are almost never level, so comparing two latest hashes directly would report a fork continuously."
                  },
                  "agreed": {
                    "type": "boolean"
                  },
                  "primaryHash": {
                    "type": "string"
                  },
                  "secondaryHash": {
                    "type": "string"
                  },
                  "headSkewBlocks": {
                    "type": "string",
                    "description": "Distance between the two reported heads."
                  }
                }
              },
              "head": {
                "type": "object",
                "required": [
                  "number",
                  "hash",
                  "timestamp",
                  "ageSeconds",
                  "gasUsed",
                  "gasLimit",
                  "baseFeePerGas"
                ],
                "additionalProperties": false,
                "properties": {
                  "number": {
                    "type": "string",
                    "description": "The unsafe head: what the sequencer has produced, not what has been derived from L1."
                  },
                  "hash": {
                    "type": "string"
                  },
                  "timestamp": {
                    "type": "string"
                  },
                  "ageSeconds": {
                    "type": "string",
                    "description": "Age of the head block when it was read. Base produces a block every two seconds."
                  },
                  "gasUsed": {
                    "type": "string"
                  },
                  "gasLimit": {
                    "type": "string"
                  },
                  "baseFeePerGas": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "description": "Wei."
                  }
                }
              },
              "safeNumber": {
                "type": "string",
                "description": "Highest L2 block whose batch has been read back from Ethereum L1."
              },
              "finalizedNumber": {
                "type": "string",
                "description": "Highest L2 block behind finalized L1 data."
              },
              "unsafeSafeLagBlocks": {
                "type": "string",
                "description": "head minus safe. The most useful number in this payload: the unsafe head advances every two seconds whether or not the chain can still read Ethereum, so block height alone cannot show derivation failing."
              },
              "safeFinalizedLagBlocks": {
                "type": "string",
                "description": "safe minus finalized."
              },
              "safeLagAttentionBlocks": {
                "type": "string",
                "description": "Threshold above which unsafeSafeLagBlocks raises the safe_head_lagging warning."
              },
              "finalizedLagAttentionBlocks": {
                "type": "string",
                "description": "Threshold above which the head-to-finalized distance raises the finalized_head_lagging warning."
              }
            }
          },
          "l1Origin": {
            "type": "object",
            "description": "The Ethereum L1 block the current L2 head was derived against, read from the L1Block predeploy on Base itself rather than from an Ethereum endpoint.",
            "required": [
              "predeploy",
              "number",
              "hash",
              "timestamp",
              "ageSeconds",
              "baseFeeWei",
              "blobBaseFeeWei",
              "sequenceNumber",
              "staleAfterSeconds"
            ],
            "additionalProperties": false,
            "properties": {
              "predeploy": {
                "type": "string",
                "description": "0x4200000000000000000000000000000000000015. The only address this projection calls."
              },
              "number": {
                "type": "string",
                "description": "L1 block number."
              },
              "hash": {
                "type": "string"
              },
              "timestamp": {
                "type": "string"
              },
              "ageSeconds": {
                "type": "string",
                "description": "How old the L1 anchor was when it was read. Derivation freshness, observable without an L1 endpoint."
              },
              "baseFeeWei": {
                "type": "string",
                "description": "L1 base fee in wei, as the L2 sees it."
              },
              "blobBaseFeeWei": {
                "type": "string",
                "description": "L1 blob base fee in wei, as the L2 sees it."
              },
              "sequenceNumber": {
                "type": "string",
                "description": "Index of the L2 block within its L1 epoch."
              },
              "staleAfterSeconds": {
                "type": "string",
                "description": "Threshold above which ageSeconds raises the l1_origin_stale warning."
              }
            }
          },
          "notApplicable": {
            "type": "array",
            "description": "Data that does not exist on this network, as distinct from data we cannot reach. Base has one sequencer, operated by Coinbase, and no chain-level staking or delegation, so there is no validator set, total stake or APR to publish.",
            "items": {
              "type": "string"
            }
          },
          "notPublished": {
            "type": "array",
            "description": "Data that does exist, on Ethereum, and that this projection deliberately holds no L1 endpoint to read.",
            "items": {
              "type": "string"
            }
          },
          "scope": {
            "type": "object",
            "description": "Capability statement. firstPartySources is false: POSTHUMAN operates no Base node.",
            "required": [
              "readOnly",
              "firstPartySources",
              "arbitraryQuery",
              "arbitraryChain",
              "wallet",
              "signing",
              "broadcast",
              "transactions",
              "nodeControl"
            ],
            "additionalProperties": false,
            "properties": {
              "readOnly": {
                "type": "boolean"
              },
              "firstPartySources": {
                "type": "boolean"
              },
              "arbitraryQuery": {
                "type": "boolean"
              },
              "arbitraryChain": {
                "type": "boolean"
              },
              "wallet": {
                "type": "boolean"
              },
              "signing": {
                "type": "boolean"
              },
              "broadcast": {
                "type": "boolean"
              },
              "transactions": {
                "type": "boolean"
              },
              "nodeControl": {
                "type": "boolean"
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "BasisPoints": {
        "type": "integer",
        "minimum": 0,
        "maximum": 10000
      },
      "BlockNetworkId": {
        "type": "string",
        "enum": [
          "cosmoshub",
          "osmosis",
          "neutron",
          "axelar",
          "celestia",
          "juno",
          "mantra",
          "atomone",
          "oraichain",
          "verona",
          "celestia-testnet",
          "fetchhub",
          "shentu",
          "fuel",
          "provenance",
          "firmachain",
          "warden",
          "dymension",
          "agoric",
          "akash",
          "humans",
          "dungeon",
          "beezee",
          "babylon",
          "union",
          "lava",
          "axone",
          "exrp",
          "cosmoshub-testnet",
          "atomone-testnet",
          "axelar-testnet",
          "babylon-testnet",
          "warden-testnet",
          "limonata",
          "pchain",
          "gnoland"
        ]
      },
      "BlockSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networkId",
          "chainId",
          "height",
          "hash",
          "timestamp",
          "proposerAddress",
          "previousBlockHash",
          "appHash",
          "dataHash",
          "validatorsHash",
          "nextValidatorsHash",
          "consensusHash",
          "lastResultsHash",
          "evidenceHash",
          "lastCommit",
          "transactions",
          "evidenceCount",
          "scope",
          "warnings"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.block/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "public-cosmos-rpc+rest"
          },
          "networkId": {
            "$ref": "#/components/schemas/BlockNetworkId"
          },
          "chainId": {
            "type": "string"
          },
          "height": {
            "type": "string",
            "pattern": "^\\d{1,40}$"
          },
          "hash": {
            "$ref": "#/components/schemas/Hash64"
          },
          "timestamp": {
            "type": "string",
            "format": "date-time"
          },
          "proposerAddress": {
            "type": [
              "string",
              "null"
            ],
            "pattern": "^[A-F0-9]{40}$"
          },
          "previousBlockHash": {
            "$ref": "#/components/schemas/NullableHash64"
          },
          "appHash": {
            "$ref": "#/components/schemas/NullableHash64"
          },
          "dataHash": {
            "$ref": "#/components/schemas/NullableHash64"
          },
          "validatorsHash": {
            "$ref": "#/components/schemas/NullableHash64"
          },
          "nextValidatorsHash": {
            "$ref": "#/components/schemas/NullableHash64"
          },
          "consensusHash": {
            "$ref": "#/components/schemas/NullableHash64"
          },
          "lastResultsHash": {
            "$ref": "#/components/schemas/NullableHash64"
          },
          "evidenceHash": {
            "$ref": "#/components/schemas/NullableHash64"
          },
          "lastCommit": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "round",
              "signatures",
              "totalSlots"
            ],
            "properties": {
              "round": {
                "type": "string",
                "pattern": "^\\d{1,12}$"
              },
              "signatures": {
                "type": "integer",
                "minimum": 0
              },
              "totalSlots": {
                "type": "integer",
                "minimum": 0
              }
            }
          },
          "transactions": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "total",
              "hashes",
              "truncated"
            ],
            "properties": {
              "total": {
                "type": "integer",
                "minimum": 0
              },
              "hashes": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Hash64"
                },
                "maxItems": 100
              },
              "truncated": {
                "type": "boolean"
              }
            }
          },
          "evidenceCount": {
            "type": "integer",
            "minimum": 0
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "maximumTransactions"
            ],
            "properties": {
              "maximumTransactions": {
                "const": 100
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 12
          }
        }
      },
      "BurnObservationEvent": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "height",
          "observedAt",
          "amount",
          "burner",
          "source",
          "txIndex",
          "evidence"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "height": {
            "type": "integer",
            "minimum": 0
          },
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "amount": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "burner": {
            "type": "string"
          },
          "source": {
            "enum": [
              "finalize_block",
              "transaction"
            ]
          },
          "txIndex": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "evidence": {
            "const": "exact-bank-burn-event"
          }
        }
      },
      "BurnObservationsSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networkId",
          "networkName",
          "chainId",
          "state",
          "baselineAt",
          "baselineHeight",
          "scannedThroughHeight",
          "tipHeight",
          "remainingBlocks",
          "current",
          "events",
          "scope"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.burn-observations/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "fixed-reviewed-cosmos-rpc"
          },
          "networkId": {
            "const": "cosmoshub"
          },
          "networkName": {
            "const": "Cosmos Hub"
          },
          "chainId": {
            "const": "cosmoshub-4"
          },
          "state": {
            "enum": [
              "ready",
              "catching_up"
            ]
          },
          "baselineAt": {
            "type": "string",
            "format": "date-time"
          },
          "baselineHeight": {
            "type": "integer",
            "minimum": 0
          },
          "scannedThroughHeight": {
            "type": "integer",
            "minimum": 0
          },
          "tipHeight": {
            "type": "integer",
            "minimum": 0
          },
          "remainingBlocks": {
            "type": "integer",
            "minimum": 0
          },
          "current": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "denom",
              "display",
              "exponent",
              "observedBurnEvents",
              "observedBurnAmount"
            ],
            "properties": {
              "denom": {
                "const": "uatom"
              },
              "display": {
                "const": "ATOM"
              },
              "exponent": {
                "const": 6
              },
              "observedBurnEvents": {
                "type": "integer",
                "minimum": 0
              },
              "observedBurnAmount": {
                "$ref": "#/components/schemas/UnsignedAmount"
              }
            }
          },
          "events": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BurnObservationEvent"
            },
            "maxItems": 2000
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "forwardOnly",
              "historicalBackfill",
              "retentionDays",
              "maximumEvents",
              "exactBurnEvents",
              "supplyChangeIsBurn",
              "signing",
              "broadcast",
              "nodeControl"
            ],
            "properties": {
              "forwardOnly": {
                "const": true
              },
              "historicalBackfill": {
                "const": false
              },
              "retentionDays": {
                "const": 180
              },
              "maximumEvents": {
                "const": 2000
              },
              "exactBurnEvents": {
                "const": true
              },
              "supplyChangeIsBurn": {
                "const": false
              },
              "signing": {
                "const": false
              },
              "broadcast": {
                "const": false
              },
              "nodeControl": {
                "const": false
              }
            }
          }
        }
      },
      "CantonNetworkProjection": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "network",
          "label",
          "info",
          "scan",
          "superValidators",
          "validators",
          "versionDistribution",
          "posthuman",
          "warnings"
        ],
        "properties": {
          "id": {
            "enum": [
              "canton-mainnet",
              "canton-testnet",
              "canton-devnet"
            ]
          },
          "network": {
            "enum": [
              "mainnet",
              "testnet",
              "devnet"
            ]
          },
          "label": {
            "type": "string"
          },
          "info": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "network",
              "version",
              "migrationId",
              "serialId",
              "synchronizerVersion",
              "successorAnnounced"
            ],
            "properties": {
              "network": {
                "type": "string"
              },
              "version": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "migrationId": {
                "type": [
                  "integer",
                  "null"
                ],
                "description": "A change here is a network reset on DevNet and TestNet, not an upgrade."
              },
              "serialId": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "synchronizerVersion": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "successorAnnounced": {
                "type": "boolean",
                "description": "A logical synchronizer upgrade is announced."
              }
            }
          },
          "scan": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "state",
              "access",
              "source",
              "observedAt",
              "reason",
              "url"
            ],
            "properties": {
              "state": {
                "enum": [
                  "ready",
                  "unavailable"
                ]
              },
              "access": {
                "enum": [
                  "public",
                  "onboarded-validator-ip"
                ]
              },
              "source": {
                "type": "string"
              },
              "observedAt": {
                "type": [
                  "string",
                  "null"
                ],
                "format": "date-time"
              },
              "reason": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "scan_ip_restricted or scan_read_failed when state is unavailable."
              },
              "url": {
                "type": "string",
                "format": "uri"
              }
            }
          },
          "superValidators": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "count",
              "votingThreshold",
              "dsoParty",
              "latestMiningRound",
              "totalRewardWeight",
              "items"
            ],
            "properties": {
              "count": {
                "type": "integer",
                "minimum": 0
              },
              "votingThreshold": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "dsoParty": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "latestMiningRound": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "totalRewardWeight": {
                "type": "integer",
                "minimum": 0
              },
              "items": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CantonSuperValidator"
                }
              }
            }
          },
          "validators": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "count",
              "activeCount",
              "inactiveCount",
              "activeWindowHours",
              "truncated",
              "limit",
              "publishedCount",
              "publishedLimit",
              "publishedOrder",
              "items"
            ],
            "properties": {
              "count": {
                "type": "integer",
                "minimum": 0,
                "description": "Every licence the DSO has issued on this network."
              },
              "activeCount": {
                "type": "integer",
                "minimum": 0
              },
              "inactiveCount": {
                "type": "integer",
                "minimum": 0
              },
              "activeWindowHours": {
                "type": "number"
              },
              "truncated": {
                "type": "boolean",
                "description": "The collector reached its own read cap."
              },
              "limit": {
                "type": "integer"
              },
              "publishedCount": {
                "type": "integer",
                "minimum": 0,
                "description": "Rows in items. Smaller than count on a large network."
              },
              "publishedLimit": {
                "type": "integer"
              },
              "publishedOrder": {
                "const": "last-active-descending"
              },
              "items": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CantonValidator"
                }
              }
            }
          },
          "versionDistribution": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "version",
                "count",
                "current"
              ],
              "properties": {
                "version": {
                  "type": "string",
                  "description": "`unreported` covers licences with no published version."
                },
                "count": {
                  "type": "integer",
                  "minimum": 0
                },
                "current": {
                  "type": "boolean"
                }
              }
            }
          },
          "posthuman": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/CantonValidator"
              },
              {
                "type": "null"
              }
            ]
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "CantonSuperValidator": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "party",
          "name",
          "rewardWeight",
          "rewardWeightShare",
          "joinedAsOfRound"
        ],
        "properties": {
          "party": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "rewardWeight": {
            "type": "integer",
            "minimum": 0,
            "description": "SV reward weight parameter. Not delegated stake \u2014 Canton has no delegation."
          },
          "rewardWeightShare": {
            "type": "number",
            "minimum": 0,
            "maximum": 1
          },
          "joinedAsOfRound": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      },
      "CantonValidator": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "party",
          "hint",
          "sponsorHint",
          "lastActiveAt",
          "active",
          "version",
          "contactDomain",
          "selfSponsored",
          "posthuman"
        ],
        "properties": {
          "party": {
            "type": "string",
            "description": "Full Canton party id, `<hint>::<namespace fingerprint>`."
          },
          "hint": {
            "type": "string",
            "description": "Operator-chosen party hint, the only human-readable part of the party."
          },
          "sponsorHint": {
            "type": [
              "string",
              "null"
            ],
            "description": "Hint of the sponsoring party, or null when the licence is self-sponsored."
          },
          "lastActiveAt": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time",
            "description": "Last activity the validator's own licence-activity trigger reported."
          },
          "active": {
            "type": "boolean",
            "description": "lastActiveAt is within validators.activeWindowHours."
          },
          "version": {
            "type": [
              "string",
              "null"
            ],
            "description": "Node release the validator published in its licence metadata."
          },
          "contactDomain": {
            "type": [
              "string",
              "null"
            ],
            "description": "Domain of the on-chain contact point. The address itself is deliberately not republished."
          },
          "selfSponsored": {
            "type": "boolean"
          },
          "posthuman": {
            "type": "boolean",
            "description": "The POSTHUMAN validator on this network."
          }
        }
      },
      "CantonValidatorsSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "state",
          "networks",
          "scope",
          "warnings"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.canton-validators/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "splice-scan+network-info"
          },
          "state": {
            "enum": [
              "ready",
              "attention",
              "unavailable"
            ],
            "description": "`ready` only when warnings is empty; `unavailable` when no network has a readable scan."
          },
          "networks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CantonNetworkProjection"
            },
            "description": "Always mainnet, testnet, devnet in that order."
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "readOnly",
              "firstPartySourcesOnly",
              "arbitraryQuery",
              "arbitraryChain",
              "wallet",
              "signing",
              "broadcast",
              "transactions",
              "nodeControl"
            ],
            "properties": {
              "readOnly": {
                "const": true
              },
              "firstPartySourcesOnly": {
                "const": true
              },
              "arbitraryQuery": {
                "const": false
              },
              "arbitraryChain": {
                "const": false
              },
              "wallet": {
                "const": false
              },
              "signing": {
                "const": false
              },
              "broadcast": {
                "const": false
              },
              "transactions": {
                "const": false
              },
              "nodeControl": {
                "const": false
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Network-scoped, `<networkId>:<reason>`."
          }
        }
      },
      "CelestiaBridgeEntry": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "network",
          "role",
          "label",
          "provider",
          "peerId",
          "multiaddr",
          "evidence",
          "freshness",
          "health"
        ],
        "properties": {
          "id": {
            "type": "string",
            "maxLength": 80
          },
          "network": {
            "$ref": "#/components/schemas/CelestiaBridgeNetwork"
          },
          "role": {
            "const": "bootstrapper"
          },
          "label": {
            "type": "string",
            "maxLength": 120
          },
          "provider": {
            "type": "string",
            "maxLength": 160
          },
          "peerId": {
            "type": "string",
            "pattern": "^12D3KooW[1-9A-HJ-NP-Za-km-z]{44}$"
          },
          "multiaddr": {
            "type": "string",
            "maxLength": 300
          },
          "evidence": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "endpoint",
              "provider"
            ],
            "properties": {
              "endpoint": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "class",
                  "confidence",
                  "sourceUrl"
                ],
                "properties": {
                  "class": {
                    "const": "reviewed-direct"
                  },
                  "confidence": {
                    "const": "high"
                  },
                  "sourceUrl": {
                    "type": "string",
                    "format": "uri"
                  }
                }
              },
              "provider": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "class",
                  "confidence"
                ],
                "properties": {
                  "class": {
                    "enum": [
                      "official-hostname",
                      "hostname-only"
                    ]
                  },
                  "confidence": {
                    "enum": [
                      "medium",
                      "low"
                    ]
                  }
                }
              }
            }
          },
          "freshness": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "reviewedAt",
              "sourceVersion",
              "sourceCommit"
            ],
            "properties": {
              "reviewedAt": {
                "type": "string",
                "format": "date-time"
              },
              "sourceVersion": {
                "type": "string"
              },
              "sourceCommit": {
                "type": "string",
                "pattern": "^[a-f0-9]{40}$"
              }
            }
          },
          "health": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "reachability",
              "ownerHealth"
            ],
            "properties": {
              "reachability": {
                "const": "not-probed"
              },
              "ownerHealth": {
                "const": "not-assessed"
              }
            }
          }
        }
      },
      "CelestiaBridgeNetwork": {
        "type": "string",
        "enum": [
          "celestia",
          "mocha-5"
        ]
      },
      "CelestiaBridgeProbeRequest": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "network",
          "peerId",
          "multiaddr"
        ],
        "properties": {
          "network": {
            "$ref": "#/components/schemas/CelestiaBridgeNetwork"
          },
          "peerId": {
            "type": "string",
            "pattern": "^12D3KooW[1-9A-HJ-NP-Za-km-z]{44}$"
          },
          "multiaddr": {
            "type": "string",
            "maxLength": 300
          }
        }
      },
      "CelestiaBridgeProbeResult": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "checkedAt",
          "network",
          "entryId",
          "peerId",
          "multiaddr",
          "reachability",
          "transport",
          "port",
          "latencyMs",
          "ownerHealth",
          "statement"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.celestia-bridge-probe/v1"
          },
          "checkedAt": {
            "type": "string",
            "format": "date-time"
          },
          "network": {
            "$ref": "#/components/schemas/CelestiaBridgeNetwork"
          },
          "entryId": {
            "type": "string"
          },
          "peerId": {
            "type": "string"
          },
          "multiaddr": {
            "type": "string"
          },
          "reachability": {
            "const": "tcp-reachable"
          },
          "transport": {
            "const": "tcp"
          },
          "port": {
            "const": 2121
          },
          "latencyMs": {
            "type": "number",
            "minimum": 0,
            "maximum": 30000
          },
          "ownerHealth": {
            "const": "not-assessed"
          },
          "statement": {
            "type": "string"
          }
        }
      },
      "CelestiaBridgeRegistry": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "network",
          "completeness",
          "source",
          "entries",
          "scope"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.celestia-bridge-registry/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "network": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "id",
              "label",
              "appChainId",
              "daNetwork",
              "nodeVersion",
              "appVersion",
              "statusUrl"
            ],
            "properties": {
              "id": {
                "$ref": "#/components/schemas/CelestiaBridgeNetwork"
              },
              "label": {
                "type": "string"
              },
              "appChainId": {
                "$ref": "#/components/schemas/CelestiaBridgeNetwork"
              },
              "daNetwork": {
                "$ref": "#/components/schemas/CelestiaDaP2pNetwork"
              },
              "nodeVersion": {
                "type": "string"
              },
              "appVersion": {
                "type": "string"
              },
              "statusUrl": {
                "type": "string",
                "format": "uri"
              }
            }
          },
          "completeness": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "state",
              "statement",
              "reviewedDirect",
              "thirdPartyDiscovery",
              "ownerHealthAssessed"
            ],
            "properties": {
              "state": {
                "const": "partial"
              },
              "statement": {
                "type": "string"
              },
              "reviewedDirect": {
                "type": "integer",
                "minimum": 0,
                "maximum": 16
              },
              "thirdPartyDiscovery": {
                "const": 0
              },
              "ownerHealthAssessed": {
                "const": false
              }
            }
          },
          "source": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "repository",
              "version",
              "commit",
              "path",
              "sourceSha256",
              "url",
              "reviewedAt"
            ],
            "properties": {
              "repository": {
                "const": "celestiaorg/celestia-node"
              },
              "version": {
                "const": "v0.32.1"
              },
              "commit": {
                "const": "8fc6945a38db8af6277d906c5d313a70db33c444"
              },
              "path": {
                "const": "nodebuilder/p2p/bootstrap.go"
              },
              "sourceSha256": {
                "const": "fcd2d98858db36b2444ff28024dc8217231bfaba2069e2919b8c7fb43061aa61"
              },
              "url": {
                "type": "string",
                "format": "uri"
              },
              "reviewedAt": {
                "type": "string",
                "format": "date-time"
              }
            }
          },
          "entries": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "$ref": "#/components/schemas/CelestiaBridgeEntry"
            }
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "publicDataOnly",
              "includesPrivateOrSentryData",
              "arbitraryDiscovery",
              "endpointCap"
            ],
            "properties": {
              "publicDataOnly": {
                "const": true
              },
              "includesPrivateOrSentryData": {
                "const": false
              },
              "arbitraryDiscovery": {
                "const": false
              },
              "endpointCap": {
                "const": 16
              }
            }
          }
        }
      },
      "CelestiaDaP2pNetwork": {
        "type": "string",
        "enum": [
          "celestia",
          "mocha"
        ]
      },
      "CelestiaRpcCheck": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "checkedAt",
          "networkId",
          "chainId",
          "endpoint",
          "source",
          "initialHeight",
          "height",
          "earliestHeight",
          "catchingUp",
          "latencyMs",
          "txIndex",
          "moniker",
          "archiveCandidate",
          "capabilities",
          "cors",
          "statement"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.celestia-rpc-check/v1"
          },
          "checkedAt": {
            "type": "string",
            "format": "date-time"
          },
          "networkId": {
            "const": "celestia"
          },
          "chainId": {
            "const": "celestia"
          },
          "endpoint": {
            "const": "https://rpc-celestia-mainnet.posthuman.digital"
          },
          "source": {
            "const": "fixed-posthuman-mainnet-rpc"
          },
          "initialHeight": {
            "type": "string",
            "pattern": "^[1-9][0-9]*$"
          },
          "height": {
            "type": "string",
            "pattern": "^[1-9][0-9]*$"
          },
          "earliestHeight": {
            "type": "string",
            "pattern": "^[1-9][0-9]*$"
          },
          "catchingUp": {
            "const": false
          },
          "latencyMs": {
            "type": "number",
            "minimum": 0,
            "maximum": 60000
          },
          "txIndex": {
            "enum": [
              "on",
              "off",
              "unknown"
            ]
          },
          "moniker": {
            "type": [
              "string",
              "null"
            ]
          },
          "archiveCandidate": {
            "type": "boolean"
          },
          "capabilities": {
            "type": "array",
            "minItems": 4,
            "maxItems": 4,
            "items": {
              "enum": [
                "status",
                "block",
                "validators",
                "height-movement"
              ]
            }
          },
          "cors": {
            "const": "same-origin-service"
          },
          "statement": {
            "type": "string"
          }
        }
      },
      "ChainAsset": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "base",
          "display",
          "symbol",
          "name",
          "description",
          "exponent",
          "kind",
          "metadataPublished"
        ],
        "properties": {
          "base": {
            "type": "string"
          },
          "display": {
            "type": [
              "string",
              "null"
            ]
          },
          "symbol": {
            "type": [
              "string",
              "null"
            ]
          },
          "name": {
            "type": [
              "string",
              "null"
            ]
          },
          "description": {
            "type": [
              "string",
              "null"
            ]
          },
          "exponent": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "kind": {
            "enum": [
              "native",
              "ibc",
              "tokenfactory",
              "cw20"
            ]
          },
          "metadataPublished": {
            "type": "boolean"
          }
        }
      },
      "ChainParamsRecord": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "networkId",
          "networkName",
          "chainId",
          "observedAt",
          "height",
          "state",
          "denom",
          "supply",
          "mint",
          "params",
          "govAuthority",
          "govVersion",
          "warnings"
        ],
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "networkName": {
            "type": "string"
          },
          "chainId": {
            "type": "string"
          },
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "height": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "state": {
            "enum": [
              "healthy",
              "attention",
              "unavailable"
            ]
          },
          "denom": {
            "$ref": "#/components/schemas/NullableDenom"
          },
          "supply": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "withheld",
              "total",
              "bonded",
              "notBonded",
              "bondedRatioBps",
              "communityPool"
            ],
            "properties": {
              "withheld": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "total": {
                "$ref": "#/components/schemas/NullableUnsignedAmount"
              },
              "bonded": {
                "$ref": "#/components/schemas/UnsignedAmount"
              },
              "notBonded": {
                "$ref": "#/components/schemas/UnsignedAmount"
              },
              "bondedRatioBps": {
                "$ref": "#/components/schemas/NullableBasisPoints"
              },
              "communityPool": {
                "$ref": "#/components/schemas/NullableUnsignedAmount"
              }
            }
          },
          "mint": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "model",
              "inflationBps",
              "annualProvisions",
              "stakingAprBps",
              "aprScope"
            ],
            "properties": {
              "model": {
                "enum": [
                  "standard",
                  "osmosis-epoch",
                  "celestia",
                  "non-standard"
                ]
              },
              "inflationBps": {
                "$ref": "#/components/schemas/NullableBasisPoints"
              },
              "annualProvisions": {
                "$ref": "#/components/schemas/NullableUnsignedAmount"
              },
              "stakingAprBps": {
                "$ref": "#/components/schemas/NullableBasisPoints"
              },
              "aprScope": {
                "const": "mint-module-only",
                "type": [
                  "string",
                  "null"
                ]
              }
            }
          },
          "params": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "staking",
              "slashing",
              "distribution",
              "gov"
            ],
            "properties": {
              "staking": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "bondDenom",
                  "unbondingTimeSeconds",
                  "maxValidators",
                  "maxEntries",
                  "historicalEntries"
                ],
                "properties": {
                  "bondDenom": {
                    "type": "string"
                  },
                  "unbondingTimeSeconds": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "maxValidators": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "maxEntries": {
                    "$ref": "#/components/schemas/NullableNonNegativeInteger"
                  },
                  "historicalEntries": {
                    "$ref": "#/components/schemas/NullableNonNegativeInteger"
                  }
                }
              },
              "slashing": {
                "type": [
                  "object",
                  "null"
                ],
                "additionalProperties": false,
                "required": [
                  "signedBlocksWindow",
                  "minSignedPerWindowBps",
                  "downtimeJailDurationSeconds",
                  "slashFractionDoubleSignBps",
                  "slashFractionDowntimeBps"
                ],
                "properties": {
                  "signedBlocksWindow": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "minSignedPerWindowBps": {
                    "$ref": "#/components/schemas/BasisPoints"
                  },
                  "downtimeJailDurationSeconds": {
                    "$ref": "#/components/schemas/NullableNonNegativeInteger"
                  },
                  "slashFractionDoubleSignBps": {
                    "$ref": "#/components/schemas/NullableBasisPoints"
                  },
                  "slashFractionDowntimeBps": {
                    "$ref": "#/components/schemas/NullableBasisPoints"
                  }
                }
              },
              "distribution": {
                "type": [
                  "object",
                  "null"
                ],
                "additionalProperties": false,
                "required": [
                  "communityTaxBps",
                  "withdrawAddrEnabled"
                ],
                "properties": {
                  "communityTaxBps": {
                    "$ref": "#/components/schemas/BasisPoints"
                  },
                  "withdrawAddrEnabled": {
                    "type": "boolean"
                  }
                }
              },
              "gov": {
                "type": [
                  "object",
                  "null"
                ],
                "additionalProperties": false,
                "required": [
                  "quorumBps",
                  "thresholdBps",
                  "vetoThresholdBps",
                  "votingPeriodSeconds",
                  "maxDepositPeriodSeconds",
                  "minDeposit"
                ],
                "properties": {
                  "quorumBps": {
                    "$ref": "#/components/schemas/BasisPoints"
                  },
                  "thresholdBps": {
                    "$ref": "#/components/schemas/BasisPoints"
                  },
                  "vetoThresholdBps": {
                    "$ref": "#/components/schemas/BasisPoints"
                  },
                  "votingPeriodSeconds": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "maxDepositPeriodSeconds": {
                    "$ref": "#/components/schemas/NullableNonNegativeInteger"
                  },
                  "minDeposit": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/Coin"
                    }
                  }
                }
              }
            }
          },
          "govAuthority": {
            "type": [
              "string",
              "null"
            ]
          },
          "govVersion": {
            "enum": [
              "v1",
              "v1beta1",
              null
            ],
            "type": [
              "string",
              "null"
            ]
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 12
          }
        }
      },
      "ChainParamsSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networks",
          "totals"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.chain-params/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "public-cosmos-rest"
          },
          "networks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ChainParamsRecord"
            },
            "minItems": 34,
            "maxItems": 34
          },
          "totals": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "trackedNetworks",
              "readyNetworks"
            ],
            "properties": {
              "trackedNetworks": {
                "const": 34
              },
              "readyNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 34
              }
            }
          }
        }
      },
      "Coin": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "denom",
          "amount"
        ],
        "properties": {
          "denom": {
            "type": "string",
            "minLength": 1,
            "maxLength": 160
          },
          "amount": {
            "$ref": "#/components/schemas/UnsignedAmount"
          }
        }
      },
      "DecimalAmount": {
        "type": "string",
        "pattern": "^\\d{1,50}\\.\\d{18}$"
      },
      "Denom": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "base",
          "display",
          "exponent"
        ],
        "properties": {
          "base": {
            "type": "string"
          },
          "display": {
            "type": "string"
          },
          "exponent": {
            "type": "integer",
            "minimum": 0,
            "maximum": 24
          }
        }
      },
      "DevActivityNetwork": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "networkId",
          "networkName",
          "chainId",
          "state",
          "observedAt",
          "lastAttemptAt",
          "repository",
          "commits",
          "linkedContributors",
          "contributorCapReached",
          "weeklyCommits",
          "rank26Weeks",
          "warnings"
        ],
        "properties": {
          "networkId": {
            "type": "string"
          },
          "networkName": {
            "type": "string"
          },
          "chainId": {
            "type": "string"
          },
          "state": {
            "enum": [
              "ready",
              "partial",
              "stale",
              "unavailable"
            ]
          },
          "observedAt": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "lastAttemptAt": {
            "type": "string",
            "format": "date-time"
          },
          "repository": {
            "$ref": "#/components/schemas/DevActivityRepository"
          },
          "commits": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "oneWeek",
              "fourWeeks",
              "twentySixWeeks",
              "fiftyTwoWeeks"
            ],
            "properties": {
              "oneWeek": {
                "type": "integer",
                "minimum": 0
              },
              "fourWeeks": {
                "type": "integer",
                "minimum": 0
              },
              "twentySixWeeks": {
                "type": "integer",
                "minimum": 0
              },
              "fiftyTwoWeeks": {
                "type": "integer",
                "minimum": 0
              }
            }
          },
          "linkedContributors": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 0,
            "maximum": 500
          },
          "contributorCapReached": {
            "type": "boolean"
          },
          "weeklyCommits": {
            "type": "array",
            "items": {
              "type": "integer",
              "minimum": 0
            },
            "maxItems": 52
          },
          "rank26Weeks": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 1,
            "maximum": 26
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 8
          }
        }
      },
      "DevActivityRepository": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "owner",
          "name",
          "fullName",
          "url",
          "defaultBranch",
          "createdAt",
          "pushedAt"
        ],
        "properties": {
          "owner": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "fullName": {
            "type": "string"
          },
          "url": {
            "type": "string",
            "format": "uri"
          },
          "defaultBranch": {
            "type": [
              "string",
              "null"
            ]
          },
          "createdAt": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "pushedAt": {
            "$ref": "#/components/schemas/NullableTimestamp"
          }
        }
      },
      "DevActivitySnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networks",
          "totals",
          "scope"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.dev-activity/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "github-public-statistics-fixed-repositories"
          },
          "networks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/DevActivityNetwork"
            },
            "minItems": 26,
            "maxItems": 26
          },
          "totals": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "trackedNetworks",
              "readyNetworks",
              "partialNetworks",
              "staleNetworks",
              "unavailableNetworks"
            ],
            "properties": {
              "trackedNetworks": {
                "const": 26
              },
              "readyNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 26
              },
              "partialNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 26
              },
              "staleNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 26
              },
              "unavailableNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 26
              }
            }
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "primaryRepositoryPerNetwork",
              "activityWindowWeeks",
              "rankingMetric",
              "excludesMergeCommits",
              "linkedContributorsMaximum",
              "repositoryCreatedAtIsProjectCreatedAt",
              "commitsAreQualityScore",
              "arbitraryRepository",
              "authenticationRequired",
              "signing",
              "broadcast",
              "nodeControl"
            ],
            "properties": {
              "primaryRepositoryPerNetwork": {
                "const": true
              },
              "activityWindowWeeks": {
                "const": 52
              },
              "rankingMetric": {
                "const": "commits26Weeks"
              },
              "excludesMergeCommits": {
                "const": true
              },
              "linkedContributorsMaximum": {
                "const": 500
              },
              "repositoryCreatedAtIsProjectCreatedAt": {
                "const": false
              },
              "commitsAreQualityScore": {
                "const": false
              },
              "arbitraryRepository": {
                "const": false
              },
              "authenticationRequired": {
                "const": false
              },
              "signing": {
                "const": false
              },
              "broadcast": {
                "const": false
              },
              "nodeControl": {
                "const": false
              }
            }
          }
        }
      },
      "Error": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "error"
        ],
        "properties": {
          "error": {
            "type": "string"
          }
        },
        "examples": [
          {
            "error": "requested resource is unavailable"
          }
        ]
      },
      "EthereumNetworkSnapshot": {
        "type": "object",
        "description": "Bounded Ethereum mainnet projection assembled from two independent public execution endpoints and one public beacon endpoint, read server-side.",
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networkId",
          "chainId",
          "state",
          "execution",
          "consensus",
          "notPublished",
          "scope",
          "warnings"
        ],
        "additionalProperties": false,
        "properties": {
          "schemaVersion": {
            "type": "string",
            "const": "posthuman.ethereum-network/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time",
            "description": "When the collector assembled this projection."
          },
          "source": {
            "type": "string",
            "const": "public-execution-rpc+public-beacon-api"
          },
          "networkId": {
            "type": "string",
            "const": "ethereum"
          },
          "chainId": {
            "type": "string",
            "const": "1"
          },
          "state": {
            "type": "string",
            "enum": [
              "ready",
              "attention"
            ],
            "description": "attention exactly when warnings is non-empty."
          },
          "execution": {
            "type": "object",
            "description": "Execution-layer head, finality and deposit contract state, with the two-source agreement verdict.",
            "required": [
              "primaryHost",
              "secondaryHost",
              "agreement",
              "head",
              "safeNumber",
              "finalizedNumber",
              "finalityLagBlocks",
              "depositContract"
            ],
            "additionalProperties": false,
            "properties": {
              "primaryHost": {
                "type": "string",
                "description": "Hostname of the primary execution endpoint. Paths are never published."
              },
              "secondaryHost": {
                "type": "string",
                "description": "Hostname of the independent secondary execution endpoint."
              },
              "agreement": {
                "type": "object",
                "required": [
                  "comparedHeight",
                  "agreed",
                  "primaryHash",
                  "secondaryHash",
                  "headSkewBlocks"
                ],
                "additionalProperties": false,
                "properties": {
                  "comparedHeight": {
                    "type": "string",
                    "description": "The lower of the two heads, so ordinary propagation skew is not read as a fork."
                  },
                  "agreed": {
                    "type": "boolean"
                  },
                  "primaryHash": {
                    "type": "string"
                  },
                  "secondaryHash": {
                    "type": "string"
                  },
                  "headSkewBlocks": {
                    "type": "string"
                  }
                }
              },
              "head": {
                "type": "object",
                "required": [
                  "number",
                  "hash",
                  "timestamp",
                  "ageSeconds",
                  "gasUsed",
                  "gasLimit",
                  "baseFeePerGas",
                  "blobGasUsed",
                  "excessBlobGas"
                ],
                "additionalProperties": false,
                "properties": {
                  "number": {
                    "type": "string"
                  },
                  "hash": {
                    "type": "string"
                  },
                  "timestamp": {
                    "type": "string"
                  },
                  "ageSeconds": {
                    "type": "string",
                    "description": "Age of the head block when it was read."
                  },
                  "gasUsed": {
                    "type": "string"
                  },
                  "gasLimit": {
                    "type": "string"
                  },
                  "baseFeePerGas": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "description": "Wei. Null before London."
                  },
                  "blobGasUsed": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "description": "Null before Cancun."
                  },
                  "excessBlobGas": {
                    "type": [
                      "string",
                      "null"
                    ],
                    "description": "Published raw. The blob fee derived from it is not published, because the derivation changed at Fusaka and two public endpoints disagreed about it."
                  }
                }
              },
              "safeNumber": {
                "type": "string"
              },
              "finalizedNumber": {
                "type": "string"
              },
              "finalityLagBlocks": {
                "type": "string"
              },
              "depositContract": {
                "type": "object",
                "required": [
                  "address",
                  "balanceWei",
                  "depositCount",
                  "depositRoot"
                ],
                "additionalProperties": false,
                "properties": {
                  "address": {
                    "type": "string"
                  },
                  "balanceWei": {
                    "type": "string",
                    "description": "Everything ever deposited. Withdrawals leave from the beacon chain, not this contract, so this is not the current stake."
                  },
                  "depositCount": {
                    "type": "string",
                    "description": "Cumulative deposits, decoded from the contract's little-endian bytes8 return value."
                  },
                  "depositRoot": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "consensus": {
            "type": "object",
            "description": "Beacon chain finality position. The current slot and epoch are derived from the clock, not taken from the source.",
            "required": [
              "host",
              "sourceKind",
              "reportedHeadSlot",
              "reportedHeadSlotLagSlots",
              "syncDistance",
              "isOptimistic",
              "isSyncing",
              "finalizedEpoch",
              "finalizedRoot",
              "currentJustifiedEpoch",
              "previousJustifiedEpoch",
              "genesisTime",
              "slotsPerEpoch",
              "secondsPerSlot",
              "currentSlot",
              "currentEpoch",
              "finalityDistanceEpochs",
              "finalityAttentionEpochs"
            ],
            "additionalProperties": false,
            "properties": {
              "host": {
                "type": "string"
              },
              "sourceKind": {
                "type": "string",
                "enum": [
                  "checkpoint-sync",
                  "beacon-node"
                ],
                "description": "Derived from the data: a checkpoint-sync server reports the first slot of the finalized epoch under head_slot."
              },
              "reportedHeadSlot": {
                "type": "string",
                "description": "What the source calls its head. On a checkpoint-sync server this is the finalized checkpoint, which is why it is not named head."
              },
              "reportedHeadSlotLagSlots": {
                "type": "string"
              },
              "syncDistance": {
                "type": "string"
              },
              "isOptimistic": {
                "type": "boolean",
                "description": "An optimistic node has not verified the execution payloads behind its head and looks healthy while its view is worthless."
              },
              "isSyncing": {
                "type": "boolean"
              },
              "finalizedEpoch": {
                "type": "string"
              },
              "finalizedRoot": {
                "type": "string"
              },
              "currentJustifiedEpoch": {
                "type": "string"
              },
              "previousJustifiedEpoch": {
                "type": "string"
              },
              "genesisTime": {
                "type": "string"
              },
              "slotsPerEpoch": {
                "type": "string"
              },
              "secondsPerSlot": {
                "type": "string"
              },
              "currentSlot": {
                "type": "string"
              },
              "currentEpoch": {
                "type": "string"
              },
              "finalityDistanceEpochs": {
                "type": "string"
              },
              "finalityAttentionEpochs": {
                "type": "integer",
                "description": "Epochs of finality distance past which the projection marks itself attention."
              }
            }
          },
          "notPublished": {
            "type": "array",
            "description": "Data this projection deliberately does not publish, named so a reader does not assume it was omitted by accident.",
            "items": {
              "type": "string"
            }
          },
          "scope": {
            "type": "object",
            "description": "Capability statement. firstPartySources is false: POSTHUMAN operates no Ethereum node.",
            "required": [
              "readOnly",
              "firstPartySources",
              "arbitraryQuery",
              "arbitraryChain",
              "wallet",
              "signing",
              "broadcast",
              "transactions",
              "nodeControl"
            ],
            "additionalProperties": false,
            "properties": {
              "readOnly": {
                "type": "boolean"
              },
              "firstPartySources": {
                "type": "boolean"
              },
              "arbitraryQuery": {
                "type": "boolean"
              },
              "arbitraryChain": {
                "type": "boolean"
              },
              "wallet": {
                "type": "boolean"
              },
              "signing": {
                "type": "boolean"
              },
              "broadcast": {
                "type": "boolean"
              },
              "transactions": {
                "type": "boolean"
              },
              "nodeControl": {
                "type": "boolean"
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "GovParticipationNetwork": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "networkId",
          "chainId",
          "observedAt",
          "state",
          "window",
          "validators",
          "warnings"
        ],
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "chainId": {
            "type": "string"
          },
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "state": {
            "enum": [
              "healthy",
              "attention",
              "unavailable"
            ]
          },
          "window": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "size",
              "maximum",
              "observedSince",
              "trackingNow",
              "firstProposalId",
              "lastProposalId"
            ],
            "properties": {
              "size": {
                "type": "integer",
                "minimum": 0,
                "maximum": 30
              },
              "maximum": {
                "const": 30
              },
              "observedSince": {
                "$ref": "#/components/schemas/NullableTimestamp"
              },
              "trackingNow": {
                "type": "integer",
                "minimum": 0
              },
              "firstProposalId": {
                "type": [
                  "string",
                  "null"
                ],
                "pattern": "^\\d+$"
              },
              "lastProposalId": {
                "type": [
                  "string",
                  "null"
                ],
                "pattern": "^\\d+$"
              }
            }
          },
          "validators": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ValidatorParticipation"
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 12
          }
        }
      },
      "GovParticipationSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "scope",
          "networks",
          "totals"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.gov-participation/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "public-cosmos-rest"
          },
          "scope": {
            "const": "observed-voting-periods-only"
          },
          "networks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GovParticipationNetwork"
            },
            "minItems": 17,
            "maxItems": 17
          },
          "totals": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "trackedNetworks",
              "readyNetworks",
              "scoringNetworks"
            ],
            "properties": {
              "trackedNetworks": {
                "const": 17
              },
              "readyNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 17
              },
              "scoringNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 17
              }
            }
          }
        }
      },
      "GovernanceNetwork": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "networkId",
          "networkName",
          "chainId",
          "state",
          "apiVersion",
          "observedAt",
          "activeProposals",
          "proposals",
          "recentProposals",
          "recentProposalLimit",
          "proposalCount",
          "warnings"
        ],
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "networkName": {
            "type": "string"
          },
          "chainId": {
            "type": "string"
          },
          "state": {
            "enum": [
              "ready",
              "unavailable"
            ]
          },
          "apiVersion": {
            "enum": [
              "cosmos.gov/v1",
              "cosmos.gov/v1beta1",
              null
            ],
            "type": [
              "string",
              "null"
            ]
          },
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "activeProposals": {
            "type": "integer",
            "minimum": 0
          },
          "proposals": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GovernanceProposal"
            },
            "maxItems": 12
          },
          "recentProposals": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GovernanceProposal"
            },
            "maxItems": 30
          },
          "recentProposalLimit": {
            "const": 30
          },
          "proposalCount": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 12
          }
        }
      },
      "GovernanceProposal": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "key",
          "networkId",
          "networkName",
          "chainId",
          "proposalId",
          "title",
          "summary",
          "kind",
          "status",
          "expedited",
          "proposer",
          "metadata",
          "submittedAt",
          "depositEndsAt",
          "votingStartsAt",
          "votingEndsAt",
          "tally"
        ],
        "properties": {
          "key": {
            "type": "string"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "networkName": {
            "type": "string"
          },
          "chainId": {
            "type": "string"
          },
          "proposalId": {
            "type": "string",
            "pattern": "^\\d+$"
          },
          "title": {
            "type": "string",
            "maxLength": 160
          },
          "summary": {
            "type": [
              "string",
              "null"
            ],
            "maxLength": 1200
          },
          "kind": {
            "type": "string"
          },
          "status": {
            "enum": [
              "deposit_period",
              "voting_period",
              "passed",
              "rejected",
              "failed",
              "unknown"
            ]
          },
          "expedited": {
            "type": "boolean"
          },
          "proposer": {
            "type": [
              "string",
              "null"
            ]
          },
          "metadata": {
            "type": [
              "string",
              "null"
            ]
          },
          "submittedAt": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "depositEndsAt": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "votingStartsAt": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "votingEndsAt": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "tally": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/GovernanceTally"
              },
              {
                "type": "null"
              }
            ]
          }
        }
      },
      "GovernanceSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "scope",
          "networks",
          "totals"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.governance/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "public-cosmos-rest"
          },
          "scope": {
            "const": "voting-period-only"
          },
          "networks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GovernanceNetwork"
            },
            "minItems": 34,
            "maxItems": 34
          },
          "totals": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "trackedNetworks",
              "readyNetworks",
              "activeProposals"
            ],
            "properties": {
              "trackedNetworks": {
                "const": 34
              },
              "readyNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 34
              },
              "activeProposals": {
                "type": "integer",
                "minimum": 0
              }
            }
          }
        },
        "examples": [
          {
            "schemaVersion": "posthuman.governance/v1",
            "generatedAt": "2026-09-07T00:00:00Z",
            "source": "public-cosmos-rest",
            "scope": "voting-period-only",
            "networks": [
              {
                "networkId": "cosmoshub",
                "networkName": "Network 0",
                "chainId": "chain-0",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "osmosis",
                "networkName": "Network 1",
                "chainId": "chain-1",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "neutron",
                "networkName": "Network 2",
                "chainId": "chain-2",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "axelar",
                "networkName": "Network 3",
                "chainId": "chain-3",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "celestia",
                "networkName": "Network 4",
                "chainId": "chain-4",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "juno",
                "networkName": "Network 5",
                "chainId": "chain-5",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "mantra",
                "networkName": "Network 6",
                "chainId": "chain-6",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "atomone",
                "networkName": "Network 7",
                "chainId": "chain-7",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "oraichain",
                "networkName": "Network 8",
                "chainId": "chain-8",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "verona",
                "networkName": "Network 9",
                "chainId": "chain-9",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "fetchhub",
                "networkName": "Network 10",
                "chainId": "chain-10",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "shentu",
                "networkName": "Network 11",
                "chainId": "chain-11",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "fuel",
                "networkName": "Network 12",
                "chainId": "chain-12",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "provenance",
                "networkName": "Network 13",
                "chainId": "chain-13",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "firmachain",
                "networkName": "Network 14",
                "chainId": "chain-14",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "warden",
                "networkName": "Network 15",
                "chainId": "chain-15",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "dymension",
                "networkName": "Network 16",
                "chainId": "chain-16",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "agoric",
                "networkName": "Network 17",
                "chainId": "chain-17",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "akash",
                "networkName": "Network 18",
                "chainId": "chain-18",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "humans",
                "networkName": "Network 19",
                "chainId": "chain-19",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "dungeon",
                "networkName": "Network 20",
                "chainId": "chain-20",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "beezee",
                "networkName": "Network 21",
                "chainId": "chain-21",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "babylon",
                "networkName": "Network 22",
                "chainId": "chain-22",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "union",
                "networkName": "Network 23",
                "chainId": "chain-23",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "lava",
                "networkName": "Network 24",
                "chainId": "chain-24",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "axone",
                "networkName": "Network 25",
                "chainId": "chain-25",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "cosmoshub-testnet",
                "networkName": "Network 26",
                "chainId": "chain-26",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "atomone-testnet",
                "networkName": "Network 27",
                "chainId": "chain-27",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "axelar-testnet",
                "networkName": "Network 28",
                "chainId": "chain-28",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "babylon-testnet",
                "networkName": "Network 29",
                "chainId": "chain-29",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "celestia-testnet",
                "networkName": "Network 30",
                "chainId": "chain-30",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "warden-testnet",
                "networkName": "Network 31",
                "chainId": "chain-31",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "limonata",
                "networkName": "Network 32",
                "chainId": "chain-32",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              },
              {
                "networkId": "pchain",
                "networkName": "Network 33",
                "chainId": "chain-33",
                "state": "unavailable",
                "apiVersion": null,
                "observedAt": "2026-09-07T00:00:00Z",
                "activeProposals": 0,
                "proposals": [],
                "recentProposals": [],
                "recentProposalLimit": 30,
                "proposalCount": null,
                "warnings": [
                  "public_governance_source_failed"
                ]
              }
            ],
            "totals": {
              "trackedNetworks": 34,
              "readyNetworks": 0,
              "activeProposals": 0
            }
          }
        ]
      },
      "GovernanceTally": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "yesBps",
          "abstainBps",
          "noBps",
          "noWithVetoBps",
          "turnoutBps",
          "decisive"
        ],
        "properties": {
          "yesBps": {
            "$ref": "#/components/schemas/BasisPoints"
          },
          "abstainBps": {
            "$ref": "#/components/schemas/BasisPoints"
          },
          "noBps": {
            "$ref": "#/components/schemas/BasisPoints"
          },
          "noWithVetoBps": {
            "$ref": "#/components/schemas/BasisPoints"
          },
          "turnoutBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "decisive": {
            "type": "boolean"
          }
        }
      },
      "Hash64": {
        "type": "string",
        "pattern": "^[A-F0-9]{64}$"
      },
      "IbcClientExpiryEnd": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "networkId",
          "name",
          "chainId",
          "channelId",
          "portId",
          "connectionId",
          "clientId",
          "state"
        ],
        "properties": {
          "networkId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "chainId": {
            "type": "string"
          },
          "channelId": {
            "type": "string"
          },
          "portId": {
            "type": "string"
          },
          "connectionId": {
            "type": [
              "string",
              "null"
            ]
          },
          "clientId": {
            "type": [
              "string",
              "null"
            ]
          },
          "counterpartyChainId": {
            "type": "string"
          },
          "latestHeight": {
            "type": "string"
          },
          "consensusTimestamp": {
            "type": "string",
            "format": "date-time"
          },
          "trustingPeriodSeconds": {
            "type": "integer",
            "minimum": 0
          },
          "expiresAt": {
            "type": "string",
            "format": "date-time"
          },
          "remainingSeconds": {
            "type": "integer"
          },
          "status": {
            "enum": [
              "active",
              "expired",
              "frozen"
            ]
          },
          "state": {
            "enum": [
              "healthy",
              "warning",
              "expired",
              "frozen",
              "unavailable"
            ]
          }
        }
      },
      "IbcExpiryTracking": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "scope",
          "observedAt",
          "paths",
          "totals"
        ],
        "properties": {
          "scope": {
            "const": "posthuman-managed-paths"
          },
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "paths": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IbcManagedPathExpiry"
            },
            "maxItems": 5
          },
          "totals": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "paths",
              "healthy",
              "attention",
              "critical",
              "unavailableEnds"
            ],
            "properties": {
              "paths": {
                "type": "integer",
                "minimum": 0
              },
              "healthy": {
                "type": "integer",
                "minimum": 0
              },
              "attention": {
                "type": "integer",
                "minimum": 0
              },
              "critical": {
                "type": "integer",
                "minimum": 0
              },
              "unavailableEnds": {
                "type": "integer",
                "minimum": 0
              }
            }
          }
        }
      },
      "IbcManagedPathExpiry": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "a",
          "b",
          "state",
          "warnings"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "a": {
            "$ref": "#/components/schemas/IbcClientExpiryEnd"
          },
          "b": {
            "$ref": "#/components/schemas/IbcClientExpiryEnd"
          },
          "state": {
            "enum": [
              "healthy",
              "attention",
              "critical"
            ]
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 2
          }
        }
      },
      "LsmStatsPoint": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "observedAt",
          "height",
          "totalTokenized",
          "totalLiquidStaked",
          "bondedTokens",
          "globalCapBps",
          "validatorCapBps",
          "globalCapUsedBps",
          "recordCount",
          "recordOwnerCount",
          "liquidValidatorCount"
        ],
        "properties": {
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "height": {
            "type": "integer",
            "minimum": 0
          },
          "totalTokenized": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "totalLiquidStaked": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "bondedTokens": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "globalCapBps": {
            "$ref": "#/components/schemas/BasisPoints"
          },
          "validatorCapBps": {
            "$ref": "#/components/schemas/BasisPoints"
          },
          "globalCapUsedBps": {
            "type": "integer",
            "minimum": 0,
            "maximum": 20000
          },
          "recordCount": {
            "type": "integer",
            "minimum": 0
          },
          "recordOwnerCount": {
            "type": "integer",
            "minimum": 0
          },
          "liquidValidatorCount": {
            "type": "integer",
            "minimum": 0
          }
        }
      },
      "LsmStatsPool": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "operatorAddress",
          "moniker",
          "liquidShares",
          "liquidTokens",
          "recordCount",
          "recordOwnerCount"
        ],
        "properties": {
          "operatorAddress": {
            "type": "string"
          },
          "moniker": {
            "type": "string"
          },
          "liquidShares": {
            "$ref": "#/components/schemas/DecimalAmount"
          },
          "liquidTokens": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "recordCount": {
            "type": "integer",
            "minimum": 0
          },
          "recordOwnerCount": {
            "type": "integer",
            "minimum": 0
          }
        }
      },
      "LsmStatsSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networkId",
          "networkName",
          "chainId",
          "state",
          "current",
          "changes",
          "series",
          "scope"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.lsm-stats/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "fixed-reviewed-cosmos-rest"
          },
          "networkId": {
            "const": "cosmoshub"
          },
          "networkName": {
            "const": "Cosmos Hub"
          },
          "chainId": {
            "const": "cosmoshub-4"
          },
          "state": {
            "enum": [
              "collecting",
              "ready"
            ]
          },
          "current": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "observedAt",
              "height",
              "totalTokenized",
              "totalLiquidStaked",
              "bondedTokens",
              "globalCapBps",
              "validatorCapBps",
              "globalCapUsedBps",
              "recordCount",
              "recordOwnerCount",
              "liquidValidatorCount",
              "pools"
            ],
            "properties": {
              "observedAt": {
                "type": "string",
                "format": "date-time"
              },
              "height": {
                "type": "integer",
                "minimum": 0
              },
              "totalTokenized": {
                "$ref": "#/components/schemas/UnsignedAmount"
              },
              "totalLiquidStaked": {
                "$ref": "#/components/schemas/UnsignedAmount"
              },
              "bondedTokens": {
                "$ref": "#/components/schemas/UnsignedAmount"
              },
              "globalCapBps": {
                "$ref": "#/components/schemas/BasisPoints"
              },
              "validatorCapBps": {
                "$ref": "#/components/schemas/BasisPoints"
              },
              "globalCapUsedBps": {
                "type": "integer",
                "minimum": 0,
                "maximum": 20000
              },
              "recordCount": {
                "type": "integer",
                "minimum": 0
              },
              "recordOwnerCount": {
                "type": "integer",
                "minimum": 0
              },
              "liquidValidatorCount": {
                "type": "integer",
                "minimum": 0
              },
              "pools": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/LsmStatsPool"
                },
                "maxItems": 10000
              }
            }
          },
          "changes": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "day",
              "week"
            ],
            "properties": {
              "day": {
                "$ref": "#/components/schemas/LsmStatsWindow"
              },
              "week": {
                "$ref": "#/components/schemas/LsmStatsWindow"
              }
            }
          },
          "series": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LsmStatsPoint"
            },
            "maxItems": 168
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "retentionDays",
              "sampleIntervalSeconds",
              "completenessFloorBps",
              "movementDefinition",
              "transactionVolume",
              "providerIdentity",
              "uniqueUsers",
              "signing",
              "broadcast",
              "nodeControl"
            ],
            "properties": {
              "retentionDays": {
                "const": 35
              },
              "sampleIntervalSeconds": {
                "const": 900
              },
              "completenessFloorBps": {
                "const": 8000
              },
              "movementDefinition": {
                "const": "net-snapshot-change"
              },
              "transactionVolume": {
                "const": false
              },
              "providerIdentity": {
                "const": false
              },
              "uniqueUsers": {
                "const": false
              },
              "signing": {
                "const": false
              },
              "broadcast": {
                "const": false
              },
              "nodeControl": {
                "const": false
              }
            }
          }
        }
      },
      "LsmStatsWindow": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "state",
          "windowSeconds",
          "expectedSamples",
          "observedSamples",
          "completenessBps",
          "baselineAt",
          "changes"
        ],
        "properties": {
          "state": {
            "enum": [
              "collecting",
              "ready"
            ]
          },
          "windowSeconds": {
            "type": "integer",
            "minimum": 0
          },
          "expectedSamples": {
            "type": "integer",
            "minimum": 0
          },
          "observedSamples": {
            "type": "integer",
            "minimum": 0
          },
          "completenessBps": {
            "$ref": "#/components/schemas/BasisPoints"
          },
          "baselineAt": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "changes": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "totalTokenized",
              "totalLiquidStaked",
              "recordCount",
              "recordOwnerCount",
              "liquidValidatorCount"
            ],
            "properties": {
              "totalTokenized": {
                "$ref": "#/components/schemas/SignedAmount"
              },
              "totalLiquidStaked": {
                "$ref": "#/components/schemas/SignedAmount"
              },
              "recordCount": {
                "type": "integer"
              },
              "recordOwnerCount": {
                "type": "integer"
              },
              "liquidValidatorCount": {
                "type": "integer"
              }
            }
          }
        }
      },
      "MarketSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "vsCurrency",
          "requested",
          "missing",
          "quotes",
          "scope"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.market/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "coingecko-public-markets"
          },
          "vsCurrency": {
            "const": "usd"
          },
          "requested": {
            "type": "integer",
            "minimum": 1,
            "maximum": 64
          },
          "missing": {
            "type": "array",
            "maxItems": 64,
            "items": {
              "type": "string",
              "maxLength": 64
            }
          },
          "quotes": {
            "type": "array",
            "maxItems": 64,
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "id",
                "priceUsd",
                "change24hPercent",
                "marketCapUsd",
                "volume24hUsd",
                "updatedAt",
                "sparkline7dUsd"
              ],
              "properties": {
                "id": {
                  "type": "string",
                  "maxLength": 64
                },
                "priceUsd": {
                  "type": "number",
                  "exclusiveMinimum": 0
                },
                "change24hPercent": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "marketCapUsd": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "volume24hUsd": {
                  "type": [
                    "number",
                    "null"
                  ]
                },
                "updatedAt": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "maxLength": 64
                },
                "sparkline7dUsd": {
                  "type": "array",
                  "maxItems": 256,
                  "items": {
                    "type": "number",
                    "exclusiveMinimum": 0
                  }
                }
              }
            }
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "maximumSparklinePoints",
              "externalWriteAuthority",
              "signing",
              "broadcast"
            ],
            "properties": {
              "maximumSparklinePoints": {
                "const": 256
              },
              "externalWriteAuthority": {
                "const": false
              },
              "signing": {
                "const": false
              },
              "broadcast": {
                "const": false
              }
            }
          }
        }
      },
      "NetworkId": {
        "type": "string",
        "enum": [
          "cosmoshub",
          "osmosis",
          "neutron",
          "axelar",
          "celestia",
          "juno",
          "mantra",
          "atomone",
          "oraichain",
          "verona",
          "fetchhub",
          "shentu",
          "fuel",
          "provenance",
          "firmachain",
          "warden",
          "dymension",
          "agoric",
          "akash",
          "humans",
          "dungeon",
          "beezee",
          "babylon",
          "union",
          "lava",
          "axone",
          "exrp",
          "cosmoshub-testnet",
          "atomone-testnet",
          "axelar-testnet",
          "babylon-testnet",
          "celestia-testnet",
          "warden-testnet",
          "limonata",
          "pchain",
          "gnoland"
        ]
      },
      "NetworkStatsNetwork": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "networkId",
          "networkName",
          "chainId",
          "state",
          "current",
          "changes",
          "pulse",
          "series"
        ],
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "networkName": {
            "type": "string"
          },
          "chainId": {
            "type": "string"
          },
          "state": {
            "enum": [
              "collecting",
              "ready"
            ]
          },
          "current": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "observedAt",
              "height",
              "consensusHeight",
              "denom",
              "totalSupply",
              "bondedTokens",
              "communityPool",
              "bondedRatioBps",
              "inflationBps",
              "stakingAprBps",
              "activeValidators",
              "jailedValidators",
              "tombstonedValidators",
              "activeProposals",
              "averageBlockTimeMs",
              "provenance"
            ],
            "properties": {
              "observedAt": {
                "type": "string",
                "format": "date-time"
              },
              "height": {
                "type": "integer",
                "minimum": 0
              },
              "consensusHeight": {
                "type": "integer",
                "minimum": 0
              },
              "denom": {
                "$ref": "#/components/schemas/Denom"
              },
              "totalSupply": {
                "$ref": "#/components/schemas/UnsignedAmount"
              },
              "bondedTokens": {
                "$ref": "#/components/schemas/UnsignedAmount"
              },
              "communityPool": {
                "$ref": "#/components/schemas/UnsignedAmount"
              },
              "bondedRatioBps": {
                "$ref": "#/components/schemas/BasisPoints"
              },
              "inflationBps": {
                "$ref": "#/components/schemas/NullableBasisPoints"
              },
              "stakingAprBps": {
                "$ref": "#/components/schemas/NullableBasisPoints"
              },
              "activeValidators": {
                "type": "integer",
                "minimum": 0
              },
              "jailedValidators": {
                "type": "integer",
                "minimum": 0
              },
              "tombstonedValidators": {
                "type": "integer",
                "minimum": 0
              },
              "activeProposals": {
                "type": "integer",
                "minimum": 0
              },
              "averageBlockTimeMs": {
                "type": "integer",
                "minimum": 0
              },
              "provenance": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "supplyHeight",
                  "chainParamsAt",
                  "validatorsAt",
                  "watchersAt",
                  "governanceAt"
                ],
                "properties": {
                  "supplyHeight": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "chainParamsAt": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "validatorsAt": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "watchersAt": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "governanceAt": {
                    "type": "string",
                    "format": "date-time"
                  }
                }
              }
            }
          },
          "changes": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "day",
              "week"
            ],
            "properties": {
              "day": {
                "$ref": "#/components/schemas/NetworkStatsWindow"
              },
              "week": {
                "$ref": "#/components/schemas/NetworkStatsWindow"
              }
            }
          },
          "pulse": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "severity",
                "code",
                "label"
              ],
              "properties": {
                "severity": {
                  "enum": [
                    "info",
                    "warning",
                    "collecting"
                  ]
                },
                "code": {
                  "type": "string"
                },
                "label": {
                  "type": "string"
                }
              }
            },
            "maxItems": 8
          },
          "series": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NetworkStatsPoint"
            },
            "maxItems": 168
          }
        }
      },
      "NetworkStatsPoint": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "observedAt",
          "height",
          "consensusHeight",
          "denom",
          "totalSupply",
          "bondedTokens",
          "communityPool",
          "bondedRatioBps",
          "inflationBps",
          "stakingAprBps",
          "activeValidators",
          "jailedValidators",
          "tombstonedValidators",
          "activeProposals",
          "averageBlockTimeMs"
        ],
        "properties": {
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "height": {
            "type": "integer",
            "minimum": 0
          },
          "consensusHeight": {
            "type": "integer",
            "minimum": 0
          },
          "denom": {
            "$ref": "#/components/schemas/Denom"
          },
          "totalSupply": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "bondedTokens": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "communityPool": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "bondedRatioBps": {
            "$ref": "#/components/schemas/BasisPoints"
          },
          "inflationBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "stakingAprBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "activeValidators": {
            "type": "integer",
            "minimum": 0
          },
          "jailedValidators": {
            "type": "integer",
            "minimum": 0
          },
          "tombstonedValidators": {
            "type": "integer",
            "minimum": 0
          },
          "activeProposals": {
            "type": "integer",
            "minimum": 0
          },
          "averageBlockTimeMs": {
            "type": "integer",
            "minimum": 0
          }
        }
      },
      "NetworkStatsSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networks",
          "totals",
          "scope"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.network-stats/v2"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "fixed-local-multi-network-projections"
          },
          "networks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NetworkStatsNetwork"
            },
            "maxItems": 17
          },
          "totals": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "trackedNetworks",
              "readyNetworks"
            ],
            "properties": {
              "trackedNetworks": {
                "const": 17
              },
              "readyNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 17
              }
            }
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "retentionDays",
              "sampleIntervalSeconds",
              "completenessFloorBps",
              "supplyPinnedHeight",
              "crossProjectionSameHeight",
              "externalPriceData",
              "signing",
              "broadcast",
              "nodeControl"
            ],
            "properties": {
              "retentionDays": {
                "const": 35
              },
              "sampleIntervalSeconds": {
                "const": 900
              },
              "completenessFloorBps": {
                "const": 8000
              },
              "supplyPinnedHeight": {
                "const": true
              },
              "crossProjectionSameHeight": {
                "const": false
              },
              "externalPriceData": {
                "const": false
              },
              "signing": {
                "const": false
              },
              "broadcast": {
                "const": false
              },
              "nodeControl": {
                "const": false
              }
            }
          }
        }
      },
      "NetworkStatsWindow": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "state",
          "windowSeconds",
          "expectedSamples",
          "observedSamples",
          "completenessBps",
          "baselineAt",
          "changes"
        ],
        "properties": {
          "state": {
            "enum": [
              "collecting",
              "ready"
            ]
          },
          "windowSeconds": {
            "type": "integer",
            "minimum": 0
          },
          "expectedSamples": {
            "type": "integer",
            "minimum": 0
          },
          "observedSamples": {
            "type": "integer",
            "minimum": 0
          },
          "completenessBps": {
            "$ref": "#/components/schemas/BasisPoints"
          },
          "baselineAt": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "changes": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "height",
              "totalSupplyBps",
              "bondedTokensBps",
              "communityPoolBps",
              "bondedRatioBps",
              "inflationBps",
              "stakingAprBps",
              "activeValidators",
              "jailedValidators",
              "tombstonedValidators",
              "activeProposals",
              "averageBlockTimeMs"
            ],
            "properties": {
              "height": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "totalSupplyBps": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "bondedTokensBps": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "communityPoolBps": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "bondedRatioBps": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "inflationBps": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "stakingAprBps": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "activeValidators": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "jailedValidators": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "tombstonedValidators": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "activeProposals": {
                "type": [
                  "integer",
                  "null"
                ]
              },
              "averageBlockTimeMs": {
                "type": [
                  "integer",
                  "null"
                ]
              }
            }
          }
        }
      },
      "NetworkWatcherBlock": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "height",
          "observedAt",
          "round",
          "signatures",
          "validators",
          "signedVotingPowerBps",
          "proposer",
          "signedValidatorAddresses"
        ],
        "properties": {
          "height": {
            "type": "integer",
            "minimum": 0
          },
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "round": {
            "type": "integer",
            "minimum": 0
          },
          "signatures": {
            "type": "integer",
            "minimum": 0
          },
          "validators": {
            "type": "integer",
            "minimum": 0
          },
          "signedVotingPowerBps": {
            "$ref": "#/components/schemas/BasisPoints"
          },
          "proposer": {
            "type": "string"
          },
          "signedValidatorAddresses": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[A-F0-9]{40}$"
            },
            "uniqueItems": true
          },
          "canonical": {
            "type": "boolean",
            "description": "Optional canonical-commit evidence. Only true proves that this height contains the node's canonical commit and can be used for signed/missed verdicts. False or an absent field is undecided and must not count as a miss; older snapshots may omit the field."
          }
        }
      },
      "NetworkWatcherRecord": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "networkId",
          "networkName",
          "chainId",
          "observedAt",
          "state",
          "consensus",
          "upgrade",
          "warnings"
        ],
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "networkName": {
            "type": "string"
          },
          "chainId": {
            "type": "string"
          },
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "state": {
            "enum": [
              "healthy",
              "attention",
              "unavailable"
            ]
          },
          "consensus": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "mode",
              "height",
              "blockTime",
              "latestBlockAgeSeconds",
              "stallThresholdSeconds",
              "catchingUp",
              "validatorCount",
              "recentBlocks",
              "blockTimes",
              "rounds",
              "proposers",
              "roundState"
            ],
            "properties": {
              "mode": {
                "enum": [
                  "moving",
                  "stalled"
                ]
              },
              "height": {
                "type": "integer",
                "minimum": 0
              },
              "blockTime": {
                "type": "string",
                "format": "date-time"
              },
              "latestBlockAgeSeconds": {
                "type": "integer",
                "minimum": 0
              },
              "stallThresholdSeconds": {
                "type": "integer",
                "minimum": 0
              },
              "catchingUp": {
                "type": "boolean"
              },
              "validatorCount": {
                "type": "integer",
                "minimum": 0
              },
              "recentBlocks": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/NetworkWatcherBlock"
                },
                "maxItems": 20
              },
              "blockTimes": {
                "type": [
                  "object",
                  "null"
                ],
                "additionalProperties": false,
                "required": [
                  "samples",
                  "averageMs",
                  "minimumMs",
                  "maximumMs"
                ],
                "properties": {
                  "samples": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "averageMs": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "minimumMs": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "maximumMs": {
                    "type": "integer",
                    "minimum": 0
                  }
                }
              },
              "rounds": {
                "type": [
                  "object",
                  "null"
                ],
                "additionalProperties": false,
                "required": [
                  "observedBlocks",
                  "nonZeroRoundBlocks",
                  "highestRound",
                  "nonZeroRoundHeights"
                ],
                "properties": {
                  "observedBlocks": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "nonZeroRoundBlocks": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "highestRound": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "nonZeroRoundHeights": {
                    "type": "array",
                    "items": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "maxItems": 20
                  }
                }
              },
              "proposers": {
                "type": "array",
                "items": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "address",
                    "blocks"
                  ],
                  "properties": {
                    "address": {
                      "type": "string"
                    },
                    "blocks": {
                      "type": "integer",
                      "minimum": 0
                    }
                  }
                },
                "maxItems": 20
              },
              "roundState": {
                "type": [
                  "object",
                  "null"
                ],
                "additionalProperties": false,
                "required": [
                  "height",
                  "round",
                  "step",
                  "roundStartedAt",
                  "prevotes",
                  "precommits"
                ],
                "properties": {
                  "height": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "round": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "step": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "roundStartedAt": {
                    "type": "string",
                    "format": "date-time"
                  },
                  "prevotes": {
                    "$ref": "#/components/schemas/NetworkWatcherVoteSummary"
                  },
                  "precommits": {
                    "$ref": "#/components/schemas/NetworkWatcherVoteSummary"
                  }
                }
              }
            }
          },
          "upgrade": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "name",
              "height",
              "info"
            ],
            "properties": {
              "name": {
                "type": "string"
              },
              "height": {
                "type": "integer",
                "minimum": 0
              },
              "info": {
                "type": [
                  "string",
                  "null"
                ]
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 12
          }
        }
      },
      "NetworkWatcherSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networks"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.network-watchers/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "public-rpc-rest"
          },
          "networks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NetworkWatcherRecord"
            },
            "minItems": 35,
            "maxItems": 35
          }
        }
      },
      "NetworkWatcherVoteEntry": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "address",
          "moniker",
          "votingPowerBps"
        ],
        "properties": {
          "address": {
            "type": "string",
            "pattern": "^[A-F0-9]{40}$"
          },
          "moniker": {
            "type": [
              "string",
              "null"
            ]
          },
          "votingPowerBps": {
            "$ref": "#/components/schemas/BasisPoints"
          }
        }
      },
      "NetworkWatcherVoteSummary": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "receivedValidators",
          "totalValidators",
          "receivedVotingPowerBps",
          "shortfallToTwoThirdsBps",
          "complete",
          "received",
          "missing"
        ],
        "properties": {
          "receivedValidators": {
            "type": "integer",
            "minimum": 0
          },
          "totalValidators": {
            "type": "integer",
            "minimum": 0
          },
          "receivedVotingPowerBps": {
            "$ref": "#/components/schemas/BasisPoints"
          },
          "shortfallToTwoThirdsBps": {
            "$ref": "#/components/schemas/BasisPoints"
          },
          "complete": {
            "type": "boolean"
          },
          "received": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NetworkWatcherVoteEntry"
            }
          },
          "missing": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/NetworkWatcherVoteEntry"
            }
          }
        }
      },
      "NonNegativeInteger": {
        "type": "integer",
        "minimum": 0
      },
      "NullableBasisPoints": {
        "type": [
          "integer",
          "null"
        ],
        "minimum": 0,
        "maximum": 10000
      },
      "NullableDenom": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/Denom"
          },
          {
            "type": "null"
          }
        ]
      },
      "NullableHash64": {
        "type": [
          "string",
          "null"
        ],
        "pattern": "^[A-F0-9]{64}$"
      },
      "NullableNonNegativeInteger": {
        "type": [
          "integer",
          "null"
        ],
        "minimum": 0
      },
      "NullableTimestamp": {
        "type": [
          "string",
          "null"
        ],
        "format": "date-time"
      },
      "NullableUnsignedAmount": {
        "type": [
          "string",
          "null"
        ],
        "pattern": "^\\d{1,40}$"
      },
      "RelayerPerformanceLatency": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "samples",
          "p50Seconds",
          "p95Seconds"
        ],
        "properties": {
          "samples": {
            "type": "integer",
            "minimum": 0
          },
          "p50Seconds": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 0
          },
          "p95Seconds": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 0
          }
        }
      },
      "RelayerPerformanceMetrics": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "sent",
          "delivered",
          "acknowledged",
          "timedOut",
          "pending",
          "unmatchedLifecycleEvents",
          "resolvedSuccessBps",
          "deliveryLatency",
          "acknowledgementLatency"
        ],
        "properties": {
          "sent": {
            "type": "integer",
            "minimum": 0
          },
          "delivered": {
            "type": "integer",
            "minimum": 0
          },
          "acknowledged": {
            "type": "integer",
            "minimum": 0
          },
          "timedOut": {
            "type": "integer",
            "minimum": 0
          },
          "pending": {
            "type": "integer",
            "minimum": 0
          },
          "unmatchedLifecycleEvents": {
            "type": "integer",
            "minimum": 0
          },
          "resolvedSuccessBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "deliveryLatency": {
            "$ref": "#/components/schemas/RelayerPerformanceLatency"
          },
          "acknowledgementLatency": {
            "$ref": "#/components/schemas/RelayerPerformanceLatency"
          }
        }
      },
      "RelayerPerformancePath": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "a",
          "b",
          "sent",
          "delivered",
          "acknowledged",
          "timedOut",
          "pending",
          "unmatchedLifecycleEvents",
          "resolvedSuccessBps",
          "deliveryLatency",
          "acknowledgementLatency"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "a": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "networkId",
              "name",
              "chainId",
              "channelId",
              "portId"
            ],
            "properties": {
              "networkId": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "chainId": {
                "type": "string"
              },
              "channelId": {
                "type": "string"
              },
              "portId": {
                "type": "string"
              }
            }
          },
          "b": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "networkId",
              "name",
              "chainId",
              "channelId",
              "portId"
            ],
            "properties": {
              "networkId": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "chainId": {
                "type": "string"
              },
              "channelId": {
                "type": "string"
              },
              "portId": {
                "type": "string"
              }
            }
          },
          "sent": {
            "type": "integer",
            "minimum": 0
          },
          "delivered": {
            "type": "integer",
            "minimum": 0
          },
          "acknowledged": {
            "type": "integer",
            "minimum": 0
          },
          "timedOut": {
            "type": "integer",
            "minimum": 0
          },
          "pending": {
            "type": "integer",
            "minimum": 0
          },
          "unmatchedLifecycleEvents": {
            "type": "integer",
            "minimum": 0
          },
          "resolvedSuccessBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "deliveryLatency": {
            "$ref": "#/components/schemas/RelayerPerformanceLatency"
          },
          "acknowledgementLatency": {
            "$ref": "#/components/schemas/RelayerPerformanceLatency"
          }
        }
      },
      "RelayerPerformanceSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "state",
          "baselineAt",
          "retentionDays",
          "networks",
          "paths",
          "totals",
          "scope"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.relayer-performance/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "fixed-reviewed-rpc-exact-ibc-events"
          },
          "state": {
            "enum": [
              "collecting",
              "catching_up",
              "ready"
            ]
          },
          "baselineAt": {
            "type": "string",
            "format": "date-time"
          },
          "retentionDays": {
            "const": 7
          },
          "networks": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "networkId",
                "name",
                "chainId",
                "baselineHeight",
                "scannedThroughHeight",
                "tipHeight",
                "remainingBlocks"
              ],
              "properties": {
                "networkId": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "chainId": {
                  "type": "string"
                },
                "baselineHeight": {
                  "type": "integer",
                  "minimum": 0
                },
                "scannedThroughHeight": {
                  "type": "integer",
                  "minimum": 0
                },
                "tipHeight": {
                  "type": "integer",
                  "minimum": 0
                },
                "remainingBlocks": {
                  "type": "integer",
                  "minimum": 0
                }
              }
            },
            "minItems": 4,
            "maxItems": 4
          },
          "paths": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RelayerPerformancePath"
            },
            "minItems": 5,
            "maxItems": 5
          },
          "totals": {
            "$ref": "#/components/schemas/RelayerPerformanceMetrics"
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "managedPaths",
              "forwardOnly",
              "historicalBackfill",
              "eventTypes",
              "identityAttribution",
              "relayerProcessMetrics",
              "pendingDefinition",
              "successDefinition",
              "signing",
              "broadcast",
              "clientUpdate",
              "nodeControl"
            ],
            "properties": {
              "managedPaths": {
                "const": 5
              },
              "forwardOnly": {
                "const": true
              },
              "historicalBackfill": {
                "const": false
              },
              "eventTypes": {
                "type": "array",
                "items": {
                  "enum": [
                    "send_packet",
                    "recv_packet",
                    "write_acknowledgement",
                    "acknowledge_packet",
                    "timeout_packet"
                  ]
                },
                "minItems": 5,
                "maxItems": 5,
                "uniqueItems": true
              },
              "identityAttribution": {
                "const": false
              },
              "relayerProcessMetrics": {
                "const": false
              },
              "pendingDefinition": {
                "const": "observed-send-without-observed-ack-or-timeout"
              },
              "successDefinition": {
                "const": "acknowledged-share-of-resolved-observed-cohort"
              },
              "signing": {
                "const": false
              },
              "broadcast": {
                "const": false
              },
              "clientUpdate": {
                "const": false
              },
              "nodeControl": {
                "const": false
              }
            }
          }
        },
        "examples": [
          {
            "schemaVersion": "posthuman.relayer-performance/v1",
            "generatedAt": "2026-09-07T00:00:00Z",
            "source": "fixed-reviewed-rpc-exact-ibc-events",
            "state": "collecting",
            "baselineAt": "2026-09-07T00:00:00Z",
            "retentionDays": 7,
            "networks": [
              {
                "networkId": "network-0",
                "name": "Network 0",
                "chainId": "chain-0",
                "baselineHeight": 1,
                "scannedThroughHeight": 1,
                "tipHeight": 1,
                "remainingBlocks": 0
              },
              {
                "networkId": "network-1",
                "name": "Network 1",
                "chainId": "chain-1",
                "baselineHeight": 1,
                "scannedThroughHeight": 1,
                "tipHeight": 1,
                "remainingBlocks": 0
              },
              {
                "networkId": "network-2",
                "name": "Network 2",
                "chainId": "chain-2",
                "baselineHeight": 1,
                "scannedThroughHeight": 1,
                "tipHeight": 1,
                "remainingBlocks": 0
              },
              {
                "networkId": "network-3",
                "name": "Network 3",
                "chainId": "chain-3",
                "baselineHeight": 1,
                "scannedThroughHeight": 1,
                "tipHeight": 1,
                "remainingBlocks": 0
              }
            ],
            "paths": [
              {
                "id": "path-0",
                "a": {
                  "networkId": "a",
                  "name": "A",
                  "chainId": "a-1",
                  "channelId": "channel-1",
                  "portId": "transfer"
                },
                "b": {
                  "networkId": "b",
                  "name": "B",
                  "chainId": "b-1",
                  "channelId": "channel-2",
                  "portId": "transfer"
                },
                "sent": 0,
                "delivered": 0,
                "acknowledged": 0,
                "timedOut": 0,
                "pending": 0,
                "unmatchedLifecycleEvents": 0,
                "resolvedSuccessBps": null,
                "deliveryLatency": {
                  "samples": 0,
                  "p50Seconds": null,
                  "p95Seconds": null
                },
                "acknowledgementLatency": {
                  "samples": 0,
                  "p50Seconds": null,
                  "p95Seconds": null
                }
              },
              {
                "id": "path-1",
                "a": {
                  "networkId": "a",
                  "name": "A",
                  "chainId": "a-1",
                  "channelId": "channel-1",
                  "portId": "transfer"
                },
                "b": {
                  "networkId": "b",
                  "name": "B",
                  "chainId": "b-1",
                  "channelId": "channel-2",
                  "portId": "transfer"
                },
                "sent": 0,
                "delivered": 0,
                "acknowledged": 0,
                "timedOut": 0,
                "pending": 0,
                "unmatchedLifecycleEvents": 0,
                "resolvedSuccessBps": null,
                "deliveryLatency": {
                  "samples": 0,
                  "p50Seconds": null,
                  "p95Seconds": null
                },
                "acknowledgementLatency": {
                  "samples": 0,
                  "p50Seconds": null,
                  "p95Seconds": null
                }
              },
              {
                "id": "path-2",
                "a": {
                  "networkId": "a",
                  "name": "A",
                  "chainId": "a-1",
                  "channelId": "channel-1",
                  "portId": "transfer"
                },
                "b": {
                  "networkId": "b",
                  "name": "B",
                  "chainId": "b-1",
                  "channelId": "channel-2",
                  "portId": "transfer"
                },
                "sent": 0,
                "delivered": 0,
                "acknowledged": 0,
                "timedOut": 0,
                "pending": 0,
                "unmatchedLifecycleEvents": 0,
                "resolvedSuccessBps": null,
                "deliveryLatency": {
                  "samples": 0,
                  "p50Seconds": null,
                  "p95Seconds": null
                },
                "acknowledgementLatency": {
                  "samples": 0,
                  "p50Seconds": null,
                  "p95Seconds": null
                }
              },
              {
                "id": "path-3",
                "a": {
                  "networkId": "a",
                  "name": "A",
                  "chainId": "a-1",
                  "channelId": "channel-1",
                  "portId": "transfer"
                },
                "b": {
                  "networkId": "b",
                  "name": "B",
                  "chainId": "b-1",
                  "channelId": "channel-2",
                  "portId": "transfer"
                },
                "sent": 0,
                "delivered": 0,
                "acknowledged": 0,
                "timedOut": 0,
                "pending": 0,
                "unmatchedLifecycleEvents": 0,
                "resolvedSuccessBps": null,
                "deliveryLatency": {
                  "samples": 0,
                  "p50Seconds": null,
                  "p95Seconds": null
                },
                "acknowledgementLatency": {
                  "samples": 0,
                  "p50Seconds": null,
                  "p95Seconds": null
                }
              },
              {
                "id": "path-4",
                "a": {
                  "networkId": "a",
                  "name": "A",
                  "chainId": "a-1",
                  "channelId": "channel-1",
                  "portId": "transfer"
                },
                "b": {
                  "networkId": "b",
                  "name": "B",
                  "chainId": "b-1",
                  "channelId": "channel-2",
                  "portId": "transfer"
                },
                "sent": 0,
                "delivered": 0,
                "acknowledged": 0,
                "timedOut": 0,
                "pending": 0,
                "unmatchedLifecycleEvents": 0,
                "resolvedSuccessBps": null,
                "deliveryLatency": {
                  "samples": 0,
                  "p50Seconds": null,
                  "p95Seconds": null
                },
                "acknowledgementLatency": {
                  "samples": 0,
                  "p50Seconds": null,
                  "p95Seconds": null
                }
              }
            ],
            "totals": {
              "sent": 0,
              "delivered": 0,
              "acknowledged": 0,
              "timedOut": 0,
              "pending": 0,
              "unmatchedLifecycleEvents": 0,
              "resolvedSuccessBps": null,
              "deliveryLatency": {
                "samples": 0,
                "p50Seconds": null,
                "p95Seconds": null
              },
              "acknowledgementLatency": {
                "samples": 0,
                "p50Seconds": null,
                "p95Seconds": null
              }
            },
            "scope": {
              "managedPaths": 5,
              "forwardOnly": true,
              "historicalBackfill": false,
              "eventTypes": [
                "send_packet",
                "recv_packet",
                "write_acknowledgement",
                "acknowledge_packet",
                "timeout_packet"
              ],
              "identityAttribution": false,
              "relayerProcessMetrics": false,
              "pendingDefinition": "observed-send-without-observed-ack-or-timeout",
              "successDefinition": "acknowledged-share-of-resolved-observed-cohort",
              "signing": false,
              "broadcast": false,
              "clientUpdate": false,
              "nodeControl": false
            }
          }
        ]
      },
      "RelayerRoute": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "kind",
          "a",
          "b",
          "packets1h",
          "packets24h",
          "usd24h",
          "complete1h",
          "managedByPosthuman"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "kind": {
            "enum": [
              "ics20-transfer",
              "ibc-channel"
            ]
          },
          "a": {
            "$ref": "#/components/schemas/RelayerRouteEnd"
          },
          "b": {
            "$ref": "#/components/schemas/RelayerRouteEnd"
          },
          "packets1h": {
            "type": [
              "number",
              "null"
            ],
            "minimum": 0
          },
          "packets24h": {
            "type": "number",
            "minimum": 0
          },
          "usd24h": {
            "type": [
              "number",
              "null"
            ],
            "minimum": 0
          },
          "complete1h": {
            "type": "boolean"
          },
          "managedByPosthuman": {
            "type": "boolean"
          }
        }
      },
      "RelayerRouteEnd": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "networkId",
          "name",
          "chainId",
          "channelId",
          "portId",
          "connectionId"
        ],
        "properties": {
          "networkId": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "chainId": {
            "type": "string"
          },
          "channelId": {
            "type": "string"
          },
          "portId": {
            "type": "string"
          },
          "connectionId": {
            "type": [
              "string",
              "null"
            ]
          }
        }
      },
      "RelayerSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "activeDefinition",
          "networks",
          "routes",
          "expiryTracking",
          "totals"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.ibc-channels/v2"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "mapofzones+public-rpc"
          },
          "activeDefinition": {
            "const": "open-and-transfer-observed-24h"
          },
          "networks": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "networkId",
                "name",
                "chainId",
                "oneHourAvailable"
              ],
              "properties": {
                "networkId": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "chainId": {
                  "type": "string"
                },
                "oneHourAvailable": {
                  "type": "boolean"
                }
              }
            },
            "minItems": 32,
            "maxItems": 32
          },
          "routes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RelayerRoute"
            }
          },
          "expiryTracking": {
            "$ref": "#/components/schemas/IbcExpiryTracking"
          },
          "totals": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "activeRoutes",
              "managedRoutes",
              "packets1h",
              "packets24h",
              "usd24h"
            ],
            "properties": {
              "activeRoutes": {
                "type": "integer",
                "minimum": 0
              },
              "managedRoutes": {
                "type": "integer",
                "minimum": 0
              },
              "packets1h": {
                "type": [
                  "number",
                  "null"
                ],
                "minimum": 0
              },
              "packets24h": {
                "type": "number",
                "minimum": 0
              },
              "usd24h": {
                "type": [
                  "number",
                  "null"
                ],
                "minimum": 0
              }
            }
          }
        },
        "examples": [
          {
            "schemaVersion": "posthuman.ibc-channels/v2",
            "generatedAt": "2026-09-07T00:00:00Z",
            "source": "mapofzones+public-rpc",
            "activeDefinition": "open-and-transfer-observed-24h",
            "networks": [
              {
                "networkId": "network-0",
                "name": "Network 0",
                "chainId": "chain-0",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-1",
                "name": "Network 1",
                "chainId": "chain-1",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-2",
                "name": "Network 2",
                "chainId": "chain-2",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-3",
                "name": "Network 3",
                "chainId": "chain-3",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-4",
                "name": "Network 4",
                "chainId": "chain-4",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-5",
                "name": "Network 5",
                "chainId": "chain-5",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-6",
                "name": "Network 6",
                "chainId": "chain-6",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-7",
                "name": "Network 7",
                "chainId": "chain-7",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-8",
                "name": "Network 8",
                "chainId": "chain-8",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-9",
                "name": "Network 9",
                "chainId": "chain-9",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-10",
                "name": "Network 10",
                "chainId": "chain-10",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-11",
                "name": "Network 11",
                "chainId": "chain-11",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-12",
                "name": "Network 12",
                "chainId": "chain-12",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-13",
                "name": "Network 13",
                "chainId": "chain-13",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-14",
                "name": "Network 14",
                "chainId": "chain-14",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-15",
                "name": "Network 15",
                "chainId": "chain-15",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-16",
                "name": "Network 16",
                "chainId": "chain-16",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-17",
                "name": "Network 17",
                "chainId": "chain-17",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-18",
                "name": "Network 18",
                "chainId": "chain-18",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-19",
                "name": "Network 19",
                "chainId": "chain-19",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-20",
                "name": "Network 20",
                "chainId": "chain-20",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-21",
                "name": "Network 21",
                "chainId": "chain-21",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-22",
                "name": "Network 22",
                "chainId": "chain-22",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-23",
                "name": "Network 23",
                "chainId": "chain-23",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-24",
                "name": "Network 24",
                "chainId": "chain-24",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-25",
                "name": "Network 25",
                "chainId": "chain-25",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-26",
                "name": "Network 26",
                "chainId": "chain-26",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-27",
                "name": "Network 27",
                "chainId": "chain-27",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-28",
                "name": "Network 28",
                "chainId": "chain-28",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-29",
                "name": "Network 29",
                "chainId": "chain-29",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-30",
                "name": "Network 30",
                "chainId": "chain-30",
                "oneHourAvailable": false
              },
              {
                "networkId": "network-31",
                "name": "Network 31",
                "chainId": "chain-31",
                "oneHourAvailable": false
              }
            ],
            "routes": [],
            "expiryTracking": {
              "scope": "posthuman-managed-paths",
              "observedAt": "2026-09-07T00:00:00Z",
              "paths": [],
              "totals": {
                "paths": 0,
                "healthy": 0,
                "attention": 0,
                "critical": 0,
                "unavailableEnds": 0
              }
            },
            "totals": {
              "activeRoutes": 0,
              "managedRoutes": 0,
              "packets1h": null,
              "packets24h": 0,
              "usd24h": null
            }
          }
        ]
      },
      "RichListAsset": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "kind",
          "denom",
          "display",
          "exponent",
          "complete",
          "method",
          "verifiedCandidateCount",
          "totalSupply",
          "nonModuleBalanceTotal",
          "moduleBalanceTotal",
          "ownerRowsScanned",
          "holderCount",
          "moduleAccountsExcluded",
          "top100Balance",
          "top100SupplyShareBps",
          "top100NonModuleShareBps",
          "holders"
        ],
        "properties": {
          "kind": {
            "enum": [
              "native",
              "ibc",
              "tokenfactory",
              "cw20"
            ]
          },
          "denom": {
            "type": "string"
          },
          "display": {
            "type": "string"
          },
          "exponent": {
            "type": "integer",
            "minimum": 0,
            "maximum": 24
          },
          "complete": {
            "const": true
          },
          "method": {
            "enum": [
              "complete-denom-owners",
              "reviewed-indexer-live-verified"
            ]
          },
          "verifiedCandidateCount": {
            "type": "integer",
            "minimum": 0
          },
          "totalSupply": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "nonModuleBalanceTotal": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "moduleBalanceTotal": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "ownerRowsScanned": {
            "type": "integer",
            "minimum": 0,
            "maximum": 4000000
          },
          "holderCount": {
            "type": "integer",
            "minimum": 0
          },
          "moduleAccountsExcluded": {
            "type": "integer",
            "minimum": 0
          },
          "top100Balance": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "top100SupplyShareBps": {
            "$ref": "#/components/schemas/BasisPoints"
          },
          "top100NonModuleShareBps": {
            "$ref": "#/components/schemas/BasisPoints"
          },
          "holders": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RichListHolder"
            },
            "maxItems": 100
          }
        }
      },
      "RichListHolder": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "rank",
          "address",
          "balance",
          "supplyShareBps"
        ],
        "properties": {
          "rank": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100
          },
          "address": {
            "type": "string"
          },
          "balance": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "supplyShareBps": {
            "$ref": "#/components/schemas/BasisPoints"
          }
        }
      },
      "RichListNetwork": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "networkId",
          "networkName",
          "chainId",
          "observedAt",
          "blockHeight",
          "blockTime",
          "state",
          "assets",
          "warnings"
        ],
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "networkName": {
            "type": "string"
          },
          "chainId": {
            "type": "string"
          },
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "blockHeight": {
            "type": [
              "string",
              "null"
            ],
            "pattern": "^\\d+$"
          },
          "blockTime": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "state": {
            "enum": [
              "healthy",
              "unavailable"
            ]
          },
          "assets": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RichListAsset"
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 12
          }
        }
      },
      "RichListSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "scope",
          "networks",
          "totals"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.rich-list/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "reviewed-readonly-sources"
          },
          "scope": {
            "const": "complete-non-module-bank-balances"
          },
          "networks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RichListNetwork"
            },
            "minItems": 18,
            "maxItems": 18
          },
          "totals": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "trackedNetworks",
              "readyNetworks",
              "rankedAssets"
            ],
            "properties": {
              "trackedNetworks": {
                "const": 18
              },
              "readyNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 18
              },
              "rankedAssets": {
                "type": "integer",
                "minimum": 0
              }
            }
          }
        }
      },
      "SignedAmount": {
        "type": "string",
        "pattern": "^-?\\d{1,40}$"
      },
      "SlashObservationEvent": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "kind",
          "observedAt",
          "operatorAddress",
          "consensusAddress",
          "moniker",
          "jailed",
          "tombstoned",
          "missedBlocks",
          "maxMissedBlocks",
          "evidence"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "kind": {
            "enum": [
              "jail_observed",
              "unjail_observed",
              "tombstone_observed"
            ]
          },
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "operatorAddress": {
            "type": "string"
          },
          "consensusAddress": {
            "type": "string"
          },
          "moniker": {
            "type": "string"
          },
          "jailed": {
            "type": "boolean"
          },
          "tombstoned": {
            "type": "boolean"
          },
          "missedBlocks": {
            "type": "integer",
            "minimum": 0
          },
          "maxMissedBlocks": {
            "type": "integer",
            "minimum": 0
          },
          "evidence": {
            "const": "validator-state-transition"
          }
        }
      },
      "SlashObservationsNetwork": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "networkId",
          "networkName",
          "chainId",
          "observedAt",
          "state",
          "current",
          "events",
          "scope"
        ],
        "properties": {
          "networkId": {
            "enum": [
              "cosmoshub",
              "atomone"
            ]
          },
          "networkName": {
            "enum": [
              "Cosmos Hub",
              "AtomOne"
            ]
          },
          "chainId": {
            "enum": [
              "cosmoshub-4",
              "atomone-1"
            ]
          },
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "state": {
            "const": "ready"
          },
          "current": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "validators",
              "jailed",
              "tombstoned",
              "risk"
            ],
            "properties": {
              "validators": {
                "type": "integer",
                "minimum": 0
              },
              "jailed": {
                "type": "integer",
                "minimum": 0
              },
              "tombstoned": {
                "type": "integer",
                "minimum": 0
              },
              "risk": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/SlashRiskRecord"
                },
                "maxItems": 50
              }
            }
          },
          "events": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SlashObservationEvent"
            },
            "maxItems": 1000
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "forwardOnly",
              "retentionDays",
              "maximumEvents",
              "exactInfractionHeight",
              "tokenSlashAmount",
              "signing",
              "broadcast",
              "nodeControl"
            ],
            "properties": {
              "forwardOnly": {
                "const": true
              },
              "retentionDays": {
                "const": 180
              },
              "maximumEvents": {
                "const": 1000
              },
              "exactInfractionHeight": {
                "const": false
              },
              "tokenSlashAmount": {
                "const": false
              },
              "signing": {
                "const": false
              },
              "broadcast": {
                "const": false
              },
              "nodeControl": {
                "const": false
              }
            }
          }
        }
      },
      "SlashObservationsSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networks"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.slash-observations/v2"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "fixed-local-validator-projection"
          },
          "networks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SlashObservationsNetwork"
            },
            "minItems": 2,
            "maxItems": 2
          }
        }
      },
      "SlashRiskRecord": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "operatorAddress",
          "consensusAddress",
          "moniker",
          "rank",
          "jailed",
          "tombstoned",
          "missedBlocks",
          "maxMissedBlocks",
          "remainingBeforeJail",
          "uptimeBps",
          "jailedUntil"
        ],
        "properties": {
          "operatorAddress": {
            "type": "string"
          },
          "consensusAddress": {
            "type": "string"
          },
          "moniker": {
            "type": "string"
          },
          "rank": {
            "type": "integer",
            "minimum": 0
          },
          "jailed": {
            "type": "boolean"
          },
          "tombstoned": {
            "type": "boolean"
          },
          "missedBlocks": {
            "type": "integer",
            "minimum": 0
          },
          "maxMissedBlocks": {
            "type": "integer",
            "minimum": 0
          },
          "remainingBeforeJail": {
            "type": "integer",
            "minimum": 0
          },
          "uptimeBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "jailedUntil": {
            "$ref": "#/components/schemas/NullableTimestamp"
          }
        }
      },
      "SnapshotArtifact": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "networkId",
          "networkName",
          "chainId",
          "observedAt",
          "state",
          "restoreReadiness",
          "metadataUrl",
          "archiveUrl",
          "snapshotName",
          "height",
          "tipHeight",
          "lagBlocks",
          "createdAt",
          "ageSeconds",
          "sizeBytes",
          "sizeLabel",
          "sha256",
          "compression",
          "pruned",
          "includesWasm",
          "dbBackend",
          "layout",
          "transport",
          "warnings"
        ],
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "networkName": {
            "type": "string"
          },
          "chainId": {
            "type": "string"
          },
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "state": {
            "enum": [
              "ready",
              "attention",
              "stale",
              "unavailable"
            ]
          },
          "restoreReadiness": {
            "enum": [
              "artifact-ready",
              "review-required",
              "blocked"
            ]
          },
          "metadataUrl": {
            "type": "string",
            "format": "uri"
          },
          "archiveUrl": {
            "type": [
              "string",
              "null"
            ],
            "format": "uri"
          },
          "snapshotName": {
            "type": [
              "string",
              "null"
            ]
          },
          "height": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "tipHeight": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "lagBlocks": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "createdAt": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "ageSeconds": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "sizeBytes": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "sizeLabel": {
            "type": [
              "string",
              "null"
            ]
          },
          "sha256": {
            "type": [
              "string",
              "null"
            ],
            "pattern": "^[a-f0-9]{64}$"
          },
          "compression": {
            "enum": [
              "lz4",
              "zstd",
              "gzip",
              null
            ],
            "type": [
              "string",
              "null"
            ]
          },
          "pruned": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "includesWasm": {
            "type": [
              "boolean",
              "null"
            ]
          },
          "dbBackend": {
            "enum": [
              "pebbledb",
              "goleveldb",
              null
            ],
            "type": [
              "string",
              "null"
            ]
          },
          "layout": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "transport": {
            "$ref": "#/components/schemas/SnapshotTransport"
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 12
          }
        }
      },
      "SnapshotCatalog": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networks",
          "totals",
          "scope"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.snapshots/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "posthuman-public-snapshot-metadata"
          },
          "networks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SnapshotArtifact"
            },
            "minItems": 9,
            "maxItems": 9
          },
          "totals": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "trackedNetworks",
              "availableNetworks",
              "artifactReadyNetworks"
            ],
            "properties": {
              "trackedNetworks": {
                "const": 9
              },
              "availableNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 9
              },
              "artifactReadyNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 9
              }
            }
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "metadataOnly",
              "archiveBodiesDownloaded",
              "nodeControl",
              "signing",
              "broadcast",
              "recoveryRequiresOperator"
            ],
            "properties": {
              "metadataOnly": {
                "const": true
              },
              "archiveBodiesDownloaded": {
                "const": false
              },
              "nodeControl": {
                "const": false
              },
              "signing": {
                "const": false
              },
              "broadcast": {
                "const": false
              },
              "recoveryRequiresOperator": {
                "const": true
              }
            }
          }
        }
      },
      "SnapshotTransport": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "reachable",
          "rangeSupported",
          "statusCode",
          "totalBytes"
        ],
        "properties": {
          "reachable": {
            "type": "boolean"
          },
          "rangeSupported": {
            "type": "boolean"
          },
          "statusCode": {
            "type": [
              "integer",
              "null"
            ],
            "minimum": 0,
            "maximum": 599
          },
          "totalBytes": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          }
        }
      },
      "SolanaNetworkSnapshot": {
        "type": "object",
        "description": "Bounded Solana mainnet-beta projection assembled from two independent public RPC endpoints, read server-side.",
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networkId",
          "cluster",
          "state",
          "rpc",
          "epoch",
          "supply",
          "inflation",
          "performance",
          "validators",
          "notApplicable",
          "notPublished",
          "scope",
          "warnings"
        ],
        "additionalProperties": false,
        "properties": {
          "schemaVersion": {
            "type": "string",
            "const": "posthuman.solana-network/v1"
          },
          "generatedAt": {
            "type": "string",
            "description": "When the collector assembled this projection.",
            "format": "date-time"
          },
          "source": {
            "type": "string",
            "const": "public-solana-rpc"
          },
          "networkId": {
            "type": "string",
            "const": "solana"
          },
          "cluster": {
            "type": "string",
            "const": "mainnet-beta"
          },
          "state": {
            "type": "string",
            "description": "attention exactly when warnings is non-empty.",
            "enum": [
              "ready",
              "attention"
            ]
          },
          "rpc": {
            "type": "object",
            "description": "The two endpoints behind every figure on this page. Only the host of each is published: an API key lives in a path, never in a host.",
            "required": [
              "primaryHost",
              "secondaryHost",
              "primaryHealthy",
              "versionsMatch",
              "slotGap",
              "slotGapAttention",
              "primaryVersion",
              "secondaryVersion",
              "featureSet",
              "primaryEpoch",
              "secondaryEpoch"
            ],
            "additionalProperties": false,
            "properties": {
              "primaryHost": {
                "type": "string",
                "description": "Hostname of the primary public endpoint. No scheme, path or query is published."
              },
              "secondaryHost": {
                "type": "string",
                "description": "Hostname of the independent second endpoint. The collector refuses to run if it resolves to the primary host."
              },
              "primaryHealthy": {
                "type": "boolean",
                "description": "Whether getHealth answered \"ok\". A Solana node that knows it is behind says so here."
              },
              "versionsMatch": {
                "type": "boolean",
                "description": "Whether both endpoints report the same solana-core version. Deliberately not a warning: operators upgrade on their own schedule."
              },
              "slotGap": {
                "type": "string",
                "description": "Absolute difference in absolute slot between the two endpoints.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "slotGapAttention": {
                "type": "string",
                "description": "Slot gap past which rpc_sources_slot_gap is raised, about two minutes of cluster time.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "primaryVersion": {
                "type": "string",
                "description": "solana-core version reported by the primary endpoint."
              },
              "secondaryVersion": {
                "type": "string",
                "description": "solana-core version reported by the second endpoint."
              },
              "featureSet": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Feature-set identifier of the primary endpoint, or null when it publishes none."
              },
              "primaryEpoch": {
                "type": "string",
                "description": "Epoch reported by the primary endpoint; equals the epoch published in the epoch block.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "secondaryEpoch": {
                "type": "string",
                "description": "Epoch reported by the second endpoint. Published so the disagreement warning can be recomputed rather than trusted.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              }
            }
          },
          "epoch": {
            "type": "object",
            "description": "Position in the current epoch. Epoch length is fixed in slots, not in time, so a faster cluster has shorter epochs.",
            "required": [
              "epoch",
              "slotIndex",
              "slotsInEpoch",
              "absoluteSlot",
              "blockHeight",
              "transactionCount",
              "progressBps"
            ],
            "additionalProperties": false,
            "properties": {
              "epoch": {
                "type": "string",
                "description": "Current epoch number.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "slotIndex": {
                "type": "string",
                "description": "Slots elapsed in this epoch.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "slotsInEpoch": {
                "type": "string",
                "description": "Total slots in an epoch.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "absoluteSlot": {
                "type": "string",
                "description": "Current absolute slot.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "blockHeight": {
                "type": "string",
                "description": "Current block height. Lower than the absolute slot, because a skipped slot produces no block.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "transactionCount": {
                "type": "string",
                "description": "Cumulative transaction count across the life of the cluster.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "progressBps": {
                "type": "string",
                "description": "Elapsed fraction of the epoch in basis points.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              }
            }
          },
          "supply": {
            "type": "object",
            "description": "Native supply in lamports. Decimal strings throughout: mainnet totals leave the range a double holds exactly.",
            "required": [
              "decimals",
              "lamportsPerSol",
              "total",
              "circulating",
              "nonCirculating",
              "stakedBps"
            ],
            "additionalProperties": false,
            "properties": {
              "decimals": {
                "type": "string",
                "description": "Always 9. A payload at another scale is refused rather than rendered.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "lamportsPerSol": {
                "type": "string",
                "description": "Always 1000000000.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "total": {
                "type": "string",
                "description": "Total supply in lamports.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "circulating": {
                "type": "string",
                "description": "Circulating supply in lamports.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "nonCirculating": {
                "type": "string",
                "description": "Non-circulating supply in lamports. Sums with circulating to the total.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "stakedBps": {
                "type": "string",
                "description": "Active stake as a fraction of total supply, in basis points.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              }
            }
          },
          "inflation": {
            "type": "object",
            "description": "Current inflation rate in basis points. The validator and foundation shares sum to the total.",
            "required": [
              "epoch",
              "totalBps",
              "validatorBps",
              "foundationBps"
            ],
            "additionalProperties": false,
            "properties": {
              "epoch": {
                "type": "string",
                "description": "Epoch the rate applies to.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "totalBps": {
                "type": "string",
                "description": "Total inflation rate in basis points.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "validatorBps": {
                "type": "string",
                "description": "Share paid to validators and their delegators.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "foundationBps": {
                "type": "string",
                "description": "Share paid to the foundation.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              }
            }
          },
          "performance": {
            "type": "object",
            "description": "Throughput measured over a bounded window of one-minute samples, as milli-units so the figure stays an integer.",
            "required": [
              "sampleCount",
              "windowSeconds",
              "transactionsPerSecondMilli",
              "nonVoteTransactionsPerSecondMilli",
              "slotsPerSecondMilli"
            ],
            "additionalProperties": false,
            "properties": {
              "sampleCount": {
                "type": "string",
                "description": "Number of samples averaged.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "windowSeconds": {
                "type": "string",
                "description": "Total seconds the samples cover.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "transactionsPerSecondMilli": {
                "type": "string",
                "description": "Transactions per second times 1000, including vote transactions.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "nonVoteTransactionsPerSecondMilli": {
                "type": "string",
                "description": "Transactions per second times 1000, excluding vote transactions. The figure worth comparing across chains.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "slotsPerSecondMilli": {
                "type": "string",
                "description": "Slots per second times 1000, measured rather than taken from the documented target.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              }
            }
          },
          "validators": {
            "type": "object",
            "description": "The whole vote-account set summarised, plus a bounded table and the tracked accounts.",
            "required": [
              "publishedCount",
              "publishedLimit",
              "totals",
              "concentration",
              "commission",
              "top",
              "tracked"
            ],
            "additionalProperties": false,
            "properties": {
              "publishedCount": {
                "type": "string",
                "description": "Rows in the table below.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "publishedLimit": {
                "type": "string",
                "description": "Maximum rows the collector will publish.",
                "pattern": "^(?:0|[1-9][0-9]*)$"
              },
              "totals": {
                "type": "object",
                "description": "Counts and stake over the whole set, not over the published table.",
                "required": [
                  "validators",
                  "current",
                  "delinquent",
                  "activatedStake",
                  "delinquentStake",
                  "delinquentStakeBps",
                  "delinquentStakeAttentionBps"
                ],
                "additionalProperties": false,
                "properties": {
                  "validators": {
                    "type": "string",
                    "description": "Total vote accounts.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  },
                  "current": {
                    "type": "string",
                    "description": "Vote accounts the cluster is counting votes from.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  },
                  "delinquent": {
                    "type": "string",
                    "description": "Vote accounts the cluster has stopped counting votes from.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  },
                  "activatedStake": {
                    "type": "string",
                    "description": "Total active stake in lamports.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  },
                  "delinquentStake": {
                    "type": "string",
                    "description": "Active stake held by delinquent validators, in lamports.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  },
                  "delinquentStakeBps": {
                    "type": "string",
                    "description": "Delinquent stake as a fraction of active stake, in basis points.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  },
                  "delinquentStakeAttentionBps": {
                    "type": "string",
                    "description": "Threshold past which delinquent_stake_elevated is raised. Published beside the figure it grades.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  }
                }
              },
              "concentration": {
                "type": "object",
                "description": "Stake concentration over the whole set.",
                "required": [
                  "nakamotoCoefficient",
                  "top1Bps",
                  "top10Bps",
                  "top33Bps",
                  "top100Bps"
                ],
                "additionalProperties": false,
                "properties": {
                  "nakamotoCoefficient": {
                    "type": "string",
                    "description": "Smallest number of validators whose combined stake exceeds one third of the total.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  },
                  "top1Bps": {
                    "type": "string",
                    "description": "Share held by the largest validator, in basis points.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  },
                  "top10Bps": {
                    "type": "string",
                    "description": "Cumulative share of the largest ten.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  },
                  "top33Bps": {
                    "type": "string",
                    "description": "Cumulative share of the largest thirty-three.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  },
                  "top100Bps": {
                    "type": "string",
                    "description": "Cumulative share of the largest hundred.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  }
                }
              },
              "commission": {
                "type": "object",
                "description": "Commission across the whole set, in basis points.",
                "required": [
                  "averageBps",
                  "medianBps",
                  "zeroCommission",
                  "atOrBelowFivePercent"
                ],
                "additionalProperties": false,
                "properties": {
                  "averageBps": {
                    "type": "string",
                    "description": "Mean commission in basis points.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  },
                  "medianBps": {
                    "type": "string",
                    "description": "Median commission in basis points.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  },
                  "zeroCommission": {
                    "type": "string",
                    "description": "Validators charging no commission.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  },
                  "atOrBelowFivePercent": {
                    "type": "string",
                    "description": "Validators at or below the 5% Solana Foundation Delegation Program ceiling.",
                    "pattern": "^(?:0|[1-9][0-9]*)$"
                  }
                }
              },
              "top": {
                "type": "array",
                "description": "Vote accounts ordered by active stake, bounded to publishedLimit.",
                "maxItems": 1000,
                "items": {
                  "type": "object",
                  "description": "One vote account.",
                  "required": [
                    "rank",
                    "votePubkey",
                    "nodePubkey",
                    "activatedStake",
                    "stakeShareBps",
                    "commissionBps",
                    "lastVote",
                    "rootSlot",
                    "epochCredits",
                    "epochVoteAccount",
                    "delinquent"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "rank": {
                      "type": "string",
                      "description": "Position in the whole set ordered by active stake, starting at 1.",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "votePubkey": {
                      "type": "string",
                      "description": "Vote account address in base58."
                    },
                    "nodePubkey": {
                      "type": "string",
                      "description": "Validator identity address in base58."
                    },
                    "activatedStake": {
                      "type": "string",
                      "description": "Active stake in lamports.",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "stakeShareBps": {
                      "type": "string",
                      "description": "Share of total active stake in basis points.",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "commissionBps": {
                      "type": "string",
                      "description": "Commission in basis points. Always a multiple of 100, because commission is a whole percent on chain.",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "lastVote": {
                      "type": "string",
                      "description": "Most recent slot voted on.",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "rootSlot": {
                      "type": "string",
                      "description": "Most recent rooted slot.",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "epochCredits": {
                      "type": "string",
                      "description": "Vote credits earned in the most recent listed epoch, not the cumulative total the RPC returns.",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "epochVoteAccount": {
                      "type": "boolean",
                      "description": "Whether the account is staked for the current epoch."
                    },
                    "delinquent": {
                      "type": "boolean",
                      "description": "Whether the cluster has stopped counting votes from this validator."
                    }
                  }
                }
              },
              "tracked": {
                "type": "array",
                "description": "Vote accounts published separately regardless of rank.",
                "maxItems": 16,
                "items": {
                  "type": "object",
                  "description": "A tracked vote account, published as its own record because the table is bounded and most operators sit below it.",
                  "required": [
                    "votePubkey",
                    "present"
                  ],
                  "additionalProperties": false,
                  "properties": {
                    "votePubkey": {
                      "type": "string",
                      "description": "Vote account address in base58."
                    },
                    "present": {
                      "type": "boolean",
                      "description": "Whether the account was found in the current vote-account set. A tracked account that is absent is reported, never invented."
                    },
                    "rank": {
                      "type": "string",
                      "description": "Position in the whole set ordered by active stake, starting at 1.",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "nodePubkey": {
                      "type": "string",
                      "description": "Validator identity address in base58."
                    },
                    "activatedStake": {
                      "type": "string",
                      "description": "Active stake in lamports.",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "stakeShareBps": {
                      "type": "string",
                      "description": "Share of total active stake in basis points.",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "commissionBps": {
                      "type": "string",
                      "description": "Commission in basis points. Always a multiple of 100, because commission is a whole percent on chain.",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "lastVote": {
                      "type": "string",
                      "description": "Most recent slot voted on.",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "rootSlot": {
                      "type": "string",
                      "description": "Most recent rooted slot.",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "epochCredits": {
                      "type": "string",
                      "description": "Vote credits earned in the most recent listed epoch, not the cumulative total the RPC returns.",
                      "pattern": "^(?:0|[1-9][0-9]*)$"
                    },
                    "epochVoteAccount": {
                      "type": "boolean",
                      "description": "Whether the account is staked for the current epoch."
                    },
                    "delinquent": {
                      "type": "boolean",
                      "description": "Whether the cluster has stopped counting votes from this validator."
                    }
                  }
                }
              }
            }
          },
          "notApplicable": {
            "type": "array",
            "description": "Things Solana does not have, as distinct from things this collector does not read: no on-chain governance module, no chain-wide unbonding queue, no slashing.",
            "items": {
              "type": "string"
            }
          },
          "notPublished": {
            "type": "array",
            "description": "Things that exist and this collector does not read: block production, the leader schedule, MEV rewards and individual stake accounts.",
            "items": {
              "type": "string"
            }
          },
          "scope": {
            "type": "object",
            "description": "Capability statement. firstPartySources is false: this page is deliberately not read from the POSTHUMAN Solana validator.",
            "required": [
              "readOnly",
              "firstPartySources",
              "arbitraryQuery",
              "arbitraryChain",
              "wallet",
              "signing",
              "broadcast",
              "transactions",
              "nodeControl"
            ],
            "additionalProperties": false,
            "properties": {
              "readOnly": {
                "type": "boolean"
              },
              "firstPartySources": {
                "type": "boolean"
              },
              "arbitraryQuery": {
                "type": "boolean"
              },
              "arbitraryChain": {
                "type": "boolean"
              },
              "wallet": {
                "type": "boolean"
              },
              "signing": {
                "type": "boolean"
              },
              "broadcast": {
                "type": "boolean"
              },
              "transactions": {
                "type": "boolean"
              },
              "nodeControl": {
                "type": "boolean"
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        }
      },
      "Sp1BlobstreamSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networkId",
          "chainId",
          "state",
          "celestia",
          "registry",
          "deployments",
          "mocha5",
          "scope",
          "warnings"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.sp1-blobstream/v1"
          },
          "source": {
            "const": "official-sp1-registry+fixed-reviewed-rpc"
          },
          "networkId": {
            "const": "celestia"
          },
          "chainId": {
            "const": "celestia"
          },
          "state": {
            "enum": [
              "ready",
              "attention"
            ]
          },
          "celestia": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "height",
              "sourceId"
            ],
            "properties": {
              "height": {
                "type": "string",
                "pattern": "^[1-9][0-9]{0,19}$"
              },
              "sourceId": {
                "enum": [
                  "celestia-itrocket",
                  "celestia-polkachu"
                ]
              }
            }
          },
          "registry": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "repository",
              "tag",
              "commit",
              "path"
            ],
            "properties": {
              "repository": {
                "const": "https://github.com/succinctlabs/sp1-blobstream"
              },
              "tag": {
                "const": "v1.1.0"
              },
              "commit": {
                "const": "d35767fab28bbcaf7f22d5b63fc5d1d74a941a9a"
              },
              "path": {
                "const": "book/deployments.md"
              }
            }
          },
          "deployments": {
            "type": "array",
            "minItems": 3,
            "maxItems": 3,
            "uniqueItems": true,
            "items": {
              "allOf": [
                {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "network",
                    "chainId",
                    "contract",
                    "version",
                    "latestBlock",
                    "lagBlocks",
                    "sourceId"
                  ],
                  "properties": {
                    "network": {
                      "type": "string"
                    },
                    "chainId": {
                      "type": "string"
                    },
                    "contract": {
                      "type": "string",
                      "pattern": "^0x[A-Fa-f0-9]{40}$"
                    },
                    "version": {
                      "const": "1.1.0"
                    },
                    "latestBlock": {
                      "type": "string",
                      "pattern": "^[1-9][0-9]{0,19}$"
                    },
                    "lagBlocks": {
                      "type": "string",
                      "pattern": "^[0-9]{1,20}$"
                    },
                    "sourceId": {
                      "type": "string"
                    }
                  }
                },
                {
                  "oneOf": [
                    {
                      "type": "object",
                      "required": [
                        "network",
                        "chainId",
                        "contract",
                        "sourceId"
                      ],
                      "properties": {
                        "network": {
                          "const": "Ethereum"
                        },
                        "chainId": {
                          "const": "1"
                        },
                        "contract": {
                          "const": "0x7Cf3876F681Dbb6EdA8f6FfC45D66B996Df08fAe"
                        },
                        "sourceId": {
                          "enum": [
                            "ethereum-publicnode",
                            "ethereum-llamarpc"
                          ]
                        }
                      }
                    },
                    {
                      "type": "object",
                      "required": [
                        "network",
                        "chainId",
                        "contract",
                        "sourceId"
                      ],
                      "properties": {
                        "network": {
                          "const": "Arbitrum One"
                        },
                        "chainId": {
                          "const": "42161"
                        },
                        "contract": {
                          "const": "0xA83ca7775Bc2889825BcDeDfFa5b758cf69e8794"
                        },
                        "sourceId": {
                          "enum": [
                            "arbitrum-publicnode",
                            "arbitrum-official"
                          ]
                        }
                      }
                    },
                    {
                      "type": "object",
                      "required": [
                        "network",
                        "chainId",
                        "contract",
                        "sourceId"
                      ],
                      "properties": {
                        "network": {
                          "const": "Base"
                        },
                        "chainId": {
                          "const": "8453"
                        },
                        "contract": {
                          "const": "0xA83ca7775Bc2889825BcDeDfFa5b758cf69e8794"
                        },
                        "sourceId": {
                          "enum": [
                            "base-publicnode",
                            "base-official"
                          ]
                        }
                      }
                    }
                  ]
                }
              ]
            }
          },
          "mocha5": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "networkId",
              "chainId",
              "state",
              "reviewedAt",
              "publishedLatestBlock",
              "observedMocha5Height",
              "reason"
            ],
            "properties": {
              "networkId": {
                "const": "celestia-testnet"
              },
              "chainId": {
                "const": "mocha-5"
              },
              "state": {
                "const": "unavailable"
              },
              "reviewedAt": {
                "const": "2026-09-04"
              },
              "publishedLatestBlock": {
                "const": "14362200"
              },
              "observedMocha5Height": {
                "const": "479362"
              },
              "reason": {
                "const": "Published testnet contract height is incompatible with mocha-5 restart-at-1 progression."
              }
            }
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "mainnetOnly",
              "deploymentCount",
              "arbitraryChain",
              "arbitraryContract",
              "arbitraryCall",
              "wallet",
              "signing",
              "broadcast",
              "transactions",
              "nodeControl"
            ],
            "properties": {
              "mainnetOnly": {
                "const": true
              },
              "deploymentCount": {
                "const": 3
              },
              "arbitraryChain": {
                "const": false
              },
              "arbitraryContract": {
                "const": false
              },
              "arbitraryCall": {
                "const": false
              },
              "wallet": {
                "const": false
              },
              "signing": {
                "const": false
              },
              "broadcast": {
                "const": false
              },
              "transactions": {
                "const": false
              },
              "nodeControl": {
                "const": false
              }
            }
          },
          "warnings": {
            "type": "array",
            "maxItems": 1,
            "items": {
              "const": "deployment_latest_blocks_diverge"
            }
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "TheGraphIndexer": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "id",
          "url",
          "stakedTokens",
          "delegatedTokens",
          "allocatedTokens",
          "indexingRewardCut",
          "queryFeeCut",
          "delegationCapacity",
          "delegationHeadroom",
          "delegatorRewardShare",
          "overDelegated",
          "dormant",
          "strandedDelegation"
        ],
        "properties": {
          "id": {
            "type": "string",
            "pattern": "^0x[0-9a-f]{40}$"
          },
          "url": {
            "type": [
              "string",
              "null"
            ],
            "maxLength": 200,
            "description": "Registered query endpoint, or null when the indexer published none or published something that is not a plain http(s) URL."
          },
          "stakedTokens": {
            "type": "string",
            "pattern": "^(?:0|[1-9][0-9]{0,39})$",
            "description": "GRT in 18-decimal base units. A string because the value exceeds IEEE-754 integer precision."
          },
          "delegatedTokens": {
            "type": "string",
            "pattern": "^(?:0|[1-9][0-9]{0,39})$",
            "description": "GRT in 18-decimal base units. A string because the value exceeds IEEE-754 integer precision."
          },
          "allocatedTokens": {
            "type": "string",
            "pattern": "^(?:0|[1-9][0-9]{0,39})$",
            "description": "GRT in 18-decimal base units. A string because the value exceeds IEEE-754 integer precision."
          },
          "indexingRewardCut": {
            "type": "integer",
            "minimum": 0,
            "maximum": 1000000,
            "description": "Parts per million. 1000000 means the indexer keeps everything and delegators earn nothing."
          },
          "queryFeeCut": {
            "type": "integer",
            "minimum": 0,
            "maximum": 1000000,
            "description": "Parts per million. 1000000 means the indexer keeps everything and delegators earn nothing."
          },
          "delegationCapacity": {
            "type": "string",
            "pattern": "^(?:0|[1-9][0-9]{0,39})$",
            "description": "stakedTokens multiplied by the protocol delegation ratio."
          },
          "delegationHeadroom": {
            "type": "string",
            "pattern": "^(?:0|[1-9][0-9]{0,39})$",
            "description": "Delegation the indexer can still put to work. Never negative."
          },
          "delegatorRewardShare": {
            "type": "integer",
            "minimum": 0,
            "maximum": 1000000,
            "description": "1000000 minus indexingRewardCut: the share left for delegators."
          },
          "overDelegated": {
            "type": "boolean"
          },
          "dormant": {
            "type": "boolean",
            "description": "No self-stake or no allocations: the profile earns nothing for anyone."
          },
          "strandedDelegation": {
            "type": "boolean",
            "description": "Zero self-stake while delegation is still parked on the profile."
          }
        }
      },
      "TheGraphIndexerSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networkId",
          "chainId",
          "state",
          "grtDecimals",
          "subgraph",
          "protocol",
          "indexerLimit",
          "indexers",
          "posthuman",
          "scope",
          "warnings"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.the-graph-indexers/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "posthuman-network-subgraph+arbitrum-rpc"
          },
          "networkId": {
            "const": "the-graph"
          },
          "chainId": {
            "const": "42161"
          },
          "state": {
            "enum": [
              "ready",
              "attention"
            ],
            "description": "`ready` only when warnings is empty."
          },
          "grtDecimals": {
            "const": 18
          },
          "subgraph": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "blockNumber",
              "chainHeadBlock",
              "lagBlocks",
              "hasIndexingErrors",
              "staleLagThreshold"
            ],
            "properties": {
              "blockNumber": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]{0,19})$",
                "description": "Block the network subgraph has projected to."
              },
              "chainHeadBlock": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]{0,19})$",
                "description": "Arbitrum One head at collection time."
              },
              "lagBlocks": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]{0,19})$",
                "description": "chainHeadBlock minus blockNumber. The figures are as old as this gap."
              },
              "hasIndexingErrors": {
                "type": "boolean"
              },
              "staleLagThreshold": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]{0,19})$",
                "description": "Lag past which the snapshot marks itself for attention."
              }
            }
          },
          "protocol": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "delegationRatio",
              "minimumIndexerStake",
              "delegationUnbondingPeriod",
              "currentEpoch",
              "indexerCount",
              "delegatorCount",
              "totalTokensStaked",
              "totalDelegatedTokens",
              "totalTokensAllocated"
            ],
            "properties": {
              "delegationRatio": {
                "type": "integer",
                "minimum": 1,
                "maximum": 1000
              },
              "minimumIndexerStake": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]{0,39})$",
                "description": "GRT in 18-decimal base units. A string because the value exceeds IEEE-754 integer precision."
              },
              "delegationUnbondingPeriod": {
                "type": "integer",
                "minimum": 0,
                "maximum": 3650,
                "description": "Thawing period in days."
              },
              "currentEpoch": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]{0,11})$"
              },
              "indexerCount": {
                "type": "integer",
                "minimum": 0
              },
              "delegatorCount": {
                "type": "integer",
                "minimum": 0
              },
              "totalTokensStaked": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]{0,39})$",
                "description": "GRT in 18-decimal base units. A string because the value exceeds IEEE-754 integer precision."
              },
              "totalDelegatedTokens": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]{0,39})$",
                "description": "GRT in 18-decimal base units. A string because the value exceeds IEEE-754 integer precision."
              },
              "totalTokensAllocated": {
                "type": "string",
                "pattern": "^(?:0|[1-9][0-9]{0,39})$",
                "description": "GRT in 18-decimal base units. A string because the value exceeds IEEE-754 integer precision."
              }
            }
          },
          "indexerLimit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 1000,
            "description": "Published cap. A list at the cap is truncated and says so in warnings."
          },
          "indexers": {
            "type": "array",
            "maxItems": 1000,
            "items": {
              "$ref": "#/components/schemas/TheGraphIndexer"
            }
          },
          "posthuman": {
            "type": "array",
            "minItems": 4,
            "maxItems": 4,
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "id",
                "label",
                "status",
                "observed"
              ],
              "properties": {
                "id": {
                  "type": "string",
                  "pattern": "^0x[0-9a-f]{40}$"
                },
                "label": {
                  "type": "string",
                  "maxLength": 64
                },
                "status": {
                  "enum": [
                    "active",
                    "retired"
                  ]
                },
                "observed": {
                  "oneOf": [
                    {
                      "$ref": "#/components/schemas/TheGraphIndexer"
                    },
                    {
                      "type": "null"
                    }
                  ],
                  "description": "The matching row from this projection, or null when the address is absent from it."
                }
              }
            }
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "readOnly",
              "firstPartySourcesOnly",
              "arbitraryQuery",
              "arbitraryChain",
              "wallet",
              "signing",
              "broadcast",
              "transactions",
              "nodeControl"
            ],
            "properties": {
              "readOnly": {
                "const": true
              },
              "firstPartySourcesOnly": {
                "const": true
              },
              "arbitraryQuery": {
                "const": false
              },
              "arbitraryChain": {
                "const": false
              },
              "wallet": {
                "const": false
              },
              "signing": {
                "const": false
              },
              "broadcast": {
                "const": false
              },
              "transactions": {
                "const": false
              },
              "nodeControl": {
                "const": false
              }
            }
          },
          "warnings": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": "string",
              "maxLength": 120
            }
          }
        }
      },
      "Timestamp": {
        "type": "string",
        "format": "date-time"
      },
      "TransactionEvent": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "type",
          "attributes"
        ],
        "properties": {
          "type": {
            "type": "string"
          },
          "attributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TransactionEventAttribute"
            },
            "maxItems": 24
          }
        }
      },
      "TransactionEventAttribute": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "key",
          "value"
        ],
        "properties": {
          "key": {
            "type": "string"
          },
          "value": {
            "type": "string"
          }
        }
      },
      "TransactionMessage": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "typeUrl",
          "value",
          "source"
        ],
        "properties": {
          "typeUrl": {
            "type": "string"
          },
          "value": {
            "type": "object",
            "description": "Bounded decoded protobuf JSON; keys and scalar/array/object values vary by message type.",
            "additionalProperties": true
          },
          "source": {
            "enum": [
              "decoded",
              "event"
            ]
          }
        }
      },
      "TransactionNetworkId": {
        "type": "string",
        "enum": [
          "cosmoshub",
          "osmosis",
          "neutron",
          "axelar",
          "juno",
          "mantra",
          "atomone",
          "oraichain",
          "verona",
          "celestia",
          "celestia-testnet",
          "fetchhub",
          "shentu",
          "provenance",
          "firmachain",
          "warden",
          "dymension",
          "agoric",
          "akash",
          "dungeon",
          "beezee",
          "babylon",
          "union",
          "lava",
          "exrp",
          "cosmoshub-testnet",
          "atomone-testnet",
          "axelar-testnet",
          "babylon-testnet",
          "warden-testnet",
          "limonata",
          "pchain"
        ]
      },
      "TransactionSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networkId",
          "chainId",
          "hash",
          "height",
          "timestamp",
          "status",
          "code",
          "codespace",
          "gas",
          "fee",
          "memo",
          "signers",
          "messages",
          "events",
          "rawLog",
          "scope",
          "warnings"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.transaction/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "public-cosmos-rpc+rest"
          },
          "networkId": {
            "$ref": "#/components/schemas/TransactionNetworkId"
          },
          "chainId": {
            "type": "string"
          },
          "hash": {
            "$ref": "#/components/schemas/Hash64"
          },
          "height": {
            "type": "string",
            "pattern": "^\\d{1,40}$"
          },
          "timestamp": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "status": {
            "enum": [
              "success",
              "failed"
            ]
          },
          "code": {
            "type": "integer",
            "minimum": 0,
            "maximum": 4294967295
          },
          "codespace": {
            "type": [
              "string",
              "null"
            ]
          },
          "gas": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "wanted",
              "used"
            ],
            "properties": {
              "wanted": {
                "$ref": "#/components/schemas/UnsignedAmount"
              },
              "used": {
                "$ref": "#/components/schemas/UnsignedAmount"
              }
            }
          },
          "fee": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "amount",
              "gasLimit",
              "payer",
              "granter"
            ],
            "properties": {
              "amount": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Coin"
                },
                "maxItems": 20
              },
              "gasLimit": {
                "$ref": "#/components/schemas/UnsignedAmount"
              },
              "payer": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "granter": {
                "type": [
                  "string",
                  "null"
                ]
              }
            }
          },
          "memo": {
            "type": [
              "string",
              "null"
            ]
          },
          "signers": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 16,
            "uniqueItems": true
          },
          "messages": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TransactionMessage"
            },
            "maxItems": 20
          },
          "events": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TransactionEvent"
            },
            "maxItems": 50
          },
          "rawLog": {
            "type": [
              "string",
              "null"
            ],
            "maxLength": 2000
          },
          "scope": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "maximumMessages",
              "maximumEvents",
              "maximumEventAttributes"
            ],
            "properties": {
              "maximumMessages": {
                "const": 20
              },
              "maximumEvents": {
                "const": 50
              },
              "maximumEventAttributes": {
                "const": 24
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 12
          }
        }
      },
      "UnsignedAmount": {
        "type": "string",
        "pattern": "^\\d{1,40}$"
      },
      "ValidatorDetailSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networkId",
          "chainId",
          "operatorAddress",
          "accountAddress",
          "denom",
          "rewards",
          "selfDelegation",
          "warnings"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.validator-detail/v2"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "public-cosmos-rest"
          },
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "chainId": {
            "type": "string"
          },
          "operatorAddress": {
            "type": "string"
          },
          "accountAddress": {
            "type": "string"
          },
          "denom": {
            "$ref": "#/components/schemas/Denom"
          },
          "rewards": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "commission",
              "outstanding",
              "selfDelegation"
            ],
            "properties": {
              "commission": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Coin"
                },
                "maxItems": 60
              },
              "outstanding": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Coin"
                },
                "maxItems": 60
              },
              "selfDelegation": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Coin"
                },
                "maxItems": 60
              }
            }
          },
          "selfDelegation": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/Coin"
              },
              {
                "type": "null"
              }
            ]
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 16
          }
        }
      },
      "ValidatorNetwork": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "networkId",
          "networkName",
          "chainId",
          "observedAt",
          "state",
          "denom",
          "bondedTotal",
          "signedBlocksWindow",
          "minSignedPerWindowBps",
          "maxMissedBlocks",
          "delegatorCountScope",
          "statusTotals",
          "validators",
          "warnings"
        ],
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "networkName": {
            "type": "string"
          },
          "chainId": {
            "type": "string"
          },
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "state": {
            "enum": [
              "healthy",
              "attention",
              "unavailable"
            ]
          },
          "denom": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "display",
              "exponent"
            ],
            "properties": {
              "display": {
                "type": "string"
              },
              "exponent": {
                "type": "integer",
                "minimum": 0,
                "maximum": 24
              }
            }
          },
          "bondedTotal": {
            "$ref": "#/components/schemas/NullableUnsignedAmount"
          },
          "signedBlocksWindow": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "minSignedPerWindowBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "maxMissedBlocks": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "delegatorCountScope": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "published",
              "total"
            ],
            "properties": {
              "published": {
                "type": "integer",
                "minimum": 0,
                "maximum": 120
              },
              "total": {
                "type": "integer",
                "minimum": 0
              }
            }
          },
          "statusTotals": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "bonded",
              "unbonding",
              "unbonded",
              "jailed",
              "tombstoned"
            ],
            "properties": {
              "bonded": {
                "type": "integer",
                "minimum": 0
              },
              "unbonding": {
                "type": "integer",
                "minimum": 0
              },
              "unbonded": {
                "type": "integer",
                "minimum": 0
              },
              "jailed": {
                "type": "integer",
                "minimum": 0
              },
              "tombstoned": {
                "type": "integer",
                "minimum": 0
              }
            }
          },
          "validators": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ValidatorRecord"
            },
            "maxItems": 1200
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 12
          }
        }
      },
      "ValidatorParticipation": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "operatorAddress",
          "accountAddress",
          "voted",
          "windowSize",
          "participationBps",
          "missedProposalIds"
        ],
        "properties": {
          "operatorAddress": {
            "type": "string"
          },
          "accountAddress": {
            "type": [
              "string",
              "null"
            ]
          },
          "voted": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "windowSize": {
            "type": "integer",
            "minimum": 0,
            "maximum": 30
          },
          "participationBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "missedProposalIds": {
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^\\d+$"
            },
            "maxItems": 30
          }
        }
      },
      "ValidatorRecord": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "rank",
          "operatorAddress",
          "accountAddress",
          "consensusAddress",
          "consensusHexAddress",
          "moniker",
          "identity",
          "website",
          "securityContact",
          "details",
          "status",
          "jailed",
          "tokens",
          "delegatorShares",
          "votingPowerBps",
          "commissionRateBps",
          "commissionMaxRateBps",
          "commissionMaxChangeRateBps",
          "commissionUpdateTime",
          "minSelfDelegation",
          "unbondingHeight",
          "delegatorCount",
          "uptime",
          "axelar"
        ],
        "properties": {
          "rank": {
            "type": "integer",
            "minimum": 0
          },
          "operatorAddress": {
            "type": "string"
          },
          "accountAddress": {
            "type": [
              "string",
              "null"
            ]
          },
          "consensusAddress": {
            "type": [
              "string",
              "null"
            ]
          },
          "consensusHexAddress": {
            "type": [
              "string",
              "null"
            ]
          },
          "moniker": {
            "type": "string"
          },
          "identity": {
            "type": [
              "string",
              "null"
            ]
          },
          "website": {
            "type": [
              "string",
              "null"
            ]
          },
          "securityContact": {
            "type": [
              "string",
              "null"
            ]
          },
          "details": {
            "type": [
              "string",
              "null"
            ]
          },
          "status": {
            "type": "string"
          },
          "jailed": {
            "type": "boolean"
          },
          "tokens": {
            "$ref": "#/components/schemas/UnsignedAmount"
          },
          "delegatorShares": {
            "type": [
              "string",
              "null"
            ]
          },
          "votingPowerBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "commissionRateBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "commissionMaxRateBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "commissionMaxChangeRateBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "commissionUpdateTime": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "minSelfDelegation": {
            "$ref": "#/components/schemas/NullableUnsignedAmount"
          },
          "unbondingHeight": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "delegatorCount": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "uptime": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/ValidatorUptime"
              },
              {
                "type": "null"
              }
            ]
          },
          "axelar": {
            "oneOf": [
              {
                "$ref": "#/components/schemas/AxelarValidatorMetrics"
              },
              {
                "type": "null"
              }
            ]
          }
        }
      },
      "ValidatorSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "networks",
          "totals"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.validators/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "public-cosmos-rest"
          },
          "networks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ValidatorNetwork"
            },
            "minItems": 34,
            "maxItems": 34
          },
          "totals": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "trackedNetworks",
              "readyNetworks",
              "validators"
            ],
            "properties": {
              "trackedNetworks": {
                "const": 34
              },
              "readyNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 34
              },
              "validators": {
                "type": "integer",
                "minimum": 0
              }
            }
          }
        }
      },
      "ValidatorUptime": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "missedBlocks",
          "signedBlocksWindow",
          "maxMissedBlocks",
          "uptimeBps",
          "tombstoned",
          "jailedUntil",
          "startHeight"
        ],
        "properties": {
          "missedBlocks": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "signedBlocksWindow": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "maxMissedBlocks": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          },
          "uptimeBps": {
            "$ref": "#/components/schemas/NullableBasisPoints"
          },
          "tombstoned": {
            "type": "boolean"
          },
          "jailedUntil": {
            "$ref": "#/components/schemas/NullableTimestamp"
          },
          "startHeight": {
            "$ref": "#/components/schemas/NullableNonNegativeInteger"
          }
        }
      },
      "WasmAssetsNetwork": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "networkId",
          "networkName",
          "chainId",
          "observedAt",
          "state",
          "wasmSupported",
          "wasm",
          "assets",
          "warnings"
        ],
        "properties": {
          "networkId": {
            "$ref": "#/components/schemas/NetworkId"
          },
          "networkName": {
            "type": "string"
          },
          "chainId": {
            "type": "string"
          },
          "observedAt": {
            "type": "string",
            "format": "date-time"
          },
          "state": {
            "enum": [
              "healthy",
              "attention",
              "unavailable"
            ]
          },
          "wasmSupported": {
            "type": "boolean"
          },
          "wasm": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "latestCodeId",
              "recentCodes",
              "scope"
            ],
            "properties": {
              "latestCodeId": {
                "type": "string",
                "pattern": "^\\d+$"
              },
              "recentCodes": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/WasmCode"
                },
                "maxItems": 25
              },
              "scope": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "recentCodes",
                  "contractsSampledForCodes",
                  "contractsPerCode"
                ],
                "properties": {
                  "recentCodes": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 25
                  },
                  "contractsSampledForCodes": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 5
                  },
                  "contractsPerCode": {
                    "const": 5
                  }
                }
              }
            }
          },
          "assets": {
            "type": [
              "object",
              "null"
            ],
            "additionalProperties": false,
            "required": [
              "assets",
              "bondDenom",
              "totals",
              "truncated",
              "limit"
            ],
            "properties": {
              "assets": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/ChainAsset"
                },
                "maxItems": 61
              },
              "bondDenom": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "totals": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "native",
                  "ibc",
                  "tokenfactory",
                  "cw20"
                ],
                "properties": {
                  "native": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "ibc": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "tokenfactory": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "cw20": {
                    "type": "integer",
                    "minimum": 0
                  }
                }
              },
              "truncated": {
                "type": "boolean"
              },
              "limit": {
                "const": 60
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 12
          }
        }
      },
      "WasmAssetsSnapshot": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "schemaVersion",
          "generatedAt",
          "source",
          "scope",
          "networks",
          "totals"
        ],
        "properties": {
          "schemaVersion": {
            "const": "posthuman.wasm-assets/v1"
          },
          "generatedAt": {
            "type": "string",
            "format": "date-time"
          },
          "source": {
            "const": "public-cosmos-rest"
          },
          "scope": {
            "const": "recent-slice-not-exhaustive"
          },
          "networks": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/WasmAssetsNetwork"
            },
            "minItems": 26,
            "maxItems": 26
          },
          "totals": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "trackedNetworks",
              "wasmNetworks",
              "readyNetworks"
            ],
            "properties": {
              "trackedNetworks": {
                "const": 26
              },
              "wasmNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 26
              },
              "readyNetworks": {
                "type": "integer",
                "minimum": 0,
                "maximum": 26
              }
            }
          }
        }
      },
      "WasmCode": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "codeId",
          "creator",
          "dataHash",
          "instantiatePermission",
          "contracts"
        ],
        "properties": {
          "codeId": {
            "type": "string",
            "pattern": "^\\d+$"
          },
          "creator": {
            "type": "string"
          },
          "dataHash": {
            "type": [
              "string",
              "null"
            ]
          },
          "instantiatePermission": {
            "type": [
              "string",
              "null"
            ]
          },
          "contracts": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 5
          }
        }
      }
    }
  }
}
