v0.2.13-pre.007
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/plans/020-V0_2_13_INTERFACE_PLAN.md -->
|
||||
<!-- version: 7 -->
|
||||
<!-- version: 8 -->
|
||||
|
||||
# Plan `0.2.13` — Interface / wire foundation
|
||||
|
||||
@@ -407,15 +407,15 @@ Fermer les cas limites, surface crate-root, consumer externe, firewall source/ma
|
||||
|
||||
### pre.006 — gate technique final
|
||||
|
||||
**Statut : préparé ; gate opérateur à confirmer.**
|
||||
**Statut : réalisé ; gate opérateur intégralement PASS.**
|
||||
|
||||
Exécuter workspace complet, canaris de complétude/public API/dependencies, `cargo tree` et audit final du scope exact. Aucun README/USAGE final ni préparation de publication.
|
||||
Workspace complet, canaris de complétude/public API/dependencies, ownership Logging, `cargo tree` et audit final du scope exact sont validés. Aucun README/USAGE final ni préparation de publication n'a été mélangé à cette tranche.
|
||||
|
||||
### pre.007 — réconciliation documentaire finale
|
||||
|
||||
**Statut : prévu**
|
||||
**Statut : réalisé ; gate opérateur documentaire à confirmer.**
|
||||
|
||||
Finaliser README/USAGE de la crate, plan, validation et références durables réellement affectées. Ne pas modifier `CHANGELOG.md`, `ROADMAP.md` ni le prompt suivant.
|
||||
README/USAGE Interface, plan, validation, séquence fonctionnelle et index documentaires réellement affectés sont réconciliés. `CHANGELOG.md`, `ROADMAP.md` et le prompt suivant restent réservés à `pre.008`.
|
||||
|
||||
### pre.008 — préparation de publication minimale
|
||||
|
||||
@@ -571,7 +571,7 @@ Pubkey
|
||||
|
||||
Il verrouille également l'absence de `pub mod` et l'inventaire exact des quatre fichiers Rust de production. Ajouter une seconde famille wire dans `0.2.13` ferait ainsi échouer explicitement le canari de complétude au lieu d'élargir silencieusement la release.
|
||||
|
||||
Le hardening unitaire vérifie enfin que les allocations des `Vec` admis sont transférées telles quelles dans `ProgramInstruction` et que les erreurs de dépassement n'échoient ni marqueur hostile de payload ni représentation arbitraire d'account meta. Ces tests renforcent le contrat de construction sans changer l'API publique.
|
||||
Le hardening unitaire vérifie enfin que les allocations des `Vec` admis sont transférées telles quelles dans `ProgramInstruction` et que les erreurs de dépassement ne recopient ni marqueur hostile de payload ni représentation arbitraire d'account meta. Ces tests renforcent le contrat de construction sans changer l'API publique.
|
||||
|
||||
Après validation opérateur de `pre.005`, `pre.006` doit rester un gate technique pur sans nouveau développement fonctionnel.
|
||||
|
||||
@@ -605,11 +605,24 @@ Aucun fichier `src/` de production, aucune dépendance, aucune API publique, auc
|
||||
|
||||
Le gate opérateur du fix est désormais intégralement vert : fmt, audits Rust/Markdown, `cargo check --workspace`, Clippy, tests Interface, canari Logging ciblé, `cargo test --workspace` et graphes Cargo sont tous validés/inspectés. Le faux positif est donc fermé sans élargissement du scope.
|
||||
|
||||
## 21. Gate technique final préparé `pre.006`
|
||||
## 21. Gate technique final validé `pre.006`
|
||||
|
||||
`pre.006` n'ajoute aucun code, aucun test et aucune dépendance. Les canaris existants couvrent déjà la surface publique, le consumer externe, les bornes, le Debug borné, les erreurs sûres, l'inventaire exact et le firewall de dépendances.
|
||||
`pre.006` n'a ajouté aucun code, aucun test et aucune dépendance. Le gate opérateur du **28 août 2026** ferme la lane technique avec les preuves suivantes :
|
||||
|
||||
La tranche se limite à figer l'état technique suivant avant réconciliation documentaire :
|
||||
```text
|
||||
cargo fmt --all PASS
|
||||
audits Rust / export completeness / workspace PASS
|
||||
audit Markdown PASS — 162 tables / 119 fichiers
|
||||
cargo check --workspace PASS
|
||||
cargo clippy --workspace --all-targets PASS
|
||||
cargo test -p ksp-interface-lib PASS
|
||||
cargo test -p ksp-logging-lib --test ownership PASS
|
||||
cargo test --workspace PASS
|
||||
cargo tree -p ksp-interface-lib --edges normal Core-only confirmé
|
||||
cargo tree --duplicates inspecté
|
||||
```
|
||||
|
||||
La surface technique finale avant documentation reste donc :
|
||||
|
||||
```text
|
||||
workspace.package.version 0.2.13-pre.6
|
||||
@@ -623,20 +636,37 @@ ksp-logging-lib / tracing runtime Interface absents
|
||||
network/live smoke N/A pour foundation wire pure
|
||||
```
|
||||
|
||||
Le gate opérateur final à rejouer est :
|
||||
Le gate `pre.006` autorise la réconciliation documentaire finale sans réouverture technique.
|
||||
|
||||
```bash
|
||||
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/0.2.13
|
||||
cargo check --workspace
|
||||
cargo clippy --workspace --all-targets
|
||||
cargo test -p ksp-interface-lib
|
||||
cargo test -p ksp-logging-lib --test ownership
|
||||
cargo test --workspace
|
||||
cargo tree -p ksp-interface-lib --edges normal
|
||||
cargo tree --duplicates
|
||||
## 22. Réconciliation documentaire finale `pre.007`
|
||||
|
||||
`pre.007` ne modifie aucun fichier Rust, test, manifest de crate, dépendance ou comportement. La version workspace avance mécaniquement à `0.2.13-pre.7` conformément au workflow de prerelease non-fix.
|
||||
|
||||
Les références durables sont réconciliées autour du contrat réellement livré :
|
||||
|
||||
```text
|
||||
crates/ksp-interface-lib/README.md
|
||||
crates/ksp-interface-lib/USAGE.md
|
||||
docs/000-README.md
|
||||
docs/plans/000-README.md
|
||||
docs/plans/002-FUNCTIONAL_RELEASE_SEQUENCE.md
|
||||
docs/plans/020-V0_2_13_INTERFACE_PLAN.md
|
||||
docs/validation/000-README.md
|
||||
docs/validation/016-V0_2_13_INTERFACE.md
|
||||
```
|
||||
|
||||
Après gate vert, `pre.007` est autorisé et devient exclusivement la réconciliation documentaire finale.
|
||||
Le README Interface fixe l'ownership, la surface crate-root exacte, les deux bornes d'admission, le modèle d'erreur sûr, le Debug borné, le graphe `Interface -> Core`, l'absence de codecs/logging/runtime et les frontières avec Program API/Transport/Store. `USAGE.md` documente les constructeurs `readonly`/`writable`, `ProgramInstruction::try_new`, les accessors, les bornes et l'observation des erreurs sans dépendre des modules privés.
|
||||
|
||||
La séquence fonctionnelle précise désormais le contenu réellement livré par `0.2.13` et maintient les reports : Program API en `0.2.14`, wires génériques acquisition/CORE en `0.3.2+`. Les index plan/validation passent du statut actif au statut candidat réconcilié sans annoncer prématurément la release stable.
|
||||
|
||||
La tranche ne touche explicitement pas :
|
||||
|
||||
```text
|
||||
CHANGELOG.md
|
||||
ROADMAP.md
|
||||
prompts/019-V0_2_14_START_PROMPT.md
|
||||
architecture
|
||||
code/tests/manifests de crate
|
||||
```
|
||||
|
||||
Ces surfaces appartiennent à `pre.008` pour la préparation minimale de publication, sauf découverte d'un défaut réel imposant une nouvelle tranche corrective.
|
||||
|
||||
Reference in New Issue
Block a user