# Delta 0.3.13-pre.003-fix.002 — correction des canaris de dépendance après généralisation source-neutral ## Base requise ```text delivery précédente : 0.3.13-pre.003-fix.001 Cargo base : 0.3.13-pre.3.fix.1 delta base : deltas/0.3.13/pre.003-fix.001.md archive delta base : ksp-general-0.3.13-pre.003-fix.001.zip ``` Le gate opérateur de `pre.003-fix.001` confirme que le formatage, les audits, `cargo check --workspace`, Clippy strict et les tests unitaires Worker passent. Deux canaris historiques de `tests/dependency_boundary.rs` échouent cependant parce qu'ils vérifient encore des noms et une borne d'implémentation antérieurs à la généralisation source-neutral de `pre.003`. ## Objectif Corriger uniquement ces deux canaris afin qu'ils vérifient le contrat production actuel, sans modifier le code runtime : ```text aucun code production modifié aucune API publique ajoutée ou supprimée aucune dépendance modifiée aucune logique réseau/hydration/admission modifiée aucun avancement vers blockSubscribe pre.004 ``` ## Version ```text livraison : 0.3.13-pre.003-fix.002 workspace.package.version : 0.3.13-pre.3.fix.2 archive : ksp-general-0.3.13-pre.003-fix.002.zip ``` Le fix modifie un fichier Rust de tests ; le `workspace.package.version` est donc incrémenté conformément aux règles KSP. ## Diagnostic opérateur ### Canary hydration historique Le test : ```text v0_3_12_pre_004_hydration_contract_uses_only_transport_facade_common_raw_and_existing_ingress ``` attendait encore les helpers mono-Yellowstone : ```text fn finalize_yellowstone_hydration fn fetch_yellowstone_hydration ``` `pre.003` a volontairement rendu l'hydration commune à plusieurs familles de sources et les helpers production actuels sont : ```text fn finalize_hydration async fn fetch_hydration ``` Le canary est mis à jour pour vérifier ces helpers source-neutral sans réintroduire les anciens noms. ### Canary de borne de coalescence historique Le test : ```text v0_3_12_pre_006_productive_source_uses_transport_session_bounded_coalescence_and_existing_admission ``` attendait encore la présence textuelle de : ```text MAX_RAW_TRANSACTION_INGEST_ADMISSION_QUEUE_CAPACITY ``` `pre.003` a resserré le budget du coordinator commun sur la borne configurée du Worker : ```text max_pending_signals: settings.admission_queue_capacity() ``` Le canary vérifie désormais cette borne runtime effective. Le plafond absolu n'est pas réintroduit dans l'implémentation. ## Fichiers modifiés ```text Cargo.toml crates/ksp-worker-raw-transaction-ingest-lib/tests/dependency_boundary.rs ``` ## Fichiers ajoutés ```text deltas/0.3.13/pre.003-fix.002.md ``` ## Fichiers supprimés ```text aucun ``` ## Versions de fichiers incrémentées ```text Cargo.toml : 543 -> 544 worker tests/dependency_boundary.rs : 17 -> 18 ``` ## Validation opérateur de la base pre.003-fix.001 Le log fourni confirme avant ce fix : ```text cargo fmt --all : exécuté cargo fmt --all -- --check : PASS / silencieux General Rust rule audit : clean Rust export completeness audit : 0 candidate(s) KSP workspace Rust rule audit : clean Markdown table audit : clean (340 tables, 832 files) cargo check --workspace : PASS cargo clippy --workspace --all-targets --all-features -- -D warnings : FAIL lors des tests dependency_boundary cargo test -p ksp-worker-raw-transaction-ingest-lib : 75 unit tests PASS, puis 2/10 dependency_boundary FAIL ``` Échecs observés : ```text v0_3_12_pre_004_hydration_contract_uses_only_transport_facade_common_raw_and_existing_ingress v0_3_12_pre_006_productive_source_uses_transport_session_bounded_coalescence_and_existing_admission ``` Les deux échecs sont des assertions `include_str!` sur l'implémentation et non des erreurs du code production. ## Validations dans l'environnement d'assemblage Le toolchain Rust n'est pas disponible dans l'environnement d'assemblage. Les audits statiques KSP et le contrôle exhaustif du delta sont exécutés avant packaging. Les commandes Cargo suivantes ne sont donc pas déclarées PASS localement : ```bash cargo fmt --all -- --check cargo check --workspace cargo clippy --workspace --all-targets --all-features -- -D warnings cargo test -p ksp-worker-raw-transaction-ingest-lib ``` ## Résultats statiques finaux de l'assemblage ```text General Rust rule audit: clean Rust export completeness audit: 0 candidate(s) KSP workspace Rust rule audit: clean Markdown table audit: clean (340 tables, 833 files) Normative rule definitions: 489 Unique normative IDs: 489 Duplicates: 0 ``` Les trois chaînes attendues par les canaris corrigés ont également été vérifiées directement dans `runtime_resources.rs` : ```text fn finalize_hydration : présent fn fetch_hydration : présent max_pending_signals: settings.admission_queue_capacity() : présent ``` ## Gate opérateur avant pre.004 ```bash cargo fmt --all cargo fmt --all -- --check 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 ``` `pre.004` ne doit démarrer qu'après retour vert de ce gate. ## Décisions - Le fix conserve les helpers d'hydration source-neutral de `pre.003`; les anciens noms Yellowstone ne sont pas restaurés. - Le fix conserve `settings.admission_queue_capacity()` comme borne effective du coordinator d'hydration ; le plafond absolu n'est pas réinjecté. - Aucun code production n'est modifié. - Aucun changement fonctionnel de `pre.003` n'est introduit. ## Questions ouvertes ```text aucune ```