Q token mark QUADPublic Accountability

Build against the public surface

Integrator Guide

Use the stack by contract: read the owner, read the status, read the receipt, and preserve the boundary in your own UI.

This page is an integration map, not an SDK release, private operations manual, token sale, route opening, or economic activation.

For public contract fields, schema families, versioning, stale behavior, and consumer rules, use the Public Contracts guide.

Integration Contract

Every integration should answer four questions before it displays a QUAD-family value, route, proof, or balance.

QuestionWhat to showWhat to avoid
Who owns this state?Core, Infra, Bridge, Liquid, or the main website, with a link to the owning page or endpoint contract.Do not merge the four surfaces into one authority just because they cross-link.
What phase is it in?Live, test/rehearsal, planned, closed, stale, degraded, refused, quarantined, or not yet public.Do not upgrade a route because it has a nice label, visible JSON, or public attention.
What proves it?Transaction hash, receipt id, endpoint contract, chain metadata, status JSON, proof route, or source page.Do not treat a receipt as payload truth, destination admission, custody, redemption, or settlement authority.
What is the boundary?What the record does not prove, which action remains closed, and which stronger claim is still missing.Do not hide warnings in hover-only copy or private chat.

Public Query Index

Use public contracts and status routes first. Dynamic feeds should degrade cleanly when stale or unavailable.

Schema Examples

Prefer explicit labels over clever inference. A small honest schema is better than a rich one that lies by omission.

Surface record

surface, owner, status, freshness, source_url, boundary.

Receipt record

receipt_id, event, surface, proof_class, payload_boundary, verifier_url.

Balance record

denom, amount, balance_class, module_flag, finality, owner_surface.

Route record

source_chain, host_chain, destination_chain, route_state, refund_state, destination_handoff.

Error And Refusal Labels

  • Closed: the route exists as a public explanation, but action is not open.
  • Stale: the last observed value is old; do not present it as current.
  • Degraded: the route answers, but health or freshness is below normal.
  • Refused: the owning surface rejected the action or interpretation.
  • Quarantined: delivered or observed material is held away from admitted state.
  • Not yet public: the public contract does not expose the route or value.

Stale Response Guide

  • Show the last update time beside the value.
  • Keep the last known value visibly weaker than a fresh value.
  • Link to the owning status page or endpoint contract.
  • Do not invent block height, volume, balance, rewards, or launch state from age.
  • Prefer "unverified current state" over a guessed number.

Receipt Lookup

Receipt lookup is a proof path, not a permission slip to broaden the claim.

1. Identify owner

Core, Infra, Bridge, Liquid, or main-domain orientation.

2. Read receipt id

Use the exact receipt id, transaction hash, or proof route.

3. Read proof class

Storage, passage, handoff, finality, refusal, quarantine, or settlement request.

4. Read boundary

What the receipt excludes: payload truth, custody, redemption, admission, settlement, or reward eligibility.

5. Display downgrade

If any field is missing or stale, show the weaker state.

Surface-Specific Notes

Use the right word for the right surface. This is where many integrations accidentally overclaim.

SurfaceUse it forKeep out of your UI
CoreChain observation, admitted-value posture, validator state, metadata, refusal, quarantine, supply policy, and governance slots.Do not turn observation into sale access, allocation, redemption, or stronger custody claims.
InfraBIGHT-priced upload, receipt verification, retrieval, contract work, retained memory, proof, balances, and public data labels.Do not call it raw compute rewards, generic DePIN earning, payload truth, or Core admission.
BridgePassage evidence, source pools, owner vaults, route labels, host evidence, refunds, surplus, proof, and destination handoff.Do not imply Bridge can force destination admission, native ownership, redemption, or live value movement.
LiquidQuotes, orders, positions, wrappers, risk, liquidation, motion, settlement requests, and public readiness labels.Do not turn speed, wrapper posture, or Engine output into final settlement authority.

Must-Not-Build List

These are easy mistakes. Avoiding them is part of integrating honestly.

No wallet prompt to browse

Viewing public pages must not require Keplr, a wallet connection, a signature, a seed phrase, or payment.

No fixture-as-live UI

Fixture, smoke, rehearsal, test, stale, or pre-SDK data must stay labelled as weaker than live state.

No reward path inference

Running a node, joining community channels, using a faucet, testing routes, or reading receipts does not create entitlement.

No hidden upgrade

If a public contract says closed, stale, refused, quarantined, or not yet public, your UI should not make it look available.