v0.3.3-pre.011
This commit is contained in:
@@ -1,12 +1,12 @@
|
|||||||
# file: Cargo.toml
|
# file: Cargo.toml
|
||||||
# version: 360
|
# version: 361
|
||||||
|
|
||||||
[workspace]
|
[workspace]
|
||||||
resolver = "3"
|
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-store-lib", "crates/ksp-store-postgres-lib", "crates/ksp-wallet-lib"]
|
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-store-lib", "crates/ksp-store-postgres-lib", "crates/ksp-wallet-lib"]
|
||||||
|
|
||||||
[workspace.package]
|
[workspace.package]
|
||||||
version = "0.3.3-pre.10.fix.1"
|
version = "0.3.3-pre.11"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
repository = "https://git.sasedev.com/Sasedev/khadhroony-solana-project"
|
repository = "https://git.sasedev.com/Sasedev/khadhroony-solana-project"
|
||||||
|
|||||||
141
deltas/0.3.3/pre.011.md
Normal file
141
deltas/0.3.3/pre.011.md
Normal file
@@ -0,0 +1,141 @@
|
|||||||
|
<!-- file: deltas/0.3.3/pre.011.md -->
|
||||||
|
<!-- version: 1 -->
|
||||||
|
|
||||||
|
# Delta `0.3.3-pre.011` — gate technique final RawTransaction
|
||||||
|
|
||||||
|
## 1. Base requise
|
||||||
|
|
||||||
|
Base directe attendue :
|
||||||
|
|
||||||
|
```text
|
||||||
|
0.3.3-pre.10.fix.1
|
||||||
|
```
|
||||||
|
|
||||||
|
Le gate opérateur de `pre.010-fix.001` du 30 août 2026 est entièrement vert : audits, workspace check, Clippy, tests ciblés Store/API/PostgreSQL/Config et compilation façade sans feature PostgreSQL passent.
|
||||||
|
|
||||||
|
La preuve live PostgreSQL 17 complète de référence reste celle de `pre.009-fix.006`.
|
||||||
|
|
||||||
|
## 2. Objectif
|
||||||
|
|
||||||
|
Ouvrir exclusivement le gate technique final de `0.3.3` sans nouveau développement fonctionnel.
|
||||||
|
|
||||||
|
Cette tranche ne modifie aucun :
|
||||||
|
|
||||||
|
```text
|
||||||
|
src/**
|
||||||
|
test fonctionnel
|
||||||
|
migration SQL
|
||||||
|
Config runtime
|
||||||
|
manifest de crate
|
||||||
|
dépendance runtime
|
||||||
|
README/USAGE
|
||||||
|
CHANGELOG/ROADMAP
|
||||||
|
prompt suivant
|
||||||
|
```
|
||||||
|
|
||||||
|
## 3. Version
|
||||||
|
|
||||||
|
```text
|
||||||
|
workspace.package.version = 0.3.3-pre.11
|
||||||
|
```
|
||||||
|
|
||||||
|
Le passage depuis une version fix vers une prerelease normale ferme `pre.010` et ouvre la tranche suivante ; aucune autre propriété Cargo n'est modifiée.
|
||||||
|
|
||||||
|
## 4. Gate technique final attendu
|
||||||
|
|
||||||
|
```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.3
|
||||||
|
|
||||||
|
cargo check --workspace
|
||||||
|
cargo clippy --workspace --all-targets
|
||||||
|
|
||||||
|
cargo test -p ksp-store-api
|
||||||
|
cargo test -p ksp-store-lib
|
||||||
|
cargo test -p ksp-store-lib --no-default-features
|
||||||
|
cargo test -p ksp-store-postgres-lib
|
||||||
|
cargo test -p ksp-config-lib
|
||||||
|
cargo check -p ksp-store-lib --no-default-features
|
||||||
|
|
||||||
|
cargo test --workspace
|
||||||
|
|
||||||
|
cargo tree -p ksp-store-lib --edges normal
|
||||||
|
cargo tree -p ksp-store-lib -e features
|
||||||
|
cargo tree -p ksp-store-postgres-lib --edges normal
|
||||||
|
cargo tree --duplicates
|
||||||
|
```
|
||||||
|
|
||||||
|
`cargo clean` peut être exécuté avant ce gate si l'opérateur veut une reconstruction entièrement froide ; il n'est pas un invariant fonctionnel de la release.
|
||||||
|
|
||||||
|
## 5. Replay PostgreSQL réel
|
||||||
|
|
||||||
|
L'URI dédiée étant disponible, le live `RawTransaction` est rejoué comme preuve finale :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
read -rsp "Dedicated PostgreSQL URI: " KSP_PG_TEST_URI; echo
|
||||||
|
printf '%s\n' "$KSP_PG_TEST_URI" | cargo test -p ksp-store-postgres-lib --test postgres_raw_transaction_live -- --ignored --nocapture --test-threads=1
|
||||||
|
unset KSP_PG_TEST_URI
|
||||||
|
```
|
||||||
|
|
||||||
|
Le test conserve son contrat de sécurité : URI via `stdin`, absence d'echo, refus d'une surface KSP préexistante et cleanup des tables qu'il a créées.
|
||||||
|
|
||||||
|
Le live foundation séparé n'est pas requis : le live `RawTransaction` traverse déjà bootstrap V000/V001, réouverture, drift/repair et lifecycle backend.
|
||||||
|
|
||||||
|
## 6. Graphes et packaging
|
||||||
|
|
||||||
|
Les graphes Cargo sont rejoués pour figer les frontières façade/backend/features.
|
||||||
|
|
||||||
|
Aucun build Tauri final n'est imposé dans `0.3.3` : contrairement à `0.3.2`, cette release ne modifie ni resources applicatives, ni packaging `std.store`, ni manifest Tauri.
|
||||||
|
|
||||||
|
## 7. Fichiers ajoutés
|
||||||
|
|
||||||
|
```text
|
||||||
|
deltas/0.3.3/pre.011.md
|
||||||
|
```
|
||||||
|
|
||||||
|
## 8. Fichiers modifiés
|
||||||
|
|
||||||
|
```text
|
||||||
|
Cargo.toml
|
||||||
|
docs/plans/024-V0_3_3_STORE_POSTGRES_RAW_TRANSACTION_PLAN.md
|
||||||
|
docs/validation/020-V0_3_3_STORE_POSTGRES_RAW_TRANSACTION.md
|
||||||
|
```
|
||||||
|
|
||||||
|
## 9. Fichiers supprimés
|
||||||
|
|
||||||
|
Aucun.
|
||||||
|
|
||||||
|
## 10. Migrations
|
||||||
|
|
||||||
|
Aucune ressource SQL n'est modifiée.
|
||||||
|
|
||||||
|
```text
|
||||||
|
V000 d29068b8c13b9dc0cc9ef6aaadd0fa12d41e0fe4c56541a1118c4bfc846a1450
|
||||||
|
V001 31488cda2f08f3f46c4cdbdbb6c18c243662fada02eac4487040c8735d72cc51
|
||||||
|
```
|
||||||
|
|
||||||
|
## 11. Validations exécutées dans l'environnement de génération
|
||||||
|
|
||||||
|
```text
|
||||||
|
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.3
|
||||||
|
contrôle statique version/payload
|
||||||
|
contrôle byte-for-byte de migrations/
|
||||||
|
```
|
||||||
|
|
||||||
|
Cargo/rustc/rustfmt ne sont pas disponibles dans l'environnement de génération ; aucun gate Cargo n'est déclaré PASS ici.
|
||||||
|
|
||||||
|
## 12. Questions ouvertes
|
||||||
|
|
||||||
|
Aucune question de design. Tout défaut découvert par ce gate ouvre `pre.011-fix.NNN` avant la réconciliation documentaire.
|
||||||
|
|
||||||
|
## 13. Suite
|
||||||
|
|
||||||
|
Après gate technique et live entièrement verts :
|
||||||
|
|
||||||
|
```text
|
||||||
|
0.3.3-pre.012 — réconciliation documentaire finale
|
||||||
|
0.3.3-pre.013 — préparation publication + prompt 0.3.4
|
||||||
|
0.3.3-rel.001 — publication stable
|
||||||
|
```
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
<!-- file: docs/plans/024-V0_3_3_STORE_POSTGRES_RAW_TRANSACTION_PLAN.md -->
|
<!-- file: docs/plans/024-V0_3_3_STORE_POSTGRES_RAW_TRANSACTION_PLAN.md -->
|
||||||
<!-- version: 11 -->
|
<!-- version: 12 -->
|
||||||
|
|
||||||
# Plan `0.3.3` — Store/PostgreSQL RawTransaction vertical slice
|
# Plan `0.3.3` — Store/PostgreSQL RawTransaction vertical slice
|
||||||
|
|
||||||
@@ -34,15 +34,17 @@ Tranches techniques validées :
|
|||||||
0.3.3-pre.006 + fix.001 — pagination keyset + cursor V1
|
0.3.3-pre.006 + fix.001 — pagination keyset + cursor V1
|
||||||
0.3.3-pre.007 + fix.001 — archive, purge, compare-and-transition et rejet Compacted
|
0.3.3-pre.007 + fix.001 — archive, purge, compare-and-transition et rejet Compacted
|
||||||
0.3.3-pre.008 + fix.001 — six capabilities PostgreSQL + dispatch façade
|
0.3.3-pre.008 + fix.001 — six capabilities PostgreSQL + dispatch façade
|
||||||
|
0.3.3-pre.009 + fix.001..fix.006 — preuve PostgreSQL 17 complète RawTransaction
|
||||||
|
0.3.3-pre.010 + fix.001 — hardening/completeness final de la vertical slice
|
||||||
```
|
```
|
||||||
|
|
||||||
Tranche technique courante :
|
Tranche technique courante :
|
||||||
|
|
||||||
```text
|
```text
|
||||||
0.3.3-pre.009 — preuve PostgreSQL live complète RawTransaction
|
0.3.3-pre.011 — gate technique final
|
||||||
```
|
```
|
||||||
|
|
||||||
Les gates opérateur jusqu'à `pre.008-fix.001` sont verts. `pre.009` n'ajoute aucun comportement métier ni migration : elle matérialise la preuve PostgreSQL réelle opt-in de la vertical slice complète, y compris concurrence, pagination, rétention/rehydrate et rollback/cancellation.
|
Les gates opérateur jusqu'à `pre.010-fix.001` sont verts. `pre.009-fix.006` a aussi passé le live PostgreSQL 17 complet. `pre.011` n'ajoute aucun comportement métier, test fonctionnel, SQL ou migration : elle rejoue la preuve technique globale avant la réconciliation documentaire.
|
||||||
|
|
||||||
## 2. Sources et autorité
|
## 2. Sources et autorité
|
||||||
|
|
||||||
@@ -1199,13 +1201,19 @@ Tranche matérialisée :
|
|||||||
|
|
||||||
### `0.3.3-pre.011` — gate technique final
|
### `0.3.3-pre.011` — gate technique final
|
||||||
|
|
||||||
- fmt ;
|
Tranche matérialisée sans changement fonctionnel :
|
||||||
|
|
||||||
|
- `cargo fmt --all` ;
|
||||||
- audits Rust/Markdown ;
|
- audits Rust/Markdown ;
|
||||||
- check workspace ;
|
- `cargo check --workspace` ;
|
||||||
- Clippy all-targets ;
|
- `cargo clippy --workspace --all-targets` ;
|
||||||
- tests Store/API/Config ;
|
- tests ciblés Store API/façade/backend/Config ;
|
||||||
- no-default-features ;
|
- façade testée et compilée avec `--no-default-features` ;
|
||||||
- live opt-in si URI dédiée fournie.
|
- `cargo test --workspace` ;
|
||||||
|
- graphes Cargo normal/features/duplicates ;
|
||||||
|
- replay opt-in du live PostgreSQL `RawTransaction` sur URI dédiée ;
|
||||||
|
- aucun build Tauri imposé : `0.3.3` ne modifie ni resources applicatives ni packaging desktop ;
|
||||||
|
- aucun changement `src/**`, migration SQL, Config runtime, README/USAGE, CHANGELOG/ROADMAP ou prompt suivant.
|
||||||
|
|
||||||
### `0.3.3-pre.012` — réconciliation documentaire
|
### `0.3.3-pre.012` — réconciliation documentaire
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<!-- file: docs/validation/020-V0_3_3_STORE_POSTGRES_RAW_TRANSACTION.md -->
|
<!-- file: docs/validation/020-V0_3_3_STORE_POSTGRES_RAW_TRANSACTION.md -->
|
||||||
<!-- version: 22 -->
|
<!-- version: 23 -->
|
||||||
|
|
||||||
# Validation `0.3.3` — Store/PostgreSQL RawTransaction vertical slice
|
# Validation `0.3.3` — Store/PostgreSQL RawTransaction vertical slice
|
||||||
|
|
||||||
@@ -833,3 +833,29 @@ cargo check -p ksp-store-lib --no-default-features
|
|||||||
- [PASS statique] aucune logique runtime, SQL de production, migration ou checksum V000/V001 n’est modifié ;
|
- [PASS statique] aucune logique runtime, SQL de production, migration ou checksum V000/V001 n’est modifié ;
|
||||||
- [À FAIRE] gate Cargo opérateur complet de `pre.010-fix.001`.
|
- [À FAIRE] gate Cargo opérateur complet de `pre.010-fix.001`.
|
||||||
|
|
||||||
|
### `pre.010-fix.001` — clôture opérateur du hardening
|
||||||
|
|
||||||
|
- [PASS] gate standard complet propre le 2026-08-30 ;
|
||||||
|
- [PASS] audits Rust/Markdown, workspace check et Clippy all-targets ;
|
||||||
|
- [PASS] `ksp-store-api` : 15 unitaires, 2 boundary, 1 external backend, 7 public API, 5 release completeness, 4 security hardening ;
|
||||||
|
- [PASS] `ksp-store-lib` : 10 unitaires, 3 boundary, 1 feature mismatch, 5 hardening, 5 public API ;
|
||||||
|
- [PASS] `ksp-store-postgres-lib` : 41 unitaires, 9 boundary, 7 hardening, 9 public API ; lives normalement ignored ;
|
||||||
|
- [PASS] `ksp-config-lib` : 128 unitaires, 7 ownership, 17 public API ;
|
||||||
|
- [PASS] `cargo check -p ksp-store-lib --no-default-features` ;
|
||||||
|
- [PASS] le canari SQL exact exige les deux formes `ON CONFLICT (signature) DO NOTHING` et `ON CONFLICT (observation_key) DO NOTHING` ;
|
||||||
|
- [PASS] aucune production, migration ou checksum V000/V001 modifié ;
|
||||||
|
- [PASS] `pre.010` est fermée et `pre.011` peut ouvrir le gate technique final.
|
||||||
|
|
||||||
|
### `pre.011` — gate technique final
|
||||||
|
|
||||||
|
- [MATÉRIALISÉ] aucune modification fonctionnelle, SQL, migration, Config runtime, README/USAGE, CHANGELOG/ROADMAP ou prompt ;
|
||||||
|
- [À FAIRE] `cargo fmt --all` + audits Rust/Markdown ;
|
||||||
|
- [À FAIRE] `cargo check --workspace` + `cargo clippy --workspace --all-targets` ;
|
||||||
|
- [À FAIRE] tests ciblés `ksp-store-api`, `ksp-store-lib`, `ksp-store-postgres-lib`, `ksp-config-lib` ;
|
||||||
|
- [À FAIRE] `cargo test -p ksp-store-lib --no-default-features` + `cargo check -p ksp-store-lib --no-default-features` ;
|
||||||
|
- [À FAIRE] `cargo test --workspace` ;
|
||||||
|
- [À FAIRE] graphes Cargo façade/backend/features/duplicates ;
|
||||||
|
- [À FAIRE] replay du live PostgreSQL `postgres_raw_transaction_live` sur URI dédiée ;
|
||||||
|
- [N/A] builds Tauri : aucune resource applicative ni packaging desktop n'est modifié par `0.3.3` ;
|
||||||
|
- [INVARIANT] V000/V001 et leurs checksums restent byte-identiques à la preuve live `pre.009-fix.006`.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user