v0.3.15-pre.008-fix.003
This commit is contained in:
51
deltas/0.3.15/pre.008-fix.003.md
Normal file
51
deltas/0.3.15/pre.008-fix.003.md
Normal file
@@ -0,0 +1,51 @@
|
||||
<!-- file: deltas/0.3.15/pre.008-fix.003.md -->
|
||||
<!-- version: 1 -->
|
||||
|
||||
# Delta `0.3.15-pre.008-fix.003`
|
||||
|
||||
## Objet
|
||||
|
||||
Fermer le gate Clippy de `pre.008-fix.002` et corriger la resynchronisation Stop lorsqu'un Worker atteint spontanément un état terminal avant l'action utilisateur, sans modifier les capabilities Config ni le périmètre mono-route.
|
||||
|
||||
## Défauts observés
|
||||
|
||||
Le gate opérateur confirme `cargo check --workspace` et les suites de tests, mais Clippy strict rejette encore un `?` dans la boucle bornée de nettoyage Stop au titre de `clippy::question_mark_used`.
|
||||
|
||||
Le parcours Tauri live montre également qu'une route peut atteindre spontanément `Faulted` et fermer son Store avant que le frontend ne clique Stop. Le slot backend est alors correctement libéré, mais le frontend possède encore son dernier accusé `Starting`; un Stop tardif retourne donc `route_runtime_not_active` au lieu de lui permettre de récupérer l'état terminal déjà observé.
|
||||
|
||||
## Correction
|
||||
|
||||
- le `?` interdit est remplacé par un `match` explicite avec `return` ;
|
||||
- le runtime mono-route conserve uniquement le dernier `RawIngestRouteRuntimeDto` terminal sûr après la terminaison Worker et la fermeture Store ;
|
||||
- un Stop tardif sur un slot déjà `Idle` retourne ce dernier terminal de manière idempotente ;
|
||||
- la réservation d'un nouveau Start efface immédiatement ce terminal afin de ne jamais mélanger deux exécutions ;
|
||||
- le cache terminal ne contient aucun handle Worker, aucun `Store`, aucun endpoint, aucun secret et aucune ressource Transport.
|
||||
|
||||
## Caractérisation live inchangée
|
||||
|
||||
Les terminaisons `Faulted` observées ne sont pas masquées par ce fix :
|
||||
|
||||
- Yellowstone Mainnet a rencontré un overflow de queue Transport sous charge, concomitant à de l'hydration HTTP et à une mise en cooldown rate-limit ;
|
||||
- `standard-block-direct` a atteint `Faulted` après la tentative `blockSubscribe`, méthode explicitement instable.
|
||||
|
||||
Ces événements restent des résultats Worker/Transport réels. Le fix ne fabrique aucune capability, ne transforme pas `Configured` en garantie live et ne modifie aucune politique provider.
|
||||
|
||||
## Périmètre inchangé
|
||||
|
||||
- un seul runtime route à la fois ;
|
||||
- même revalidation Start issue de `pre.007` ;
|
||||
- même ouverture, health et fermeture Store via `ksp-store-lib` ;
|
||||
- même lancement `RawTransactionIngestWorker::start_with_runtime_resources` ;
|
||||
- aucun partage Store multi-worker de `pre.009` ;
|
||||
- aucun monitoring continu de `pre.010`.
|
||||
|
||||
## Version
|
||||
|
||||
```text
|
||||
header racine : 611 -> 612
|
||||
workspace : 0.3.15-pre.8.fix.2 -> 0.3.15-pre.8.fix.3
|
||||
```
|
||||
|
||||
## Gate opérateur
|
||||
|
||||
Le gate complet de `pre.008` doit être rejoué après application de ce fix.
|
||||
Reference in New Issue
Block a user