35 KiB
DEX Decoder Matrix — khadhroony-bobobot 0.7.54 pump_fun closed
Note 0.7.54 closed — Pump.fun clos, Pump Fees ensuite
La tranche 0.7.54 ferme pump_fun avant pump_fees. La surface Pump.fun principale est couverte depuis le code local, l'IDL Solscan locale idls/pump_fun.6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P.json, le registre upstream et le corpus SQLite.
Décisions structurantes :
pump_funestsupported / closedcôté decoder et validation locale ;- toutes les instructions/events connus de l'IDL locale sont inventoriés ;
buy,sell,buy_exact_sol_inpeuvent être matérialisés directement avec montants fiables ;buy_v2,sell_v2,buy_exact_quote_in_v2restent decoded/audit/routing et s'appuient surpump_fun.trade_eventpour la matérialisation canonique ;pump_fun.trade_eventmatérialise les v2/exact quand les montants exécutés et la corrélation instruction sont prouvés ;- les non-trades Pump.fun alimentent uniquement les tables business adaptées ou restent audit-only avec skip reason.
La prochaine tranche est 0.7.55 pump_fees.
Note 0.7.53 final — PumpSwap clôturé et sources IDL locales
Le répertoire idls/ devient une source locale de savoir en plus des liens Git. Les IDL Solscan locales doivent être comparées au registre upstream et au corpus avant promotion métier. pump_swap est clôturé côté transaction/log decoder : instructions IDL, events Anchor audit-only, buy_exact_quote_in via BuyEvent exact, tests synthétiques et SQL global. Raydium AMM v4 / CLMM / CPMM ne nécessitent pas de correction dans cette clôture ; les gaps Meteora sont reportés.
sol-parser-sdk/idls/raydium_pool_v4.json a été vérifié comme source annexe distincte des fichiers idls/raydium_*.json présents localement : il expose notamment swapBaseIn et des comptes OpenBook/Serum, mais aucun fichier local ne porte ce nom ni ne correspond à son empreinte/format. Il reste donc un audit conditionnel, pas une source bloquante pour 0.7.53.
Cette matrice complète kb_lib/src/dex_support_matrix.rs. Elle documente ce qui est fait, ce qui reste à faire, et le niveau de preuve attendu par DEX/version.
Règle de lecture
| Statut | Sens |
|---|---|
supported |
Decoder local actif et matérialisation métier possible sur corpus validé. |
partial |
Decoder partiel ou surface partielle : des events existent, mais la couverture n’est pas complète. |
audit-only |
Decoder local spécialisé, mais aucun trade/candle/matérialisation marché. |
planned |
Program id ou surface connue, mais decoder non prioritaire ou non activé. |
to_verify |
Source externe ou candidat : aucun statut vérifié sans corpus local. |
ignored/historical |
À conserver pour historique ou compatibilité, mais non prioritaire. |
Sources upstream à comparer
- Carbon decoders :
https://github.com/sevenlabs-hq/carbon/tree/main/decoders - Solana Streamer :
https://github.com/0xfnzero/solana-streamer - Sol Parser SDK IDLs :
https://github.com/0xfnzero/sol-parser-sdk/tree/main/idls - Pinax Substreams Solana IDLs :
https://github.com/pinax-network/substreams-solana-idls/tree/main/src - HODL Warden Solana Tx Parser :
https://github.com/hodlwarden/solana-tx-parser/tree/main/src - OpenBook v2 :
https://github.com/openbook-dex/openbook-v2 - Phoenix on-chain MM :
https://github.com/all-in-one-blockchain/phoenix-onchain-mm - Vybe DEX/AMM support list :
https://docs.vybenetwork.com/docs/available-dexs-amms
Matrice prioritaire DEX/version
| Ordre | DEX/version | État actuel | Fait | Reste à faire |
|---|---|---|---|---|
| 1 | raydium_cpmm |
supported / 0.7.50-pre-r2 closure recheck |
Couverture CPMM clôturée : swaps, lifecycle, fees, admin/config, deposit/withdraw, lp_change_event, swap_event decoded-only, cpi_event transport Carbon et anchor_idl_instruction Solscan/manual pour 40f4bc78a7e9690a. |
Ne pas promouvoir anchor_idl_instruction : c'est de la gestion Anchor IDL, pas un événement AMM métier. |
| 2 | raydium_clmm |
supported / 0.7.50-pre-r2 closure recheck |
Couverture CLMM complétée : cpi_event, update_dynamic_fee_config, Program-data events locaux, create_support_mint_associated vers k_sol_token_account_events, familles sans unknown, router/swap Program-data en decoded-only. |
Rejouer la base CLMM et confirmer que les seuls résidus sont decoded_events_only, transactions failed ou absence prouvée de contexte pool/pair. |
| 3 | raydium_launchpad |
bootstrap / 0.7.50 |
Surface canonique normalisée, 1 entrée programme + 26 discriminants Carbon/IDL listés, fallback audit/mapped decoder, SQL dédié. | Créer DB neuve, backfill par discriminant, replay forcé, promouvoir seulement après corpus local. |
| 4 | raydium_amm_v4 |
supported / 0.7.51 closed |
Decoder maximal AMM v4 00..11, swaps spécialisés, lifecycle/liquidity/fees/admin/orderbook validés. |
Stable Swap clôturé ensuite en 0.7.52; surveiller les surfaces restantes. |
| 5 | raydium_stable_swap |
supported / 0.7.52 closed |
Decoder legacy 1 octet, surface 00..0d, swaps matérialisés depuis deltas vault exacts. |
Surveiller seulement de nouveaux discriminants ou swap_event observé. |
| 6 | raydium_pool_v4 |
to_verify / late-phase conditional audit |
IDL annexe mentionnée par fnzero, non présente dans l'archive locale, pas de program id/rôle confirmé ici. | Ne pas promouvoir tant que program id distinct, rôle exact et corpus exploitable ne sont pas confirmés. |
| 7 | pump_swap |
supported / 0.7.53 closed |
buy, sell + buy_exact_quote_in matérialisable via BuyEvent exact ; instructions non-trade spécialisées : liquidity, fee/creator fee, admin/config, cashback/token incentives, volume accumulator ; events Anchor autonomes audit-only. |
Trades/candles uniquement depuis montants exacts ; failed tx decoded-only ; instruction_bounds_only reste decoded-only ; tests synthétiques IDL et SQL global ajoutés. |
| 8 | pump_fun |
supported / 0.7.54 closed |
Surface launch/bonding/migration Pump.fun couverte localement ; trades directs et trade_event canonique validés. |
Ne rouvrir que pour bug prouvé ou changement externe ; pump_fees suit en 0.7.55. |
| 9 | meteora_dbc |
partial / 0.7.56 planned |
Swaps/instruction audits observés ; Demo3 donne du corpus. | Couverture complète DBC : launch/bonding curve, swap, migration, config/admin, fees ; matérialiser seulement ce qui est prouvé. |
| 10 | meteora_dlmm |
supported / 0.7.57 parity |
Couverture avancée validée en 0.7.45 : swaps, liquidity, positions, lifecycle, fees ; non-trade matérialisé. |
Résoudre les audits résiduels non mappés ; comparer Carbon/IDL pour events rewards/admin restants ; revalidation base neuve. |
| 11 | meteora_damm_v1 |
supported / 0.7.58 parity |
Couverture 0.7.46 : swap, create_pool, add/remove liquidity, claim_fee, create_lock_escrow, lock_liquidity. |
Vérifier les surfaces upstream non observées ; améliorer rattachement pool/pair pour remove_liquidity non matérialisés ; revalidation stricte. |
| 12 | meteora_damm_v2 |
partial / 0.7.59 planned |
swap, instruction_audit, registry/discriminants et corpus Demo3 existent. |
Couvrir tous les events Carbon/source : create pool, liquidity, fees, dynamic config, admin ; déterminer actionability des swaps ; matérialiser si montants fiables. |
| 13 | phoenix_v1 |
audit-only / 0.7.60 planned |
Decoder local audit-only ; log_audit, order place/cancel, withdraw ; parsing strict 0x0f; events Reduce, Place, TimeInForce observés ; trade_count=0. |
Terminer tous les events Git : Fill, FillSummary, Fee, Evict, ExpiredOrder, etc. ; ajouter counts/flags audit ; seulement ensuite étudier trade materialization. |
| 14 | openbook_v2 |
audit-only / 0.7.61 planned |
Decoder local audit-only ; instructions order/cancel/consume/settle ; Program data mappé : FillLog, OpenOrdersPositionLog, TotalOrderFillEvent, SettleFundsLog; trade_count=0. |
Vérifier layouts fill/out et sens maker/taker/base/quote ; ajouter table audit éventuelle ; ne matérialiser trades qu’après validation du sens économique. |
| 15 | orca_whirlpools |
partial / 0.7.62 planned |
Premier decoder historique présent ; swaps/create_pool partiels. | Comparer Carbon/IDL complet ; couvrir liquidity, positions, fees/rewards, tick arrays ; valider swaps exploitables et non-trades. |
| 16 | legacy_launch_candidates |
planned launch |
Anciennes entrées launch à réévaluer après raydium_launchpad. |
Ne pas confondre Launchpad, LaunchLab, CPMM/CLMM/AMM v4 ; rattacher aux pools tradables seulement après corpus. |
| 17 | meteora_vault |
to_verify |
Présent comme indice upstream / compte associé. | Corpus direct obligatoire ; decoder séparé si events vault réels ; aucune promotion via DAMM indirect. |
| 18 | fluxbeam |
partial/to_verify |
Decoder initial existant ; Demo3 peut produire des candidats. | Vérifier source/IDL ; compléter swap, pool, liquidity, fees/admin ; matérialisation uniquement après corpus. |
| 19 | dexlab |
partial/to_verify |
Decoder initial historique ; ancienne entrée beta supprimée. | Reconfirmer program id/source ; décoder events disponibles ; distinguer DexLab natif et liens OpenBook/market. |
| 19 | lifinity_v2 |
to_verify |
Program id listé par sources externes/Vybe ; pas de corpus concluant. | Trouver IDL/source ; Demo3 par program/market ; audit-only d’abord. |
| 20 | stabble_stable_swap / stabble_weighted_swap |
to_verify |
Program ids/indices via sources externes ; candidats Demo3 observables. | Source/IDL + corpus + decoder audit-only ; déterminer surface AMM et montants exploitables. |
| 21 | bonkswap |
to_verify |
Program id/Carbon/Vybe selon registre ; swaps candidats possibles. | Vérifier program id, source et corpus ; décoder tous events ; pas de trade sans montants. |
| 22 | boop / boop_fun |
to_verify / launch |
Entrée de découverte. | Séparer launch surface et swap effectif ; corpus + source obligatoire. |
| 23 | moonshot / moonit |
to_verify / launch |
Moonshot buy/sell observés via upstream candidates ; Moonit launch attribution historique. | Source/IDL + migration + rattachement pools ; éviter heuristiques seules. |
| 24 | heaven |
to_verify |
Program id/candidat ajouté en matrice. | Vérifier s’il est launch, AMM ou les deux ; corpus dédié. |
| 25 | printr |
to_verify |
Preset Demo3 ajouté ; candidats observables. | Source/IDL, discriminants, corpus, decoder audit-only. |
| 26 | metadao_* |
to_verify |
Presets spécifiques : launchpad, bid wall, futarchy, AMM. | Traiter par programme séparé ; ne pas utiliser mint ids comme program ids ; corpus obligatoire. |
| 27 | jupiter_*, dflow_aggregator_v4, okx_dex |
aggregator_router |
Registry/discovery pour contexte transactionnel. | Ne pas matérialiser en DEX direct ; utiliser pour routeSource/routing/context. |
Checklist obligatoire par DEX/version
Pour chaque DEX ou version, la tranche doit fermer les points suivants :
- Source Git/IDL recensée.
- Tous les
program_idvérifiés localement ou marquésto_verify. - Tous les discriminants d’instructions listés.
- Tous les discriminants d’events/logs listés.
- Demo3 corpus constitué.
- Demo2 backfill de signatures réussies.
- Replay forcé sur base
0.7.47+. - SQL : decoded events par kind.
- SQL :
trade_count=0pour audit-only. - SQL : trade/candle uniquement si montants exploitables.
- Cleanup
upstream_git.instruction_matchsi decoder spécialisé local. - Décision finale :
audit-only,materialized,partial, outo_verify.
Notes de matérialisation
Un event peut devenir materialized uniquement si :
- la transaction est
OK; - les comptes nécessaires sont identifiés ;
- les mints sont fiables ;
- les montants sont fiables ;
- le sens base/quote est validé ;
- les requêtes SQL prouvent l’absence de faux trades/candles ;
- les tests et clippy sont verts.
Annexe — snapshot de kb_lib/src/dex_support_matrix.rs (1FE5)
| Code | Rôle | Surface | Program id status | Observed | Decoded | Materialized | Status | Skip reason |
|---|---|---|---|---|---|---|---|---|
pump_fun |
launch_surface |
launch/bonding |
known |
oui | oui | oui | 0.7.54_closed |
Decoder maximal IDL/local ; v2/exact matérialisés via trade_event canonique ; non-trades selon contexte. |
pump_swap |
dex_effective |
AMM |
known |
oui | oui | oui | supported |
|
raydium_cpmm |
dex_effective |
AMM |
known |
oui | oui | oui | supported |
|
raydium_clmm |
dex_effective |
CLMM |
known |
oui | oui | oui | supported |
|
raydium_amm_v4 |
dex_effective |
AMM |
known |
oui | oui | oui | supported |
|
raydium_launchpad |
launch_surface |
launch |
known |
non | oui | non | bootstrap |
decoded_events_only_until_local_corpus |
raydium_liquidity_locking |
to_verify |
liquidity_locking |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
raydium_router |
aggregator_router |
router |
known |
non | non | non | partial |
router_not_materialized_as_direct_trade_surface |
raydium_stable_swap |
dex_effective |
AMM |
known |
oui | oui | oui | supported |
0.7.52 closed; swaps via stable_swap_vault_balance_delta uniquement |
meteora_dlmm |
dex_effective |
DLMM |
known |
oui | oui | oui | supported |
|
meteora_dlc |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
surface_and_program_id_to_verify |
meteora_damm_v1 |
dex_effective |
AMM |
known |
oui | oui | non | partial |
meteora_damm_v1_swap_without_amount_payload |
meteora_damm_v2 |
dex_effective |
AMM |
known |
non | oui | oui | partial |
not_observed_in_0_7_28_replay |
meteora_dbc |
dex_effective |
bonding_curve |
known |
non | oui | oui | partial |
not_observed_in_0_7_28_replay |
orca_whirlpools |
dex_effective |
CLMM |
known |
non | oui | oui | partial |
not_observed_in_0_7_28_replay |
fluxbeam |
dex_effective |
AMM |
known |
non | oui | oui | partial |
not_observed_in_0_7_28_replay |
dexlab |
dex_effective |
AMM |
known |
non | oui | oui | partial |
not_observed_in_0_7_28_replay |
bags |
launch_surface |
launch |
unknown |
non | non | non | planned |
program_id_to_verify |
letsbonk |
launch_surface |
launch |
unknown |
non | non | non | planned |
program_id_to_verify |
bonk |
launch_surface |
launch |
unknown |
non | non | non | planned |
program_id_to_verify |
bonk_fun |
launch_surface |
launch |
unknown |
non | non | non | planned |
program_id_to_verify |
okx_dex |
aggregator_router |
aggregator |
to_verify |
non | non | non | planned |
program_id_to_verify |
boop_fun |
launch_surface |
launch |
to_verify |
non | non | non | planned |
program_id_to_verify |
moonshot |
launch_surface |
launch |
to_verify |
non | non | non | planned |
historical_entities_py_program_id_requires_corpus_verification |
believe |
launch_surface |
launch |
unknown |
non | non | non | planned |
program_id_to_verify |
metadao |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
umbrella_surface_programs_split_into_specific_discovery_targets |
metadao_launchpad_v0_7_0 |
to_verify |
launch |
to_verify |
non | non | non | to_verify |
official_metadao_program_id_requires_local_corpus_verification |
metadao_bid_wall_v0_7_0 |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
official_metadao_program_id_requires_local_corpus_verification |
metadao_futarchy_v0_6_0 |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
official_metadao_program_id_requires_local_corpus_verification |
metadao_amm_v0_5_0 |
to_verify |
AMM |
to_verify |
non | non | non | to_verify |
official_metadao_program_id_requires_local_corpus_verification |
printr |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
solscan_program_label_requires_local_corpus_verification |
zora |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
solscan_program_label_requires_local_corpus_verification |
moonit |
launch_surface |
launch |
unknown |
non | non | non | planned |
program_id_to_verify |
launchbeam |
launch_surface |
launch |
unknown |
non | non | non | planned |
program_id_to_verify |
heaven |
launch_surface |
launch |
to_verify |
non | non | non | planned |
program_id_to_verify |
gavel |
to_verify |
auction |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
pump_fees |
to_verify |
fee_program |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
meteora_pools |
dex_effective |
AMM |
alias_of_meteora_damm_v1 |
non | non | non | to_verify |
program_id_alias_held_by_meteora_damm_v1 |
dflow_aggregator_v4 |
aggregator_router |
aggregator |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
drift_v2 |
to_verify |
perps |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
jupiter_swap |
aggregator_router |
aggregator |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
jupiter_dca |
aggregator_router |
dca |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
jupiter_limit_order |
aggregator_router |
limit_order |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
jupiter_limit_order_2 |
aggregator_router |
limit_order |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
jupiter_perpetuals |
to_verify |
perps |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
jupiter_lend |
to_verify |
lending |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
kamino_lending |
to_verify |
lending |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
kamino_vault |
to_verify |
vault |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
kamino_farms |
to_verify |
farms |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
kamino_limit_order |
to_verify |
limit_order |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
marginfi_v2 |
to_verify |
lending |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
onchain_labs_dex_v1 |
dex_effective |
AMM |
alias_of_okx_dex |
non | non | non | to_verify |
program_id_alias_held_by_okx_dex |
onchain_labs_dex_v2 |
dex_effective |
AMM |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
pancake_swap |
dex_effective |
AMM |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
vertigo |
dex_effective |
AMM |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
virtuals |
launch_surface |
launch |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
wavebreak |
dex_effective |
AMM |
to_verify |
non | non | non | to_verify |
upstream_git_program_id_requires_local_corpus_verification |
aldrin |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
aldrin_v2 |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
crema |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
cropper |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
lifinity_v1 |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
lifinity_v2 |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
mercurial |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
orca_v1 |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
orca_v2 |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
phoenix |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
saber |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
saber_decimals |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
openbook_v2 |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
fox |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
sanctum_infinity |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
saros |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
stabble_stable_swap |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
stabble_weighted_swap |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
stepn |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
solayer |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
penguin |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
sanctum |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
one_dex |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
solfi |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
bonkswap |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
guacswap |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
invariant |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
oasis |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
token_swap |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
helium_network |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
marinade_liquid_staking |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
francium_yield_pools |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
marinade_governance |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
serum_dao |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
port_finance |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
solend_classic |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
hyperspace_nft_amm |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
magic_eden_nft_amm |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
raydium_staking_early |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
orca_aquafarm_v1 |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
quarry_merge_mining |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
historical_entities_py_program_id_requires_corpus_verification |
goosefx_v1 |
to_verify |
AMM |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
obric_v2 |
to_verify |
AMM |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
ondo_global_market |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
scorch |
to_verify |
AMM |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
zerofi |
to_verify |
AMM |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
manifest_clob |
to_verify |
orderbook |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
alphaq |
to_verify |
AMM |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
goonfi |
to_verify |
AMM |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
goonfi_v2 |
to_verify |
AMM |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
byreal |
to_verify |
AMM |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
bisonfi |
to_verify |
AMM |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
fusionamm |
to_verify |
AMM |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
woofi |
to_verify |
AMM |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
aquifer |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
humidifi |
to_verify |
unknown |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
solfi_v2 |
to_verify |
AMM |
to_verify |
non | non | non | to_verify |
vybe_supported_dex_amm_requires_local_corpus_and_decoder_source |
Note 0.7.48 — Raydium CPMM
raydium_cpmm reste supported, mais sa couverture est maintenant explicitée au niveau entry/event coverage.
Entrées CPMM couvertes localement depuis Carbon/fnzero/IDL :
- swaps :
swap_base_input,swap_base_output; - events Anchor self-CPI audit-only :
lp_change_event,swap_event; - pool/lifecycle :
initialize,initialize_with_permission; - liquidity :
deposit,withdraw; - fees :
collect_creator_fee,collect_fund_fee,collect_protocol_fee; - admin/config/permission :
create_amm_config,update_amm_config,update_pool_status,create_permission_pda,close_permission_pda.
create_amm_config est traité comme admin/config, pas comme pool creation. swap_event est conservé comme audit-only pour ne pas doubler les trades matérialisés depuis les instructions swap_base_input / swap_base_output.
Note 0.7.48 final — Raydium CPMM
raydium_cpmm est considéré supported et clôturable pour la tranche 0.7.48. Les entrées matérialisées couvrent swaps (swap_base_input, swap_base_output), liquidity (deposit, withdraw, lp_change_event), lifecycle (initialize, initialize_with_permission), fees (collect_creator_fee, collect_fund_fee, collect_protocol_fee) et admin/config (create_amm_config, create_permission_pda, update_amm_config).
swap_event reste audit-only pour éviter tout doublon de trade/candle. close_permission_pda et update_pool_status restent connus upstream mais non observés localement.
Note 0.7.49 — Raydium CLMM initial coverage sync
raydium_clmm reste supported, mais la tranche 0.7.49 rouvre sa couverture événementielle complète au lieu de se limiter aux swaps.
État local repris : swap, swap_v2, increase_liquidity_v2, decrease_liquidity_v2, open_position_with_token22_nft et close_position disposent déjà d'un chemin local spécialisé ou mappé. Les autres entrées CLMM restent à confirmer par corpus avant toute promotion.
Le registre est complété avec les entrées issues de l'IDL officiel Raydium non présentes dans le snapshot Carbon courant : close_limit_order, close_protocol_position, create_customizable_pool, create_dynamic_fee_config, create_support_mint_associated et settle_limit_order.
Règle de clôture : les positions CLMM, fees/rewards et surfaces limit-order ne doivent produire aucune ligne trade/candle tant que le sens économique, les montants, les comptes et les mints ne sont pas prouvés par replay local.
Note 0.7.50-pre-r2 — CPMM/CLMM source parity
La clôture 0.7.50-pre-r2 complète les tranches 0.7.48 et 0.7.49 sans rouvrir leur logique trade/candle :
raydium_cpmm.cpi_eventest ajouté comme transport Anchor/CPI decoded-only, distinct deswap_base_input/swap_base_output.- Le discriminant CPMM
40f4bc78a7e9690aest codé commeraydium_cpmm.anchor_idl_instructiondecoded-only après inspection Solscan : gestion Anchor IDL, aucune matérialisation métier. raydium_clmm.cpi_eventetraydium_clmm.update_dynamic_fee_configsont ajoutés depuis Carbon.- Les Program-data events CLMM reçoivent des
local_event_kindet familles explicites. create_support_mint_associatedintroduit une cible métier spécialisée :k_sol_token_account_events.
Note 0.7.51 — raydium_amm_v4
| Champ | Décision 0.7.51 |
|---|---|
| Code local | raydium_amm_v4 |
| Program id canonique | 675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8 |
| Statut | supported / 0.7.51 closed ; max-decoder local 00..11 validé |
| Sources principales | Carbon raydium-amm-v4-decoder, Pinax src/raydium/amm, fnzero raydium_amm_v4.json, Solscan Program IDL |
| Swaps | swap_base_in, swap_base_out, swap_base_in_v2, swap_base_out_v2 |
| Pool lifecycle | initialize, initialize2, pre_initialize |
| Liquidity | deposit, withdraw |
| Fees/admin/orderbook side effects | withdraw_pnl, withdraw_srm, set_params, monitor_step, admin_cancel_orders, migrate_to_open_book, config account ops |
| SPL Token / Token-2022 side effects | transversaux, non promus comme raydium_amm_v4.* directs |
raydium_pool_v4 |
audit comparatif uniquement ; pas de decoder autonome sans program id et corpus local |
La tranche a été validée sur base SQLite dédiée : tous les discriminants 00..11 sont observés localement. Les gaps de matérialisation restants sont expliqués par decoded-only, transaction failed ou absence de catalogue/deltas exploitables.
0.7.52 — Raydium Stable Swap
| decoder_code | program id | status | layout | notes |
|---|---|---|---|---|
raydium_stable_swap |
5quBtoiQqxF9Jv6KYKctB59NT3gtJD2Y65kdnB1Uev3h |
supported / closed | legacy 1 octet | Surface locale 00..0d couverte ; swaps swap_base_in/out matérialisés uniquement depuis deltas vault exacts ; instruction bounds et failed tx restent decoded-only. |
0.7.54 — Pump.fun
| Decoder | Program id | Statut | Source discriminants | Couverture locale initiale | Règles métier |
|---|---|---|---|---|---|
pump_fun |
6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P |
supported / 0.7.54 closed | upstream registry + idls/pump_fun.6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P.json + corpus SQLite validé |
40 instructions et 23 events Anchor connus couverts ; buy/sell/buy_exact_sol_in matérialisés ; buy_v2/sell_v2/buy_exact_quote_in_v2 audit/routing ; trade_event matérialise les montants exécutés v2/exact |
k_sol_trade_events uniquement avec montants exacts ; create/migrate vers k_sol_launch_events ; creator fees vers k_sol_fee_events ; cashback/incentives vers k_sol_reward_events ; admin/config vers k_sol_pool_admin_events ; decoded-only/audit-only avec skip reason sinon |
0.7.53 — PumpSwap
| Decoder | Program id | Statut | Source discriminants | Couverture locale | Règles métier |
|---|---|---|---|---|---|
pump_swap |
pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA |
supported / 0.7.53 closed | upstream registry + idls/pump_swap.pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA.json + corpus Demo3/replay |
instructions : buy, sell, buy_exact_quote_in, deposit, withdraw, create_pool, create_config, update_fee_config, creator-fee, cashback, token incentives, volume accumulator, admin/config ; events Anchor autonomes audit-only |
buy_exact_quote_in trade uniquement avec pump_swap_anchor_buy_event; aucun non-swap en trade/candle ; failed tx decoded-only ; buy_event/sell_event Program-data audit-only ; transfer_creator_fees_to_pump_v2 et update_buyback_config confirmés par Solscan IDL ; set_reserved_fee_recipient conservé sur preuve log locale |