0.7.47-1FE5
This commit is contained in:
155
NEXT_SESSION_PROMPT_0.7.47_EVENT_COVERAGE_V3.md
Normal file
155
NEXT_SESSION_PROMPT_0.7.47_EVENT_COVERAGE_V3.md
Normal file
@@ -0,0 +1,155 @@
|
||||
# Prompt de reprise — khadhroony-bobobot `0.7.47-1FE5` / Event coverage
|
||||
|
||||
Reprise du projet `khadhroony-bobobot`.
|
||||
|
||||
## Archive de départ
|
||||
|
||||
Utiliser :
|
||||
|
||||
```text
|
||||
khadhroony-bobobot-v0.7.47-1FE5-full.zip
|
||||
```
|
||||
|
||||
Et les docs :
|
||||
|
||||
```text
|
||||
README.md
|
||||
ROADMAP.md
|
||||
CHANGELOG.md
|
||||
DEX_DECODER_MATRIX.md
|
||||
DEX_EVENT_COVERAGE_MATRIX.md
|
||||
DB_EVENT_MODEL_REVIEW.md
|
||||
```
|
||||
|
||||
## Décision de reprise
|
||||
|
||||
Ne pas essayer de “faire tous les events de tous les DEX” dans une seule session.
|
||||
|
||||
La stratégie est maintenant :
|
||||
|
||||
```text
|
||||
un DEX/version = une tranche
|
||||
tous les events listés = audit coverage
|
||||
matérialisation seulement après corpus + SQL + invariants
|
||||
```
|
||||
|
||||
## Sources Git/IDL à utiliser systématiquement
|
||||
|
||||
- https://github.com/sevenlabs-hq/carbon/tree/main/decoders
|
||||
- https://github.com/0xfnzero/solana-streamer
|
||||
- https://github.com/0xfnzero/sol-parser-sdk/tree/main/idl
|
||||
- https://github.com/pinax-network/substreams-solana-idls/tree/main/src
|
||||
- https://github.com/hodlwarden/solana-tx-parser/tree/main/src
|
||||
- https://github.com/openbook-dex/openbook-v2
|
||||
- https://github.com/all-in-one-blockchain/phoenix-onchain-mm
|
||||
- https://docs.vybenetwork.com/docs/available-dexs-amms
|
||||
|
||||
## Objectif événementiel
|
||||
|
||||
Décoder le maximum d’events, pas seulement les swaps.
|
||||
|
||||
Inclure explicitement :
|
||||
|
||||
```text
|
||||
swap
|
||||
pool_create
|
||||
add_liquidity
|
||||
remove_liquidity
|
||||
position_open
|
||||
position_close
|
||||
fee
|
||||
reward
|
||||
admin/config
|
||||
mint
|
||||
burn
|
||||
transfer
|
||||
account_create
|
||||
account_close
|
||||
wrap_sol
|
||||
unwrap_sol
|
||||
order_place
|
||||
order_cancel
|
||||
order_fill
|
||||
consume_events
|
||||
settle_funds
|
||||
vault_deposit
|
||||
vault_withdraw
|
||||
lock
|
||||
unlock
|
||||
launch
|
||||
migration
|
||||
stake
|
||||
unstake
|
||||
unknown/unmapped audit
|
||||
```
|
||||
|
||||
Raison : burn, perte de liquidité, changements admin/config, vault withdraw, migration, mint anormal, close account, etc. peuvent influencer une décision de trading même si ce ne sont pas des trades.
|
||||
|
||||
## Base de données
|
||||
|
||||
La base actuelle suffit pour audit-only via `k_sol_dex_decoded_events`, mais elle n’est pas suffisante pour tout exploiter en requêtes métier.
|
||||
|
||||
À considérer avant ou pendant `0.7.48` :
|
||||
|
||||
```text
|
||||
k_sol_dex_event_coverage_entries
|
||||
k_sol_token_transfer_events
|
||||
k_sol_token_account_events
|
||||
k_sol_orderbook_events
|
||||
k_sol_vault_events
|
||||
k_sol_launch_events
|
||||
k_sol_liquidity_lock_events
|
||||
```
|
||||
|
||||
Priorité minimale :
|
||||
|
||||
```text
|
||||
1. k_sol_dex_event_coverage_entries
|
||||
2. k_sol_token_transfer_events
|
||||
3. k_sol_orderbook_events
|
||||
```
|
||||
|
||||
## Ordre des versions
|
||||
|
||||
```text
|
||||
0.7.48-pre event coverage + DB model checkpoint
|
||||
0.7.48 raydium_cpmm
|
||||
0.7.49 raydium_clmm
|
||||
0.7.50 pump_swap
|
||||
0.7.51 pump_fun
|
||||
0.7.52 meteora_dbc
|
||||
0.7.53 meteora_dlmm
|
||||
0.7.54 meteora_damm_v1
|
||||
0.7.55 meteora_damm_v2
|
||||
0.7.56 phoenix_v1
|
||||
0.7.57 openbook_v2
|
||||
0.7.58 orca_whirlpools
|
||||
0.7.59 launch surfaces
|
||||
0.7.60 DEX historiques/candidats
|
||||
0.7.61 validation consolidée
|
||||
```
|
||||
|
||||
## Règles fixes
|
||||
|
||||
- Un event non-trade ne produit jamais trade/candle.
|
||||
- Une transaction failed reste audit, jamais trade/candle.
|
||||
- Un discriminator upstream n’est pas une preuve métier.
|
||||
- Un program id upstream n’est pas vérifié sans corpus local.
|
||||
- Chaque decoder spécialisé doit remplacer le fallback `upstream_git.instruction_match` pour éviter les doublons.
|
||||
- Tout event connu mais non observé reste `upstream_git_mapped_unverified`.
|
||||
- Tout event observé mais non matérialisé reste audit-only ou decoded, pas materialized.
|
||||
|
||||
## Prochaine tâche recommandée
|
||||
|
||||
Commencer par :
|
||||
|
||||
```text
|
||||
0.7.48-pre — event coverage + DB model checkpoint
|
||||
```
|
||||
|
||||
Livrables attendus :
|
||||
|
||||
1. ajouter/documenter une table de couverture event/discriminator ;
|
||||
2. générer un rapport de couverture par DEX/version ;
|
||||
3. préparer `raydium_cpmm` avec la liste complète des events depuis Carbon/fnzero/IDL ;
|
||||
4. ne pas changer encore la matérialisation trade/candle.
|
||||
Reference in New Issue
Block a user