v0.2.2-pre.007-fix.002

This commit is contained in:
2026-08-18 10:04:18 +02:00
parent 05e0e96083
commit c93a833bac
7 changed files with 118 additions and 15 deletions

View File

@@ -1,5 +1,5 @@
<!-- file: docs/validation/004-V0_2_2_HTTP_ACCOUNTS_TOKENS_CLUSTER.md -->
<!-- version: 2 -->
<!-- version: 3 -->
# Validation finale `0.2.2` — HTTP Accounts + Tokens + Cluster
@@ -143,7 +143,7 @@ Il construit `HttpTransportSettings` programmatiquement, sans Config ni environn
```text
https://api.devnet.solana.com
-> getAccountInfo(System Program)
-> getTokenAccountsByOwner(System Program, selector programId = SPL Token)
-> getTokenAccountsByOwner(owner ordinaire documenté, selector programId = SPL Token, finalized/jsonParsed)
-> getEpochInfo
-> getVoteAccounts
```
@@ -154,10 +154,12 @@ Exécution explicite :
cargo test -p ksp-onchain-transport-lib --test transport_devnet_smoke -- --ignored --nocapture
```
Le test est `ignored` par défaut. Sa branche Token ne dépend plus d'un mint d'exemple : elle accepte naturellement une liste vide et vérifie seulement qu'un appel Token structurellement valide atteint Devnet. Un incident réseau/rate-limit doit être analysé séparément ; le smoke ne remplace jamais les fixtures HTTP locales.
Le test est `ignored` par défaut. Sa branche Token ne dépend plus d'un mint d'exemple : elle utilise un owner Pubkey ordinaire de l'exemple RPC public, le selector `programId` canonique et une config explicite `finalized/jsonParsed`. Elle accepte naturellement une liste vide et vérifie seulement qu'un appel Token structurellement documenté atteint Devnet. Un incident réseau/rate-limit doit être analysé séparément ; le smoke ne remplace jamais les fixtures HTTP locales.
Correction `pre.007-fix.001` : lors de la première passe opérateur de `pre.007`, `getTokenSupply` sur le mint d'exemple de la documentation a échoué avec le code RPC `-32602`. Le smoke Config -> Transport, lui, a réussi. La branche Token est donc volontairement passée à `getTokenAccountsByOwner` avec selector `programId`, qui ne requiert aucun mint mutable pour prouver la traversée live du wrapper Token.
Correction `pre.007-fix.002` : lors de la passe suivante, `getTokenAccountsByOwner(System Program, { programId })` sans config explicite a échoué avec RPC `-32600`, tandis que `fmt`, `check`, `clippy`, les tests Transport, le workspace et le smoke Config -> Transport étaient verts. Le smoke Transport utilise désormais la forme complète documentée `owner ordinaire + { programId } + { commitment: finalized, encoding: jsonParsed }`. Ce changement reste limité au scénario live et ne redéfinit pas l'optionalité de la config dans le wrapper.
## Smoke de composition Config -> Transport
Le smoke historique `0.2.1` reste disponible :