> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.whalehunt.net/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.whalehunt.net/_mcp/server.

# Quiet wallet or source problem?

No trades does not prove a healthy source. Quality observation is independent of the selected owner's activity.

`subscribed.sourceQuality` is a snapshot of permitted sources at the cut. Later changes arrive as durable `source.gap` and `capability.changed` events. Process both; do not wait for an error frame.

| Capability | Meaning                                                          |
| ---------- | ---------------------------------------------------------------- |
| `unknown`  | No sufficient stored state at the cut; `lastPosition` is null    |
| `gap`      | A known observation problem in this scope                        |
| `ready`    | Source observation resumed or was acknowledged by source control |

Notices bind to `sourceScope`, `network` and `contractScope`. A quiet-wallet subscription still receives relevant notices. Private epochs and recovery state are excluded.

## Responding to changes

On gap, mark the affected coverage degraded. Do not create a zero trade or assert the wallet did nothing. On ready, clear the current degradation while preserving the earlier gap. Unseen pending events cannot always be reconstructed from receipts.

`hello.health.delivery` describes the delivery path. Source quality describes source observation. A running gateway does not prove complete mempool coverage or durable client processing.

## Saving quality state

Save scope state, change positions and gap history with the checkpoint. Do not reapply wallet filters to server quality notices. A snapshot belongs to its cut; applying it as an earlier replay checkpoint's state would misstate history. At the cut reconcile it with replay using each scope's `lastPosition`, so an older replay notice cannot overwrite newer quality state.

See [event fields and reasons](/polymarket/reference/events).