0.3.15-pre.012-fix.003
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/validation/032-V0_3_15_RAW_TRANSACTION_INGEST_DESK.md -->
|
||||
<!-- version: 24 -->
|
||||
<!-- version: 25 -->
|
||||
|
||||
# Validation v0.3.15 — Raw Transaction Ingest Desk
|
||||
|
||||
@@ -811,3 +811,13 @@ Le gate opérateur de `pre.012-fix.001` compile et teste proprement le Desk, y c
|
||||
Le fix ajoute uniquement une projection de diagnostic terminale source-neutre et bornée dans `RouteRuntimeLaunch::monitor`. Le log terminal porte désormais l'identité logique sûre de route, `worker_state`, `worker_health`, `worker_activity`, `fault_domain`, `fault_code`, les compteurs `source_failure_total`, `store_failure_total`, `content_conflict_total`, les cardinalités source/gap et les booléens de continuité. Aucun endpoint, credential, source key, WorkerId, signature, payload ou octet RAW n'est journalisé.
|
||||
|
||||
Ce fix ne change volontairement aucune politique fail-closed : il ne transforme pas un `Faulted` en succès et ne suppose pas que l'incident observé est un conflit Store ou une panne source. Le prochain live doit permettre de classer exactement la cause avant toute correction comportementale.
|
||||
|
||||
### `pre.012-fix.003` — canari terminal compatible Clippy strict
|
||||
|
||||
Le gate opérateur de `pre.012-fix.002` confirme que le build normal, les suites Desk/Worker et le live Mainnet sont fonctionnels. Le nouveau diagnostic terminal montre Yellowstone et HTTP Block Polling terminant `Stopped`, `Healthy`, sans `fault_domain`/`fault_code` ni compteur d'erreur ; l'incident `Unhealthy/Faulted` précédent ne se reproduit donc pas dans ce run.
|
||||
|
||||
Le seul échec du gate est dans `cargo clippy --workspace --all-targets --all-features -- -D warnings` : le canari `pre_012_fix_002_terminal_fault_logging_keeps_safe_route_identity_and_worker_cause_counters` utilisait deux `assert!(false, ...)` dans ses branches de marqueur absent, ce qui déclenche `clippy::assertions_on_constants`.
|
||||
|
||||
Le fix ne modifie aucun code de production. Le canari teste désormais d'abord `Option::is_some()` puis extrait la valeur avec `let-else`; la branche impossible retourne seulement après l'assertion dynamique. Aucun `panic!`, `unreachable!`, `unwrap()` ou `expect()` n'est introduit.
|
||||
|
||||
Non-claims : aucune modification du runtime Desk, du monitoring, des routes, de Config, Transport, Store, Worker, Common RAW, acquisition, replay, repair ou politique health/fault.
|
||||
|
||||
Reference in New Issue
Block a user