v0.3.3-rel.001
This commit is contained in:
@@ -6,7 +6,7 @@ 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.13"
|
version = "0.3.3"
|
||||||
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"
|
||||||
|
|||||||
152
deltas/0.3.3/rel.001.md
Normal file
152
deltas/0.3.3/rel.001.md
Normal file
@@ -0,0 +1,152 @@
|
|||||||
|
<!-- file: deltas/0.3.3/rel.001.md -->
|
||||||
|
<!-- version: 1 -->
|
||||||
|
|
||||||
|
# Delta `0.3.3-rel.001` — publication stable Store/PostgreSQL RawTransaction
|
||||||
|
|
||||||
|
## 1. Base requise
|
||||||
|
|
||||||
|
Base directe attendue :
|
||||||
|
|
||||||
|
```text
|
||||||
|
0.3.3-pre.013
|
||||||
|
workspace.package.version = 0.3.3-pre.13
|
||||||
|
```
|
||||||
|
|
||||||
|
Commit attendu pour cette livraison :
|
||||||
|
|
||||||
|
```text
|
||||||
|
v0.3.3-rel.001
|
||||||
|
```
|
||||||
|
|
||||||
|
Tag stable attendu après validation :
|
||||||
|
|
||||||
|
```text
|
||||||
|
v0.3.3
|
||||||
|
```
|
||||||
|
|
||||||
|
## 2. Responsabilité de `rel.001`
|
||||||
|
|
||||||
|
Cette livraison effectue uniquement la mécanique de publication stable définie par `VER-LIFECYCLE-012`.
|
||||||
|
|
||||||
|
Elle :
|
||||||
|
|
||||||
|
- passe `workspace.package.version` de `0.3.3-pre.13` à `0.3.3` ;
|
||||||
|
- ajoute le présent delta `rel.001` ;
|
||||||
|
- ne corrige ni code, ni test, ni manifest de crate, ni Config, ni migration, ni README/USAGE, ni plan/validation, ni architecture/règle, ni prompt, ni `CHANGELOG.md`, ni `ROADMAP.md`.
|
||||||
|
|
||||||
|
Tout défaut appartenant à un couloir antérieur doit renvoyer vers une prerelease appropriée ; `rel.001` n'est jamais une tranche de rattrapage.
|
||||||
|
|
||||||
|
## 3. Preuves acquises avant publication
|
||||||
|
|
||||||
|
Le gate technique final `0.3.3-pre.011`, exécuté le **30 août 2026**, a validé le workspace complet, les graphes Cargo et le replay PostgreSQL réel.
|
||||||
|
|
||||||
|
Il a notamment validé :
|
||||||
|
|
||||||
|
```text
|
||||||
|
cargo fmt --all PASS
|
||||||
|
python3 scripts/audit_rust_workspace_rules.py PASS
|
||||||
|
python3 scripts/audit_markdown_tables.py PASS
|
||||||
|
cargo check --workspace PASS
|
||||||
|
cargo clippy --workspace --all-targets PASS
|
||||||
|
cargo test --workspace PASS
|
||||||
|
cargo test -p ksp-store-lib --no-default-features PASS
|
||||||
|
cargo check -p ksp-store-lib --no-default-features PASS
|
||||||
|
cargo tree -p ksp-store-lib --edges normal inspecté
|
||||||
|
cargo tree -p ksp-store-lib -e features inspecté
|
||||||
|
cargo tree -p ksp-store-postgres-lib --edges normal inspecté
|
||||||
|
cargo tree --duplicates inspecté
|
||||||
|
```
|
||||||
|
|
||||||
|
Le même gate a rejoué la vertical slice `RawTransaction` sur **PostgreSQL major 17** :
|
||||||
|
|
||||||
|
```text
|
||||||
|
postgres_raw_transaction_live PASS
|
||||||
|
bootstrap V000 + V001 PASS
|
||||||
|
binding réseau PASS
|
||||||
|
schema_autoupdate repair PASS
|
||||||
|
canonical + observation atomiques PASS
|
||||||
|
idempotence / conflit PASS
|
||||||
|
concurrence identique / divergente PASS
|
||||||
|
pagination ASC / DESC et cursor replay PASS
|
||||||
|
Full -> Archived -> Purged PASS
|
||||||
|
ForceRehydrate PASS
|
||||||
|
races de rétention PASS
|
||||||
|
rollback sur cancellation PASS
|
||||||
|
réouverture finale PASS
|
||||||
|
cleanup PASS
|
||||||
|
```
|
||||||
|
|
||||||
|
La réconciliation documentaire `0.3.3-pre.012-fix.001` puis la préparation de publication `0.3.3-pre.013` ont ensuite été validées par le gate ciblé sans modifier le comportement runtime ni les migrations.
|
||||||
|
|
||||||
|
Le checkpoint opérateur final de `0.3.3-pre.013`, exécuté le **30 août 2026**, est vert :
|
||||||
|
|
||||||
|
```text
|
||||||
|
General Rust rule audit clean
|
||||||
|
Rust export completeness audit 0 candidate(s)
|
||||||
|
KSP workspace Rust rule audit clean
|
||||||
|
Markdown table audit clean — 214 tables / 158 files
|
||||||
|
cargo check --workspace PASS
|
||||||
|
cargo clippy --workspace --all-targets PASS
|
||||||
|
cargo test -p ksp-store-api PASS
|
||||||
|
cargo test -p ksp-store-lib PASS
|
||||||
|
cargo test -p ksp-store-postgres-lib PASS
|
||||||
|
cargo test -p ksp-config-lib PASS
|
||||||
|
cargo check -p ksp-store-lib --no-default-features PASS
|
||||||
|
```
|
||||||
|
|
||||||
|
## 4. Surface stable publiée
|
||||||
|
|
||||||
|
`0.3.3` publie la vertical slice PostgreSQL complète de `RawTransaction` :
|
||||||
|
|
||||||
|
- six capabilities `RawTransaction*` implémentées par `PostgresBackend` et dispatchées par `Store` ;
|
||||||
|
- canonical transaction et acquisition observation atomiques ;
|
||||||
|
- idempotence exacte et conflits divergents explicites ;
|
||||||
|
- pagination keyset déterministe avec cursor opaque lié au réseau, à la direction et à la plage ;
|
||||||
|
- rétention physique `Full`, `Archived`, `Purged`, tombstone et `ForceRehydrate` ;
|
||||||
|
- `Compacted` explicitement unsupported tant qu'aucune représentation physique réelle n'existe ;
|
||||||
|
- schéma PostgreSQL V001 mono-réseau, compatible `u64` exact via `NUMERIC(20,0)` ;
|
||||||
|
- vérification/introspection de schéma, réparations additives contrôlées et historique de migration immuable ;
|
||||||
|
- erreurs backend/façade bornées et sans fuite d'URI, SQL, payload ou texte serveur.
|
||||||
|
|
||||||
|
Restent hors scope de cette release :
|
||||||
|
|
||||||
|
- implémentation physique `RawAccountState` ;
|
||||||
|
- STRUCTURAL/N2 et décodage Program ;
|
||||||
|
- Interface events partagés ;
|
||||||
|
- jobs/workers/backfills ;
|
||||||
|
- politiques worker de batching, priorité, scheduling et rétention ;
|
||||||
|
- application d'inspection Store.
|
||||||
|
|
||||||
|
## 5. Invariants de migration
|
||||||
|
|
||||||
|
Les migrations publiées restent celles validées avant `rel.001` :
|
||||||
|
|
||||||
|
```text
|
||||||
|
V000 d29068b8c13b9dc0cc9ef6aaadd0fa12d41e0fe4c56541a1118c4bfc846a1450
|
||||||
|
V001 31488cda2f08f3f46c4cdbdbb6c18c243662fada02eac4487040c8735d72cc51
|
||||||
|
```
|
||||||
|
|
||||||
|
`rel.001` ne modifie aucun SQL ni checksum de migration.
|
||||||
|
|
||||||
|
## 6. Version stable et suite
|
||||||
|
|
||||||
|
La version Cargo publiée devient :
|
||||||
|
|
||||||
|
```text
|
||||||
|
workspace.package.version = 0.3.3
|
||||||
|
```
|
||||||
|
|
||||||
|
Après validation de cette lane mécanique :
|
||||||
|
|
||||||
|
```text
|
||||||
|
commit : v0.3.3-rel.001
|
||||||
|
tag : v0.3.3
|
||||||
|
```
|
||||||
|
|
||||||
|
La session suivante repart de la base stable `v0.3.3` et exécute :
|
||||||
|
|
||||||
|
```text
|
||||||
|
prompts/023-V0_3_4_START_PROMPT.md
|
||||||
|
```
|
||||||
|
|
||||||
|
pour ouvrir `0.3.4 — Store/PostgreSQL RawAccountState + complétude/conformance RAW`.
|
||||||
Reference in New Issue
Block a user