v0.1.0-pre.007

This commit is contained in:
2026-07-23 20:00:04 +02:00
parent 1eeae9fa4b
commit f5bd8fab7f
18 changed files with 1315 additions and 61 deletions

View File

@@ -1,5 +1,5 @@
<!-- file: kb-lib/README.md -->
<!-- version: 3 -->
<!-- version: 4 -->
# kb-lib
@@ -43,11 +43,25 @@ cumulés et interdit les batches imbriqués. Le décodeur ninvente ni mint, n
final ; les validations `M/N`, soldes et autorités existantes restent stateful. La matrice
normative est `docs/SPL_TOKEN_MATRIX.json`.
## Décodeur SPL Associated Token Account
`SplAssociatedTokenAccountDecoder` couvre exclusivement
`ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL`. Il reconnaît les trois variantes publiées
`Create`, `CreateIdempotent` et `RecoverNested`, ainsi que lencodage historique vide de `Create`.
Le décodeur conserve les comptes dans leur ordre original, leurs flags, doublons, chemins
outer/inner et le statut de transaction. Il dérive les PDA avec lordre canonique
`[wallet, token_program, mint]`, conserve simultanément ladresse observée et ladresse attendue,
puis expose tout écart comme diagnostic. SPL Token classique et Token2022 sont distingués par leur
Program ID sans reconstruire leur état ni interpréter leurs extensions. La matrice normative est
`docs/SPL_ASSOCIATED_TOKEN_ACCOUNT_MATRIX.json`.
## API publique utile
- `SolanaCoreDecoder` : décodeur concret natif ;
- `SplMemoDecoder` : décodeur exact des trois générations SPL Memo ;
- `SplTokenDecoder` : décodeur exact du programme SPL Token classique ;
- `SplAssociatedTokenAccountDecoder` : décodeur exact du programme Associated Token Account ;
- `InstructionDecoder` : contrat de reconnaissance, couverture et décodage contextualisé ;
- `ProtocolDecoder` : contrat de compatibilité avec les observations historiques ;
- `CoreInstructionReplayInput` : input source-neutral produit par lextraction core ;