{
  "ok": true,
  "contractId": "local.casterschoolquiz-static-shell-isolation.v0",
  "status": "blocked_external",
  "mode": "live_vercel_static_casterschoolquiz_with_runtime_blocker_gates",
  "publicReadinessStatus": "blocked_external",
  "runtimeVisibilityStatus": "passed",
  "localOnly": false,
  "staticFallback": true,
  "writeAccepted": false,
  "liveMutationAllowed": false,
  "productionReady": false,
  "commercialReady": false,
  "acceptedAsProductionEvidence": false,
  "surfaces": {
    "web": "/casterschoolquiz",
    "miniapp": "/miniapps/casterschoolquiz",
    "sourceMiniApp": "/miniapps/caster-school-quiz",
    "sourceMiniAppCatalog": "/api/farcaster-miniapps?slug=caster-school-quiz",
    "sourceClaimApi": "/api/farcaster-miniapps/claim",
    "api": [
      "/api/casterschoolquiz/overview",
      "/api/casterschoolquiz/game-card",
      "/api/casterschoolquiz/quiz-prompt",
      "/api/casterschoolquiz/answer-check",
      "/api/casterschoolquiz/share-proof",
      "/api/casterschoolquiz/claim",
      "/api/casterschoolquiz/rewards",
      "/api/casterschoolquiz/wallet",
      "/api/casterschoolquiz/miniapp-catalog",
      "/api/casterschoolquiz/rate-limits",
      "/api/casterschoolquiz/anti-replay",
      "/api/casterschoolquiz/qstorage",
      "/api/casterschoolquiz/event-log",
      "/api/casterschoolquiz/rollback"
    ],
    "status": "/api/casterschoolquiz/status"
  },
  "metrics": [
    {
      "label": "Prompt",
      "value": "Caster Wallet",
      "status": "blocked_external"
    },
    {
      "label": "Proof",
      "value": "Share cast",
      "status": "blocked_external"
    },
    {
      "label": "Reward",
      "value": "200 $CASTER",
      "status": "blocked_external"
    },
    {
      "label": "Claim API",
      "value": "Blocked",
      "status": "blocked_external"
    }
  ],
  "lanes": [
    {
      "id": "miniapp",
      "title": "Mini app quiz",
      "summary": "Read-only fallback for the Caster School Quiz catalog card, safe-claim prompt, and Farcaster mini app shell.",
      "status": "blocked_external"
    },
    {
      "id": "gates",
      "title": "Claim gates",
      "summary": "Signed FID, answer validation, and proof-cast verification stay blocked until runtime receipts pass.",
      "status": "blocked_external"
    },
    {
      "id": "rewards",
      "title": "Reward accounting",
      "summary": "$CASTER quiz claim store, reward ledger writes, and Caster Wallet settlement are blocked until strict evidence passes.",
      "status": "blocked_external"
    },
    {
      "id": "proofs",
      "title": "Rate limits, event log, and rollback",
      "summary": "Rate limits, anti-replay state, QStorage, Caster event-log append, and rollback lanes require strict runtime evidence.",
      "status": "blocked_external"
    }
  ],
  "blockers": [
    "No accepted full Next Caster School Quiz build/typecheck receipt exists for this standalone fallback.",
    "No accepted shared Reown identity, wallet-auth session, Farcaster mini app runtime, signed Farcaster FID, answer-check runtime, or share-proof verification receipt exists.",
    "No accepted Caster School Quiz claim store, reward-ledger, rate-limit, anti-replay, or Caster Wallet settlement receipt exists.",
    "No accepted QStorage write, event-log append, Caster event log rollback, or production datastore rollback receipt exists.",
    "No signed @casterchain Farcaster accountAssociation exists for casterschoolquiz.vercel.app.",
    "No live answer check, share-proof verification, claim write, reward ledger write, wallet settlement, rate-limit mutation, anti-replay write, QStorage write, event-log append, or production datastore mutation is allowed from this fallback."
  ]
}
