3.1 KiB
Delta 0.3.2-pre.004-fix.001 — Store targets réseau-spécifiques + gate fixes
1. Base
Base exacte : 0.3.2-pre.004. Le gate opérateur du 29 août 2026 confirme cargo check, les tests Config/Store principaux et les trois builds Tauri, mais révèle :
1 warning Clippy collapsible_if dans ksp-config-lib/unit_tests/store.rs
1 échec Config Desk : fixture cfg.std.store absente
La discussion de design menée pendant ce gate confirme aussi qu'une instance Store ne doit jamais multiplexer plusieurs réseaux.
2. Décision target/réseau
Le mécanisme de profiles Config existant devient directement le mécanisme de targets Store nommés :
profile_id = target Store nommé
default_profile = target autonome
profile forcé = target explicitement imposé par job/worker/app
1 target = 1 network + 1 backend + 1 URI/base
1 StoreSettings = 1 RawNetworkId + 1 backend
ksp-store-lib ne contient aucun registry ni routeur multi-target. Pour changer de réseau, le consumer résout un autre profile std.store puis ouvre une autre instance Store.
3. Targets committed
devnet -> network devnet -> KSP_SECRET_STORE_DEVNET_POSTGRES_URI -> ksp_devnet
mainnet -> network mainnet-beta -> KSP_SECRET_STORE_MAINNET_POSTGRES_URI -> ksp_mainnet
testnet -> network testnet -> KSP_SECRET_STORE_TESTNET_POSTGRES_URI -> ksp_testnet
default_profile = devnet, cohérent avec le défaut Transport et plus sûr pour les workflows de développement. Le schema reste extensible à d'autres targets/réseaux sûrs.
4. Deuxième protection réseau
StoreSettings exige désormais un RawNetworkId. Les futures opérations RAW devront rejeter avant I/O toute identité/query dont le réseau ne correspond pas au réseau de l'instance Store. Cette vérification ne route jamais automatiquement vers un autre target.
5. Correctifs de gate
- collapse du
if letimbriqué signalé par Clippy ; - ajout de
crates/ksp-config-lib/unit_tests/fixtures/std.store.json; - Config Desk vérifie désormais explicitement que
cfg.std.storeappartient à l'inventaire profilé ; - tests Config ajoutés pour la sélection explicite et indépendante de
devnet,mainnetettestnet.
6. Version
workspace.package.version = 0.3.2-pre.4.fix.1
7. Gate opérateur
cargo fmt --all
python3 scripts/audit_rust_workspace_rules.py
python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates deltas/0.3.2
cargo check --workspace
cargo clippy --workspace --all-targets
cargo test -p ksp-config-lib
cargo test -p ksp-store-lib
cargo test -p ksp-store-lib --no-default-features
cargo check -p ksp-store-lib --no-default-features
cargo test -p ksp-app-config-desk
Les trois builds Tauri pre.004 sont déjà verts et les resources packagées ne changent pas dans ce fix.
8. Suite
Après gate propre, pre.005 peut ouvrir la connexion PostgreSQL physique. Elle consommera un seul target/réseau déjà résolu ; aucun multiplexage réseau n'est à introduire.