v0.3.10-pre.005-fix.002

This commit is contained in:
2026-09-06 23:00:44 +02:00
parent ba574f3052
commit d4f4237723
6 changed files with 264 additions and 35 deletions

View File

@@ -1,5 +1,5 @@
<!-- file: docs/plans/031-V0_3_10_RAW_TRANSACTION_INGEST_PLAN.md -->
<!-- version: 8 -->
<!-- version: 9 -->
# Plan v0.3.10 — RAW Transaction commune + Worker dingestion multi-source
@@ -1076,6 +1076,8 @@ Helius `transactionSubscribe` full/base64 conserve la signature, le slot, le tra
Le premier rejeu opérateur de `pre.005` le 2026-09-06 valide les audits statiques, `cargo check --workspace`, la common RAW, les 387 tests Transport et les arbres normal/dev/features, mais `cargo clippy --workspace --all-targets --all-features -- -D warnings` ainsi que `cargo test -p ksp-job-backfill-lib` sarrêtent sur une unique erreur de compilation du nouveau canari : `RawTransaction::block_time().unix_millis()` retourne `u64`, tandis que `FIXTURE_BLOCK_TIME * 1_000` était inféré en `i64`. `pre.005-fix.001` corrige uniquement cette constante de comparaison en millisecondes `u64`; aucun code de production, golden, contrat RAW/WS ni dépendance nest modifié.
Le second rejeu opérateur de `pre.005-fix.001` révèle ensuite deux gardes de test supplémentaires : Clippy strict refuse 25 usages de lopérateur `?` dans les helpers/canaris de `ws_raw_parity.rs`, et le canari historique `pre_010_manifest_dependency_surface_is_exact_and_backend_neutral` attend encore uniquement `tokio` dans les dev-dependencies alors que `pre.005` a ajouté `tokio-tungstenite` en dev-only. `pre.005-fix.002` remplace les `?` par des `match`/`if let Err` explicites et recalibre uniquement le set dev attendu vers `tokio` + `tokio-tungstenite`. Aucun code de production, dépendance, feature, golden ou décision de qualification WS/Helius nest modifié.
### `pre.006` — parité Yellowstone transactions/blocks
Fermer les adapters structurés Yellowstone transaction/block, Transaction V1, meta et cross-source parity. Aucune persistance directe si le gate byte-identical échoue.

View File

@@ -1,5 +1,5 @@
<!-- file: docs/validation/027-V0_3_10_RAW_TRANSACTION_INGEST.md -->
<!-- version: 8 -->
<!-- version: 9 -->
# Validation v0.3.10 — RAW Transaction commune + Worker dingestion
@@ -889,3 +889,56 @@ Rust export completeness audit: 0 candidate(s)
KSP workspace Rust rule audit: clean
Markdown table audit: clean (339 table(s), 760 file(s))
```
### 13.9 Second rejeu opérateur de `pre.005-fix.001` et fix Clippy/hardening
Le rejeu communiqué le 2026-09-06 confirme dabord :
```text
cargo fmt --all : exécuté
General Rust rule audit: clean
Rust export completeness audit: 0 candidate(s)
KSP workspace Rust rule audit: clean
Markdown table audit: clean (339 table(s), 760 file(s))
cargo check --workspace : PASS
cargo test -p ksp-raw-transaction-lib : PASS, 12 unit + 9 intégration, 0 échec
cargo test -p ksp-onchain-transport-lib : PASS, 387 unit + 51 public API + 43 release completeness + 4 doctests, 0 échec ; smokes live ignorés comme prévu
```
Deux défauts restent strictement confinés aux nouveaux canaris de `pre.005` :
```text
cargo clippy --workspace --all-targets --all-features -- -D warnings
-> FAIL : 25 clippy::question_mark_used dans tests/ws_raw_parity.rs
cargo test -p ksp-job-backfill-lib
-> 51 unit PASS
-> dependency_boundary 3/3 PASS
-> hardening 8/9 PASS
-> FAIL : inventaire dev attendu {tokio} alors que le manifest réel contient {tokio, tokio-tungstenite}
```
`pre.005-fix.002` corrige uniquement ces gardes :
```text
ws_raw_parity.rs
? sur Option/Result -> match explicite ou if let Err(...)
aucun #[allow(...)]
aucun changement de scénario/golden
hardening.rs
dev attendu -> {tokio, tokio-tungstenite}
inventaire normal inchangé
```
Le fix ne modifie ni `crates/ksp-job-backfill-lib/Cargo.toml`, ni aucune dépendance/feature, ni le code de production. Les arbres Cargo déjà validés pour `pre.005` restent donc applicables et nont pas besoin dêtre rejoués pour ce fix.
Lassemblage local de `pre.005-fix.002` obtient :
```text
General Rust rule audit: clean
Rust export completeness audit: 0 candidate(s)
KSP workspace Rust rule audit: clean
Markdown table audit: clean (339 table(s), 761 file(s))
```