From 55325ffd32afd544943a8ffac8327709209560a9 Mon Sep 17 00:00:00 2001 From: SinuS Von SifriduS Date: Sat, 29 Aug 2026 11:05:22 +0200 Subject: [PATCH] v0.3.1-pre.008 --- Cargo.toml | 4 +- deltas/0.3.1/pre.008.md | 157 ++++++++++++++++++++++++ docs/plans/022-V0_3_1_STORE_RAW_PLAN.md | 8 +- docs/validation/018-V0_3_1_STORE_RAW.md | 8 +- 4 files changed, 171 insertions(+), 6 deletions(-) create mode 100644 deltas/0.3.1/pre.008.md diff --git a/Cargo.toml b/Cargo.toml index 13c21e5..ff7bab1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,12 +1,12 @@ # file: Cargo.toml -# version: 327 +# version: 328 [workspace] resolver = "3" members = ["crates/ksp-app-config-desk", "crates/ksp-app-solprices-desk", "crates/ksp-app-wallet-desk", "crates/ksp-config-lib", "crates/ksp-core-lib", "crates/ksp-interface-lib", "crates/ksp-logging-lib", "crates/ksp-offchain-transport-lib", "crates/ksp-onchain-transport-lib", "crates/ksp-program-api", "crates/ksp-store-api", "crates/ksp-wallet-lib"] [workspace.package] -version = "0.3.1-pre.7-fix.1" +version = "0.3.1-pre.8" edition = "2024" license = "MIT" repository = "https://git.sasedev.com/Sasedev/khadhroony-solana-project" diff --git a/deltas/0.3.1/pre.008.md b/deltas/0.3.1/pre.008.md new file mode 100644 index 0000000..a705aa6 --- /dev/null +++ b/deltas/0.3.1/pre.008.md @@ -0,0 +1,157 @@ + + + +# Delta `0.3.1-pre.008` — gate technique final Store API + +## 1. Base requise + +Cette tranche s'applique exclusivement après : + +```text +0.3.1-pre.007-fix.001 +workspace.package.version = 0.3.1-pre.7-fix.1 +``` + +Le gate opérateur fourni le **29 août 2026** est intégralement vert : + +```text +cargo fmt --all PASS +audits Rust / exports / workspace PASS / clean +audit Markdown PASS — 186 tables / 132 fichiers +cargo check --workspace PASS +cargo clippy --workspace --all-targets PASS +cargo test -p ksp-store-api PASS +``` + +Le gate Store API comprend : + +```text +15 unit tests +2 dependency-boundary tests +1 external-backend test +7 public-api tests +5 release-completeness tests +4 security-hardening tests +doc-tests propres +``` + +## 2. Objectif + +`pre.008` est exclusivement le gate technique final de `0.3.1`. + +Aucun nouveau modèle, capability, outcome, query, règle de rétention, event-only type, backend, codec, dépendance ou comportement runtime n'est ajouté. Les canaris déjà présents couvrent la surface fonctionnelle de la release. + +La tranche doit seulement : + +```text +bump la prerelease Cargo vers pre.8 +mettre le plan et la validation en état de gate final +tracer le présent delta +faire rejouer le gate workspace complet + graphes Cargo par l'opérateur +``` + +## 3. Version + +La prerelease non-fix synchronise l'identité Cargo : + +```text +0.3.1-pre.7-fix.1 +-> +0.3.1-pre.8 +``` + +Le bump garantit une identité de build distincte après la série `pre.007/fix.001` et évite toute ambiguïté avec les artefacts Cargo précédents. + +## 4. Surface déjà couverte + +Les canaris existants verrouillent notamment : + +```text +RawTransaction + RawTransactionObservation +RawAccountState + RawAccountObservation +provenance / références / payload / hashes bornés +queries cursorisées sans plafond métier Store arbitraire +outcomes idempotence/conflict +atomic acquisition contracts +RawRetentionState + tombstone + force-rehydrate +ExpectedStateMismatch pour les races de rétention +10 capabilities fines object-safe +backend externe implémentable sans ksp-store-lib +60 exports crate-root exacts +frontière ksp-interface-lib / ksp-store-api +aucun backend SQL/runtime +aucune surface N2 STRUCTURAL / N3 DECODED / N4 DOMAIN +``` + +Aucun nouveau test n'est ajouté uniquement pour matérialiser `pre.008`. + +## 5. Fichiers ajoutés + +```text +deltas/0.3.1/pre.008.md +``` + +## 6. Fichiers modifiés + +```text +Cargo.toml +docs/plans/022-V0_3_1_STORE_RAW_PLAN.md +docs/validation/018-V0_3_1_STORE_RAW.md +``` + +## 7. Surface explicitement inchangée + +Cette tranche ne touche pas : + +```text +crates/ksp-store-api/src/** +crates/ksp-store-api/tests/** +crates/ksp-store-api/unit_tests/** +crates/ksp-store-api/Cargo.toml +README.md +ROADMAP.md +CHANGELOG.md +prompts/** +config/** +docs/architecture/** +docs/rules/** +``` + +## 8. Gate opérateur final + +Exécuter : + +```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.3.1 +cargo check --workspace +cargo clippy --workspace --all-targets +cargo test -p ksp-store-api +cargo test -p ksp-logging-lib --test ownership +cargo test --workspace +cargo tree -p ksp-store-api --edges normal +cargo tree --duplicates +``` + +Résultat architectural attendu pour le graphe ciblé : + +```text +ksp-store-api +└── ksp-core-lib + └── dépendances low-level Core existantes +``` + +Aucune dépendance Store -> Interface/Transport/Program/Config/Logging/backend DB ne doit apparaître. + +`cargo tree --duplicates` est un gate d'inspection : les doublons transitifs déjà présents dans le workspace doivent être observés, mais `pre.008` n'introduit aucune dépendance nouvelle susceptible d'en créer. + +## 9. Suite + +Si ce gate complet est vert : + +```text +0.3.1-pre.009 +``` + +ouvre uniquement la réconciliation documentaire finale (`ksp-store-api/README.md`, `USAGE.md`, plan, validation et indexes/références durables réellement concernés), sans rouvrir `CHANGELOG.md`, `ROADMAP.md` ni le prompt `0.3.2`. diff --git a/docs/plans/022-V0_3_1_STORE_RAW_PLAN.md b/docs/plans/022-V0_3_1_STORE_RAW_PLAN.md index bc96e68..2cdafd2 100644 --- a/docs/plans/022-V0_3_1_STORE_RAW_PLAN.md +++ b/docs/plans/022-V0_3_1_STORE_RAW_PLAN.md @@ -1,5 +1,5 @@ - + # Plan `0.3.1` — Store API RAW foundation @@ -1430,7 +1430,11 @@ La tranche matérialise aussi le résultat distinct `ExpectedStateMismatch` pour ### `pre.008` — Gate technique final -Workspace complet, tests Store API, graphes Cargo. Aucun développement fonctionnel nouveau. +**Statut : préparé par `0.3.1-pre.008`, à fermer par le gate opérateur complet.** + +La tranche reste un gate pur : aucun nouveau modèle, capability, test métier, backend, codec, event-only type ou comportement runtime. Elle synchronise uniquement la version workspace et les preuves documentaires du gate final. + +Le gate opérateur doit couvrir le workspace complet, les tests Store API, l'ownership Logging et les graphes Cargo. Aucun développement fonctionnel nouveau. ### `pre.009` — Réconciliation documentaire finale diff --git a/docs/validation/018-V0_3_1_STORE_RAW.md b/docs/validation/018-V0_3_1_STORE_RAW.md index 9afeb9f..377fc34 100644 --- a/docs/validation/018-V0_3_1_STORE_RAW.md +++ b/docs/validation/018-V0_3_1_STORE_RAW.md @@ -1,5 +1,5 @@ - + # Validation `0.3.1` — Store API RAW foundation @@ -311,6 +311,10 @@ Aucune implémentation de persistence n'est fournie par `ksp-store-api`; les fut ### Gate technique final `pre.008` +`0.3.1-pre.008` n'ajoute aucun développement fonctionnel. Le gate opérateur de `pre.007-fix.001` fourni le 29 août 2026 est vert pour fmt, audits Rust/Markdown, workspace check/Clippy et `cargo test -p ksp-store-api` : 15 tests unitaires, 2 dependency-boundary, 1 external-backend, 7 public-api, 5 release-completeness, 4 security-hardening et doc-tests propres. + +La tranche `pre.008` doit maintenant fermer le gate technique complet, y compris workspace, ownership Logging et graphes Cargo. + Commandes de référence : ```bash @@ -465,7 +469,7 @@ La course de rétention est un état normal de concurrence : si l'état durable | `pre.005` | backend contracts/capabilities | PRÊT après gate local | | `pre.006` | queries/outcomes/retention/tombstone | PRÊT après gate local | | `pre.007` | boundary/adversarial/completeness | PRÊT après gate local | -| `pre.008` | gate technique final | À FAIRE | +| `pre.008` | gate technique final | PRÊT pour gate local | | `pre.009` | réconciliation documentaire | À FAIRE | | `pre.010` | préparation publication | À FAIRE | | `rel.001` | stable | À FAIRE |