6.6 KiB
Delta 0.2.12-pre.001 — audit/sizing SOL Prices Desk + Wallet integration
1. Base requise
v0.2.11
Archive opérateur utilisée : khadhroony-solana-project-v0.2.11-full-from-gitea.zip.
Vérifications d'identité :
workspace.package.version = 0.2.11 PASS à l'entrée
deltas/0.2.11/rel.001.md présent
prompts/017-V0_2_12_START_PROMPT.md présent
.git absent de l'archive
Le tag stable n'est donc pas revérifiable localement par Git; l'archive opérateur et ses marqueurs internes sont l'autorité de reprise.
2. Objectif
Exécuter le gate obligatoire pre.001 du prompt 0.2.12 sans commencer l'implémentation fonctionnelle : relire règles/architecture, auditer Off-chain/Config/Tauri/Wallet, fixer screen map, DTO/commands, Config/composite, état de présentation, threat model, intégration Wallet, tests/build/live et forecast.
3. Décisions prises
nouvelle app ksp-app-solprices-desk
ports 1434/1435
rôle HID provider-agnostic uniquement
composite Price Desk oui
file_id cfg.composite.ksp-app-solprices-desk
components logging + offchain_transport
profil default public_keyless
profil opt-in all_free
profil tests public_keyless
schema composite existant, aucun nouveau format
état présentation backend Tauri en mémoire uniquement
prix IPC chaîne décimale exacte, jamais f64
refresh row + selected/many + all via MarketPriceService
auto-refresh OUT
prix canonique OUT
valorisation USD balance Wallet OUT
nouvelle crate UI/API partagée OUT
Price Desk dialog plugin OUT
Price Desk capabilities core:default + tracing:default
Wallet Off-chain extension additive du composite/runtime
L'ajout du nouveau descriptor Config doit être atomique avec les resources Tauri de Config Desk, Wallet Desk et SOL Prices Desk, parce que prepare_packaged_runtime parcourt le registry complet.
4. Fichiers ajoutés
docs/plans/019-V0_2_12_SOL_PRICES_DESK_PLAN.md
docs/validation/015-V0_2_12_SOL_PRICES_DESK.md
deltas/0.2.12/pre.001.md
5. Fichiers modifiés
Cargo.toml
docs/000-README.md
docs/plans/000-README.md
docs/plans/002-FUNCTIONAL_RELEASE_SEQUENCE.md
docs/validation/000-README.md
workspace.package.version passe à 0.2.12-pre.1 conformément à VER-ID-009 pour toute prerelease non-fix.
6. Fichiers supprimés
aucun
7. Fichiers volontairement inchangés
ROADMAP.md
CHANGELOG.md
prompts/017-V0_2_12_START_PROMPT.md
docs/architecture/**
config/**
crates/**
.env.example
README/USAGE des crates
L'architecture durable contient déjà la frontière HID/Off-chain pertinente. Les Config/runtime/app sources sont réservées aux tranches d'implémentation suivantes. ROADMAP.md et CHANGELOG.md restent hors pre.001 et sont réservés au couloir de publication prévu.
8. Audit interne exécuté
Points confirmés :
MarketPriceService expose registry/refresh/refresh_many/refresh_all
MarketPriceDecimal exact suffit à l'IPC via projection String
registry/availability sont provider-neutral
ResolvedOffchainTransportConfig possède déjà MarketPriceService
schema composite V1 suffit au nouveau Desk
Wallet composite a logging/transport/wallet et sera étendu additivement
Config packaging copie tout le registry logique
Config Desk ports 1430/1431
Wallet Desk ports 1432/1433
nouvelle paire KSP réservée 1434/1435
capabilities actuelles = core:default + tracing:default
Price Desk n'a besoin ni dialog, ni fs, ni network plugin frontend
9. Audit externe exécuté
Sources officielles actuelles Tauri 2 et TS-RS réauditées. Tauri 2.11.5 est la release courante observée et la base utilise tauri = ^2.11; TS-RS 12.0.0 est courant et la base utilise ts-rs = ^12.0. Les patterns beforeDevCommand/beforeBuildCommand/devUrl/frontendDist, capabilities et core:default restent documentés.
Aucune mise à niveau de dépendance n'est justifiée par pre.001.
10. Validations exécutées
Sur l'archive extraite dans le sandbox :
python3 scripts/audit_rust_workspace_rules.py PASS
python3 scripts/audit_markdown_tables.py README.md ... crates PASS avant modification
Preuve opérateur fournie sur la base stable avant ouverture :
cargo fmt --all PASS
Rust rules audit PASS
Markdown table audit PASS
cargo check --workspace PASS
cargo clippy --workspace --all-targets PASS
cargo test --workspace PASS
Après le présent changement documentaire :
python3 scripts/audit_rust_workspace_rules.py PASS
python3 scripts/audit_markdown_tables.py ... deltas/0.2.12 PASS
11. Validations non exécutées dans ce sandbox
cargo fmt --all
cargo check --workspace
cargo clippy --workspace --all-targets
cargo test --workspace
cargo tauri dev
cargo tauri build
Cause : executable cargo absent du sandbox de préparation. Aucune de ces commandes n'est déclarée localement PASS. Le code Rust/config/runtime n'a pas été modifié par pre.001; le gate de base Cargo est couvert par la preuve opérateur fournie.
12. Forecast souple recalibré
pre.001 audit/sizing/maps/Config/security
pre.002 scaffold SOL Prices Desk
pre.003 Config composite + registry/resources atomiques + bootstrap
pre.004 runtime/registry rows/DTOs
pre.005 refresh row
pre.006 refresh many/all + in-flight/cooldown
pre.007 UX/polish/instrumentation
pre.008 hardening Price Desk
pre.009 Wallet composite/runtime Off-chain
pre.010 Wallet DTO/commands prix
pre.011 Wallet UI prix + non-régressions
pre.012 hardening cross-app
pre.013 gate technique/live + builds finaux
pre.014 réconciliation documentaire
pre.015 prompt suivant + CHANGELOG + ROADMAP
rel.001 publication stable
Le scope reste clôturable; aucun redécoupage n'est requis avant pre.002.
13. Questions ouvertes
Aucune question bloquante pour pre.002.
Les détails visuels exacts (largeurs/labels/ordre final des colonnes) pourront être ajustés dans pre.007 sans rouvrir les frontières provider-neutral, Config ou sécurité.