{
  "version": "2026-06-02",
  "title": "QUAD public observability contract",
  "owner": "uquad.org main website",
  "source_class": "static public telemetry contract",
  "freshness": "Static fallback. Verify current telemetry on the owning surface before quoting live state.",
  "boundary": "This file describes public telemetry families, owners, stale behavior, alert labels, and non-inference boundaries. It does not provide live telemetry, current block height, current transaction state, custody, admission, settlement, liquidity, launch status, sale access, reward eligibility, allocation, automatic recovery, or economic activation.",
  "global_rules": [
    "One green metric is not whole-stack health.",
    "Static telemetry contracts are not live telemetry.",
    "A stale value must downgrade the public claim.",
    "An alert can observe drift; it cannot repair drift by itself.",
    "Owner surface telemetry beats main-domain summary text.",
    "If current owner telemetry cannot be read, say it cannot be verified."
  ],
  "status_labels": [
    "ok",
    "watch",
    "degraded",
    "stale",
    "refused",
    "paused",
    "unavailable",
    "cannot_verify"
  ],
  "metric_families": [
    {
      "metric_id": "chain_liveness",
      "owner_surface": "Core, Infra, Bridge, or Liquid owning chain surface",
      "public_fields": [
        "block_height",
        "latest_block_time",
        "peer_count",
        "validator_signing",
        "epoch_freshness"
      ],
      "public_use": "Shows whether the owning chain surface can be observed and whether chain-state data is fresh enough to quote.",
      "stale_behavior": "Downgrade current height, transaction, validator, and liveness claims to cannot_verify until the owner surface is readable.",
      "next_public_check": "Owning chain status, blocks, validators, or endpoint-contract route.",
      "must_not_infer": [
        "whole-stack health",
        "economic activation",
        "custody",
        "liquidity",
        "settlement",
        "market access"
      ]
    },
    {
      "metric_id": "export_and_receipt_age",
      "owner_surface": "Core, Infra, Bridge, Liquid, or main website",
      "public_fields": [
        "export_age",
        "receipt_age",
        "da_receipt_age",
        "acknowledgement_age",
        "last_verified_at"
      ],
      "public_use": "Shows whether a public export, receipt, acknowledgement, or data-availability record is fresh enough to support the stated claim.",
      "stale_behavior": "Treat old exports as historical evidence and quote current state only from the owner route.",
      "next_public_check": "https://uquad.org/sources.html",
      "must_not_infer": [
        "current route state",
        "destination admission",
        "payload truth",
        "settlement",
        "live interop",
        "production readiness"
      ]
    },
    {
      "metric_id": "packet_and_relayer_state",
      "owner_surface": "Bridge, Infra, Core, Liquid, or external rail",
      "public_fields": [
        "packet_backlog",
        "timeout_age",
        "relayer_liveness",
        "relayer_gas_level",
        "acknowledgement_state",
        "retry_state"
      ],
      "public_use": "Shows whether route movement, fallback movement, or evidence export can be observed, waiting, retrying, refused, or unavailable.",
      "stale_behavior": "Pause stronger movement claims and use pending, retry, timeout, refused, degraded, or cannot_verify labels.",
      "next_public_check": "https://uquad.org/dependencies.html",
      "must_not_infer": [
        "destination admission",
        "open public movement",
        "host custody",
        "wrapper minting",
        "redemption",
        "live liquidity"
      ]
    },
    {
      "metric_id": "market_and_oracle_inputs",
      "owner_surface": "Liquid, Bridge, or external market rail",
      "public_fields": [
        "oracle_freshness",
        "source_quorum",
        "venue_pause_state",
        "route_provider_state",
        "execution_quality_label"
      ],
      "public_use": "Shows whether market-facing inputs are fresh, paused, degraded, refused, or unavailable before motion, quote, route, or settlement claims strengthen.",
      "stale_behavior": "Refuse, pause, re-quote, quarantine, downgrade, or cannot_verify until the owner publishes fresh acceptable input.",
      "next_public_check": "https://uquad.org/risks.html",
      "must_not_infer": [
        "market activity",
        "guaranteed execution",
        "Core worth",
        "settlement truth",
        "yield",
        "reserve quality"
      ]
    },
    {
      "metric_id": "infra_service_capacity",
      "owner_surface": "Infra",
      "public_fields": [
        "provider_sla_state",
        "storage_capacity",
        "replica_reserve",
        "repair_queue",
        "proof_queue",
        "retrieval_state"
      ],
      "public_use": "Shows whether Infra service lanes can accept, verify, retrieve, repair, challenge, or downgrade work under the owner route.",
      "stale_behavior": "Use queued, degraded, refused, unavailable, or cannot_verify labels before promising service availability.",
      "next_public_check": "https://infra.uquad.org/",
      "must_not_infer": [
        "provider payout",
        "storage guarantee",
        "payload truth",
        "Core value",
        "node earning",
        "allocation"
      ]
    },
    {
      "metric_id": "bridge_host_and_route_failures",
      "owner_surface": "Bridge",
      "public_fields": [
        "route_failure_count",
        "host_rpc_stale_state",
        "conflicting_host_head_state",
        "refund_backlog",
        "surplus_state",
        "route_gate_state"
      ],
      "public_use": "Shows whether Bridge passage, host evidence, refund, surplus, or gate posture is clean, degraded, refused, paused, or unverifiable.",
      "stale_behavior": "Keep movement closed or downgraded until Bridge-owned host evidence and route state are readable.",
      "next_public_check": "https://bridge.uquad.org/product",
      "must_not_infer": [
        "host asset custody",
        "destination acceptance",
        "live swap access",
        "reserve backing",
        "production value movement",
        "open public movement"
      ]
    },
    {
      "metric_id": "liquid_settlement_and_pause_state",
      "owner_surface": "Liquid",
      "public_fields": [
        "pending_settlement_count",
        "stuck_settlement_count",
        "position_risk_state",
        "liquidation_state",
        "wrapper_state",
        "venue_pause_state"
      ],
      "public_use": "Shows whether Liquid motion, risk, wrappers, positions, and settlement requests are progressing, paused, refused, or unverifiable.",
      "stale_behavior": "Treat motion as local posture only and block final-settlement language until Liquid publishes current state.",
      "next_public_check": "https://liquid.uquad.org/",
      "must_not_infer": [
        "final balance truth",
        "Core worth",
        "public market activity",
        "guaranteed execution",
        "redemption",
        "yield"
      ]
    },
    {
      "metric_id": "public_surface_freshness",
      "owner_surface": "Main website and owning subdomains",
      "public_fields": [
        "summary_freshness",
        "llms_freshness",
        "sitemap_freshness",
        "release_manifest_state",
        "live_url_smoke_state",
        "subdomain_freshness"
      ],
      "public_use": "Shows whether public meaning files, release artifacts, and owner-surface links are fresh enough for readers and crawlers.",
      "stale_behavior": "Keep the static route map useful while downgrading current-state claims to owner-surface verification.",
      "next_public_check": "https://uquad.org/data/release-provenance.json",
      "must_not_infer": [
        "deployed proof from local package",
        "subdomain deployment",
        "current chain state",
        "economic activation",
        "endorsement",
        "market access"
      ]
    }
  ],
  "alert_rules": [
    {
      "rule_id": "stale_owner_surface",
      "trigger": "Owner telemetry cannot be read or is older than its published freshness contract.",
      "public_state": "stale",
      "claim_effect": "Current values cannot be quoted from the main website."
    },
    {
      "rule_id": "single_metric_green",
      "trigger": "One metric is ok while sibling metrics, route state, or owner evidence is missing.",
      "public_state": "watch",
      "claim_effect": "Do not summarize the stack as healthy from one metric."
    },
    {
      "rule_id": "route_dependency_missing",
      "trigger": "A route depends on a sibling surface, relayer, provider, indexer, wallet, or host input that is stale or unavailable.",
      "public_state": "degraded",
      "claim_effect": "Route claims should pause, refuse, retry, quarantine, downgrade, or cannot_verify."
    }
  ]
}
