Trace the source of a reference Aave v3 oracle price

A configured source address does not prove its answer was used. The reference AaveOracle can quote the base currency directly or consult a fallback when a source is missing or returns a nonpositive answer.

Reproduce the selected branch at one height

Read the oracle’s BASE_CURRENCY and BASE_CURRENCY_UNIT, the source for the asset and the fallback oracle. For the base currency the reference returns its base unit. For another asset with a configured source, inspect the source answer at the same block.

asset X has source S
S.latestAnswer() = 0
reference AaveOracle reads fallbackOracle.getAssetPrice(X)

In the example the zero answer selects the fallback. Comparing the pool’s price to zero would incorrectly report a mismatch. A source call that reverts is a different case from a source returning zero; inspect the actual call failure.

Check freshness in the source implementation

A positive answer in this implementation can be used without the outer oracle independently applying a timestamp limit. The source may be an adapter with its own checks. Trace that adapter before making claims about freshness or data provenance. github.com AaveOracle.sol