v0.1.0-pre.076
This commit is contained in:
82
docs/validation/PRE_062_DEVNET_VALIDATION_REPORT.md
Normal file
82
docs/validation/PRE_062_DEVNET_VALIDATION_REPORT.md
Normal file
@@ -0,0 +1,82 @@
|
||||
<!-- file: docs/validation/PRE_062_DEVNET_VALIDATION_REPORT.md -->
|
||||
<!-- version: 2 -->
|
||||
|
||||
# Rapport de validation Devnet — `0.1.0-pre.062`
|
||||
|
||||
## Portée
|
||||
|
||||
Ce rapport clôt la campagne Devnet exécutée sur une base PostgreSQL propre, sans réinitialisation entre les scénarios.
|
||||
|
||||
- profil : `local_devnet` ;
|
||||
- RPC : `https://api.devnet.solana.com` ;
|
||||
- genesis hash : `EtWTRABZaYq6iMfeYKouRu166VU2xqa1wcaWoxPkrZBG` ;
|
||||
- wallet opérateur : `J12WA6c42oqpWkLu1dFa4pCegkQJPpxabwc3RRCMSUuH` ;
|
||||
- preuves locales : `/tmp/devnet-validation/pre.062-clean` ;
|
||||
- CLI observées : `solana-cli 4.0.2`, `solana-keygen 4.0.2`, `spl-token-cli 5.5.0` ;
|
||||
- PostgreSQL : 13 tables sur 13 disponibles.
|
||||
|
||||
## Scénarios validés
|
||||
|
||||
| Code | Surface | Opération | Signature | Slot | Statut |
|
||||
|-------|---------------------|------------------|--------------------------------------------------------------------------------------------|------------:|----------|
|
||||
| S01 | Solana Core | System Transfer | preuve locale de campagne | — | validé |
|
||||
| S02 | SPL Memo v4 | Memo v4 | `3LJN8URRqvCJcjKMEpHmdVcJXsQHFMDc5cUiSCE4MkCsieqtPDXB39ReyzZ3oGh9WGTTaVT4ew5NPju8AWCzsUAk` | `479794063` | finalisé |
|
||||
| S03A | ATA classique | CreateIdempotent | `5ugba9K7NHN8vUsDnxhBGM37n3UsBsaX56B1ccrH3j64BbSgYcrxT1fsV5Z98waeyquYyxi46w4AENgrdhPucedn` | `479803680` | finalisé |
|
||||
| S03B | ATA Token-2022 | CreateIdempotent | `4Cv8p6bB2iqc1qRJDxhVgjGtriPx1Ji3F7AirqXPRUmCLVLCDhtQPLTipWgigGVSDTLSsrvz3mZtnNPe5GQwuUWG` | `479805232` | finalisé |
|
||||
| S04 | SPL Token classique | TransferChecked | `4ghND4BHUxVhCgRfKbZgtLHKV1f3VrF3XVXqSjCawT4dX2qEAHsRTKsDvHod9xKeNQE7HrHCZmPY4D9e8XENY7XT` | `479828478` | finalisé |
|
||||
| S05.1 | Token-2022 | MintToChecked | `3hdeszJNUdopzVNiBUSXLb7GYbuRJgQjVmXo9Rc6UUguWcuS3DcxeDGaVTxCsuuTA2uM5f6cKbJRkmYobU2FdkPX` | `479925764` | finalisé |
|
||||
| S05.2 | Token-2022 | TransferChecked | `5nx6eGR44AexrgSutBo8CvrpdDVCwgA3YcPrXomnBwPpKqBB3WcbZuNxy8H6AryKj3d4dF5kszKsvUYGx5qSzNPY` | `479926573` | finalisé |
|
||||
| S05.3 | Token-2022 | ApproveChecked | `2QLSCz3FqimxPqxFSGyiJtHJAJoFAoRxTsQPnageetGYZcMdtH3CprByPV4ho33xGAn1wTERkwJ56JQcBbSabYYn` | `479926994` | finalisé |
|
||||
| S05.4 | Token-2022 | Revoke | `3WjYXTMH8h7WAhpG641UHFGC3PfSYKZBHrnQuFJxsJ1agDq8BS7BfmKzXB1ciF3LKtLndRog4HiDybJ41EmTDgwC` | `479927342` | finalisé |
|
||||
| S05.5 | Token-2022 | BurnChecked | `4qRMULuArbjfnbqqqgpbs1AdVHA5XLZkxSA1h8M3BnkTjRCXNA7rDbGhNhMBc2GCoYeYyKmfT1YCPxySfYp67Rhz` | `479927657` | finalisé |
|
||||
| S05.6 | Token-2022 | FreezeAccount | `4E5GuHkRQjRJNCnr1WgMk9c4XYEu2qpH1KibrQcj1dK5wa1x9Jh3RTCxqYh63EZtbMB9JeK9F5SMcP6TqQm1pT4R` | `479927943` | finalisé |
|
||||
| S05.7 | Token-2022 | ThawAccount | `37D9d14hHpkBSj8WbKc4wtKssNhMzfTrXUANwvt8xZ3VypSZe43MxtEm2u7RHkdBhUVfms7vsuE5gjAfmREAXMJ2` | `479928232` | finalisé |
|
||||
| S05.8 | Token-2022 | CloseAccount | `3rarADrqnYkmGBFsNYCABE2WCKoE9KcP7d2bsqZDCn7pjLwHFKnjw7w3h1hMa3aWodXfcZz7DDCqgzvMamuS4AHP` | `479928489` | finalisé |
|
||||
|
||||
## Invariants vérifiés
|
||||
|
||||
Pour les scénarios applicatifs S02 à S05 concernés, les sorties ont confirmé selon la surface :
|
||||
|
||||
- simulation exacte réussie ;
|
||||
- confirmation réseau ;
|
||||
- insertion canonique ;
|
||||
- extraction Core ;
|
||||
- replay de décodage sans échec ;
|
||||
- matérialisation attendue ;
|
||||
- second replay idempotent ;
|
||||
- séparation correcte entre SPL Token classique, ATA et Token-2022.
|
||||
|
||||
La fixture Token-2022 est générée par une commande idempotente :
|
||||
|
||||
```bash
|
||||
cargo run -p kb-pipeline-demo-scenarios --bin kb-pipeline-demo-scenarios-cli -- prepare-token-2022-fixture --rpc-url "$KB_DEVNET_RPC_URL" --wallet "$KB_DEVNET_WALLET" --wallet-dir "$PWD/wallets/temporary/local_devnet" --decimals 9
|
||||
```
|
||||
|
||||
Le second passage a retourné `fixture_written=false`, sans recréer les comptes.
|
||||
|
||||
## Surface reportée
|
||||
|
||||
Le registre ElGamal n’est pas validé dans `pre.062`.
|
||||
|
||||
Motifs :
|
||||
|
||||
- absence d’un générateur de compte de contexte de preuve `PubkeyValidity` ;
|
||||
- panneau desktop Registry non raccordé à un handler et à une commande Tauri complète.
|
||||
|
||||
Le code existant ne doit pas être présenté comme validé Devnet avant une campagne dédiée.
|
||||
|
||||
## État avant commit
|
||||
|
||||
La prerelease est commitable lorsque les commandes suivantes restent propres dans le workspace utilisateur :
|
||||
|
||||
```bash
|
||||
cargo fmt --all
|
||||
cargo check --workspace
|
||||
cargo test -p kb-pipeline-demo-scenarios
|
||||
cargo clippy --all-targets
|
||||
python3 scripts/audit_rust_workspace_rules.py
|
||||
```
|
||||
|
||||
Le user a confirmé Clippy et l’audit après ajout manuel de deux `return` manquants dans des closures `or_else`. Ces corrections locales doivent être incluses dans le commit.
|
||||
|
||||
La refonte générale de `README.md`, `ROADMAP.md`, `CHANGELOG.md` et des documents historiques est volontairement reportée à la phase suivante ; ce rapport ne prétend pas la remplacer.
|
||||
Reference in New Issue
Block a user