Files
khadhroony-solana-project/deltas/0.3.11/pre.002.md
2026-09-08 09:10:57 +02:00

5.2 KiB

Delta 0.3.11-pre.002 — squelette Worker RAW + dependency firewall

Base requise

0.3.11-pre.001
workspace.package.version = 0.3.11-pre.1

Le gate opérateur communiqué pour pre.001 est vert sur cargo fmt --all, les audits Rust/Markdown, cargo check --workspace et Clippy workspace strict --all-targets --all-features -- -D warnings. Aucun cargo test supplémentaire n'a été communiqué pour ce gate et aucun n'est inventé.

Objectif

Créer uniquement le squelette de ksp-worker-raw-transaction-ingest-lib, l'inscrire au workspace et verrouiller son graphe de dépendances. Aucun settings, identity, start, task, channel, Store write, canonicalisation ou snapshot runtime n'est matérialisé dans cette tranche.

Version

Cette tranche est une prerelease non-fix :

workspace.package.version = 0.3.11-pre.2

Le Cargo.toml racine passe du header 506 au header 507 et le workspace passe de 20 à 21 membres.

Graphe de production exact

ksp-worker-raw-transaction-ingest-lib
    -> ksp-core-lib
    -> ksp-logging-lib
    -> ksp-raw-transaction-lib
    -> ksp-store-lib default-features=false
    -> ksp-worker-api
    -> sha2
    -> tokio features=macros,rt,sync,time

Ces edges matérialisent uniquement la frontière décidée en pre.001. Le code runtime qui les consommera reste réservé à ses tranches dédiées.

Firewall explicite

Absents du manifest de production :

futures-util
ksp-config-lib
ksp-interface-lib
ksp-job-api
ksp-job-backfill-lib
ksp-onchain-transport-lib
ksp-program-api
ksp-store-api direct
ksp-store-postgres-lib
ksp-wallet-lib
reqwest
Solana protocol SDK direct
tokio-tungstenite
tonic
yellowstone-grpc-proto

Il n'existe ni [dev-dependencies], ni [build-dependencies] dans cette tranche.

Crate-root volontairement vide de comportement

src/lib.rs contient uniquement les lints workspace et la rustdoc de responsabilité. Il n'expose encore :

aucun pub mod
aucun type public
aucune fonction publique
aucun start/spawn
aucun appel Tokio
aucun appel Store/common RAW/Worker API

Le test externe dependency_boundary.rs verrouille le manifest exact, les edges interdits et l'absence de comportement runtime prématuré au crate-root.

Documentation volontairement différée

README.md et USAGE.md ne sont pas créés à ce stade car la crate ne possède encore aucune API consommable. Leur réconciliation version-neutral reste réservée à pre.012, après freeze de la fondation runtime.

Fichiers ajoutés

crates/ksp-worker-raw-transaction-ingest-lib/Cargo.toml
crates/ksp-worker-raw-transaction-ingest-lib/src/lib.rs
crates/ksp-worker-raw-transaction-ingest-lib/tests/dependency_boundary.rs
deltas/0.3.11/pre.002.md

Fichiers modifiés

Cargo.toml
docs/plans/032-V0_3_11_RAW_TRANSACTION_INGEST_WORKER_FOUNDATION_PLAN.md
docs/validation/028-V0_3_11_RAW_TRANSACTION_INGEST_WORKER_FOUNDATION.md

Fichiers supprimés

Aucun.

Validations exécutées dans l'environnement d'assemblage

python3 scripts/audit_rust_workspace_rules.py
General Rust rule audit: clean
Rust export completeness audit: 0 candidate(s)
KSP workspace Rust rule audit: clean

python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates deltas
Markdown table audit: clean (340 table(s), 776 file(s))

contrôle TOML/statique : workspace 0.3.11-pre.2, 21 membres, manifest Worker exact, Store sans default features, Tokio macros/rt/sync/time
comparaison byte-à-byte avec pre.001 : 4 fichiers ajoutés, 3 modifiés, 0 supprimé

L'environnement d'assemblage ne fournit ni cargo, ni rustc, ni rustfmt. Aucun gate Cargo n'est déclaré PASS localement.

Gate opérateur demandé

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
cargo tree -p ksp-worker-raw-transaction-ingest-lib --edges normal
cargo tree -p ksp-worker-raw-transaction-ingest-lib -e features

Validations non exécutées localement

cargo fmt --all
cargo check --workspace
cargo clippy --workspace --all-targets --all-features -- -D warnings
cargo test -p ksp-worker-raw-transaction-ingest-lib
cargo tree -p ksp-worker-raw-transaction-ingest-lib --edges normal
cargo tree -p ksp-worker-raw-transaction-ingest-lib -e features

Décisions conservées

aucune source live dans 0.3.11
aucun Transport productif avant 0.3.12
Store uniquement via ksp-store-lib default-features=false
aucun backend Store direct
aucun Job/Backfill/Config dans le Worker
futures-util absent tant qu'un usage réel n'est pas démontré
Tokio direct parce que le Worker concret possédera ses tâches runtime
aucune API publique avant la tranche qui en possède le contrat

Suite

Après gate opérateur vert, pre.003 introduit uniquement l'identité Worker concrète et RawTransactionIngestSettings avec defaults, bornes et validation. Aucun spawn n'y est autorisé.