v0.5.2-pre.007

This commit is contained in:
2026-08-11 15:15:03 +02:00
parent 56572cec40
commit 279fd67cc0
27 changed files with 1151 additions and 143 deletions

View File

@@ -1,10 +1,45 @@
<!-- file: CHANGELOG.md -->
<!-- version: 17 -->
<!-- version: 18 -->
# CHANGELOG — khadhroony-bot3
Ce changelog décrit les évolutions fonctionnelles globales du projet. Il ne recense pas les prereleases, les correctifs `fix` ni le détail de chaque delta. Ces informations appartiennent aux changelogs des crates concernées.
## 0.5.2 — `ks-wallet` multi-wallet et stockage natif protégé
### Wallet natif et sécurité
- introduction du conteneur binaire versionné `<alias>.kswallet`, protégé par Argon2id v19 + XChaCha20-Poly1305 et publié atomiquement/no-clobber avec permissions privées ;
- séparation entre `WalletIdentity`, `WalletPassword`, `WalletFileHandle` et `UnlockedWallet`, sans getter public des bytes privés ;
- création, scan, lookup, inspection externe, unlock, signature et changement de mot de passe avec conservation exacte de la keypair/pubkey ;
- séparation des wallets persistants sous `wallets/` et des fixtures/keypairs temporaires sous `wallets/temporary/**` ;
- durcissement des erreurs, logs et `Debug` afin de ne pas exposer secret, password ou chemin local inutile.
### Migration et compatibilité
- migration non destructive du keypair JSON Solana legacy vers `.kswallet` ;
- inspection publique d'un fichier keypair externe sans import, avec retour limité à la pubkey et au format ;
- import/export testés de `SolanaCliJson` et du Base58 du keypair complet de 64 octets ;
- authentification obligatoire du mot de passe avant tout export secret ;
- refus des collisions d'alias/pubkey, symlinks, permissions ouvertes et écrasements silencieux ;
- exports opérateur du desktop confinés sous `data/wallets/` ;
- matrice documentée des formats Phantom, Solflare, Backpack, Trust Wallet et Base/Coinbase, avec Base58 comme seul adaptateur tiers de cette version.
### Configuration, scénarios et desktop
- `wallet_alias` optionnel/nullable par profil dans `ks-config`, sans mot de passe ni matériau secret ;
- résolution explicite d'un signer `.kswallet` dans les démos Devnet System/SPL/Metadata, sans fallback temporaire lorsqu'un alias persistant est choisi ;
- sélection session-only du wallet d'exécution depuis la fenêtre Wallets, indépendante de la configuration persistée et authentifiée côté backend ;
- inventaire/création/inspection/import/export des wallets et explorateur public SOL/tokens/historique par profil RPC dans `kb-app-demo-desktop`, via DTO applicatifs sûrs ;
- ajout de `ks-wallet-demo-scenarios`, consommateur externe réutilisable de `ks-wallet`, avec validation ordonnée A → B → rejet de A → ouverture/signature avec B → restauration vers A.
### Validation et suite
- `cargo fmt --all`, `cargo check --workspace`, `cargo clippy --all-targets`, audit workspace et `cargo test --workspace` validés sur la base `0.5.2-pre.006 + fix-010` ;
- validation runtime du signer persistant dans les démos Devnet avec `persistence="persistent"` et exports JSON/Base58 sous `data/wallets/` ;
- l'inventaire/migration des fixtures historiques et la régression de chargement de fixture Token-2022 sont explicitement reportés à `0.5.4` ;
- `0.5.3` est consacré à l'audit et la normalisation de `ks-store`.
## 0.5.1 — namespaces Khadhroony Solana et configuration sûre
### Namespace et ownership