222 lines
5.8 KiB
Markdown
222 lines
5.8 KiB
Markdown
<!-- file: deltas/0.2.5/pre.010.md -->
|
||
<!-- version: 1 -->
|
||
|
||
# Delta `0.2.5-pre.010`
|
||
|
||
## Objet
|
||
|
||
Clôturer documentairement `0.2.5 — Wallet foundation` après le gate security/interoperability/compliance `pre.009` validé, sans modifier le code de production, les dépendances, la cryptographie ni le wire `.kspwallet` V1.
|
||
|
||
Cette tranche prépare la candidate de publication `rel.001` et le prompt d'ouverture de `0.2.6 — Wallet Desk`.
|
||
|
||
## Base validée
|
||
|
||
Base fonctionnelle :
|
||
|
||
```text
|
||
0.2.5-pre.009
|
||
workspace.package.version = 0.2.5-pre.9
|
||
```
|
||
|
||
Checkpoint opérateur communiqué le 2026-08-19 :
|
||
|
||
```text
|
||
cargo fmt --all OK
|
||
cargo check --workspace OK, aucun warning
|
||
cargo clippy --workspace --all-targets OK, aucun warning
|
||
cargo test -p ksp-wallet-lib OK
|
||
unit 58 passed / 1 ignored
|
||
dependency_boundary 3 passed
|
||
public_api 9 passed
|
||
doctests 2 passed
|
||
cargo test --workspace OK
|
||
```
|
||
|
||
Audit inverse final communiqué :
|
||
|
||
```text
|
||
ed25519-dalek 2.2.0
|
||
<- ksp-wallet-lib
|
||
<- solana-keypair 3.1.2 <- ksp-wallet-lib
|
||
|
||
solana-keypair 3.1.2
|
||
<- ksp-wallet-lib uniquement comme parent KSP direct
|
||
|
||
solana-address 2.7.0
|
||
<- solana-keypair 3.1.2
|
||
<- solana-pubkey 4.3.0 via ksp-core-lib
|
||
```
|
||
|
||
Aucune remédiation de code, dépendance ou wire n'est requise par ce checkpoint.
|
||
|
||
## Version Cargo
|
||
|
||
`pre.010` est **strictement documentaire**. Conformément à la règle KSP faisant de `workspace.package.version` un signal technique, `Cargo.toml` n'est pas modifié et reste :
|
||
|
||
```text
|
||
0.2.5-pre.9
|
||
```
|
||
|
||
La livraison/delta reste néanmoins identifiée :
|
||
|
||
```text
|
||
0.2.5-pre.010
|
||
```
|
||
|
||
`0.2.5-rel.001` effectuera le passage Cargo vers `0.2.5` lors de la publication stable.
|
||
|
||
## Documentation Wallet ajoutée
|
||
|
||
### `crates/ksp-wallet-lib/README.md`
|
||
|
||
Ajoute la synthèse consumer-facing de Wallet :
|
||
|
||
- responsabilités et hors-périmètre ;
|
||
- dépendances et frontières KSP ;
|
||
- états Locked/VIEW/OWNER ;
|
||
- format V1 et primitives ;
|
||
- persistence/no-clobber/state conflict ;
|
||
- import/export ;
|
||
- threat model et limites ;
|
||
- fixtures/tests et liens durables.
|
||
|
||
### `crates/ksp-wallet-lib/USAGE.md`
|
||
|
||
Ajoute des exemples des surfaces publiques :
|
||
|
||
```text
|
||
create_wallet_file_v1
|
||
inspect_locked_wallet_file_v1
|
||
open_wallet_view_file_v1
|
||
open_wallet_owner_file_v1
|
||
WalletOwner::sign
|
||
metadata administration
|
||
OWNER/VIEW password rotation
|
||
disable/recreate VIEW
|
||
inspect/import transfer
|
||
OWNER export
|
||
surfaces in-memory
|
||
```
|
||
|
||
Le guide rappelle explicitement que les octets d'export contiennent le secret et que Config/Transport restent hors de Wallet.
|
||
|
||
## Spécification et validation finales
|
||
|
||
`docs/formats/KSPWALLET_V1.md` passe en candidate documentaire finale :
|
||
|
||
- toutes les tranches `pre.006`–`pre.010` sont indiquées acquises ;
|
||
- aucune opération V1 n'est encore annoncée comme restant à implémenter ;
|
||
- la boundary async KDF est décrite au présent ;
|
||
- le tree final est rattaché au gate `pre.009` ;
|
||
- une section de statut de clôture rappelle que `rel.001` ne doit pas changer le wire.
|
||
|
||
`docs/validation/008-V0_2_5_WALLET_SECURITY_COMPLIANCE.md` devient la matrice finale :
|
||
|
||
- ajoute les résultats opérateur `pre.009` ;
|
||
- enregistre les convergences Dalek/Solana-address/keypair ;
|
||
- ajoute le gate documentaire `pre.010` ;
|
||
- porte le verdict final candidate positif ;
|
||
- pointe vers `rel.001` strictement publicationnelle.
|
||
|
||
## Graphes et plans
|
||
|
||
Le graphe Wallet documente désormais les dépendances réelles et rappelle :
|
||
|
||
```text
|
||
Pubkey -> ksp-core-lib
|
||
Keypair -> encapsulée dans ksp-wallet-lib
|
||
Wallet -X-> Config/Transport/Tauri/Store/tracing direct/env
|
||
```
|
||
|
||
ROADMAP, séquence fonctionnelle, plan `0.2.5`, indices formats/validation/docs et prompts sont synchronisés sur :
|
||
|
||
```text
|
||
pre.010 acquis
|
||
rel.001 prochaine étape
|
||
0.2.6 Wallet Desk ensuite
|
||
```
|
||
|
||
## Prompt `0.2.6`
|
||
|
||
Ajoute :
|
||
|
||
```text
|
||
prompts/011-V0_2_6_START_PROMPT.md
|
||
```
|
||
|
||
Le prompt impose `0.2.6-pre.001` comme gate d'audit/sizing avant UI lourde et cadre notamment :
|
||
|
||
- `ksp-app-wallet-desk` Tauri mince ;
|
||
- composition Config composite + Wallet + HTTP ;
|
||
- besoin minimal identité autorisée + `getBalance` ;
|
||
- audit d'un `std.wallet` minimal sans secret ;
|
||
- handles VIEW/OWNER possédés côté Rust ;
|
||
- passwords éphémères et aucun secret en Config/frontend persistence ;
|
||
- inventory/path safety ;
|
||
- administration OWNER via les APIs Wallet existantes ;
|
||
- logging Tauri via l'écosystème tracing KSP ;
|
||
- TS-RS uniquement à la frontière applicative ;
|
||
- smoke Devnet de composition possible dans l'app ;
|
||
- `cargo tauri build` comme dernière validation.
|
||
|
||
## Fichiers
|
||
|
||
Ajoutés :
|
||
|
||
```text
|
||
crates/ksp-wallet-lib/README.md
|
||
crates/ksp-wallet-lib/USAGE.md
|
||
prompts/011-V0_2_6_START_PROMPT.md
|
||
deltas/0.2.5/pre.010.md
|
||
```
|
||
|
||
Modifiés :
|
||
|
||
```text
|
||
ROADMAP.md
|
||
docs/000-README.md
|
||
docs/architecture/005-DEPENDENCY_GRAPH.md
|
||
docs/formats/000-README.md
|
||
docs/formats/KSPWALLET_V1.md
|
||
docs/plans/002-FUNCTIONAL_RELEASE_SEQUENCE.md
|
||
docs/plans/012-V0_2_5_WALLET_FOUNDATION_PLAN.md
|
||
docs/validation/000-README.md
|
||
docs/validation/008-V0_2_5_WALLET_SECURITY_COMPLIANCE.md
|
||
prompts/000-README.md
|
||
```
|
||
|
||
Total delta : **14 fichiers**.
|
||
|
||
## Contrôles attendus
|
||
|
||
Le delta étant documentaire, aucun `cargo tree` supplémentaire n'est requis. Le checkpoint de clôture recommandé reste :
|
||
|
||
```bash
|
||
cargo fmt --all
|
||
cargo check --workspace
|
||
cargo clippy --workspace --all-targets
|
||
cargo test -p ksp-wallet-lib
|
||
cargo test --workspace
|
||
```
|
||
|
||
Vérifications documentaires :
|
||
|
||
```text
|
||
liens Markdown relatifs valides
|
||
aucun fichier Rust modifié
|
||
Cargo.toml identique à pre.009
|
||
workspace.package.version toujours 0.2.5-pre.9
|
||
README/USAGE/spec/validation/plan/prompt cohérents
|
||
```
|
||
|
||
## Suite
|
||
|
||
Si le checkpoint reste vert :
|
||
|
||
```text
|
||
commit : v0.2.5-pre.010
|
||
next : 0.2.5-rel.001
|
||
```
|
||
|
||
Aucun tag stable n'est créé pour `pre.010`.
|