169 lines
5.2 KiB
Markdown
169 lines
5.2 KiB
Markdown
<!-- file: deltas/0.3.3/pre.012.md -->
|
|
<!-- version: 1 -->
|
|
|
|
# Delta `0.3.3-pre.012` — réconciliation documentaire finale RawTransaction
|
|
|
|
## 1. Base requise
|
|
|
|
Base directe attendue :
|
|
|
|
```text
|
|
0.3.3-pre.011
|
|
workspace.package.version = 0.3.3-pre.11
|
|
```
|
|
|
|
Le gate technique final `pre.011` du **30 août 2026** est entièrement vert.
|
|
|
|
## 2. Résultat du gate technique `pre.011`
|
|
|
|
```text
|
|
audits Rust / export / KSP PASS / clean
|
|
audit Markdown PASS / clean — 214 tables / 154 fichiers
|
|
cargo check --workspace PASS
|
|
cargo clippy --workspace --all-targets PASS
|
|
tests ciblés Store API / façade / PostgreSQL PASS
|
|
ksp-config-lib PASS — 128 unit + ownership/public API
|
|
ksp-store-lib --no-default-features test/check PASS
|
|
cargo test --workspace PASS
|
|
graphes Cargo normal/features/duplicates exécutés
|
|
PostgreSQL RawTransaction live PASS — major 17, 1 test
|
|
builds Tauri N/A — aucune resource/package desktop modifiée
|
|
```
|
|
|
|
Le replay PostgreSQL final confirme de nouveau bootstrap V000/V001, drift/repair, atomicité, concurrence, rollback, pagination/cursor, rétention/races, ForceRehydrate et réouverture durable.
|
|
|
|
## 3. Objectif
|
|
|
|
Appliquer la réconciliation documentaire finale de `0.3.3` sans rouvrir la surface technique :
|
|
|
|
```text
|
|
README/USAGE ksp-store-lib
|
|
README/USAGE ksp-store-postgres-lib
|
|
index docs global
|
|
index plans
|
|
index validations
|
|
plan 024
|
|
validation 020
|
|
CHANGELOG 0.3.3
|
|
ROADMAP 0.3.3
|
|
```
|
|
|
|
Aucun changement n'est apporté à `src/**`, tests, Config runtime, architectures, règles, manifests de crate, dépendances ou migrations.
|
|
|
|
## 4. Version Cargo
|
|
|
|
```text
|
|
0.3.3-pre.11
|
|
-> 0.3.3-pre.12
|
|
```
|
|
|
|
## 5. Surface stable candidate enregistrée
|
|
|
|
La documentation durable fixe désormais :
|
|
|
|
```text
|
|
PostgresBackend + Store implémentent les six RawTransaction*
|
|
1 base = 1 RawNetworkId via ksp_store_identity
|
|
slot u64 exact = NUMERIC(20,0)
|
|
V001 logique = ressources tables/constraints/indexes
|
|
canonical + acquisition observation atomiques
|
|
idempotence réelle / divergence = store_api.raw_conflict
|
|
observations séparées et provenance complète
|
|
get Full/Archived/Purged + tombstone séparé
|
|
list keyset (slot, signature), cursor V1 109 bytes, sans OFFSET
|
|
aucun cap métier Store de batch/page
|
|
Full -> Archived -> Purged atomique
|
|
ForceRehydrate explicite
|
|
Compacted unsupported honnête
|
|
erreurs physiques redacted et codes stables
|
|
PostgreSQL >= 15, preuve finale major 17
|
|
RawAccountState physique reporté à 0.3.4
|
|
```
|
|
|
|
## 6. Rétention et roadmap
|
|
|
|
`ROADMAP.md` distingue désormais deux faits :
|
|
|
|
- la mécanique physique `RawTransaction` PostgreSQL `Full -> Archived -> Purged` est acquise en `0.3.3` ;
|
|
- la policy d'éligibilité, la maintenance worker/job et une éventuelle vraie représentation `Compacted` restent futures.
|
|
|
|
Store applique une transition demandée ; il ne décide toujours pas seul qu'un RAW peut être archivé ou purgé.
|
|
|
|
## 7. Migrations
|
|
|
|
Aucune ressource SQL n'est modifiée.
|
|
|
|
```text
|
|
V000 d29068b8c13b9dc0cc9ef6aaadd0fa12d41e0fe4c56541a1118c4bfc846a1450
|
|
V001 31488cda2f08f3f46c4cdbdbb6c18c243662fada02eac4487040c8735d72cc51
|
|
```
|
|
|
|
Les corrections `pre.009-fix.001..006` ont porté sur le test live, la comparaison du catalogue et la classification du drift, jamais sur les bytes des migrations.
|
|
|
|
## 8. Documents relus et volontairement inchangés
|
|
|
|
Les architectures Store restent cohérentes et ne sont pas modifiées artificiellement :
|
|
|
|
```text
|
|
docs/architecture/003-COMPONENT_CONTRACTS.md
|
|
docs/architecture/004-COMPONENT_INVENTORY.md
|
|
docs/architecture/005-DEPENDENCY_GRAPH.md
|
|
docs/architecture/008-DATA_MATERIALIZATION_AND_STORE.md
|
|
docs/architecture/009-ACQUISITION_WORKERS_AND_JOBS.md
|
|
```
|
|
|
|
`ksp-config-lib` README/USAGE restent également inchangés : `0.3.3` n'a modifié ni `std.store`, ni les targets, ni la propriété des secrets.
|
|
|
|
## 9. Fichiers ajoutés
|
|
|
|
```text
|
|
deltas/0.3.3/pre.012.md
|
|
```
|
|
|
|
## 10. Fichiers modifiés
|
|
|
|
```text
|
|
Cargo.toml
|
|
CHANGELOG.md
|
|
ROADMAP.md
|
|
crates/ksp-store-lib/README.md
|
|
crates/ksp-store-lib/USAGE.md
|
|
crates/ksp-store-postgres-lib/README.md
|
|
crates/ksp-store-postgres-lib/USAGE.md
|
|
docs/000-README.md
|
|
docs/plans/000-README.md
|
|
docs/plans/024-V0_3_3_STORE_POSTGRES_RAW_TRANSACTION_PLAN.md
|
|
docs/validation/000-README.md
|
|
docs/validation/020-V0_3_3_STORE_POSTGRES_RAW_TRANSACTION.md
|
|
```
|
|
|
|
## 11. Fichiers supprimés
|
|
|
|
Aucun.
|
|
|
|
## 12. Gate 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-postgres-lib
|
|
cargo test -p ksp-config-lib
|
|
cargo check -p ksp-store-lib --no-default-features
|
|
```
|
|
|
|
Le replay PostgreSQL et `cargo test --workspace` n'ont pas besoin d'être répétés dans cette tranche purement documentaire : ils constituent la preuve technique finale acquise de `pre.011`.
|
|
|
|
## 13. Suite
|
|
|
|
Après gate documentaire propre :
|
|
|
|
```text
|
|
0.3.3-pre.013 — préparation de publication + prompt 0.3.4
|
|
0.3.3-rel.001 — publication stable
|
|
```
|