v0.2.12-pre.005-fix.001
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/plans/019-V0_2_12_SOL_PRICES_DESK_PLAN.md -->
|
||||
<!-- version: 10 -->
|
||||
<!-- version: 11 -->
|
||||
|
||||
# Plan `0.2.12` — SOL Prices Desk + intégration prix Wallet Desk
|
||||
|
||||
@@ -514,10 +514,16 @@ Le gate de `pre.004-fix.001` a révélé que `desktop_contract.rs` comparait enc
|
||||
|
||||
### `pre.005` — Refresh individuel
|
||||
|
||||
**Statut : implémenté ; gate opérateur à confirmer.**
|
||||
**Statut : implémenté ; corrigé par `pre.005-fix.001`, gate opérateur à confirmer.**
|
||||
|
||||
Branchement du refresh d'une ligne via `MarketPriceService::refresh`, projection de l'observation exacte, de la fraîcheur et de l'availability, gestion d'erreur sûre et maintien du dernier état applicatif uniquement en mémoire backend. Le backend marque la ligne `loading` sans conserver le mutex de présentation pendant l'`await`, puis applique l'outcome provider-neutral ; une tentative sans nouvelle observation conserve la dernière observation réussie. L'UI ajoute un bouton `Refresh` par ligne, journalise le clic en `debug`, et n'expose encore aucun refresh multiple/global avant `pre.006`.
|
||||
|
||||
#### `pre.005-fix.001` — Canari de centralisation Tauri rendu structurel
|
||||
|
||||
**Statut : implémenté ; gate opérateur à confirmer.**
|
||||
|
||||
Le gate de `pre.005` confirme que le refresh individuel fonctionne et que le runtime Tauri démarre, mais révèle un faux positif dans `desktop_security.rs` : le canari assimilait toute occurrence du nom métier `refresh_market_price` hors `tauri.rs` à du plumbing de commande. Le fix conserve l'interdiction structurelle de `#[tauri::command]` hors `tauri.rs`, ajoute l'interdiction de `tauri::generate_handler!` hors `tauri.rs`, et autorise les méthodes applicatives homonymes dans `AppState`. Aucun comportement réseau, DTO, provider, row, frontend ou commande n'est modifié.
|
||||
|
||||
### `pre.006` — Refresh multiple et global
|
||||
|
||||
**Statut : planifié.**
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/validation/015-V0_2_12_SOL_PRICES_DESK.md -->
|
||||
<!-- version: 9 -->
|
||||
<!-- version: 10 -->
|
||||
|
||||
# Validation `0.2.12` — SOL Prices Desk + intégration Wallet Desk
|
||||
|
||||
@@ -457,3 +457,32 @@ python3 scripts/audit_rust_workspace_rules.py PASS
|
||||
python3 scripts/audit_markdown_tables.py README.md ... deltas PASS
|
||||
cargo fmt/check/clippy/test NOT RUN — cargo indisponible dans le sandbox
|
||||
```
|
||||
|
||||
## 21. Fix `0.2.12-pre.005-fix.001`
|
||||
|
||||
Le gate opérateur de `pre.005` confirme que le runtime de refresh individuel fonctionne :
|
||||
|
||||
```text
|
||||
cargo fmt --all PASS
|
||||
python3 scripts/audit_rust_workspace_rules.py PASS
|
||||
python3 scripts/audit_markdown_tables.py ... deltas/0.2.12 PASS
|
||||
cargo check --workspace PASS
|
||||
cargo test -p ksp-app-solprices-desk FAIL — canari desktop_security uniquement
|
||||
cargo tauri dev SOL Prices Desk PASS
|
||||
refresh individuel manuel PASS
|
||||
```
|
||||
|
||||
L'unique échec est `pre_005_tauri_commands_remain_centralized_and_only_single_refresh_is_present`. Le test recherchait la chaîne `refresh_market_price` dans tous les fichiers Rust hors `tauri.rs`, ce qui classe à tort `AppState::refresh_market_price` comme plumbing Tauri alors que cette méthode est la frontière applicative appelée par la commande centralisée.
|
||||
|
||||
Le correctif vérifie désormais la centralisation sur les marqueurs structurels Tauri :
|
||||
|
||||
```text
|
||||
#[tauri::command] hors tauri.rs interdit
|
||||
tauri::generate_handler! hors tauri.rs interdit
|
||||
méthode applicative refresh_market_price dans AppState autorisée
|
||||
refresh_market_prices toujours absent avant pre.006
|
||||
refresh_all_market_prices toujours absent avant pre.006
|
||||
runtime prix / frontend / providers inchangés
|
||||
```
|
||||
|
||||
La version technique devient `0.2.12-pre.5.fix.1`. Le gate attendu doit confirmer le test ciblé puis le workspace complet avant d'ouvrir `pre.006`.
|
||||
|
||||
Reference in New Issue
Block a user