v0.1.0-pre.006
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: kb-lib/README.md -->
|
||||
<!-- version: 2 -->
|
||||
<!-- version: 3 -->
|
||||
|
||||
# kb-lib
|
||||
|
||||
@@ -29,10 +29,25 @@ La matrice `docs/NATIVE_SOLANA_DECODER_MATRIX.json` reste la source machine-read
|
||||
|
||||
Memo v1 ignore les comptes lors de la validation runtime. Memo v3 et v4 exigent que chaque compte fourni soit signer. Les transactions échouées restent des intentions non commitées et les payloads UTF-8 invalides ou signatures manquantes deviennent des tentatives invalides explicites. La matrice normative est `docs/SPL_MEMO_MATRIX.json`.
|
||||
|
||||
## Décodeur SPL Token classique
|
||||
|
||||
`SplTokenDecoder` couvre exclusivement le Program ID classique
|
||||
`TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA`. Il publie 28 déclarations de couverture pour
|
||||
les tags `0..24`, `38`, `45` et `255`, y compris les variantes historiques, checked,
|
||||
`WithdrawExcessLamports`, `UnwrapLamports` et `Batch`.
|
||||
|
||||
Le parseur conserve les montants bruts sans perte, les comptes dans leur ordre d’origine, les
|
||||
formes d’autorité simple ou multisig, les suffixes runtime et les chemins outer/inner. Une
|
||||
transaction échouée reste une intention non commitée. `Batch` est borné à 64 enfants, 512 comptes
|
||||
cumulés et interdit les batches imbriqués. Le décodeur n’invente ni mint, ni decimals, ni état
|
||||
final ; les validations `M/N`, soldes et autorités existantes restent stateful. La matrice
|
||||
normative est `docs/SPL_TOKEN_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 ;
|
||||
- `InstructionDecoder` : contrat de reconnaissance, couverture et décodage contextualisé ;
|
||||
- `ProtocolDecoder` : contrat de compatibilité avec les observations historiques ;
|
||||
- `CoreInstructionReplayInput` : input source-neutral produit par l’extraction core ;
|
||||
|
||||
Reference in New Issue
Block a user