# Delta `0.3.12-pre.005-fix.001` — correction de la conversion de signature Block ## Base requise ```text 0.3.12-pre.005 workspace.package.version = 0.3.12-pre.5 ``` Le gate opérateur communiqué confirme : ```text Rust rule audit : clean Markdown table audit : clean (340 tables, 808 fichiers) cargo check --workspace : PASS ``` La compilation des tests Worker échoue ensuite sur un unique diagnostic `E0599` : l'adapter privé `Block` appelle `YellowstoneTransactionSignature::into_bytes()`, méthode absente de la façade Transport. ## Objectif Corriger uniquement cette incompatibilité d'API sans changer le comportement `Block`, sans export supplémentaire et sans avancer le scope productif de `pre.006`. ## Version ```text workspace.package.version = 0.3.12-pre.5.fix.1 ``` ## Correction La construction de la signature source-neutral passe de : ```text RawTransactionSignature::new(signature.into_bytes()) ``` à : ```text RawTransactionSignature::new(*signature.as_bytes()) ``` `YellowstoneTransactionSignature::as_bytes()` est le contrat réel exposé par Transport. Le dereference copie le tableau canonique `[u8; 64]` attendu par `RawTransactionSignature::new`. Cette forme est déjà utilisée dans le même module pour `TransactionStatus`. ## Fichiers ajoutés ```text deltas/0.3.12/pre.005-fix.001.md ``` ## Fichiers modifiés ```text Cargo.toml crates/ksp-worker-raw-transaction-ingest-lib/src/runtime_resources.rs docs/validation/029-V0_3_12_YELLOWSTONE_HYDRATION_CONTINUITY.md ``` ## Fichiers supprimés Aucun. ## Non-changements ```text aucune API publique aucune dépendance aucun changement de provenance aucun changement d'ordre Block aucun RAW depuis BlockMeta/Slot aucun source task Yellowstone productif aucune coalescence productive aucun reconnect/from_slot/ReplayInfo aucun lint neutralisé ``` ## Validations exécutées dans l'environnement d'assemblage ```text python3 scripts/audit_rust_workspace_rules.py python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates deltas ``` Les contrôles statiques vérifient également qu'il ne reste aucun appel `YellowstoneTransactionSignature::into_bytes()` dans `runtime_resources.rs` et que la conversion `*signature.as_bytes()` correspond à la forme déjà utilisée par l'adapter `TransactionStatus`. ## Validations non exécutées dans l'environnement d'assemblage `cargo`, `rustc` et `rustfmt` ne sont pas disponibles dans l'environnement d'assemblage. Aucun gate Cargo local n'est revendiqué. ## Gate opérateur requis ```bash cargo fmt --all python3 scripts/audit_rust_workspace_rules.py python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates deltas cargo check --workspace cargo clippy --workspace --all-targets --all-features -- -D warnings cargo test -p ksp-worker-raw-transaction-ingest-lib ``` Après gate vert, la suite reste `pre.006`.