extensions:
JSON
extensions.error (stable slug), not the human-readable message.
Error codes
Validation errors on
playerBets / pendingBetCount (bad address format, unknown networkId, invalid filter.status) return a plain message without an extensions.error slug — treat any error from those queries as a caller bug to fix, not a retry case.
Limits
Degraded modes (not errors)
Some unavailability is expressed in-band rather than thrown:playerBetsreturnssource: "unavailable"with an empty list when the indexed store is down or unconfigured.pendingBetCountreturns0in the same situation.betResult.proofisnullwhen a proof couldn’t be produced — the result is still valid; fall back to seed-reveal claiming (Results & proofs).