Files
khadhroony-solana-project/deltas/0.3.12/pre.005-fix.001.md

106 lines
3.0 KiB
Markdown

<!-- file: deltas/0.3.12/pre.005-fix.001.md -->
<!-- version: 1 -->
# 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`.