v0.3.5-pre.007
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
<!-- file: docs/validation/022-V0_3_5_INTERFACE_ACQUISITION_EVENTS.md -->
|
||||
<!-- version: 8 -->
|
||||
<!-- version: 9 -->
|
||||
|
||||
# Validation `0.3.5` — Interface passive acquisition events
|
||||
|
||||
## 1. Portée
|
||||
|
||||
Ce document est ouvert par `0.3.5-pre.001`, corrigé par `0.3.5-pre.001-fix.001`, enrichi par `0.3.5-pre.002`, `pre.003`, `pre.004` puis `pre.005`. `pre.002` matérialise `SlotLifecycleEvent`; `pre.003` ferme le gate `TransactionExecutionEvent` et admet la seconde famille passive minimale ; `pre.004` verrouille les canaris externes et la complétude de cette surface sans ajouter de contrat de production ; `pre.005` ajoute le hardening adversarial et les canaris anti-duplication finaux, toujours sans nouvelle surface de production.
|
||||
Ce document suit toute la fermeture de `0.3.5`. `pre.002` matérialise `SlotLifecycleEvent`; `pre.003` admet `TransactionExecutionEvent`; `pre.004` verrouille les canaris externes et la complétude ; `pre.005` ajoute le hardening adversarial ; son fix corrige uniquement un faux négatif du canari de manifeste ; `pre.006` ferme le gate technique final ; `pre.007` réconcilie la documentation durable sans modifier la surface Rust.
|
||||
|
||||
Base :
|
||||
|
||||
@@ -17,7 +17,7 @@ workspace.package.version = 0.3.4
|
||||
Version de travail :
|
||||
|
||||
```text
|
||||
0.3.5-pre.5.fix.1
|
||||
0.3.5-pre.7
|
||||
```
|
||||
|
||||
## 2. Gate d'entrée `v0.3.4`
|
||||
@@ -827,7 +827,7 @@ cargo tree -p ksp-interface-lib -e features
|
||||
cargo tree --duplicates
|
||||
```
|
||||
|
||||
Aucun smoke réseau n'est requis : `0.3.5` ne modifie aucun moteur Transport et les contrats Interface sont passifs. Les résultats `cargo tree` restent à capturer côté opérateur avant de considérer `pre.006` clôturée.
|
||||
Aucun smoke réseau n'est requis : `0.3.5` ne modifie aucun moteur Transport et les contrats Interface sont passifs. Les résultats `cargo tree` sont capturés dans le résultat opérateur de clôture ci-dessous.
|
||||
|
||||
## 36. Fichiers de `pre.006`
|
||||
|
||||
@@ -857,4 +857,80 @@ README.md
|
||||
ROADMAP.md
|
||||
CHANGELOG.md
|
||||
```
|
||||
## 37. Résultat du gate technique final `pre.006`
|
||||
|
||||
Le gate opérateur du `2026-08-31` est propre après correction locale des numéros d'en-tête réellement modifiés dans `Cargo.toml` et ce document de validation :
|
||||
|
||||
```text
|
||||
General Rust rule audit: clean
|
||||
Rust export completeness audit: 0 candidate(s)
|
||||
KSP workspace Rust rule audit: clean
|
||||
Markdown table audit: clean (240 table(s), 145 file(s))
|
||||
cargo check --workspace: PASS
|
||||
cargo clippy --workspace --all-targets: PASS
|
||||
cargo test -p ksp-interface-lib: PASS
|
||||
cargo test --workspace: PASS
|
||||
```
|
||||
|
||||
Les tests live/réseau et probes diagnostiques restent explicitement `ignored` conformément à leur contrat ; aucun test non ignoré n'échoue.
|
||||
|
||||
Les trois preuves Cargo finales confirment :
|
||||
|
||||
```text
|
||||
cargo tree -p ksp-interface-lib --edges normal
|
||||
ksp-interface-lib -> ksp-core-lib -> solana-pubkey -> solana-address
|
||||
|
||||
cargo tree -p ksp-interface-lib -e features
|
||||
aucune feature propre Interface ; seule la feature default de ksp-core-lib est activée
|
||||
|
||||
cargo tree --duplicates
|
||||
doublons du workspace global présents, aucun nouveau doublon imputable à ksp-interface-lib/0.3.5
|
||||
```
|
||||
|
||||
Le manifeste Interface reste sans `[features]`, `[dev-dependencies]` ni `[build-dependencies]`. La surface fonctionnelle finale demeure exactement :
|
||||
|
||||
```text
|
||||
ProgramAccountMeta / ProgramInstruction
|
||||
SlotLifecycleEvent / SlotLifecycleStage
|
||||
TransactionSignature / TransactionExecutionEvent / TransactionExecutionOutcome
|
||||
```
|
||||
|
||||
Aucun serde, codec, logging, runtime, Transport ou Store n'est entré dans le graphe Interface.
|
||||
|
||||
## 38. Réconciliation documentaire finale — `pre.007`
|
||||
|
||||
`pre.007` ne modifie aucun code Rust ni manifeste de crate. La version workspace devient :
|
||||
|
||||
```text
|
||||
0.3.5-pre.7
|
||||
```
|
||||
|
||||
La réconciliation ferme les incohérences documentaires restantes :
|
||||
|
||||
- `crates/ksp-interface-lib/README.md` décrit désormais les contrats Program et les deux familles d'événements passifs sans présenter Interface comme un runtime ;
|
||||
- `crates/ksp-interface-lib/USAGE.md` devient version-neutral et documente la construction/consommation des événements via le crate-root ;
|
||||
- les documents d'architecture concernés distinguent explicitement contrat passif Interface, DTO riche Transport et modèle replayable Store ;
|
||||
- le futur RAW worker peut dépendre d'Interface pour un fait passif partagé, mais son backlog/recovery reste Store-owned ;
|
||||
- `TransactionLogEvent` reste hors scope et est transféré vers `docs/IDEAS.md` avec un nouveau gate consumer/bornes obligatoire ;
|
||||
- `CHANGELOG.md`, `ROADMAP.md` et le prompt `0.3.6` restent réservés à la tranche de publication suivante.
|
||||
|
||||
Fichiers modifiés par la tranche :
|
||||
|
||||
```text
|
||||
Cargo.toml
|
||||
crates/ksp-interface-lib/README.md
|
||||
crates/ksp-interface-lib/USAGE.md
|
||||
docs/IDEAS.md
|
||||
docs/architecture/002-LAYERS_AND_DEPENDENCIES.md
|
||||
docs/architecture/003-COMPONENT_CONTRACTS.md
|
||||
docs/architecture/004-COMPONENT_INVENTORY.md
|
||||
docs/architecture/005-DEPENDENCY_GRAPH.md
|
||||
docs/architecture/006-WIRE_AND_PROGRAM.md
|
||||
docs/architecture/009-ACQUISITION_WORKERS_AND_JOBS.md
|
||||
docs/plans/026-V0_3_5_INTERFACE_ACQUISITION_EVENTS_PLAN.md
|
||||
docs/validation/022-V0_3_5_INTERFACE_ACQUISITION_EVENTS.md
|
||||
deltas/0.3.5/pre.007.md
|
||||
```
|
||||
|
||||
Aucun autre fichier ne doit être modifié.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user