Skip to main contentSkip to data table
Pharos
PHAROSlive stablecoin signals

Pricing Pipeline Changelog

Full version history of Pricing Pipeline methodology decisions, from v1.0 to v6.15.

Latest Version

v6.15Jun 7, 2026

DexScreener liquidity breaker isolation

Optional DexScreener liquidity and discovery pool lookups now use their own circuit breaker, preserving the exact-address stablecoin price fallback when liquidity recovery is slow or unavailable.

Impact Snapshot

  • `dexscreener-prices` now protects only the exact token-address stablecoin pricing fallback
  • `dexscreener-liquidity` protects optional DEX liquidity and discovery pool lookups and is excluded from public-impact breaker counts
  • `sync-dex-liquidity` records one aggregate DexScreener fallback outcome per run, so target-level failures or budget exhaustion cannot trip a source breaker multiple times in one run
v6.15Jun 7, 2026

DexScreener liquidity breaker isolation

Optional DexScreener liquidity and discovery pool lookups now use their own circuit breaker, preserving the exact-address stablecoin price fallback when liquidity recovery is slow or unavailable.

  • `dexscreener-prices` now protects only the exact token-address stablecoin pricing fallback
  • `dexscreener-liquidity` protects optional DEX liquidity and discovery pool lookups and is excluded from public-impact breaker counts
  • `sync-dex-liquidity` records one aggregate DexScreener fallback outcome per run, so target-level failures or budget exhaustion cannot trip a source breaker multiple times in one run
Details

Impact Notes

  • `dexscreener-prices` now protects only the exact token-address stablecoin pricing fallback
  • `dexscreener-liquidity` protects optional DEX liquidity and discovery pool lookups and is excluded from public-impact breaker counts
  • `sync-dex-liquidity` records one aggregate DexScreener fallback outcome per run, so target-level failures or budget exhaustion cannot trip a source breaker multiple times in one run
Commit provenance not recorded
    v6.14Jun 6, 2026

    Depeg-sized hard-corroborated DEX replacement

    Pool challenge can now replace a depeg-sized soft consensus price when a high-TVL DEX protocol median agrees with a hard primary candidate.

    • The single-protocol replacement exception no longer requires the published soft result itself to be inside the peg depeg threshold
    • The replacement still requires at least $5M of protocol-level DEX TVL, depeg-sized DEX evidence, material divergence from the published soft result, and hard market/oracle/protocol candidate agreement
    • Uncorroborated single-protocol divergence, same-protocol noisy pools, and incoherent cross-protocol DEX prices still preserve the original price while downgrading confidence
    Details

    Impact Notes

    • The single-protocol replacement exception no longer requires the published soft result itself to be inside the peg depeg threshold
    • The replacement still requires at least $5M of protocol-level DEX TVL, depeg-sized DEX evidence, material divergence from the published soft result, and hard market/oracle/protocol candidate agreement
    • Uncorroborated single-protocol divergence, same-protocol noisy pools, and incoherent cross-protocol DEX prices still preserve the original price while downgrading confidence
    Commit provenance not recorded
      v6.13Jun 6, 2026

      RedStone stablecoin-id attribution

      RedStone oracle quotes are now attributed by configured canonical stablecoin id before primary consensus, preventing same-symbol assets from sharing one hard-oracle feed.

      • Each `REDSTONE_SYMBOL_CONFIG` entry declares the stablecoin id that may consume that feed
      • Consensus looks up RedStone quotes by stablecoin id, not by bare asset symbol
      • The live RedStone `USDH` feed is pinned to Native Markets USDH because its source set is Hyperliquid/HypEVM-specific, so Hubble USDH no longer receives that quote
      Details

      Impact Notes

      • Each `REDSTONE_SYMBOL_CONFIG` entry declares the stablecoin id that may consume that feed
      • Consensus looks up RedStone quotes by stablecoin id, not by bare asset symbol
      • The live RedStone `USDH` feed is pinned to Native Markets USDH because its source set is Hyperliquid/HypEVM-specific, so Hubble USDH no longer receives that quote
      Commit provenance not recorded
        v6.12Jun 5, 2026

        High-TVL directional DEX pool challenge

        Pool challenge can now replace a recovered soft consensus price when multiple high-TVL DEX protocol medians coherently show the same depeg direction.

        • The standard replacement path still replaces when at least two protocol medians diverge beyond the peg-aware pool threshold
        • A high-TVL multi-protocol path now also replaces a near-peg soft result when at least two protocol medians each carry at least $5M TVL, cross the peg depeg threshold in the same direction, diverge from the soft result by at least the depeg threshold, and agree with each other inside the existing pool-challenge bps band
        • The single-protocol exception remains hard-corroborated only; same-protocol noisy-pool protection and incoherent cross-protocol prices still preserve the original price while downgrading confidence
        Details

        Impact Notes

        • The standard replacement path still replaces when at least two protocol medians diverge beyond the peg-aware pool threshold
        • A high-TVL multi-protocol path now also replaces a near-peg soft result when at least two protocol medians each carry at least $5M TVL, cross the peg depeg threshold in the same direction, diverge from the soft result by at least the depeg threshold, and agree with each other inside the existing pool-challenge bps band
        • The single-protocol exception remains hard-corroborated only; same-protocol noisy-pool protection and incoherent cross-protocol prices still preserve the original price while downgrading confidence
        Commit provenance not recorded
          v6.11Jun 5, 2026

          High-TVL hard-corroborated pool challenge

          Pool challenge can now replace a recovered soft consensus price when a high-TVL DEX protocol median is depeg-sized and agrees with a hard primary candidate.

          • The standard replacement path still requires at least two independent diverging DEX protocols
          • A single-protocol replacement is now allowed only when the protocol median carries at least the existing $5M high-TVL threshold, the published price is still inside the peg depeg threshold, and a hard market/oracle/protocol candidate agrees with that DEX mark
          • This keeps same-protocol noisy-pool protection while allowing APXUSD-style Curve on-chain plus Curve DEX evidence to override a near-peg soft cluster
          Details

          Impact Notes

          • The standard replacement path still requires at least two independent diverging DEX protocols
          • A single-protocol replacement is now allowed only when the protocol median carries at least the existing $5M high-TVL threshold, the published price is still inside the peg depeg threshold, and a hard market/oracle/protocol candidate agrees with that DEX mark
          • This keeps same-protocol noisy-pool protection while allowing APXUSD-style Curve on-chain plus Curve DEX evidence to override a near-peg soft cluster
          Commit provenance not recorded
            v6.09May 24, 2026

            Weak address-provider depeg quarantine

            Single-source fallback/search-family address quotes can no longer publish fixed-peg depeg-sized prices without corroboration.

            • Exact-address augmentation can still fill or corroborate near-peg prices for thin assets
            • A fallback/search-family source such as CoinGecko Onchain address pricing is rejected when it is at least 500 bps from a fixed peg and no stronger source corroborates the move
            • Rejected weak address-provider candidates fall through to later enrichment, allowing exact DefiLlama contract fallback to repair assets such as Tangent USG when that contract quote remains near peg
            Details

            Impact Notes

            • Exact-address augmentation can still fill or corroborate near-peg prices for thin assets
            • A fallback/search-family source such as CoinGecko Onchain address pricing is rejected when it is at least 500 bps from a fixed peg and no stronger source corroborates the move
            • Rejected weak address-provider candidates fall through to later enrichment, allowing exact DefiLlama contract fallback to repair assets such as Tangent USG when that contract quote remains near peg
            Commit provenance not recorded
              v6.08May 24, 2026

              Scoped live-parent wrapper price repair

              Audited wrapper assets can use fresh high-confidence live parent prices even when the parent consensus includes address-derived providers.

              • sBOLD and yBOLD can publish ERC-4626 NAV prices from BOLD when BOLD's same-run consensus is fresh and high-confidence
              • KAST USDK and XO Cash can inherit fresh high-confidence wM pricing as scoped M0 extension units
              Details

              Impact Notes

              • sBOLD and yBOLD can publish ERC-4626 NAV prices from BOLD when BOLD's same-run consensus is fresh and high-confidence
              • KAST USDK and XO Cash can inherit fresh high-confidence wM pricing as scoped M0 extension units
              Commit provenance not recorded
                v6.07May 24, 2026

                Curated production price-gap closure

                Audited production gaps now recover through scoped CoinGecko, FX-par, and curated on-chain repair paths.

                • MNEE and VEUR join the allowlisted `coingecko-low-volume` fallback
                • CADD and Mento JPY/ZAR/XOF stables can use FX-par `protocol-redeem` pricing plus fail-closed on-chain zero-supply repair
                Details

                Impact Notes

                • MNEE and VEUR join the allowlisted `coingecko-low-volume` fallback
                • CADD and Mento JPY/ZAR/XOF stables can use FX-par `protocol-redeem` pricing plus fail-closed on-chain zero-supply repair
                Commit provenance not recorded
                  v6.06May 22, 2026

                  DexScreener symbol-search retirement

                  The last-resort DexScreener symbol-search fallback is retired after production probes showed Worker-side upstream refusals and no live price recoveries.

                  • `dexscreener-search` remains visible as a legacy circuit key, but new stablecoin sync runs no longer call `/latest/dex/search`
                  • DexScreener exact-address fallback remains available through the separate `dexscreener-prices` lane
                  • Addressless assets that cannot resolve through DefiLlama, CoinMarketCap, Jupiter, CoinGecko low-volume recovery, or an exact tracked deployment now remain explicitly missing instead of probing noisy symbol search
                  Details

                  Impact Notes

                  • `dexscreener-search` remains visible as a legacy circuit key, but new stablecoin sync runs no longer call `/latest/dex/search`
                  • DexScreener exact-address fallback remains available through the separate `dexscreener-prices` lane
                  • Addressless assets that cannot resolve through DefiLlama, CoinMarketCap, Jupiter, CoinGecko low-volume recovery, or an exact tracked deployment now remain explicitly missing instead of probing noisy symbol search
                  Commit provenance not recorded
                    v6.05May 20, 2026

                    DexScreener address breaker hardening

                    DexScreener exact-address primary augmentation is now explicit opt-in, and address-provider circuit accounting ignores blocked or locally skipped runs.

                    • `dexscreener-address` remains available as a weight-1 soft primary-consensus source when operators explicitly include it in `ADDRESS_PRICE_PROVIDERS_ENABLED`
                    • Unset address-provider configuration now defaults to DexPaprika plus configured key-backed providers, avoiding quarter-hourly calls to DexScreener's Cloudflare/WAF-protected public token endpoint
                    • Open address-provider circuits no longer accumulate additional failures from skipped blocked runs; only actual upstream attempts can fail the provider breaker
                    Details

                    Impact Notes

                    • `dexscreener-address` remains available as a weight-1 soft primary-consensus source when operators explicitly include it in `ADDRESS_PRICE_PROVIDERS_ENABLED`
                    • Unset address-provider configuration now defaults to DexPaprika plus configured key-backed providers, avoiding quarter-hourly calls to DexScreener's Cloudflare/WAF-protected public token endpoint
                    • Open address-provider circuits no longer accumulate additional failures from skipped blocked runs; only actual upstream attempts can fail the provider breaker
                    Commit provenance not recorded
                      v6.04May 18, 2026

                      DexScreener address augmentation throttle

                      DexScreener exact-address primary augmentation now limits itself to one token batch per stablecoin sync and stops immediately on hard upstream refusal.

                      • `dexscreener-address` remains a weight-1 soft primary-consensus source, but its public `/tokens/v1/{chain}/{addresses}` lane is now explicitly opportunistic under the 15-minute sync cadence
                      • A DexScreener `429` / Cloudflare 1015 response no longer causes the same sync run to send the remaining address batches, reducing repeated source-wide breaker opens
                      • Valid empty DexScreener token-batch responses still count as healthy coverage misses, so thin or unindexed addresses do not poison breaker state
                      Details

                      Impact Notes

                      • `dexscreener-address` remains a weight-1 soft primary-consensus source, but its public `/tokens/v1/{chain}/{addresses}` lane is now explicitly opportunistic under the 15-minute sync cadence
                      • A DexScreener `429` / Cloudflare 1015 response no longer causes the same sync run to send the remaining address batches, reducing repeated source-wide breaker opens
                      • Valid empty DexScreener token-batch responses still count as healthy coverage misses, so thin or unindexed addresses do not poison breaker state
                      Commit provenance not recorded
                        v6.03May 14, 2026

                        XOF secondary FX peg support

                        West African CFA franc pegs now have explicit XOF metadata, secondary daily FX references, chart reconciliation, and deterministic validation bounds.

                        • `xofm-mento` can be tracked as an active XOF-pegged stablecoin instead of being forced into OTHER or rejected by peg metadata validation
                        • `peggedXOF` uses the same dated `fawazahmed0/currency-api` secondary FX cadence as CNH, RUB, UAH, ARS, KGS, NGN, and VND for live sync, realtime fallbacks, and historical backfills
                        • Price validation now classifies XOF as `fiat_fx` with explicit USD/XOF hardcoded bounds for no-reference guardrails
                        • The CoinGecko native-peg lane remains disabled for XOF because CoinGecko does not currently expose a usable `xof` simple-price quote
                        Details

                        Impact Notes

                        • `xofm-mento` can be tracked as an active XOF-pegged stablecoin instead of being forced into OTHER or rejected by peg metadata validation
                        • `peggedXOF` uses the same dated `fawazahmed0/currency-api` secondary FX cadence as CNH, RUB, UAH, ARS, KGS, NGN, and VND for live sync, realtime fallbacks, and historical backfills
                        • Price validation now classifies XOF as `fiat_fx` with explicit USD/XOF hardcoded bounds for no-reference guardrails
                        • The CoinGecko native-peg lane remains disabled for XOF because CoinGecko does not currently expose a usable `xof` simple-price quote
                        Commit provenance not recorded
                          v6.02May 13, 2026

                          Derivative and redemption-par gap closure

                          Active assets with observable supply but missing market prices can now resolve through guarded parent inheritance, fee-adjusted redemption inheritance, or scoped redemption-par references.

                          • `m-m0` inherits the tracked `wm-m0` live price through the same trusted-parent gate used by downstream M0 extension units
                          • `weusd-picwe` inherits tracked `usdc-circle` pricing with the documented 1% redemption-fee haircut, so market cap reflects the bounded USDC exit rather than a missing secondary-market quote
                          • `sofid-sofi`, `usbd-bima`, and `usdq-quill` can publish nominal `protocol-redeem` USD parity when active supply is observable and the redemption path is already source-reviewed in the backstop registry
                          • `chfau-allunity` can publish `protocol-redeem` CHF parity only when the current CHF/USD FX reference is fresh or static; stale or absent FX data fails closed
                          Details

                          Impact Notes

                          • `m-m0` inherits the tracked `wm-m0` live price through the same trusted-parent gate used by downstream M0 extension units
                          • `weusd-picwe` inherits tracked `usdc-circle` pricing with the documented 1% redemption-fee haircut, so market cap reflects the bounded USDC exit rather than a missing secondary-market quote
                          • `sofid-sofi`, `usbd-bima`, and `usdq-quill` can publish nominal `protocol-redeem` USD parity when active supply is observable and the redemption path is already source-reviewed in the backstop registry
                          • `chfau-allunity` can publish `protocol-redeem` CHF parity only when the current CHF/USD FX reference is fresh or static; stale or absent FX data fails closed
                          Commit provenance not recorded
                            v6.1May 24, 2026

                            DEX pricing source utilization expansion

                            Primary pricing now uses more of the existing DEX surface through additional hard Curve routes, Uniswap V3/V4 protocol lanes, restored aggregate fallback behavior, and low-depth exact-address/Jupiter augmentation.

                            • Hard Curve on-chain coverage now includes audited direct pools plus explicit opt-in one-hop and chained-hop routes that fail closed on missing dependencies or cycles
                            • `uniswap-v3-dex` and `uniswap-v4-dex` can enter consensus as soft DEX lanes when `dex_prices.price_sources_json` publishes corroborated protocol evidence
                            • `dex-promoted` is withheld only when a promoted protocol DEX lane is actually admitted, so rejected lone protocol candidates no longer suppress the aggregate DEX voice
                            • Exact-address providers prioritize missing and low-depth priced assets, report request-cap skips, and Jupiter can append bounded soft evidence to agreeing low-depth Solana prices without replacing the primary price
                            Details

                            Impact Notes

                            • Hard Curve on-chain coverage now includes audited direct pools plus explicit opt-in one-hop and chained-hop routes that fail closed on missing dependencies or cycles
                            • `uniswap-v3-dex` and `uniswap-v4-dex` can enter consensus as soft DEX lanes when `dex_prices.price_sources_json` publishes corroborated protocol evidence
                            • `dex-promoted` is withheld only when a promoted protocol DEX lane is actually admitted, so rejected lone protocol candidates no longer suppress the aggregate DEX voice
                            • Exact-address providers prioritize missing and low-depth priced assets, report request-cap skips, and Jupiter can append bounded soft evidence to agreeing low-depth Solana prices without replacing the primary price
                            Commit provenance not recorded
                              v6.01May 13, 2026

                              Composite-parent NAV inheritance freshness

                              Protocol-backed NAV wrappers can now inherit from fresh same-run high-confidence composite parent prices even when the composite's oldest component timestamp is older than one short-window source.

                              • `gtusdc-gauntlet` recovers its ERC-4626 `protocol-redeem` price from on-chain `convertToAssets(1 share)` times the tracked `usdc-circle` parent instead of publishing a weak DEX/GeckoTerminal market price
                              • The fallback applies only to replay-safe composite parents with a fresh `priceSyncedAt`; low-confidence, stale-sync, cached, single-source, or non-replay-safe parent prices still cannot upgrade into child `protocol-redeem` prices
                              • The CoinGecko drift status comparison explicitly ignores frozen archive rows, so discontinued assets such as BUCK do not dominate the active price-drift watchlist
                              Details

                              Impact Notes

                              • `gtusdc-gauntlet` recovers its ERC-4626 `protocol-redeem` price from on-chain `convertToAssets(1 share)` times the tracked `usdc-circle` parent instead of publishing a weak DEX/GeckoTerminal market price
                              • The fallback applies only to replay-safe composite parents with a fresh `priceSyncedAt`; low-confidence, stale-sync, cached, single-source, or non-replay-safe parent prices still cannot upgrade into child `protocol-redeem` prices
                              • The CoinGecko drift status comparison explicitly ignores frozen archive rows, so discontinued assets such as BUCK do not dominate the active price-drift watchlist
                              Commit provenance not recorded
                                v6.0May 13, 2026

                                Moralis quota-bounded exact-address augmentation

                                Moralis exact-address augmentation now uses the documented 100-token batch size and a smaller per-run request cap so the 15-minute sync cadence stays inside the provider's free daily compute-unit envelope.

                                • `moralis-address` remains a weight-1 soft primary-consensus candidate and is still optional through `ADDRESS_PRICE_PROVIDERS_ENABLED`
                                • The Moralis pass is capped at 3 batch requests per sync, down from 10 smaller batches, reducing worst-case daily usage from about 96k CUs/day to about 28.8k CUs/day at the current 15-minute cadence
                                • CoinGecko-only detail pages now record circuit health from upstream transport success instead of stale or empty per-asset history, so expected history gaps fall back to local supply history without opening the source-wide breaker
                                Details

                                Impact Notes

                                • `moralis-address` remains a weight-1 soft primary-consensus candidate and is still optional through `ADDRESS_PRICE_PROVIDERS_ENABLED`
                                • The Moralis pass is capped at 3 batch requests per sync, down from 10 smaller batches, reducing worst-case daily usage from about 96k CUs/day to about 28.8k CUs/day at the current 15-minute cadence
                                • CoinGecko-only detail pages now record circuit health from upstream transport success instead of stale or empty per-asset history, so expected history gaps fall back to local supply history without opening the source-wide breaker
                                Commit provenance not recorded
                                  v5.99May 12, 2026

                                  Free exact-address price augmentation

                                  Targeted exact-address price providers now augment primary consensus for assets with missing prices or below-target source depth, using only free/no-payment lanes and canonical chain-address identity.

                                  • DexScreener exact token endpoint, DexPaprika, GeckoTerminal simple token prices, Alchemy Prices, Moralis token prices, and Birdeye Solana prices can contribute weight-1 soft primary-consensus candidates
                                  • Targets are built only from canonical `asset.address`, `contracts`, or `tradedContracts` metadata and require exact chain+address identity; symbol search remains confined to the existing final DexScreener fallback pass
                                  • `ADDRESS_PRICE_PROVIDERS_ENABLED` can restrict or disable the provider set, while unset auto-enables no-key providers plus configured key-backed providers
                                  • The new sources are non-replay-safe and non-depeg-authoritative on their own, so they improve source depth without weakening depeg confirmation rules
                                  Details

                                  Impact Notes

                                  • DexScreener exact token endpoint, DexPaprika, GeckoTerminal simple token prices, Alchemy Prices, Moralis token prices, and Birdeye Solana prices can contribute weight-1 soft primary-consensus candidates
                                  • Targets are built only from canonical `asset.address`, `contracts`, or `tradedContracts` metadata and require exact chain+address identity; symbol search remains confined to the existing final DexScreener fallback pass
                                  • `ADDRESS_PRICE_PROVIDERS_ENABLED` can restrict or disable the provider set, while unset auto-enables no-key providers plus configured key-backed providers
                                  • The new sources are non-replay-safe and non-depeg-authoritative on their own, so they improve source depth without weakening depeg confirmation rules
                                  Commit provenance not recorded
                                    v5.98May 12, 2026

                                    Live-reserve NAV primary pricing

                                    Matched live-reserve NAV snapshots can now enter primary consensus as hard protocol price sources, Curve joins promoted DEX protocol lanes, and Binance stable-quoted BFUSD markets convert through tracked USD quote pairs.

                                    • `chainlink-nav` and `superstate-liquidity` are registered primary-consensus sources that read authoritative reserve_composition rows matched to reserve_sync_state success timestamps
                                    • USD-denominated NAV rows publish directly, while non-USD NAV rows such as EUTBL convert through fresh/static FX references before entering USD consensus
                                    • `curve-dex` can now promote retained Curve DEX evidence from `dex_prices.price_sources_json`; the aggregate `dex-promoted` lane is still withheld whenever a promoted protocol lane exists
                                    • Binance `BFUSDUSDT` and `BFUSDUSDC` markets convert through tracked USDT/USDC USD pairs, and Binance-derived DEX aggregate rows are suppressed when the direct Binance hard-market source is already present
                                    Details

                                    Impact Notes

                                    • `chainlink-nav` and `superstate-liquidity` are registered primary-consensus sources that read authoritative reserve_composition rows matched to reserve_sync_state success timestamps
                                    • USD-denominated NAV rows publish directly, while non-USD NAV rows such as EUTBL convert through fresh/static FX references before entering USD consensus
                                    • `curve-dex` can now promote retained Curve DEX evidence from `dex_prices.price_sources_json`; the aggregate `dex-promoted` lane is still withheld whenever a promoted protocol lane exists
                                    • Binance `BFUSDUSDT` and `BFUSDUSDC` markets convert through tracked USDT/USDC USD pairs, and Binance-derived DEX aggregate rows are suppressed when the direct Binance hard-market source is already present
                                    • `usyc-hashnote` and `ustb-superstate` now carry verified Pyth feed metadata, and `syrupusdc-maple` includes Maple's verified Solana syrupUSDC mint for DEX discovery coverage
                                    Commit provenance not recorded
                                      v5.97May 12, 2026

                                      Registry source-family normalization

                                      Pricing source registry entries now carry explicit depeg source-family metadata, composite source labels are normalized before downstream policy checks, and seven verified Pyth feed IDs expand coverage through the existing hard-oracle lane.

                                      • Replay safety, pool-challenge eligibility, fallback-only classification, depeg authority, and severe-downside corroboration now expand composite labels such as `coingecko+geckoterminal` before applying source policy
                                      • CoinGecko-family and DefiLlama-family variants collapse for independence checks, CoinMarketCap and DefiLlama contract fallback are treated as list aggregators, and fallback/search lanes remain non-authoritative
                                      • Promoted DEX protocol lanes keep protocol-specific `dex:*` families instead of collapsing into one generic DEX family
                                      • `susds-sky`, `susde-ethena`, `syrupusdt-maple`, `sdai-sky`, `thbill-theo`, `usdv-solomon`, and `usdxl-last` now have verified Pyth feed metadata for the existing Pyth Hermes source path
                                      Details

                                      Impact Notes

                                      • Replay safety, pool-challenge eligibility, fallback-only classification, depeg authority, and severe-downside corroboration now expand composite labels such as `coingecko+geckoterminal` before applying source policy
                                      • CoinGecko-family and DefiLlama-family variants collapse for independence checks, CoinMarketCap and DefiLlama contract fallback are treated as list aggregators, and fallback/search lanes remain non-authoritative
                                      • Promoted DEX protocol lanes keep protocol-specific `dex:*` families instead of collapsing into one generic DEX family
                                      • `susds-sky`, `susde-ethena`, `syrupusdt-maple`, `sdai-sky`, `thbill-theo`, `usdv-solomon`, and `usdxl-last` now have verified Pyth feed metadata for the existing Pyth Hermes source path
                                      • The source-depth audit script measures candidate, agreeing, and depeg-authoritative source distributions without changing live pricing selection
                                      Commit provenance not recorded
                                        v5.96May 12, 2026

                                        Yearn yBOLD NAV wrapper pricing

                                        Yearn yBOLD is now tracked as a first-class BOLD strategy-vault variant and prices through the existing guarded ERC-4626 NAV lane.

                                        • `ybold-yearn` is admitted through Ethereum on-chain total supply and publishes `protocol-redeem` pricing from `convertToAssets(1 share)` multiplied by the tracked `bold-liquity` parent price
                                        • `sbold-k3-capital` and `ybold-yearn` are both covered by regression tests for BOLD-derived ERC-4626 NAV pricing
                                        • The parent-trust gate, parent provenance metadata, and 0.5-10.0 share-to-asset bounds remain unchanged
                                        Details

                                        Impact Notes

                                        • `ybold-yearn` is admitted through Ethereum on-chain total supply and publishes `protocol-redeem` pricing from `convertToAssets(1 share)` multiplied by the tracked `bold-liquity` parent price
                                        • `sbold-k3-capital` and `ybold-yearn` are both covered by regression tests for BOLD-derived ERC-4626 NAV pricing
                                        • The parent-trust gate, parent provenance metadata, and 0.5-10.0 share-to-asset bounds remain unchanged
                                        Commit provenance not recorded
                                          v5.95May 12, 2026

                                          Low-volume CoinGecko fallback for DL-listed gaps

                                          Selected DefiLlama-listed stablecoins with null DL prices can now recover through the existing relaxed CoinGecko low-volume lane while keeping DefiLlama as the supply source.

                                          • `usp-pareto-credit` and `tryb-bilira` can use `coingecko-low-volume` fallback pricing when CoinGecko has a positive row inside the relaxed low-volume freshness window and all earlier missing-price passes fail
                                          • The recovery is explicitly allowlisted, keeps `priceConfidence: fallback`, and does not change the strict primary CoinGecko freshness gate
                                          • DefiLlama supply rows remain authoritative for these assets; the new pass only fills missing price provenance and cannot overwrite an already-published primary price
                                          Details

                                          Impact Notes

                                          • `usp-pareto-credit` and `tryb-bilira` can use `coingecko-low-volume` fallback pricing when CoinGecko has a positive row inside the relaxed low-volume freshness window and all earlier missing-price passes fail
                                          • The recovery is explicitly allowlisted, keeps `priceConfidence: fallback`, and does not change the strict primary CoinGecko freshness gate
                                          • DefiLlama supply rows remain authoritative for these assets; the new pass only fills missing price provenance and cannot overwrite an already-published primary price
                                          Commit provenance not recorded
                                            v5.94May 12, 2026

                                            Zephyr Scanner supplemental pricing

                                            ZSD and ZYS now use Zephyr Scanner live-stats telemetry for official native-chain supply, with ZYS also using the protocol-published NAV price because no CoinGecko or DefiLlama market row exists for the yield-share wrapper.

                                            • `zsd-zephyr-protocol` keeps CoinGecko as the preferred market price when available, but its circulating supply is sourced from Zephyr's official `zsd_circ` value instead of CoinGecko market cap
                                            • `zys-zephyr-protocol` is admitted through the supplemental Zephyr Scanner path using official ZYS circulation and share price, so the yield wrapper can appear in `/api/stablecoins` without a supported chain contract
                                            • `zephyr-scanner` is registered as an explicit pricing source with no dedicated breaker; the fetch remains scoped to the supplemental Zephyr asset path
                                            Details

                                            Impact Notes

                                            • `zsd-zephyr-protocol` keeps CoinGecko as the preferred market price when available, but its circulating supply is sourced from Zephyr's official `zsd_circ` value instead of CoinGecko market cap
                                            • `zys-zephyr-protocol` is admitted through the supplemental Zephyr Scanner path using official ZYS circulation and share price, so the yield wrapper can appear in `/api/stablecoins` without a supported chain contract
                                            • `zephyr-scanner` is registered as an explicit pricing source with no dedicated breaker; the fetch remains scoped to the supplemental Zephyr asset path
                                            Commit provenance not recorded
                                              v5.93May 12, 2026

                                              Jupiter sparse response breaker accounting

                                              Jupiter V3 sparse no-quote rows now count as healthy empty coverage instead of malformed provider responses, preventing unsupported tracked Solana mints from opening the fallback breaker.

                                              • `jupiter-prices` still records failures for non-OK responses and malformed envelopes, but decimals-only rows for unsupported mints no longer open the circuit
                                              • Quoted rows still require `usdPrice`, `decimals`, fresh `blockId`, optional liquidity gating, and peg-aware validation before a price can be accepted
                                              Details

                                              Impact Notes

                                              • `jupiter-prices` still records failures for non-OK responses and malformed envelopes, but decimals-only rows for unsupported mints no longer open the circuit
                                              • Quoted rows still require `usdPrice`, `decimals`, fresh `blockId`, optional liquidity gating, and peg-aware validation before a price can be accepted
                                              Commit provenance not recorded
                                                v5.92May 12, 2026

                                                Expanded NAV-wrapper authoritative pricing

                                                Expanded protocol-backed authoritative pricing to newly tracked NAV wrappers, added tracked-base inheritance for Initia iUSD and Movement USDCx, and admitted Spark Savings USDC through curated on-chain supplemental supply before pricing overrides run.

                                                • `susdc-spark`, `gtusdcp-gauntlet`, `steakusdt-steakhouse`, `steakusdc-steakhouse`, `srusde-strata`, `savusd-avant`, `susn-noon`, and `syzusd-yuzu` now use guarded ERC-4626 `convertToAssets(1 share)` pricing when their tracked parent assets are fresh and replay-safe
                                                • `iusd-initia` now inherits tracked `ausd-agora` pricing, `usdcx-movement` inherits tracked `usdc-circle` pricing, and `sgho-aave` uses a protocol-specific `previewRedeem(uint256)` quote against tracked `gho-aave`
                                                • `susdc-spark` can now appear in the stablecoins sync even without a DefiLlama or CoinGecko market row by using curated Ethereum vault supply, after which the authoritative NAV override supplies the live price
                                                • Existing parent-trust gates, parent provenance metadata, and NAV ratio bounds are unchanged
                                                Details

                                                Impact Notes

                                                • `susdc-spark`, `gtusdcp-gauntlet`, `steakusdt-steakhouse`, `steakusdc-steakhouse`, `srusde-strata`, `savusd-avant`, `susn-noon`, and `syzusd-yuzu` now use guarded ERC-4626 `convertToAssets(1 share)` pricing when their tracked parent assets are fresh and replay-safe
                                                • `iusd-initia` now inherits tracked `ausd-agora` pricing, `usdcx-movement` inherits tracked `usdc-circle` pricing, and `sgho-aave` uses a protocol-specific `previewRedeem(uint256)` quote against tracked `gho-aave`
                                                • `susdc-spark` can now appear in the stablecoins sync even without a DefiLlama or CoinGecko market row by using curated Ethereum vault supply, after which the authoritative NAV override supplies the live price
                                                • Existing parent-trust gates, parent provenance metadata, and NAV ratio bounds are unchanged
                                                Commit provenance not recorded
                                                  v5.91May 12, 2026

                                                  Post-probe authoritative override refresh

                                                  Recomputed protocol-backed authoritative price overrides after fallback enrichment and GeckoTerminal probing so newly trusted parent prices can unlock dependent wrapper prices in the same sync run.

                                                  • `usdk-kast` and `xo-exodus` can recover from `priceSource: missing` when `wm-m0` becomes a fresh high-confidence parent through primary consensus or GeckoTerminal probing during the same run
                                                  • The parent-trust guard remains unchanged: low-confidence, stale, cached, or non-replay-safe parent prices still cannot upgrade into `protocol-redeem` child prices
                                                  • The earlier pre-enrichment override pass is retained, but the final completion pass no longer reuses its stale override map after source enrichment has changed asset prices
                                                  Details

                                                  Impact Notes

                                                  • `usdk-kast` and `xo-exodus` can recover from `priceSource: missing` when `wm-m0` becomes a fresh high-confidence parent through primary consensus or GeckoTerminal probing during the same run
                                                  • The parent-trust guard remains unchanged: low-confidence, stale, cached, or non-replay-safe parent prices still cannot upgrade into `protocol-redeem` child prices
                                                  • The earlier pre-enrichment override pass is retained, but the final completion pass no longer reuses its stale override map after source enrichment has changed asset prices
                                                  Commit provenance not recorded
                                                    v5.09May 12, 2026

                                                    Addressless DexScreener exact fallback from tracked metadata

                                                    Extended DexScreener exact fallback to use curated tracked contract metadata when an upstream stablecoin row has no address, while preserving exact-address pricing, liquidity floors, and peg-aware validation.

                                                    • `usx-dforce` can now recover from `priceSource: missing` through its tracked Base USX contract when DexScreener publishes a sufficiently liquid exact-address market
                                                    • The change does not use stale CoinGecko rows and does not enable symbol search when exact tracked contracts exist
                                                    • Metadata-derived DexScreener targets require the tracked-token symbol in the matched pool to equal the asset symbol, preventing wrapper quotes such as `cUSDO` from being accepted for `USDO`
                                                    • Existing upstream-provided addresses still take precedence; tracked metadata contracts are only used for addressless rows
                                                    Details

                                                    Impact Notes

                                                    • `usx-dforce` can now recover from `priceSource: missing` through its tracked Base USX contract when DexScreener publishes a sufficiently liquid exact-address market
                                                    • The change does not use stale CoinGecko rows and does not enable symbol search when exact tracked contracts exist
                                                    • Metadata-derived DexScreener targets require the tracked-token symbol in the matched pool to equal the asset symbol, preventing wrapper quotes such as `cUSDO` from being accepted for `USDO`
                                                    • Existing upstream-provided addresses still take precedence; tracked metadata contracts are only used for addressless rows
                                                    Commit provenance not recorded
                                                      v5.08May 12, 2026

                                                      DefiLlama EVM contract fallback casing normalization

                                                      Normalized EVM address casing before DefiLlama `/coins` contract fallback lookups so checksummed metadata addresses match lower-case upstream price keys without weakening token identity checks.

                                                      • `usg-tangent` can now recover from `priceSource: missing` when DefiLlama publishes the live USG contract quote under a lower-case EVM address
                                                      • The DefiLlama fallback still requires exact quote-symbol agreement, so unrelated symbols such as `stkGHO` are not accepted for `sgho-aave`
                                                      • Non-EVM identifiers, including Solana mints, keep their original case because those addresses are case-sensitive
                                                      Details

                                                      Impact Notes

                                                      • `usg-tangent` can now recover from `priceSource: missing` when DefiLlama publishes the live USG contract quote under a lower-case EVM address
                                                      • The DefiLlama fallback still requires exact quote-symbol agreement, so unrelated symbols such as `stkGHO` are not accepted for `sgho-aave`
                                                      • Non-EVM identifiers, including Solana mints, keep their original case because those addresses are case-sensitive
                                                      Commit provenance not recorded
                                                        v5.07May 12, 2026

                                                        Idle CDO virtualPrice authoritative price provider

                                                        Added an Idle Perpetual Yield Tranches authoritative price provider that reads `virtualPrice(address tranche)` on the CDO contract and multiplies the resulting underlying-denominated NAV by the tracked parent asset's live price.

                                                        • `aa-falconx-mev-capital` now publishes a `protocol-redeem` high-confidence NAV from the CDO `virtualPrice` reading and the tracked `usdc-circle` parent price, instead of staying at `priceSource: missing`
                                                        • The provider reuses the shared parent-trust gating, parent provenance metadata, and 0.5–10.0 NAV bound from the ERC-4626 NAV lane so untrusted, stale, or degenerate quotes cannot upgrade into a high-confidence child price
                                                        Details

                                                        Impact Notes

                                                        • `aa-falconx-mev-capital` now publishes a `protocol-redeem` high-confidence NAV from the CDO `virtualPrice` reading and the tracked `usdc-circle` parent price, instead of staying at `priceSource: missing`
                                                        • The provider reuses the shared parent-trust gating, parent provenance metadata, and 0.5–10.0 NAV bound from the ERC-4626 NAV lane so untrusted, stale, or degenerate quotes cannot upgrade into a high-confidence child price
                                                        Commit provenance not recorded
                                                          v5.06May 12, 2026

                                                          ERC-4626 NAV authoritative price provider

                                                          Added a generic ERC-4626 NAV authoritative price provider that prices wrapper vault tokens from on-chain `convertToAssets(1 share)` times the tracked parent's live price, replacing missing-price publication for navToken vaults whose parents already price through consensus.

                                                          • `susdt-spark`, `gtusdc-gauntlet`, `yvusdc-yearn`, `stkgho-umbrella-aave`, and `sbold-k3-capital` now publish a `protocol-redeem` high-confidence price derived from the standard ERC-4626 `convertToAssets(uint256)` selector and the tracked parent asset price
                                                          • Each vault override carries the parent provenance metadata (source, confidence, observed-at, replay-safety) the same way the inherited tracked-base lane already does
                                                          • The provider rejects on-chain quotes outside a 0.5–10.0 share-to-asset bound to prevent silent regressions if the vault contract migrates or returns degenerate data
                                                          • Parent-trust gating is shared with the existing inherited-base lane, so low-confidence, stale, cached, or fallback parents cannot upgrade into a high-confidence child vault price
                                                          Details

                                                          Impact Notes

                                                          • `susdt-spark`, `gtusdc-gauntlet`, `yvusdc-yearn`, `stkgho-umbrella-aave`, and `sbold-k3-capital` now publish a `protocol-redeem` high-confidence price derived from the standard ERC-4626 `convertToAssets(uint256)` selector and the tracked parent asset price
                                                          • Each vault override carries the parent provenance metadata (source, confidence, observed-at, replay-safety) the same way the inherited tracked-base lane already does
                                                          • The provider rejects on-chain quotes outside a 0.5–10.0 share-to-asset bound to prevent silent regressions if the vault contract migrates or returns degenerate data
                                                          • Parent-trust gating is shared with the existing inherited-base lane, so low-confidence, stale, cached, or fallback parents cannot upgrade into a high-confidence child vault price
                                                          Commit provenance not recorded
                                                            v5.05May 11, 2026

                                                            Authenticated Jupiter gateway support

                                                            The Solana fallback pass can now send a configured Jupiter API key to the official Price API V3 gateway while preserving the same response validation and downstream peg checks.

                                                            • Operators can set `JUPITER_API_KEY` so Worker-side Jupiter fallback requests include the required `x-api-key` header for `api.jup.ag`
                                                            • The fallback still only applies to tracked Solana mints that remain missing after primary consensus, authoritative overrides, DefiLlama contract lookup, and CoinMarketCap enrichment
                                                            • Jupiter responses continue to require documented V3 quote fields, fresh block context, and peg-aware plausibility validation before a price is accepted
                                                            Details

                                                            Impact Notes

                                                            • Operators can set `JUPITER_API_KEY` so Worker-side Jupiter fallback requests include the required `x-api-key` header for `api.jup.ag`
                                                            • The fallback still only applies to tracked Solana mints that remain missing after primary consensus, authoritative overrides, DefiLlama contract lookup, and CoinMarketCap enrichment
                                                            • Jupiter responses continue to require documented V3 quote fields, fresh block context, and peg-aware plausibility validation before a price is accepted
                                                            Commit provenance not recorded
                                                              v5.04May 10, 2026

                                                              Source freshness and independent corroboration hardening

                                                              Centralized primary source freshness checks, made severe fixed-peg downside publication count independent source families, and hardened tracked-base authoritative inheritance so weak parent prices cannot become high-confidence protocol-redeem child prices.

                                                              • Bitstamp, Coinbase, oracle, Curve, CoinGecko-derived, and promoted DEX protocol candidates are rejected before primary admission when their timestamps are stale, invalid, missing where required, or future-skewed beyond the shared freshness ceiling
                                                              • Promoted DEX protocol lanes are freshness-checked per lane, so a fresh parent dex_prices row cannot carry stale protocol-level sources into consensus
                                                              • Severe fixed-peg downside publication now requires independent source-family corroboration; correlated CoinGecko plus DefiLlama-list evidence no longer satisfies the guardrail on its own
                                                              • Tracked-base authoritative inheritance now requires a fresh, replay-safe, high-confidence or explicitly authoritative parent and carries parent provenance through accepted overrides
                                                              Details

                                                              Impact Notes

                                                              • Bitstamp, Coinbase, oracle, Curve, CoinGecko-derived, and promoted DEX protocol candidates are rejected before primary admission when their timestamps are stale, invalid, missing where required, or future-skewed beyond the shared freshness ceiling
                                                              • Promoted DEX protocol lanes are freshness-checked per lane, so a fresh parent dex_prices row cannot carry stale protocol-level sources into consensus
                                                              • Severe fixed-peg downside publication now requires independent source-family corroboration; correlated CoinGecko plus DefiLlama-list evidence no longer satisfies the guardrail on its own
                                                              • Tracked-base authoritative inheritance now requires a fresh, replay-safe, high-confidence or explicitly authoritative parent and carries parent provenance through accepted overrides
                                                              • The methodology now documents the existing trust-tier-first low-confidence selector and upper-middle median estimator for even-sized clusters
                                                              Commit provenance not recorded
                                                                v5.03May 5, 2026

                                                                DEX source telemetry and direct-API fetch hardening

                                                                Added structured DEX source skip reasons, a compact DEX source-confidence profile on published stablecoin prices, bounded direct-API protocol fetch concurrency, shared timeout/pagination hard stops, and per-run source-summary dimensions for direct-API and staged-pool merge diagnostics.

                                                                • DEX bridge source drops are now explainable by stale row, malformed JSON, missing registry mapping, below-threshold TVL, or lack of corroboration without changing the existing admission gates
                                                                • DEX-inclusive stablecoin prices can carry active protocol-lane count, freshest DEX lane age, and aggregate-only reliance through priceSourceConfidenceProfile
                                                                • Direct DEX API fetches now share a 15-second request timeout, run independent protocol fetches with concurrency 2, and emit resume markers when deterministic page caps are reached
                                                                • Direct-API and staged-pool merge metadata now count accepted protocol-chain lanes and excluded rows by reason, protocol, chain, threshold, and identity conflict
                                                                Details

                                                                Impact Notes

                                                                • DEX bridge source drops are now explainable by stale row, malformed JSON, missing registry mapping, below-threshold TVL, or lack of corroboration without changing the existing admission gates
                                                                • DEX-inclusive stablecoin prices can carry active protocol-lane count, freshest DEX lane age, and aggregate-only reliance through priceSourceConfidenceProfile
                                                                • Direct DEX API fetches now share a 15-second request timeout, run independent protocol fetches with concurrency 2, and emit resume markers when deterministic page caps are reached
                                                                • Direct-API and staged-pool merge metadata now count accepted protocol-chain lanes and excluded rows by reason, protocol, chain, threshold, and identity conflict
                                                                Commit provenance not recorded
                                                                  v5.02May 5, 2026

                                                                  ARS, KGS, and NGN non-USD peg hardening

                                                                  Added the latest non-USD peg batch to the same guarded fiat pricing lanes as the earlier fiat expansion: ARS and NGN participate in direct CoinGecko native-peg corroboration where supported, KGS and NGN use secondary daily FX mirrors, and lower-nominal fiat pegs have explicit hardcoded validation bounds when no fresh FX reference is available.

                                                                  • WARS (ARS) and cNGN (NGN) can validate weak live USD marks against direct native-peg and daily FX references, while KGST (KGS) uses daily FX references plus deterministic bounds because CoinGecko does not expose a native KGS quote
                                                                  • KGS and NGN use the same fawazahmed0 secondary FX cadence semantics as CNH, RUB, UAH, and ARS for live sync and historical backfills
                                                                  • MYR, KRW, KGS, and NGN now retain deterministic fallback price bounds even during no-reference validation paths
                                                                  • Direct-API protocol DEX bridges (Meteora, PancakeSwap, Aerodrome Slipstream, Velodrome Slipstream) now register as first-class soft-DEX pricing families (`meteora-dex`, `pancakeswap-dex`, `aerodrome-dex`, `velodrome-dex`) so they can contribute directly to primary consensus when promoted
                                                                  Details

                                                                  Impact Notes

                                                                  • WARS (ARS) and cNGN (NGN) can validate weak live USD marks against direct native-peg and daily FX references, while KGST (KGS) uses daily FX references plus deterministic bounds because CoinGecko does not expose a native KGS quote
                                                                  • KGS and NGN use the same fawazahmed0 secondary FX cadence semantics as CNH, RUB, UAH, and ARS for live sync and historical backfills
                                                                  • MYR, KRW, KGS, and NGN now retain deterministic fallback price bounds even during no-reference validation paths
                                                                  • Direct-API protocol DEX bridges (Meteora, PancakeSwap, Aerodrome Slipstream, Velodrome Slipstream) now register as first-class soft-DEX pricing families (`meteora-dex`, `pancakeswap-dex`, `aerodrome-dex`, `velodrome-dex`) so they can contribute directly to primary consensus when promoted
                                                                  Commit provenance not recorded
                                                                    v5.01Apr 29, 2026

                                                                    MYR and KRW peg-currency support

                                                                    Added MYR (Malaysian Ringgit) and KRW (Korean Won) to the supported peg-currency set so MYRC and KRWQ can be tracked through the existing Frankfurter / fawazahmed0 / ExchangeRate-API FX lane and the CoinGecko native-peg corroboration lane.

                                                                    • FX cron requests MYR and KRW from Frankfurter and validates them against per-peg bounds
                                                                    • Native-peg implied-price lane corroborates MYR / KRW depegs via direct CoinGecko myr / krw quotes
                                                                    • Stablecoin charts reconciliation, price-validation classifyPegClass, and FX cadence metadata cover the new pegs
                                                                    Details

                                                                    Impact Notes

                                                                    • FX cron requests MYR and KRW from Frankfurter and validates them against per-peg bounds
                                                                    • Native-peg implied-price lane corroborates MYR / KRW depegs via direct CoinGecko myr / krw quotes
                                                                    • Stablecoin charts reconciliation, price-validation classifyPegClass, and FX cadence metadata cover the new pegs
                                                                    Commit provenance not recorded
                                                                      v5.0Apr 17, 2026

                                                                      Pricing pipeline comprehensive hardening

                                                                      Closed consistency gaps in pool-challenge replacement, tightened breaker discipline across all pricing fetchers, promoted Bitstamp/Coinbase/Curve to upstream-timestamped freshness, and exposed provider diagnostics on the operator status surface.

                                                                      • Pool challenge replacement now updates allPrices so severe-downside corroboration carry-through uses the replacement source
                                                                      • curve-oracle now enforces a 5-minute on-chain staleness guard using block timestamp and has its own circuit breaker
                                                                      • curve-onchain and Bitstamp / Coinbase now publish upstream-observed freshness instead of local-fetch
                                                                      • NAV tokens are no longer subject to pool-challenge downgrade / replacement
                                                                      Details

                                                                      Impact Notes

                                                                      • Pool challenge replacement now updates allPrices so severe-downside corroboration carry-through uses the replacement source
                                                                      • curve-oracle now enforces a 5-minute on-chain staleness guard using block timestamp and has its own circuit breaker
                                                                      • curve-onchain and Bitstamp / Coinbase now publish upstream-observed freshness instead of local-fetch
                                                                      • NAV tokens are no longer subject to pool-challenge downgrade / replacement
                                                                      • Cluster tiebreak now prefers hard-tier clusters over equal-weight soft-tier clusters before spread / peg proximity
                                                                      • Two-source clusters composed only of list-style aggregators (coingecko, defillama, defillama-list) are now downgraded to single-source regardless of which two combine, closing the CG+defillama-detail tautology
                                                                      • Replay cache enforces per-source max trusted age in addition to the composite 6-hour cap
                                                                      • DefiLlama /coins contract-price fallback and DexScreener dex-liquidity / dex-discovery fallbacks now gate on and record against their own circuit breakers
                                                                      • A lone promoted DEX protocol is admitted only when no non-DEX source exists, or when a hard market/oracle/protocol source agrees within threshold; two or more promoted DEX protocols are admitted as candidate sources before consensus determines agreement
                                                                      • Binance short-circuits to the secondary host on HTTP 5xx / 429 instead of retrying the first host
                                                                      • RedStone solo-retry is bounded to 5 requests per run and spaced to respect Worker connection budget
                                                                      • GT-probe evidence rejection downgrades the pre-GT primary to low-confidence when divergence was significant
                                                                      • Provider diagnostics and GT-probe statistics are now surfaced on /api/status for operator visibility
                                                                      Commit provenance not recorded
                                                                        v4.38Apr 15, 2026

                                                                        Corroborated severe-depeg pool challenge protection

                                                                        Pool challenge and temporal-jump validation can still downgrade or scrutinize a selected severe-depeg primary price, but they no longer replace or reject that price when multiple live candidate sources corroborate severe downside and at least one is depeg-authoritative.

                                                                        • Near-peg or stale DEX liquidity can no longer overwrite a severe depeg already corroborated by independent live candidates such as CoinGecko, DefiLlama-list, and Pyth
                                                                        • The same severe-downside candidate evidence satisfies the temporal-jump guard when the previous trusted price was near peg
                                                                        • The pool challenge remains active for weak or uncorroborated soft-source prices, and still replaces prices when independent DEX protocol medians are the only corroborating disagreement
                                                                        • USR now preserves the market price near the live CoinGecko/DefiLlama/Pyth severe-depeg level while marking the result low-confidence when DEX pools disagree
                                                                        Details

                                                                        Impact Notes

                                                                        • Near-peg or stale DEX liquidity can no longer overwrite a severe depeg already corroborated by independent live candidates such as CoinGecko, DefiLlama-list, and Pyth
                                                                        • The same severe-downside candidate evidence satisfies the temporal-jump guard when the previous trusted price was near peg
                                                                        • The pool challenge remains active for weak or uncorroborated soft-source prices, and still replaces prices when independent DEX protocol medians are the only corroborating disagreement
                                                                        • USR now preserves the market price near the live CoinGecko/DefiLlama/Pyth severe-depeg level while marking the result low-confidence when DEX pools disagree
                                                                        Commit provenance not recorded
                                                                          v4.37Apr 15, 2026

                                                                          Severe-depeg corroboration continuity through validation

                                                                          Primary severe-downside corroboration evidence is now preserved through the later prevalidation and post-enrichment validation passes when the selected primary price remains unchanged.

                                                                          • Low-confidence severe depeg prices can stay published when multiple live candidate sources independently confirm the downside even if they do not form a tight high-confidence cluster
                                                                          • The severe-downside guardrail is unchanged for genuinely single-source prices because candidate evidence is reused only when the current asset price, source, and confidence still match the primary result
                                                                          • Assets such as USR no longer flap to `N/A` after primary pricing accepted a corroborated severe depeg and a later generic validation pass lost the candidate-price evidence
                                                                          Details

                                                                          Impact Notes

                                                                          • Low-confidence severe depeg prices can stay published when multiple live candidate sources independently confirm the downside even if they do not form a tight high-confidence cluster
                                                                          • The severe-downside guardrail is unchanged for genuinely single-source prices because candidate evidence is reused only when the current asset price, source, and confidence still match the primary result
                                                                          • Assets such as USR no longer flap to `N/A` after primary pricing accepted a corroborated severe depeg and a later generic validation pass lost the candidate-price evidence
                                                                          Commit provenance not recorded
                                                                            v4.36Apr 15, 2026

                                                                            Blocked Binance host accounting

                                                                            Binance all-host 403/451 blocks from Worker egress are now treated as no-contribution provider blocks rather than source outages, while diagnostics keep the blocked endpoints visible.

                                                                            • When every attempted Binance host returns 403 or 451, the run records diagnostics but closes the source-wide breaker instead of escalating a persistent false outage
                                                                            • Binance contributes zero prices in that state, so consensus continues through Kraken, Bitstamp, Coinbase, Pyth, RedStone, Curve, DEX, CoinGecko, and DefiLlama inputs
                                                                            • Transport errors, server errors, malformed responses, or successful responses with zero tracked matches still follow the normal failure diagnostics path
                                                                            Details

                                                                            Impact Notes

                                                                            • When every attempted Binance host returns 403 or 451, the run records diagnostics but closes the source-wide breaker instead of escalating a persistent false outage
                                                                            • Binance contributes zero prices in that state, so consensus continues through Kraken, Bitstamp, Coinbase, Pyth, RedStone, Curve, DEX, CoinGecko, and DefiLlama inputs
                                                                            • Transport errors, server errors, malformed responses, or successful responses with zero tracked matches still follow the normal failure diagnostics path
                                                                            Commit provenance not recorded
                                                                              v4.35Apr 15, 2026

                                                                              No-candidate Jupiter breaker recovery

                                                                              Jupiter no-candidate runs now close stale-open breaker state without making an external health probe, reflecting that no eligible Solana fallback work remains after authoritative gating.

                                                                              • If authoritative pricing removes all Jupiter fallback candidates, the stale `jupiter-prices` breaker can recover without spending a provider request
                                                                              • The change prevents irrelevant provider-edge blocks from keeping the public circuit list open when Jupiter is not part of the current pricing path
                                                                              • Future eligible Jupiter fallback candidates still go through the normal circuit breaker and provider diagnostics path
                                                                              Details

                                                                              Impact Notes

                                                                              • If authoritative pricing removes all Jupiter fallback candidates, the stale `jupiter-prices` breaker can recover without spending a provider request
                                                                              • The change prevents irrelevant provider-edge blocks from keeping the public circuit list open when Jupiter is not part of the current pricing path
                                                                              • Future eligible Jupiter fallback candidates still go through the normal circuit breaker and provider diagnostics path
                                                                              Commit provenance not recorded
                                                                                v4.34Apr 15, 2026

                                                                                Binance host failover for Worker egress

                                                                                Added a Binance ticker host failover after production Worker diagnostics showed the market-data mirror returning HTTP 403 while local audits still saw healthy Binance USD pairs.

                                                                                • Binance pricing now tries `data-api.binance.vision` first and falls back to `api.binance.com` before recording the source as failed
                                                                                • Provider diagnostics preserve each attempted Binance endpoint so operators can see which host succeeded or failed
                                                                                • The change keeps the same tracked `USDTUSD` and `USDCUSD` market mappings and does not alter consensus weighting
                                                                                Details

                                                                                Impact Notes

                                                                                • Binance pricing now tries `data-api.binance.vision` first and falls back to `api.binance.com` before recording the source as failed
                                                                                • Provider diagnostics preserve each attempted Binance endpoint so operators can see which host succeeded or failed
                                                                                • The change keeps the same tracked `USDTUSD` and `USDCUSD` market mappings and does not alter consensus weighting
                                                                                Commit provenance not recorded
                                                                                  v4.33Apr 15, 2026

                                                                                  Jupiter official gateway fallback

                                                                                  Moved Jupiter fallback probes from the Lite gateway to the official Price API V3 gateway after Worker egress repeatedly received Cloudflare 403 block pages from the Lite host.

                                                                                  • Jupiter fallback and health probes now use `https://api.jup.ag/price/v3` instead of the Lite gateway
                                                                                  • The source-level circuit can recover through the same official V3 response shape already used by the fallback parser
                                                                                  • The fallback remains best-effort, liquidity-gated, and downstream of authoritative protocol-backed prices
                                                                                  Details

                                                                                  Impact Notes

                                                                                  • Jupiter fallback and health probes now use `https://api.jup.ag/price/v3` instead of the Lite gateway
                                                                                  • The source-level circuit can recover through the same official V3 response shape already used by the fallback parser
                                                                                  • The fallback remains best-effort, liquidity-gated, and downstream of authoritative protocol-backed prices
                                                                                  Commit provenance not recorded
                                                                                    v4.32Apr 14, 2026

                                                                                    Provider diagnostics and authoritative fallback gating

                                                                                    Pricing provider attempts now emit durable diagnostics, and authoritative live overrides are applied before fallback enrichment so known redeemable wrappers do not poison fallback-source circuit breakers.

                                                                                    • `sync-stablecoins` cron metadata now records Binance and Jupiter attempt status, endpoint, candidate counts, response counts, matched counts, and sanitized snippets for non-OK responses
                                                                                    • Protocol-backed live overrides are pre-applied before fallback enrichment and re-applied after GeckoTerminal probing, preserving final authoritative price semantics while keeping inherited-price assets out of unnecessary fallback probes
                                                                                    • The Jupiter breaker can run a bounded health probe when no fallback candidates remain, allowing a previously open breaker to recover once the provider is reachable instead of staying stale-open indefinitely
                                                                                    Details

                                                                                    Impact Notes

                                                                                    • `sync-stablecoins` cron metadata now records Binance and Jupiter attempt status, endpoint, candidate counts, response counts, matched counts, and sanitized snippets for non-OK responses
                                                                                    • Protocol-backed live overrides are pre-applied before fallback enrichment and re-applied after GeckoTerminal probing, preserving final authoritative price semantics while keeping inherited-price assets out of unnecessary fallback probes
                                                                                    • The Jupiter breaker can run a bounded health probe when no fallback candidates remain, allowing a previously open breaker to recover once the provider is reachable instead of staying stale-open indefinitely
                                                                                    Commit provenance not recorded
                                                                                      v4.31Apr 13, 2026

                                                                                      Curated-contract price fallback and USDnr M0 inheritance

                                                                                      DefiLlama contract-price fallback now starts from curated tracked deployments when an upstream stablecoin row is addressless, and USDnr joins the M0 tracked-parent price inheritance path.

                                                                                      • Addressless DefiLlama stablecoin rows can now recover prices through exact curated `contracts` metadata instead of requiring the upstream row to carry its own `address` field
                                                                                      • `ctusd-citrea` can publish the fresh DefiLlama `citrea:<contract>` quote surfaced by the coins API without relying on symbol search or stale CoinGecko rows
                                                                                      • `usdnr-nerona` now inherits tracked `wm-m0` live pricing and historical replay through the existing authoritative `protocol-redeem` lane used by other M0 extension assets
                                                                                      Details

                                                                                      Impact Notes

                                                                                      • Addressless DefiLlama stablecoin rows can now recover prices through exact curated `contracts` metadata instead of requiring the upstream row to carry its own `address` field
                                                                                      • `ctusd-citrea` can publish the fresh DefiLlama `citrea:<contract>` quote surfaced by the coins API without relying on symbol search or stale CoinGecko rows
                                                                                      • `usdnr-nerona` now inherits tracked `wm-m0` live pricing and historical replay through the existing authoritative `protocol-redeem` lane used by other M0 extension assets
                                                                                      Commit provenance not recorded
                                                                                        v4.3Apr 11, 2026

                                                                                        CoinGecko simple-price upstream freshness gate

                                                                                        CoinGecko simple-price inputs now use the provider's upstream observation timestamp when available and drop stale rows instead of stamping them as fresh local fetches.

                                                                                        • Primary pricing requests `last_updated_at` from CoinGecko `/simple/price` and records it as upstream freshness when present
                                                                                        • CoinGecko simple-price rows older than the source trust window are excluded from primary consensus rather than being treated as current
                                                                                        • Downstream consumers such as PegScore and DEWS now see missing, lower-confidence, or non-CoinGecko corroborated inputs instead of replaying stale CoinGecko marks as fresh
                                                                                        Details

                                                                                        Impact Notes

                                                                                        • Primary pricing requests `last_updated_at` from CoinGecko `/simple/price` and records it as upstream freshness when present
                                                                                        • CoinGecko simple-price rows older than the source trust window are excluded from primary consensus rather than being treated as current
                                                                                        • Downstream consumers such as PegScore and DEWS now see missing, lower-confidence, or non-CoinGecko corroborated inputs instead of replaying stale CoinGecko marks as fresh
                                                                                        Commit provenance not recorded
                                                                                          v4.2Apr 10, 2026

                                                                                          Inherited wM pricing for M0 extension assets

                                                                                          Added authoritative tracked-base inheritance for M0 extension assets whose exact child-token market coverage is absent or too thin, so price publication follows the executable parent rail instead of staying missing or trusting weak child-market prints.

                                                                                          • Live pricing now publishes `usdk-kast` and `xo-exodus` from the authoritative `protocol-redeem` lane by inheriting tracked `wm-m0` pricing when that parent rail is available
                                                                                          • Historical depeg backfills for those assets now replay the tracked `wm-m0` market series instead of relying on missing or thin child-market history
                                                                                          • This extends the same tracked-base inheritance pattern already used for `usdai-usd-ai -> pyusd-paypal`, keeping wrapper-style M0 extension assets aligned with their executable parent value
                                                                                          Details

                                                                                          Impact Notes

                                                                                          • Live pricing now publishes `usdk-kast` and `xo-exodus` from the authoritative `protocol-redeem` lane by inheriting tracked `wm-m0` pricing when that parent rail is available
                                                                                          • Historical depeg backfills for those assets now replay the tracked `wm-m0` market series instead of relying on missing or thin child-market history
                                                                                          • This extends the same tracked-base inheritance pattern already used for `usdai-usd-ai -> pyusd-paypal`, keeping wrapper-style M0 extension assets aligned with their executable parent value
                                                                                          Commit provenance not recorded
                                                                                            v4.1Apr 8, 2026

                                                                                            Split DexScreener exact-vs-search breaker accounting

                                                                                            The DexScreener fallback now records exact token-address lookups and last-resort symbol search under separate circuit breakers, so a flaky search endpoint cannot suppress otherwise healthy exact-address recovery.

                                                                                            • `dexscreener-prices` now reflects only `/tokens/v1/{chainId}/{address}` availability in the late-stage stablecoin pricing fallback
                                                                                            • The symbol-search recovery path now records independently under `dexscreener-search`, which keeps search-specific failures visible without poisoning exact-address availability
                                                                                            • Public-health grouping excludes the search-only breaker so a best-effort addressless fallback issue does not count as a separate top-level availability circuit group
                                                                                            Details

                                                                                            Impact Notes

                                                                                            • `dexscreener-prices` now reflects only `/tokens/v1/{chainId}/{address}` availability in the late-stage stablecoin pricing fallback
                                                                                            • The symbol-search recovery path now records independently under `dexscreener-search`, which keeps search-specific failures visible without poisoning exact-address availability
                                                                                            • Public-health grouping excludes the search-only breaker so a best-effort addressless fallback issue does not count as a separate top-level availability circuit group
                                                                                            Commit provenance not recorded
                                                                                              v4.0Apr 8, 2026

                                                                                              DexScreener request-budget walk-through for skipped fallback candidates

                                                                                              The DexScreener fallback budget now applies to actual outgoing requests instead of the first ten missing assets, so high-rank addressless rows that are skipped for identity reasons cannot crowd out later valid fallback candidates.

                                                                                              • Pass 4 still prioritizes exact-target assets first and then larger circulating names, but it now walks the full sorted missing set until it spends the 10-request DexScreener budget
                                                                                              • Addressless non-unique symbols that are skipped without making a request no longer consume one of the candidate slots that can reach lower-rank unique-symbol recoveries such as CHFAU or ctUSD
                                                                                              • This reduces false `dexscreener-prices` breaker opens during bad network windows because the pass has more chances to record at least one healthy DexScreener response before giving up
                                                                                              Details

                                                                                              Impact Notes

                                                                                              • Pass 4 still prioritizes exact-target assets first and then larger circulating names, but it now walks the full sorted missing set until it spends the 10-request DexScreener budget
                                                                                              • Addressless non-unique symbols that are skipped without making a request no longer consume one of the candidate slots that can reach lower-rank unique-symbol recoveries such as CHFAU or ctUSD
                                                                                              • This reduces false `dexscreener-prices` breaker opens during bad network windows because the pass has more chances to record at least one healthy DexScreener response before giving up
                                                                                              Commit provenance not recorded
                                                                                                v3.99Apr 7, 2026

                                                                                                Native-peg live publication guard and fill lane for non-USD fiat assets

                                                                                                Supported non-USD fiat assets can now use a fresh direct CoinGecko native quote plus fresh FX reference to correct weak live USD publications and fill missing live prices without turning that derived mark into replay-safe consensus state.

                                                                                                • Live post-enrichment validation now lets supported non-USD fiat assets replace materially divergent weak or mixed-source USD publications when a direct native quote implies a fresher peg-consistent USD mark
                                                                                                • The same native lane can now fill a missing live price for supported non-USD fiat assets when direct native CoinGecko pricing exists and the derived USD mark passes publication validation
                                                                                                • That native-implied mark remains a fresh fallback-validation lane rather than a replay-safe primary consensus source: it is not written into `price_cache`, and later replay cannot publish it as cached continuity
                                                                                                Details

                                                                                                Impact Notes

                                                                                                • Live post-enrichment validation now lets supported non-USD fiat assets replace materially divergent weak or mixed-source USD publications when a direct native quote implies a fresher peg-consistent USD mark
                                                                                                • The same native lane can now fill a missing live price for supported non-USD fiat assets when direct native CoinGecko pricing exists and the derived USD mark passes publication validation
                                                                                                • That native-implied mark remains a fresh fallback-validation lane rather than a replay-safe primary consensus source: it is not written into `price_cache`, and later replay cannot publish it as cached continuity
                                                                                                Commit provenance not recorded
                                                                                                  v3.98Apr 7, 2026

                                                                                                  Daily-confirmed native-peg replay for non-USD fiat backfills

                                                                                                  Historical non-USD fiat replay now treats CoinGecko native-fiat history as a day-scale corroboration lane rather than trusting thin hourly native prints on their own.

                                                                                                  • Historical CoinGecko market-chart replay now passes the configured CoinGecko API key through the backfill/admin path so native-fiat history can use the authenticated transport consistently during broad repairs
                                                                                                  • Supported non-USD fiat backfills now replay native-fiat history at daily cadence with a two-point confirmation window across a 36-hour gap tolerance instead of opening on isolated thin hourly prints
                                                                                                  • Extreme single-point native crashes of 5,000 bps or more are still preserved even when the normal historical confirmation rule would otherwise suppress the event
                                                                                                  Details

                                                                                                  Impact Notes

                                                                                                  • Historical CoinGecko market-chart replay now passes the configured CoinGecko API key through the backfill/admin path so native-fiat history can use the authenticated transport consistently during broad repairs
                                                                                                  • Supported non-USD fiat backfills now replay native-fiat history at daily cadence with a two-point confirmation window across a 36-hour gap tolerance instead of opening on isolated thin hourly prints
                                                                                                  • Extreme single-point native crashes of 5,000 bps or more are still preserved even when the normal historical confirmation rule would otherwise suppress the event
                                                                                                  Commit provenance not recorded
                                                                                                    v3.97Apr 7, 2026

                                                                                                    Generalized native-peg safeguards for non-USD fiat replay and routing

                                                                                                    Expanded the native-peg hardening lane from BRL-only handling to the wider supported non-USD fiat set, and historical backfill now prefers direct native CoinGecko fiat pairs before falling back to USD history.

                                                                                                    • Supported non-USD fiat assets such as EUR, CHF, GBP, JPY, SGD, AUD, CAD, BRL, IDR, TRY, ZAR, PHP, MXN, RUB, and CNH/CNY can now consult fresh direct native-peg quotes before downstream depeg logic trusts a derived USD-versus-FX move
                                                                                                    • Historical market replay now prefers direct CoinGecko native fiat pairs for those supported pegs and compares that native series directly to the `1.0` peg instead of replaying through `USD price / FX reference` when native history exists
                                                                                                    • The published live USD price path still does not gain a second CoinGecko-derived consensus voice; this remains a downstream validation and historical-replay hardening change rather than a new cached live source
                                                                                                    Details

                                                                                                    Impact Notes

                                                                                                    • Supported non-USD fiat assets such as EUR, CHF, GBP, JPY, SGD, AUD, CAD, BRL, IDR, TRY, ZAR, PHP, MXN, RUB, and CNH/CNY can now consult fresh direct native-peg quotes before downstream depeg logic trusts a derived USD-versus-FX move
                                                                                                    • Historical market replay now prefers direct CoinGecko native fiat pairs for those supported pegs and compares that native series directly to the `1.0` peg instead of replaying through `USD price / FX reference` when native history exists
                                                                                                    • The published live USD price path still does not gain a second CoinGecko-derived consensus voice; this remains a downstream validation and historical-replay hardening change rather than a new cached live source
                                                                                                    Commit provenance not recorded
                                                                                                      v3.96Apr 7, 2026

                                                                                                      Direct native-peg BRL corroboration for downstream depeg routing

                                                                                                      Supported non-USD fiat assets can now consult a fresh direct CoinGecko native-peg quote before downstream depeg logic trusts a USD price divided by an FX reference on its own.

                                                                                                      • Live depeg detection now checks a fresh direct `coin/native-peg` quote for supported fiat pegs such as BRL before opening or extending downstream depeg state
                                                                                                      • Pending depeg confirmation uses that same direct native quote first, reducing BRZ-style false positives caused by USD/FX reference drift
                                                                                                      • The published live price remains the normal USD pipeline output; this change hardens downstream validation rather than introducing a new cached price source
                                                                                                      Details

                                                                                                      Impact Notes

                                                                                                      • Live depeg detection now checks a fresh direct `coin/native-peg` quote for supported fiat pegs such as BRL before opening or extending downstream depeg state
                                                                                                      • Pending depeg confirmation uses that same direct native quote first, reducing BRZ-style false positives caused by USD/FX reference drift
                                                                                                      • The published live price remains the normal USD pipeline output; this change hardens downstream validation rather than introducing a new cached price source
                                                                                                      Commit provenance not recorded
                                                                                                        v3.95Apr 6, 2026

                                                                                                        USDAI inherits PYUSD redemption pricing

                                                                                                        Moved base USDAI onto the authoritative redemption-price family by inheriting tracked PYUSD live pricing and historical replay, so thin secondary-market USDAI prints no longer create synthetic peg damage for a wrapper-style redeemable token.

                                                                                                        • Live pricing now treats `usdai-usd-ai` as a redeemable PYUSD wrapper and publishes it from the authoritative `protocol-redeem` lane when tracked PYUSD pricing is available
                                                                                                        • Historical depeg backfills for `usdai-usd-ai` now replay the tracked PYUSD market series instead of trusting USDAI's own thin secondary-market history
                                                                                                        • USDAI PegScore and depeg event history no longer inherit obvious false positives from wrapper-specific market dislocations that conflict with the token's instant-redemption semantics
                                                                                                        Details

                                                                                                        Impact Notes

                                                                                                        • Live pricing now treats `usdai-usd-ai` as a redeemable PYUSD wrapper and publishes it from the authoritative `protocol-redeem` lane when tracked PYUSD pricing is available
                                                                                                        • Historical depeg backfills for `usdai-usd-ai` now replay the tracked PYUSD market series instead of trusting USDAI's own thin secondary-market history
                                                                                                        • USDAI PegScore and depeg event history no longer inherit obvious false positives from wrapper-specific market dislocations that conflict with the token's instant-redemption semantics
                                                                                                        Commit provenance not recorded
                                                                                                          v3.94Apr 3, 2026

                                                                                                          Blocked dead Bunni DEX inputs

                                                                                                          Explicitly blocked Bunni from the DEX bridge and pool-challenge surfaces after dead-venue rows kept contaminating retained-pool pricing inputs.

                                                                                                          • Bunni slugs are now rejected during DEX crawl intake and DeFiLlama pool processing, so they no longer spend discovery or scoring budget
                                                                                                          • Retained-pool filtering, challenger publication, and dex_prices publication all ignore Bunni even if stale or staged rows try to reintroduce it
                                                                                                          • Pool-challenge replacement marks and promoted DEX bridge sources can no longer be pulled back toward peg by Bunni rows
                                                                                                          Details

                                                                                                          Impact Notes

                                                                                                          • Bunni slugs are now rejected during DEX crawl intake and DeFiLlama pool processing, so they no longer spend discovery or scoring budget
                                                                                                          • Retained-pool filtering, challenger publication, and dex_prices publication all ignore Bunni even if stale or staged rows try to reintroduce it
                                                                                                          • Pool-challenge replacement marks and promoted DEX bridge sources can no longer be pulled back toward peg by Bunni rows
                                                                                                          Commit provenance not recorded
                                                                                                            v3.93Apr 3, 2026

                                                                                                            RedStone USR provider-config drift cleanup

                                                                                                            Removed stale RedStone provider config drift after the live API stopped returning USR, so the tracked-symbol allowlist and validation gate match the provider's real coverage again.

                                                                                                            • USR no longer sits in `REDSTONE_TRACKED_SYMBOL_ALLOWLIST` once the live RedStone API stopped serving that exact-case symbol
                                                                                                            • The RedStone price lane no longer spends request budget batching and retrying a symbol the provider currently omits
                                                                                                            • Pricing-provider audit and merge-gate validation now fail only on live coverage drift that still exists, not on a known stale allowlist entry
                                                                                                            Details

                                                                                                            Impact Notes

                                                                                                            • USR no longer sits in `REDSTONE_TRACKED_SYMBOL_ALLOWLIST` once the live RedStone API stopped serving that exact-case symbol
                                                                                                            • The RedStone price lane no longer spends request budget batching and retrying a symbol the provider currently omits
                                                                                                            • Pricing-provider audit and merge-gate validation now fail only on live coverage drift that still exists, not on a known stale allowlist entry
                                                                                                            Commit provenance not recorded
                                                                                                              v3.92Apr 3, 2026

                                                                                                              Retained-pool DEX bridge publication

                                                                                                              The DEX bridge now publishes only from the final retained pool set, so raw discovery observations that fail dedupe or quality admission can no longer leak into primary-pricing DEX aggregates.

                                                                                                              • dex_prices now rebuilds its aggregate and per-protocol bridge sources from retained priced pools after the full liquidity scoring filters run
                                                                                                              • Promoted DEX bridge inputs and peg-summary dexPriceCheck now stay aligned with the same retained pool surface used by challenger publication and liquidity UI detail
                                                                                                              • Skipped duplicate or low-quality discovery rows can no longer create synthetic near-peg DEX bridge marks for assets whose retained pools still show a depeg
                                                                                                              Details

                                                                                                              Impact Notes

                                                                                                              • dex_prices now rebuilds its aggregate and per-protocol bridge sources from retained priced pools after the full liquidity scoring filters run
                                                                                                              • Promoted DEX bridge inputs and peg-summary dexPriceCheck now stay aligned with the same retained pool surface used by challenger publication and liquidity UI detail
                                                                                                              • Skipped duplicate or low-quality discovery rows can no longer create synthetic near-peg DEX bridge marks for assets whose retained pools still show a depeg
                                                                                                              Commit provenance not recorded
                                                                                                                v3.91Apr 2, 2026

                                                                                                                Protocol-level pool-challenge divergence gating

                                                                                                                Moved pool-challenge divergence evaluation to one TVL-weighted median per protocol, so a single bad challenger pool can no longer make an otherwise agreeing protocol count as independent corroboration for replacement.

                                                                                                                • Pool challenge still downgrades weak soft-source consensus when any qualifying challenger pool diverges beyond the peg-aware threshold
                                                                                                                • Price replacement now requires at least two protocol-level challenger medians to diverge, rather than counting divergence from any one pool inside each protocol
                                                                                                                • A rogue pool inside an otherwise agreeing protocol no longer drags severe depegs back toward peg on the published stablecoins snapshot
                                                                                                                • The final replacement mark remains the TVL-weighted median across the corroborating divergent protocol groups
                                                                                                                Details

                                                                                                                Impact Notes

                                                                                                                • Pool challenge still downgrades weak soft-source consensus when any qualifying challenger pool diverges beyond the peg-aware threshold
                                                                                                                • Price replacement now requires at least two protocol-level challenger medians to diverge, rather than counting divergence from any one pool inside each protocol
                                                                                                                • A rogue pool inside an otherwise agreeing protocol no longer drags severe depegs back toward peg on the published stablecoins snapshot
                                                                                                                • The final replacement mark remains the TVL-weighted median across the corroborating divergent protocol groups
                                                                                                                Commit provenance not recorded
                                                                                                                  v3.9Mar 30, 2026

                                                                                                                  Explicit source semantics, cluster-median publication, and fallback identity hardening

                                                                                                                  Made source freshness and trust semantics explicit, changed high-confidence consensus to publish the agreeing cluster median instead of a single member price, and hardened fallback identity/order handling for DefiLlama and DexScreener.

                                                                                                                  • Pricing sources now carry explicit freshness kind, max trusted age, upstream-timestamp support, single-source authority, and market-capability metadata in the canonical registry
                                                                                                                  • High-confidence consensus now publishes the winning cluster median while preserving the internally selected cluster member for provenance and downstream policy
                                                                                                                  • DefiLlama list quotes now enter primary pricing as typed inputs with explicit observed-time provenance instead of inheriting mutable asset-state timestamps
                                                                                                                  • DEX bridge source freshness now preserves per-source timestamps from `price_sources_json` instead of flattening everything to the row write time
                                                                                                                  Details

                                                                                                                  Impact Notes

                                                                                                                  • Pricing sources now carry explicit freshness kind, max trusted age, upstream-timestamp support, single-source authority, and market-capability metadata in the canonical registry
                                                                                                                  • High-confidence consensus now publishes the winning cluster median while preserving the internally selected cluster member for provenance and downstream policy
                                                                                                                  • DefiLlama list quotes now enter primary pricing as typed inputs with explicit observed-time provenance instead of inheriting mutable asset-state timestamps
                                                                                                                  • DEX bridge source freshness now preserves per-source timestamps from `price_sources_json` instead of flattening everything to the row write time
                                                                                                                  • DefiLlama contract fallback now prefers canonical tracked deployment identities, validates each quote before claiming the asset, and can probe multiple exact tracked coin ids when needed
                                                                                                                  • DexScreener fallback now prioritizes exact-target assets under the request cap and keeps symbol search reserved for addressless assets only
                                                                                                                  • Pyth confidence weighting is now smoother across medium-confidence prints, and RedStone requires at least 60% venue agreement before entering primary consensus
                                                                                                                  • The provider-config pricing audit is now part of CI validation instead of remaining a local-only check
                                                                                                                  Commit provenance not recorded
                                                                                                                    v3.8Mar 30, 2026

                                                                                                                    Validated DefiLlama fallback admission and exact-target DexScreener gating

                                                                                                                    Hardened late-stage price enrichment so unreasonable DefiLlama contract quotes can no longer claim an asset before validation, and DexScreener symbol search no longer runs for assets that already have canonical exact token-address targets.

                                                                                                                    • DefiLlama pass 1 and pass 1b now validate quotes against the shared peg-aware bounds before marking an asset as resolved
                                                                                                                    • A bad DL contract response can no longer block later CoinMarketCap, Jupiter, or DexScreener fallback passes in the same run
                                                                                                                    • DexScreener symbol search now stays disabled whenever the asset already has a canonical chain+address lookup path; only addressless assets can use the unique-symbol search fallback
                                                                                                                    • This reduces wrong-identity recovery risk while preserving the exact-address DexScreener recovery path for assets with tracked deployments
                                                                                                                    Details

                                                                                                                    Impact Notes

                                                                                                                    • DefiLlama pass 1 and pass 1b now validate quotes against the shared peg-aware bounds before marking an asset as resolved
                                                                                                                    • A bad DL contract response can no longer block later CoinMarketCap, Jupiter, or DexScreener fallback passes in the same run
                                                                                                                    • DexScreener symbol search now stays disabled whenever the asset already has a canonical chain+address lookup path; only addressless assets can use the unique-symbol search fallback
                                                                                                                    • This reduces wrong-identity recovery risk while preserving the exact-address DexScreener recovery path for assets with tracked deployments
                                                                                                                    Commit provenance not recorded
                                                                                                                      v3.7Mar 24, 2026

                                                                                                                      Protocol-aware DEX hardening estimators and provider-config cleanup

                                                                                                                      Made the GeckoTerminal probe and pool-challenge replacement estimators protocol-aware, so repeated same-protocol pools no longer dominate soft-source hardening marks, and cleaned stale provider configuration drift in the RedStone tracked-symbol allowlist.

                                                                                                                      • GeckoTerminal probing now collapses pools to one TVL-weighted-median price per protocol before injecting a cross-protocol weighted-median mark
                                                                                                                      • Pool challenge replacement now uses corroborating divergent protocol groups rather than a raw all-pool weighted mean, making replacement marks less sensitive to repeated same-protocol pools
                                                                                                                      • Provider-config audit tests now guard CEX and RedStone coverage allowlists against duplicate or stale untracked entries
                                                                                                                      • The stale untracked `sUSDe` RedStone allowlist entry was removed so the runtime config matches the tracked registry again
                                                                                                                      Details

                                                                                                                      Impact Notes

                                                                                                                      • GeckoTerminal probing now collapses pools to one TVL-weighted-median price per protocol before injecting a cross-protocol weighted-median mark
                                                                                                                      • Pool challenge replacement now uses corroborating divergent protocol groups rather than a raw all-pool weighted mean, making replacement marks less sensitive to repeated same-protocol pools
                                                                                                                      • Provider-config audit tests now guard CEX and RedStone coverage allowlists against duplicate or stale untracked entries
                                                                                                                      • The stale untracked `sUSDe` RedStone allowlist entry was removed so the runtime config matches the tracked registry again
                                                                                                                      Commit provenance not recorded
                                                                                                                        v3.6Mar 24, 2026

                                                                                                                        Explicit source freshness provenance for live prices

                                                                                                                        Made source freshness provenance explicit in live-price payloads and replay metadata, so Pharos can distinguish true upstream observation time from locally stamped fetch time without overstating downstream authority.

                                                                                                                        • Stablecoin payloads, peg-summary outputs, and `price_cache` rows now preserve `priceObservedAtMode` alongside `priceObservedAt`
                                                                                                                        • Primary consensus now carries freshness provenance per source and resolves a conservative effective mode for the selected price
                                                                                                                        • Hard single-source prices remain depeg-authoritative only when they retain source-native freshness provenance; local-fetch hard single-source prices now stay `confirm_required`
                                                                                                                        • Older rows remain backward-compatible: cached data that predates explicit freshness-mode storage does not automatically lose authority just because the mode is absent
                                                                                                                        Details

                                                                                                                        Impact Notes

                                                                                                                        • Stablecoin payloads, peg-summary outputs, and `price_cache` rows now preserve `priceObservedAtMode` alongside `priceObservedAt`
                                                                                                                        • Primary consensus now carries freshness provenance per source and resolves a conservative effective mode for the selected price
                                                                                                                        • Hard single-source prices remain depeg-authoritative only when they retain source-native freshness provenance; local-fetch hard single-source prices now stay `confirm_required`
                                                                                                                        • Older rows remain backward-compatible: cached data that predates explicit freshness-mode storage does not automatically lose authority just because the mode is absent
                                                                                                                        Commit provenance not recorded
                                                                                                                          v3.5Mar 23, 2026

                                                                                                                          Independent FX recovery during cached fallback

                                                                                                                          Kept the independent FX recovery paths alive even after the full-set fiat stack drops into cached fallback, so Open Exchange Rates, Chainlink overlays, and metals probes can still refresh stale pegs and promote the run back to live once fresh full-set coverage is restored.

                                                                                                                          • Cached-fallback FX runs now keep probing Open Exchange Rates, Chainlink reference feeds, and gold-api.com instead of freezing their last known state until Frankfurter recovers
                                                                                                                          • A single stale intraday peg can no longer pin the whole FX lane in repeated cached fallback when OXR or Chainlink can refresh that subset independently
                                                                                                                          • If those independent probes restore fresh coverage for the expected fiat reference set, the run now exits cached fallback immediately and resets the fallback streak
                                                                                                                          • Operator metadata remains explicit about the failed Frankfurter / mirror path while no longer overstating the duration of an otherwise recovered FX incident
                                                                                                                          Details

                                                                                                                          Impact Notes

                                                                                                                          • Cached-fallback FX runs now keep probing Open Exchange Rates, Chainlink reference feeds, and gold-api.com instead of freezing their last known state until Frankfurter recovers
                                                                                                                          • A single stale intraday peg can no longer pin the whole FX lane in repeated cached fallback when OXR or Chainlink can refresh that subset independently
                                                                                                                          • If those independent probes restore fresh coverage for the expected fiat reference set, the run now exits cached fallback immediately and resets the fallback streak
                                                                                                                          • Operator metadata remains explicit about the failed Frankfurter / mirror path while no longer overstating the duration of an otherwise recovered FX incident
                                                                                                                          Commit provenance not recorded
                                                                                                                            v3.4Mar 23, 2026

                                                                                                                            Replay-safe trusted-price continuity for confirmed depegs

                                                                                                                            Extended previous-trusted severe-depeg continuity to reuse fresh replay-safe price-cache rows, so a transient low or unusable stablecoins publication cannot make the next validation pass forget a recently corroborated open depeg.

                                                                                                                            • Previous-trusted price lookup now merges the last authoritative stablecoins publication with fresh replay-safe `price_cache` metadata
                                                                                                                            • Cached replay can keep publishing the last fresh corroborated depeg price through brief single-run corroboration gaps instead of dropping the asset to `N/A`
                                                                                                                            • Confirmed severe depegs no longer lose continuity just because an intervening stablecoins run published a `low` or unusable price state
                                                                                                                            • This closes the intermittent USR-style divergence where PSI could still explain the open depeg while detail surfaces lost the current price
                                                                                                                            Details

                                                                                                                            Impact Notes

                                                                                                                            • Previous-trusted price lookup now merges the last authoritative stablecoins publication with fresh replay-safe `price_cache` metadata
                                                                                                                            • Cached replay can keep publishing the last fresh corroborated depeg price through brief single-run corroboration gaps instead of dropping the asset to `N/A`
                                                                                                                            • Confirmed severe depegs no longer lose continuity just because an intervening stablecoins run published a `low` or unusable price state
                                                                                                                            • This closes the intermittent USR-style divergence where PSI could still explain the open depeg while detail surfaces lost the current price
                                                                                                                            Commit provenance not recorded
                                                                                                                              v3.3Mar 22, 2026

                                                                                                                              Source-aware trust, observed-time freshness, and weak-price jump quarantine

                                                                                                                              Centralized pricing-source trust policy, preserved true source-observation timestamps through consensus and replay, and hardened publication/depeg behavior so weak soft-source moves cannot silently become downstream-authoritative or self-reinforce through the DEX bridge.

                                                                                                                              • Pricing source capabilities now come from one canonical registry shared by consensus, replay safety, pool challenge, GT probing, status health, and depeg trust classification
                                                                                                                              • Cached stablecoin payloads now preserve `priceObservedAt` and `priceSyncedAt`; compatibility `priceUpdatedAt` now reflects the true observation timestamp rather than the sync write time
                                                                                                                              • Soft single-source prices and soft-only high-confidence consensus can no longer mutate live depeg state directly; hard single-source sources such as Pyth, CEX, Curve, and protocol-redemption can still be authoritative
                                                                                                                              • Weak fixed-peg price jumps versus the previous trusted price now require corroboration before publication, closing the USR-style wrong-price path
                                                                                                                              Details

                                                                                                                              Impact Notes

                                                                                                                              • Pricing source capabilities now come from one canonical registry shared by consensus, replay safety, pool challenge, GT probing, status health, and depeg trust classification
                                                                                                                              • Cached stablecoin payloads now preserve `priceObservedAt` and `priceSyncedAt`; compatibility `priceUpdatedAt` now reflects the true observation timestamp rather than the sync write time
                                                                                                                              • Soft single-source prices and soft-only high-confidence consensus can no longer mutate live depeg state directly; hard single-source sources such as Pyth, CEX, Curve, and protocol-redemption can still be authoritative
                                                                                                                              • Weak fixed-peg price jumps versus the previous trusted price now require corroboration before publication, closing the USR-style wrong-price path
                                                                                                                              • Pool challenge now uses the live $100K threshold in its published challenger snapshots and can harden weak soft-source outcomes, not only pre-downgrade high-confidence clusters
                                                                                                                              • GeckoTerminal probing now revisits weak CoinGecko / DL-list soft outcomes rather than only strict one-source cases
                                                                                                                              • Direct-API DEX quote conversion now reuses only authoritative tracked stablecoin prices; weak or stale tracked prices fall back to peg references instead of feeding the bridge loop
                                                                                                                              • Replay cache rows now keep source, confidence, observation time, sync time, and source lists; RedStone now derives its price from the venue median instead of the provider aggregate
                                                                                                                              • CoinMarketCap, Jupiter, and DexScreener enrichment passes now fail independently instead of aborting the whole late-enrichment block
                                                                                                                              Commit provenance not recorded
                                                                                                                                v3.2Mar 22, 2026

                                                                                                                                Identity-safe enrichment, severe-downside publication guards, and replay-safe DEX quote derivation

                                                                                                                                Closed the main pricing-integrity gaps by constraining fallback identity to tracked deployments, requiring corroboration for severe fixed-peg downside publication, promoting only replay-safe cached prices, and deriving DEX quote USD values from tracked live stablecoin prices instead of unconditional `$1` symbol assumptions.

                                                                                                                                • Primary pricing candidates are no longer gated on `geckoId`; tracked assets can still enter consensus through Pyth, CEX, RedStone, Curve, DL-list, or DEX bridge inputs
                                                                                                                                • DefiLlama pass 1b now probes only tracked alternate deployments instead of synthesizing same-address identities across chains
                                                                                                                                • CoinMarketCap and DexScreener symbol fallbacks now require uniqueness within the tracked registry, reducing symbol-collision poisoning
                                                                                                                                • RedStone prices now require at least two corroborating venues before entering primary consensus
                                                                                                                                Details

                                                                                                                                Impact Notes

                                                                                                                                • Primary pricing candidates are no longer gated on `geckoId`; tracked assets can still enter consensus through Pyth, CEX, RedStone, Curve, DL-list, or DEX bridge inputs
                                                                                                                                • DefiLlama pass 1b now probes only tracked alternate deployments instead of synthesizing same-address identities across chains
                                                                                                                                • CoinMarketCap and DexScreener symbol fallbacks now require uniqueness within the tracked registry, reducing symbol-collision poisoning
                                                                                                                                • RedStone prices now require at least two corroborating venues before entering primary consensus
                                                                                                                                • Pool challenge now applies to DEX-inclusive soft consensus clusters unless an exempt hard source is present
                                                                                                                                • GeckoTerminal probing now cross-checks eligible single-source DL-list results in addition to single-source CoinGecko results
                                                                                                                                • Direct-API DEX pair conversion now prefers tracked cached stablecoin prices for quote legs and will not treat unknown addressed `USDC`/`USDT`-style symbols as automatic `$1` references
                                                                                                                                • Price-cache replay now stores only replay-safe non-low, non-fallback prices and the replay window is shortened from 24h to 6h
                                                                                                                                • Severe fixed-peg downside publication now requires corroboration unless the source is an explicit protocol-redemption or pool-challenge replacement mark
                                                                                                                                Commit provenance not recorded
                                                                                                                                  v3.1Mar 22, 2026

                                                                                                                                  Canonical DEX token identity and non-overlapping DEX consensus

                                                                                                                                  Hardened DEX price intake so runtime pool parsing can no longer learn new token identities, unknown addressed tokens cannot fall back to symbol matches in price-bearing paths, and promoted DEX bridge sources cannot self-confirm inside primary consensus.

                                                                                                                                  • DEX identity is now canonical-only at runtime: DeFiLlama and subgraph parsing no longer mutate chain-aware token ownership
                                                                                                                                  • Symbol fallback remains available only for addressless tokens; addressed unknown tokens are dropped instead of being reinterpreted by symbol
                                                                                                                                  • DeFiLlama pools with `underlyingTokens` now match tracked assets by canonical addresses only, preventing positional symbol/address poisoning
                                                                                                                                  • Promoted per-protocol DEX bridge sources are admitted into primary consensus only when corroborated or when no non-DEX voices exist
                                                                                                                                  Details

                                                                                                                                  Impact Notes

                                                                                                                                  • DEX identity is now canonical-only at runtime: DeFiLlama and subgraph parsing no longer mutate chain-aware token ownership
                                                                                                                                  • Symbol fallback remains available only for addressless tokens; addressed unknown tokens are dropped instead of being reinterpreted by symbol
                                                                                                                                  • DeFiLlama pools with `underlyingTokens` now match tracked assets by canonical addresses only, preventing positional symbol/address poisoning
                                                                                                                                  • Promoted per-protocol DEX bridge sources are admitted into primary consensus only when corroborated or when no non-DEX voices exist
                                                                                                                                  • The overlapping `dex-promoted` aggregate is withheld whenever promoted per-protocol DEX bridge data exists for the same asset
                                                                                                                                  Commit provenance not recorded
                                                                                                                                    v3.0Mar 20, 2026

                                                                                                                                    Cadence-valid FX carry-forward semantics

                                                                                                                                    Adjusted FX refresh semantics so previously published daily references are treated as a successful live carry-forward when they are still within their expected freshness cadence, instead of automatically incrementing cached-fallback status.

                                                                                                                                    • Quarter-hour FX runs no longer poison status simply because Frankfurter and mirror transports failed to re-deliver an already-current daily source snapshot
                                                                                                                                    • Carry-forward runs preserve per-peg source dates and cadence metadata, so status still degrades normally once the underlying daily references actually age out
                                                                                                                                    • Operator metadata still records the failed live transport path, but public health now aligns with source freshness rather than transport availability alone
                                                                                                                                    Details

                                                                                                                                    Impact Notes

                                                                                                                                    • Quarter-hour FX runs no longer poison status simply because Frankfurter and mirror transports failed to re-deliver an already-current daily source snapshot
                                                                                                                                    • Carry-forward runs preserve per-peg source dates and cadence metadata, so status still degrades normally once the underlying daily references actually age out
                                                                                                                                    • Operator metadata still records the failed live transport path, but public health now aligns with source freshness rather than transport availability alone
                                                                                                                                    Commit provenance not recorded
                                                                                                                                      v2.9Mar 20, 2026

                                                                                                                                      Jupiter V3 freshness fix and exact DexScreener address fallback

                                                                                                                                      Stopped rejecting Jupiter V3 fallback quotes based on optional createdAt metadata and upgraded DexScreener enrichment to prefer exact token-address pool lookups before symbol search.

                                                                                                                                      • Jupiter fallback now relies on V3 liquidity gates and peg-aware validation instead of treating optional `createdAt` metadata as a hard freshness cutoff
                                                                                                                                      • Tracked Solana assets can recover through Jupiter even when V3 responses include old createdAt values alongside current block-level pricing
                                                                                                                                      • DexScreener fallback now prefers exact chain+address pool lookups when an asset has a resolvable token address, reducing dependence on noisy symbol search results
                                                                                                                                      • DexScreener search remains as the last fallback path, still capped by the shared request budget and liquidity sanity gates
                                                                                                                                      Details

                                                                                                                                      Impact Notes

                                                                                                                                      • Jupiter fallback now relies on V3 liquidity gates and peg-aware validation instead of treating optional `createdAt` metadata as a hard freshness cutoff
                                                                                                                                      • Tracked Solana assets can recover through Jupiter even when V3 responses include old createdAt values alongside current block-level pricing
                                                                                                                                      • DexScreener fallback now prefers exact chain+address pool lookups when an asset has a resolvable token address, reducing dependence on noisy symbol search results
                                                                                                                                      • DexScreener search remains as the last fallback path, still capped by the shared request budget and liquidity sanity gates
                                                                                                                                      Commit provenance not recorded
                                                                                                                                        v2.8Mar 20, 2026

                                                                                                                                        Tertiary full-set FX fallback for multi-source outages

                                                                                                                                        Added ExchangeRate-API as a tertiary live full-set FX fallback so production can keep publishing dated fiat references when both Frankfurter and the existing secondary mirrors are unavailable.

                                                                                                                                        • Frankfurter remains the preferred ECB-backed business-day source for the core fiat set
                                                                                                                                        • The existing `fawazahmed0/currency-api` mirrors still serve CNH/RUB/UAH/ARS and can backstop the wider fiat set when Frankfurter is unavailable
                                                                                                                                        • When both current FX paths fail, ExchangeRate-API can now publish a daily full-set fiat snapshot instead of forcing an immediate cached-fallback run
                                                                                                                                        • The About page and pricing methodology now disclose ExchangeRate-API as an externally visible FX reference source
                                                                                                                                        Details

                                                                                                                                        Impact Notes

                                                                                                                                        • Frankfurter remains the preferred ECB-backed business-day source for the core fiat set
                                                                                                                                        • The existing `fawazahmed0/currency-api` mirrors still serve CNH/RUB/UAH/ARS and can backstop the wider fiat set when Frankfurter is unavailable
                                                                                                                                        • When both current FX paths fail, ExchangeRate-API can now publish a daily full-set fiat snapshot instead of forcing an immediate cached-fallback run
                                                                                                                                        • The About page and pricing methodology now disclose ExchangeRate-API as an externally visible FX reference source
                                                                                                                                        Commit provenance not recorded
                                                                                                                                          v2.7Mar 20, 2026

                                                                                                                                          Secondary FX full-set live fallback for Frankfurter outages

                                                                                                                                          Expanded the existing dated secondary FX mirror path so it can temporarily backstop the wider fiat reference set when Frankfurter is unavailable, preventing repeated cached-only FX runs.

                                                                                                                                          • CNH/RUB/UAH/ARS still use the secondary daily feed as their normal source path
                                                                                                                                          • When Frankfurter fails, the fresher `fawazahmed0/currency-api` mirror can now populate the broader fiat FX set instead of forcing an immediate cached-fallback run
                                                                                                                                          • Per-peg FX metadata preserves calendar-daily cadence and source-date semantics during this live fallback path
                                                                                                                                          • Public health no longer needs to report long consecutive cached-fallback FX runs for a Frankfurter-only outage when the secondary feed is healthy
                                                                                                                                          Details

                                                                                                                                          Impact Notes

                                                                                                                                          • CNH/RUB/UAH/ARS still use the secondary daily feed as their normal source path
                                                                                                                                          • When Frankfurter fails, the fresher `fawazahmed0/currency-api` mirror can now populate the broader fiat FX set instead of forcing an immediate cached-fallback run
                                                                                                                                          • Per-peg FX metadata preserves calendar-daily cadence and source-date semantics during this live fallback path
                                                                                                                                          • Public health no longer needs to report long consecutive cached-fallback FX runs for a Frankfurter-only outage when the secondary feed is healthy
                                                                                                                                          Commit provenance not recorded
                                                                                                                                            v2.6Mar 19, 2026

                                                                                                                                            Published DEX challenger snapshots and durable FX freshness metadata

                                                                                                                                            Pool challenge and depeg confirmation now read dedicated challenger snapshots built from the full retained DEX pool set, while FX reference freshness is tracked separately from usable cached-fallback freshness.

                                                                                                                                            • Pool challenge no longer depends on dex_liquidity.top_pools_json, so display truncation cannot hide a large challenger pool
                                                                                                                                            • Published challenger snapshots are coverage-gated per stablecoin and fall back safely during migration gaps
                                                                                                                                            • Cached FX fallback runs preserve per-peg source timestamps and source modes instead of refreshing them implicitly
                                                                                                                                            • Health and status now report usable FX freshness, underlying source freshness, and consecutive fallback runs separately
                                                                                                                                            Details

                                                                                                                                            Impact Notes

                                                                                                                                            • Pool challenge no longer depends on dex_liquidity.top_pools_json, so display truncation cannot hide a large challenger pool
                                                                                                                                            • Published challenger snapshots are coverage-gated per stablecoin and fall back safely during migration gaps
                                                                                                                                            • Cached FX fallback runs preserve per-peg source timestamps and source modes instead of refreshing them implicitly
                                                                                                                                            • Health and status now report usable FX freshness, underlying source freshness, and consecutive fallback runs separately
                                                                                                                                            • Non-USD and commodity validation consumers now read shared FX state instead of inferring freshness from cache updated_at alone
                                                                                                                                            Commit provenance not recorded
                                                                                                                                              v2.5Mar 19, 2026

                                                                                                                                              Kraken and Bitstamp primary pricing, Jupiter Solana fallback, Chainlink reference overlays

                                                                                                                                              Added Kraken and Bitstamp as additional direct venue voices in primary consensus, introduced a Jupiter Price API fallback pass for unresolved Solana assets, and overlaid curated Chainlink reference feeds onto supported FX and commodity validation rates.

                                                                                                                                              • Kraken joins primary consensus at weight 2 for supported USD pairs
                                                                                                                                              • Bitstamp joins primary consensus at weight 1 as a lower-weight corroborating CEX venue
                                                                                                                                              • Primary CEX fetches remain grouped so the quarter-hour pricing lane does not add new peak connection fan-out
                                                                                                                                              • Missing Solana prices can now resolve through Jupiter before DexScreener, gated by liquidity and peg-aware plausibility checks
                                                                                                                                              Details

                                                                                                                                              Impact Notes

                                                                                                                                              • Kraken joins primary consensus at weight 2 for supported USD pairs
                                                                                                                                              • Bitstamp joins primary consensus at weight 1 as a lower-weight corroborating CEX venue
                                                                                                                                              • Primary CEX fetches remain grouped so the quarter-hour pricing lane does not add new peak connection fan-out
                                                                                                                                              • Missing Solana prices can now resolve through Jupiter before DexScreener, gated by liquidity and peg-aware plausibility checks
                                                                                                                                              • Curated Chainlink EUR/USD, GBP/USD, JPY/USD, XAU/USD, and XAG/USD feeds can now refresh the FX/reference cache when fresh and aligned
                                                                                                                                              • Status source distribution now reports Kraken, Bitstamp, and Jupiter participation explicitly
                                                                                                                                              Commit provenance not recorded
                                                                                                                                                v2.4Mar 19, 2026

                                                                                                                                                Pairwise consensus hardening, RedStone freshness gate, authoritative override ordering

                                                                                                                                                Hardened primary price selection so agreement requires full pairwise clustering, fixed pegs stay on fixed-peg rules when references are temporarily unavailable, RedStone requires fresh timestamped venue breakdowns, and protocol-redeem overrides remain final after GeckoTerminal probing.

                                                                                                                                                • Transitive source chains can no longer create fake multi-source high confidence
                                                                                                                                                • Equal-size cluster ties now resolve deterministically by weight, spread, peg proximity, then label
                                                                                                                                                • Fixed-peg assets no longer silently fall back into NAV-style 500 bps clustering when peg references are missing
                                                                                                                                                • Stale or aggregate-only RedStone entries are excluded before consensus
                                                                                                                                                Details

                                                                                                                                                Impact Notes

                                                                                                                                                • Transitive source chains can no longer create fake multi-source high confidence
                                                                                                                                                • Equal-size cluster ties now resolve deterministically by weight, spread, peg proximity, then label
                                                                                                                                                • Fixed-peg assets no longer silently fall back into NAV-style 500 bps clustering when peg references are missing
                                                                                                                                                • Stale or aggregate-only RedStone entries are excluded before consensus
                                                                                                                                                • Protocol-backed redemption prices can no longer be overwritten by the GeckoTerminal probe
                                                                                                                                                • Direct-API pools must pass shared TVL sanity gates before they suppress overlapping DeFiLlama pools
                                                                                                                                                Commit provenance not recorded
                                                                                                                                                  v2.3Mar 18, 2026

                                                                                                                                                  Per-protocol DEX bridge aggregation and top-pool challenge source split

                                                                                                                                                  The DEX bridge now persists one aggregated price entry per protocol instead of re-injecting individual top pools as repeated consensus sources. Pool challenge reads large current pools from dex_liquidity.top_pools_json, separating consensus promotion from individual-pool depeg challenge inputs.

                                                                                                                                                  • Fluid, Balancer, Raydium, and Orca now contribute at most one promoted consensus source each
                                                                                                                                                  • Repeated high-TVL pools from the same protocol can no longer overweight primary consensus by appearing multiple times
                                                                                                                                                  • dex_prices.price_sources_json now stores per-protocol aggregates for the pricing bridge
                                                                                                                                                  • Pool challenge no longer depends on dex_prices.price_sources_json; it reads current top pools from dex_liquidity instead
                                                                                                                                                  Details

                                                                                                                                                  Impact Notes

                                                                                                                                                  • Fluid, Balancer, Raydium, and Orca now contribute at most one promoted consensus source each
                                                                                                                                                  • Repeated high-TVL pools from the same protocol can no longer overweight primary consensus by appearing multiple times
                                                                                                                                                  • dex_prices.price_sources_json now stores per-protocol aggregates for the pricing bridge
                                                                                                                                                  • Pool challenge no longer depends on dex_prices.price_sources_json; it reads current top pools from dex_liquidity instead
                                                                                                                                                  • Non-USD tracked stablecoin pairs use peg-reference-aware conversion when deriving direct-API DEX prices
                                                                                                                                                  Commit provenance not recorded
                                                                                                                                                    v2.2Mar 17, 2026

                                                                                                                                                    Pool confirmation fix, peg-type-aware challenge, source quality gating

                                                                                                                                                    Fixed critical depeg detection gap where pool-challenge-driven depegs could never be confirmed. Made pool challenge threshold peg-type-aware. Added Pyth confidence and RedStone venue agreement gating. Downgraded CG+DL-only consensus to single-source.

                                                                                                                                                    • Pool-level individual prices added as fourth depeg confirmation source — fixes dUSD-like depegs going undetected
                                                                                                                                                    • Pool challenge threshold now peg-type-aware: 300 bps for non-USD (was 500 bps for all)
                                                                                                                                                    • Pyth feeds with >200 bps confidence excluded from consensus; 100-200 bps downweighted
                                                                                                                                                    • RedStone excluded when internal venue agreement < 50%
                                                                                                                                                    Details

                                                                                                                                                    Impact Notes

                                                                                                                                                    • Pool-level individual prices added as fourth depeg confirmation source — fixes dUSD-like depegs going undetected
                                                                                                                                                    • Pool challenge threshold now peg-type-aware: 300 bps for non-USD (was 500 bps for all)
                                                                                                                                                    • Pyth feeds with >200 bps confidence excluded from consensus; 100-200 bps downweighted
                                                                                                                                                    • RedStone excluded when internal venue agreement < 50%
                                                                                                                                                    • CG+DL-only consensus downgraded from high to single-source (illusory agreement)
                                                                                                                                                    • NAV tokens (FPI) now visible in peg-summary API with null deviation
                                                                                                                                                    • Full source list preserved in consensus label (no more truncation)
                                                                                                                                                    • Protocol override divergence warnings logged when >100 bps from consensus
                                                                                                                                                    Commit provenance not recorded
                                                                                                                                                      v2.1Mar 16, 2026

                                                                                                                                                      Consensus honesty — independent DL list price, GeckoTerminal probe, pool challenge

                                                                                                                                                      Replaced the DL coins API (which mirrored CoinGecko data, creating illusory 2-source agreement) with the independent DL stablecoins list price. Added GeckoTerminal pool-level cross-check for single-source CG-only assets. Added pool challenge guard that downgrades confidence and replaces price with TVL-weighted pool average when large DEX pools diverge from soft-only consensus.

                                                                                                                                                      • Dropped DL coins API from primary consensus — it returned CG-sourced data, making CG+DL agreement tautological
                                                                                                                                                      • Added DefiLlama stablecoins list price (weight 1) as a genuinely independent aggregator voice
                                                                                                                                                      • Added GeckoTerminal pool probe (weight 1) for single-source CG-only assets with $10K TVL gate
                                                                                                                                                      • Pool challenge guard: downgrades soft-only high confidence to 'low' when any $100K+ TVL DEX pool diverges ≥500 bps
                                                                                                                                                      Details

                                                                                                                                                      Impact Notes

                                                                                                                                                      • Dropped DL coins API from primary consensus — it returned CG-sourced data, making CG+DL agreement tautological
                                                                                                                                                      • Added DefiLlama stablecoins list price (weight 1) as a genuinely independent aggregator voice
                                                                                                                                                      • Added GeckoTerminal pool probe (weight 1) for single-source CG-only assets with $10K TVL gate
                                                                                                                                                      • Pool challenge guard: downgrades soft-only high confidence to 'low' when any $100K+ TVL DEX pool diverges ≥500 bps
                                                                                                                                                      • Pool challenge price correction: replaces soft consensus price with TVL-weighted mean of all qualifying individual pool prices
                                                                                                                                                      • DEWS scoring suppresses degradation bonus for high→single-source transitions to prevent alert spikes
                                                                                                                                                      • ~130 assets retain genuine high confidence via CG+DL-list agreement; ~27 gain GT cross-check
                                                                                                                                                      Commit provenance not recorded
                                                                                                                                                        v2.0Mar 14, 2026

                                                                                                                                                        Multi-source consensus with oracle, CEX, and on-chain pricing

                                                                                                                                                        Upgraded from 2-source cross-validation (CG+DL) to an 8-source weighted consensus system. Added Pyth, Binance, Coinbase, RedStone oracles, Curve on-chain pricing, and promoted DEX price observations to primary voices. N-source clustering replaces simple comparison.

                                                                                                                                                        • 8 independent price sources with per-source circuit breakers and configurable weights
                                                                                                                                                        • Consensus algorithm clusters sources within 50 bps, picks highest-weight in largest cluster
                                                                                                                                                        • Authoritative protocol-redemption overrides for wrapper assets (cUSD, iUSD, crvUSD)
                                                                                                                                                        • 4-pass enrichment pipeline for assets still missing prices after primary consensus
                                                                                                                                                        Details

                                                                                                                                                        Impact Notes

                                                                                                                                                        • 8 independent price sources with per-source circuit breakers and configurable weights
                                                                                                                                                        • Consensus algorithm clusters sources within 50 bps, picks highest-weight in largest cluster
                                                                                                                                                        • Authoritative protocol-redemption overrides for wrapper assets (cUSD, iUSD, crvUSD)
                                                                                                                                                        • 4-pass enrichment pipeline for assets still missing prices after primary consensus
                                                                                                                                                        • Price confidence tagging: high (2+ agree), single-source, low (disagree), fallback
                                                                                                                                                        • CoinMarketCap enrichment optimized from per-slug to batch listings endpoint
                                                                                                                                                        Commit provenance not recorded
                                                                                                                                                          v1.0Feb 1, 2026Reconstructed

                                                                                                                                                          Initial 2-source price cross-validation

                                                                                                                                                          Launched baseline pricing with CoinGecko as primary and DefiLlama as cross-validation source. Simple comparison logic with single enrichment pass.

                                                                                                                                                          • CoinGecko primary prices with DefiLlama cross-validation
                                                                                                                                                          • Basic price reasonableness checks against peg references
                                                                                                                                                          • DexScreener enrichment for assets missing from aggregators
                                                                                                                                                          Details

                                                                                                                                                          Impact Notes

                                                                                                                                                          • CoinGecko primary prices with DefiLlama cross-validation
                                                                                                                                                          • Basic price reasonableness checks against peg references
                                                                                                                                                          • DexScreener enrichment for assets missing from aggregators
                                                                                                                                                          Reconstructed from git commit history.Commit provenance not recorded