v0.3.13-pre.006-fix.001

This commit is contained in:
2026-09-10 16:17:50 +02:00
parent f688325170
commit 72df965a9c
4 changed files with 116 additions and 7 deletions

View File

@@ -0,0 +1,111 @@
<!-- file: deltas/0.3.13/pre.006-fix.001.md -->
<!-- version: 1 -->
# Delta 0.3.13-pre.006-fix.001 — correction du canari historique après live block discovery
## Base requise
```text
livraison précédente : 0.3.13-pre.006
Cargo base : 0.3.13-pre.6
delta base : deltas/0.3.13/pre.006.md
archive delta base : ksp-general-0.3.13-pre.006.zip
```
Le gate opérateur du 10 septembre 2026 sur `pre.006` est vert pour `cargo fmt`, `cargo fmt --check`, les audits Rust/Markdown, `cargo check --workspace`, Clippy strict, les `88` tests unitaires Worker et les `13` tests `dependency_boundary`. Il s'arrête ensuite sur un seul canari de hardening : `pre_010_production_surface_has_no_historical_backfill_or_retriever_contract` détecte la chaîne `Backfill` dans la Rustdoc de la nouvelle source HTTP live block polling.
La même vérification interdisait également globalement `Discovery`/`discovery`. Cette hypothèse n'est plus valide depuis `pre.006` : la découverte run-local via `getBlocksWithLimit` est une primitive légitime du live polling et ne constitue ni un retriever historique ni un Backfill.
## Objectif du fix
Conserver la séparation Worker/Backfill sans interdire la terminologie de live block discovery introduite par le poller HTTP :
```text
Rustdoc HTTP polling : suppression de la mention Backfill
canari historique : conserve les interdictions retriever/backfill/checkpoint/historical
mais ne classe plus Discovery/discovery comme marqueur historique
```
Aucune logique de polling, cadence, Transport, admission, Store, processing frontier, provenance, source identity ou API publique n'est modifiée.
## Version
```text
livraison : 0.3.13-pre.006-fix.001
workspace.package.version : 0.3.13-pre.6.fix.1
archive : ksp-general-0.3.13-pre.006-fix.001.zip
```
`Cargo.toml` passe de la version de fichier `550` à `551`.
## Fichiers modifiés
```text
Cargo.toml
crates/ksp-worker-raw-transaction-ingest-lib/src/runtime_resources.rs
crates/ksp-worker-raw-transaction-ingest-lib/tests/hardening.rs
```
Versions de fichiers :
```text
runtime_resources.rs : 19 -> 20
hardening.rs : 15 -> 16
```
## Fichiers ajoutés
```text
deltas/0.3.13/pre.006-fix.001.md
```
## Fichiers supprimés
```text
aucun
```
## Non-claims
Ce fix ne modifie aucune dépendance et n'ajoute aucune source. Il ne change ni la borne de run, ni `getSlot`, ni `getBlocksWithLimit`, ni `getBlock observed`, ni les règles Legacy/V0/V1, ni la sémantique `block:null`.
## 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.007
```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
```
## 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, 840 files)
Normative rule definitions: 489
Unique normative IDs: 489
Duplicates: 0
```
Contrôle ciblé de la surface production Worker :
```text
ksp-worker-raw-retriever : 0
raw_transaction_retriever : 0
RawTransactionRetriever : 0
Backfill/backfill : 0
Checkpoint/checkpoint : 0
historical : 0
```
`Discovery`/`discovery` n'est plus un marqueur interdit global : `pre.006` l'emploie pour la découverte live run-local de slots/blocs par `getBlocksWithLimit`.