Interface: MCP (via alter-cli mcp)
Alter version: 1.25.0
Platform: macOS 26.6.1 (Build 25G76)
Date: 2026-08-14
Résumé
Sur un pool dont certaines réserves ne sont pas empruntables, totals agrège collatéral pur et actifs empruntables. Résultat : une utilisation de 33 % et $29,9M de liquidité disponible sur un pool réellement à 100 % d'utilisation et $0 de liquidité.
Le détail par réserve est correct — seul l'agrégat induit en erreur.
Repro
alter-cli mcp lending.pool_snapshot --json '{
"network":"gnosis",
"pool_address":"0xFb9b496519fCa8473fba1af0850B6B8F476BFdB3",
"block_tag":"latest"
}' --timeout 90
Observé
totals:
total_supply_usd: 44 574 025.84
available_liquidity_usd: 29 936 466.88
total_debt_usd: 14 711 414.74
utilization_pct: 33.0
reserves (corrects) :
WXDAI supply=5 862 312.02 debt=5 863 207.29 avail=0.0 util=100.02
USDC supply=8 843 646.07 debt=8 844 974.11 avail=0.0 util=100.02
RTW-USD-01 supply=29 868 067.75 debt=0.0 avail=29 936 466.38 util=0.0
REUSD supply=0.0 debt=3 233.34 avail=0.5 util=0.0
Attendu
utilization_pct: 100.02 et available_liquidity_usd: 0.0, calculés sur les seuls actifs empruntables (USDC + WXDAI).
RTW-USD-01 est un collatéral pur : borrowing_enabled = false on-chain, LTV 60 %. Sa "liquidité disponible" de $29,9M n'est empruntable par personne. L'inclure dans l'agrégat masque exactement l'information critique sur ce pool : il est gelé, plus aucun prêteur ne peut retirer.
Cause probable — borrowing_enabled non renseigné
Toutes les réserves remontent borrowing_enabled: None, y compris USDC/WXDAI (empruntables) et RTW-USD-01 (non empruntable). Le champ existe dans le schéma mais n'est pas peuplé, ce qui explique sans doute que l'agrégation ne puisse pas distinguer les deux catégories.
À noter : debt_totals_by_asset_type classe correctement collateral_only: 14711402.52, la structure de classification est donc déjà en place côté données.
Suggestions
- Peupler
borrowing_enabled par réserve depuis la configuration on-chain.
- Exclure les réserves non empruntables de
utilization_pct et available_liquidity_usd, ou exposer les deux agrégats côte à côte (borrowable_totals existe déjà mais retourne reserve_count: 0 et des zéros).
Impact
Sur RMM v3 (le pool utilisé ici), l'écart entre "33 % d'utilisation, $29,9M disponibles" et "100 %, $0 disponible" est la différence entre un pool sain et un pool en crise de liquidité depuis janvier 2026. Notre script contourne en recalculant sur USDC+WXDAI uniquement, mais un agent qui lit totals de bonne foi conclut l'inverse de la réalité.
Interface: MCP (via
alter-cli mcp)Alter version: 1.25.0
Platform: macOS 26.6.1 (Build 25G76)
Date: 2026-08-14
Résumé
Sur un pool dont certaines réserves ne sont pas empruntables,
totalsagrège collatéral pur et actifs empruntables. Résultat : une utilisation de 33 % et $29,9M de liquidité disponible sur un pool réellement à 100 % d'utilisation et $0 de liquidité.Le détail par réserve est correct — seul l'agrégat induit en erreur.
Repro
Observé
Attendu
utilization_pct: 100.02etavailable_liquidity_usd: 0.0, calculés sur les seuls actifs empruntables (USDC + WXDAI).RTW-USD-01 est un collatéral pur :
borrowing_enabled = falseon-chain, LTV 60 %. Sa "liquidité disponible" de $29,9M n'est empruntable par personne. L'inclure dans l'agrégat masque exactement l'information critique sur ce pool : il est gelé, plus aucun prêteur ne peut retirer.Cause probable —
borrowing_enablednon renseignéToutes les réserves remontent
borrowing_enabled: None, y compris USDC/WXDAI (empruntables) et RTW-USD-01 (non empruntable). Le champ existe dans le schéma mais n'est pas peuplé, ce qui explique sans doute que l'agrégation ne puisse pas distinguer les deux catégories.À noter :
debt_totals_by_asset_typeclasse correctementcollateral_only: 14711402.52, la structure de classification est donc déjà en place côté données.Suggestions
borrowing_enabledpar réserve depuis la configuration on-chain.utilization_pctetavailable_liquidity_usd, ou exposer les deux agrégats côte à côte (borrowable_totalsexiste déjà mais retournereserve_count: 0et des zéros).Impact
Sur RMM v3 (le pool utilisé ici), l'écart entre "33 % d'utilisation, $29,9M disponibles" et "100 %, $0 disponible" est la différence entre un pool sain et un pool en crise de liquidité depuis janvier 2026. Notre script contourne en recalculant sur USDC+WXDAI uniquement, mais un agent qui lit
totalsde bonne foi conclut l'inverse de la réalité.