The oracle module stores current price data and time-weighted averages for assets consumed by DEX, UTA, lending, and stables risk logic.
Consumer rules
- Query the exact symbol and source expected by the consuming module.
- Check freshness before using a price for a trade, liquidation, mint, or funding calculation.
- Treat a missing, stale, or invalid price as an unavailable risk path, not as a zero price.
- Keep a price snapshot with the transaction evidence when a decision depends on it.
Validator-side vote-extension and external-fetch behavior is an operator and governance surface. Public clients should consume the typed query result and its freshness semantics rather than couple to validator internals.