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

3.0 KiB

Delta 0.3.12-pre.005-fix.001 — correction de la conversion de signature Block

Base requise

0.3.12-pre.005
workspace.package.version = 0.3.12-pre.5

Le gate opérateur communiqué confirme :

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

workspace.package.version = 0.3.12-pre.5.fix.1

Correction

La construction de la signature source-neutral passe de :

RawTransactionSignature::new(signature.into_bytes())

à :

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

deltas/0.3.12/pre.005-fix.001.md

Fichiers modifiés

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

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

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

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.