Files
khadhroony-bot3/migration/khadhroony-bot2-reference/kb_program_ids/README.md
2026-07-23 16:37:12 +02:00

31 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!-- file: kb_program_ids/README.md -->
<!-- version: 6 -->
# kb_program_ids
Ce crate centralise les identifiants de programmes Solana utilisés par les décodeurs, exécuteurs, stores, applications et outils du workspace.
## Rôle
Il fournit une source unique pour les `program_id` connus afin déviter les divergences entre les crates de lecture et les crates dexécution.
## Règle
Les crates spécialisés peuvent conserver un fichier `constants.rs` pour leurs constantes internes, mais les identifiants de programmes doivent être référencés via `kb_program_ids::...`.
## Registre énumérable
`registered_program_ids()` expose les identifiants connus avec un code stable en lower snake case. `find_registered_program_id()` permet la résolution inverse exacte dun program ID vers ce code. Ce registre sert notamment aux sélecteurs de lapplication de démonstration sans dupliquer la liste des constantes.
## Registre natif
`native_program_ids()` expose séparément les dix-huit programmes exécutables runtime natifs, loaders, précompiles et surfaces historiques suivis par `0.4.x`. `native_well_known_account_ids()` expose les comptes natifs non exécutables nécessaires au décodage et à laudit. Cette liste inclut notamment `vote`, les loaders BPF v1/v2/upgradeable, loader-v4 et les précompiles Ed25519, Secp256k1 et Secp256r1, ainsi que le stateless Slashing Program `S1ashing...`.
## Registre SPL vérifié
Le registre distingue les trois générations Memo (`v1`, `v3`, `v4`) et conserve `MEMO_PROGRAM_ID` comme alias de compatibilité vers Memo v3. Il expose également Single Pool, Account Compression, Noop, le registre ElGamal de Token-2022 et un alias explicite pour SPL Name Service.
## Stake Config
`StakeConfig11111111111111111111111111111111` est exposé par `STAKE_CONFIG_ACCOUNT_ID`. Lancien nom `STAKE_CONFIG_PROGRAM_ID` reste un alias déprécié de compatibilité, mais ladresse ne figure plus dans `native_program_ids()`.