4.9 KiB
Delta 0.3.13-pre.009-fix.001 — alignement des canaris de quotas et correction du gate cargo tree
Base requise
livraison précédente : 0.3.13-pre.009
Cargo base : 0.3.13-pre.9
delta base : deltas/0.3.13/pre.009.md
archive delta base : ksp-general-0.3.13-pre.009.zip
Le gate opérateur du 10 septembre 2026 confirme :
cargo fmt + --check : PASS
audits Rust : clean / export completeness 0
Markdown : clean, 340 tables / 845 files
cargo check --workspace : PASS
Clippy strict workspace/all-targets/all-features : PASS
Transport unit : 389/389 PASS
Transport public API : 52/52 PASS
Transport release completeness : 44/44 PASS
Transport doc-tests : 4/4 PASS
Transport smokes live opt-in : 5 ignored comme prévu
Worker unit : 99/99 PASS
Worker cross-layer : 4/4 PASS
Worker dependency-boundary : 13 PASS / 3 FAIL
La suite Worker s'arrête sur ces trois canaris dependency_boundary; hardening, public_api, release_completeness et les doc-tests Worker ne sont donc pas déclarés PASS pour ce gate.
Les trois échecs exigent encore la chaîne historique :
max_pending_signals: settings.admission_queue_capacity()
Cette assertion n'est plus correcte depuis pre.009. Les sources reference-bearing reçoivent désormais des quotas hydration_pending_limit et hydration_in_flight_limit calculés à partir des budgets globaux, tandis que les preuves pre.009 verrouillent la partition exacte des capacités configurées.
Une revue préventive trouve également le même canari obsolète dans tests/hardening.rs, avec l'ancienne hypothèse max_in_flight: settings.persistence_concurrency(). Il est corrigé dans le même fix avant qu'il ne devienne le prochain échec.
Objectif du fix
Mettre à jour les preuves sans modifier la logique runtime :
anciens canaris source-specific : vérifient with_global_registry + quotas source locaux
canari pre.009 dependency : vérifie aussi le lien budgets globaux -> settings
hardening historique : vérifie les champs bornés + quotas, sans ancienne égalité locale
runtime : inchangé
Les anciens canaris ne sont pas affaiblis : la relation directe entre capacités Worker et budgets globaux est désormais vérifiée par le canari pre.009, et les canaris historiques continuent à vérifier que chaque source utilise le coordinator borné commun.
Correction du workflow cargo tree
Le gate opérateur avant pre.010 ne doit pas imposer cargo tree : pre.009 ne modifie aucune dépendance ni feature et pre.010 n'est pas la fermeture technique de 0.3.13.
La règle courante est explicitée dans le prompt 0.3.13 :
cargo tree requis si le graphe dépendances/features change
ou à la fermeture technique de 0.3.13
pas à chaque prerelease sans changement de graphe
Le plan, la validation et le delta pre.009 sont alignés sur cette règle pour le gate avant pre.010.
Version
livraison : 0.3.13-pre.009-fix.001
workspace.package.version : 0.3.13-pre.9.fix.1
archive : ksp-general-0.3.13-pre.009-fix.001.zip
Cargo.toml passe de la version de fichier 556 à 557.
Fichiers modifiés
Cargo.toml
crates/ksp-worker-raw-transaction-ingest-lib/tests/dependency_boundary.rs
crates/ksp-worker-raw-transaction-ingest-lib/tests/hardening.rs
prompts/032-V0_3_13_START_PROMPT.md
docs/plans/034-V0_3_13_MULTI_SOURCE_LIVE_CONVERGENCE_PLAN.md
docs/validation/030-V0_3_13_MULTI_SOURCE_LIVE_CONVERGENCE.md
deltas/0.3.13/pre.009.md
Versions de fichiers :
dependency_boundary.rs : 25 -> 26
hardening.rs : 19 -> 20
032 start prompt : 1 -> 2
plan 034 : 9 -> 10
validation 030 : 9 -> 10
pre.009.md : 1 -> 2
Fichiers ajoutés
deltas/0.3.13/pre.009-fix.001.md
Fichiers supprimés
aucun
Non-claims
Ce fix ne modifie aucune source production, aucun quota calculé, aucune borne globale, aucun sémaphore, aucune registry, aucune logique de disagreement, aucune dépendance, aucune feature et aucune API publique.
Validation dans l'environnement d'assemblage
Le toolchain Rust/Cargo/Rustfmt n'est pas disponible dans l'environnement d'assemblage. Les commandes Cargo post-fix restent donc NON EXÉCUTÉ LOCAL. Les audits statiques KSP et le contrôle exhaustif du delta sont exécutés avant packaging.
Gate opérateur requis avant pre.010
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
Aucun cargo tree n'est requis pour ce gate. Le test Transport n'a pas besoin d'être répété par ce fix, qui ne modifie ni Transport, ni dépendance, ni feature.