This commit is contained in:
2026-07-23 16:37:12 +02:00
parent 99c345f2f2
commit 0da75c1311
2159 changed files with 230833 additions and 0 deletions

View File

@@ -0,0 +1,18 @@
<!-- file: docs/PROGRAM_ID_CONSTANTS_AUDIT.md -->
<!-- version: 1 -->
# Audit des constantes `PROGRAM_ID` des décodeurs
Ce document décrit la correction appliquée aux crates de décodeurs classifiés. Chaque décodeur associé à un `program_id` dans `registry/program_registry_seed.toml` doit exposer ce `program_id` via `src/constants.rs`, le réexporter depuis `src/lib.rs`, puis lutiliser dans `program_ids()` via `crate::XXX_PROGRAM_ID`.
## Règle retenue
- `src/constants.rs` contient les identifiants stables du programme, puis plus tard les discriminants, sélecteurs, discriminators Anchor, codes dinstruction et constantes de décodage.
- `src/lib.rs` réexporte les constantes publiques nécessaires.
- `src/decoder.rs` ne doit pas contenir de literal de `program_id` dans `program_ids()`.
- Les décodeurs génériques comme `kb_decoder_anchor` ne doivent pas inventer de `program_id`.
## Portée
La correction couvre les décodeurs classifiés présents dans le workspace et associés à un `program_id` non vide dans le registre. Les crates core Solana/SPL disposaient déjà de `constants.rs`.