This is the canonical list of event types Alterscope emits. The same types flow through every delivery channel — Webhooks, WebSockets, and the replay feed — so aDocumentation Index
Fetch the complete documentation index at: https://docs.alterscope.org/llms.txt
Use this file to discover all available pages before exploring further.
peg.depeg.start you subscribe to over a webhook is the same event you’d see on the risk-events WebSocket stream.
Subscribe by exact type string. There is no wildcard matching; list each type you care about.
Envelope
Every event shares one envelope. Thetype identifies the event, data carries the type-specific payload, and meta._agentic carries the same freshness/quality signal as REST responses (see Response envelope).
severity is one of info, warn, high, critical. subject_id follows a <resource>:<id> shape (e.g. oracle:ethereum:0xfeed:USDC, vault:base:0xpool). When an event was computed off degraded upstream input, the envelope additionally carries data_quality: "degraded". Fields shown as omitempty (chain, protocol, severity) may be absent.data object for each type. Fields within data vary by event family and may evolve additively — treat unrecognized fields as forward-compatible and key your idempotency on a stable identifier (e.g. block number + subject).
Oracle
oracle.stale
Fires when an oracle feed backing a tracked market has not updated within its freshness threshold. Severity scales with staleness age (
warn < 10 min, high ≥ 10 min, critical ≥ 60 min).oracle.classification.changed
Fires when the meta-oracle’s classification of a feed changes — its category, provider, staleness status, risk level, or edge-case flags shift from the previously observed fingerprint.
oracle.feed.invalid
Fires when a feed returns a structurally invalid reading (e.g. a non-positive or otherwise unusable answer) rather than merely a stale one. Carries the oracle and market identifiers; data fields are feed-specific.
Peg
peg.depeg.start
Fires when a tracked asset’s observed price crosses its depeg threshold against the reference. Prices are decimal strings (never floats);
deviation_bps is signed (negative = below reference).peg.depeg.end
Fires when an asset that had depegged returns inside its threshold band. Same payload shape as
peg.depeg.start; severity is info.peg.depeg.recovered
A recovery signal in the peg family, distinct from
peg.depeg.end; severity is info. Carries the peg identity in subject_id; the data object mirrors the peg envelope above.Vault
Vault events are derived from indexed on-chain curator/governance actions on MetaMorpho-style vaults. They share a common payload shape: the vault, the caller, the affected subject, the underlying on-chain event, and the transaction coordinates.vault.cap.changed
Fires when a vault’s supply cap is changed on chain (
set_cap). Severity is info.vault.fee.changed
Fires when a vault’s performance fee is changed on chain (
set_fee). Severity is warn. Same payload shape as vault.cap.changed with on_chain_event: "set_fee".vault.curator.changed
Fires when a vault’s curator role is reassigned on chain (
set_curator). Severity is high — a curator change is a governance-level event. Same payload shape with on_chain_event: "set_curator".vault.allocation.changed
Fires when a curator reallocates supply across markets (
reallocate_supply / reallocate_withdraw). Severity is warn. Same payload shape with the corresponding on_chain_event.Curator
curator.action
Fires for curator/governance actions that don’t map to a more specific vault event — e.g. supply-queue updates, allocator/guardian/timelock changes, or lost-asset updates. Severity is
info. The specific action is in on_chain_event.curator.tenure.start
Marks the start of a curator’s tenure over a vault. Severity is
info. Carries the vault/curator identity in subject_id; data is tenure-specific.curator.tenure.end
Marks the end of a curator’s tenure over a vault. Severity is
info. Same shape as curator.tenure.start.Liquidity
liquidity.utilization.spike
Fires when a market’s utilization crosses a configured threshold. Severity is
high.liquidity.depth.collapse
Fires when available exit depth for a position collapses sharply. Severity is
critical — the most actionable liquidity signal. Carries the affected market in subject_id; data fields are market-specific.Risk
risk.anomaly
Fires when the graph anomaly detector flags a non-MEV anomaly (TVL drop/spike, concentration, flow anomaly, whale movement). Severity derives from the detector’s own grade.
risk.factor.breach
Fires when a yield opportunity’s risk-factor category score drops past a threshold between snapshots. Severity is supplied by the breach (defaults to
warn).Regime
regime.shift
Fires when the market-regime detector transitions to a new regime. Emitted against the
vault:global subject. Severity is warn.MEV
mev.spike
Fires when the anomaly detector flags an MEV-extraction spike. Shares the anomaly payload shape with
anomaly_type: "mev_spike". Severity is high.mev.sandwich.large
Fires when a large sandwich attack is detected. Severity is
high. Carries the affected pool in subject_id; data fields are sandwich-specific.