Files
khadhroony-solana-project/deltas/0.3.1/pre.011.md
2026-08-29 12:17:41 +02:00

271 lines
6.9 KiB
Markdown

<!-- file: deltas/0.3.1/pre.011.md -->
<!-- version: 1 -->
# Delta `0.3.1-pre.011` — préparation de publication et prompt `0.3.2`
## 1. Base requise
```text
0.3.1-pre.010
workspace.package.version = 0.3.1-pre.10
```
Le gate opérateur de `pre.010`, exécuté le **29 août 2026**, est propre :
```text
cargo fmt --all PASS
python3 scripts/audit_rust_workspace_rules.py PASS / clean
python3 scripts/audit_markdown_tables.py PASS / clean — 186 tables / 135 fichiers
cargo check --workspace PASS
cargo clippy --workspace --all-targets PASS
cargo test -p ksp-store-api PASS
unit 15/15
dependency_boundary 2/2
external_backend 1/1
public_api 7/7
release_completeness 5/5
security_hardening 4/4
```
Le gate technique lourd de référence de `pre.008`, exécuté après `cargo clean`, a également validé le workspace complet, les tests ciblés, `cargo test --workspace`, les trois builds Tauri et les graphes Cargo. Le seul nom de package erroné utilisé dans la première séquence (`ksp-program-lib`) a été immédiatement remplacé par `cargo test -p ksp-program-api`, qui passe intégralement.
## 2. Objectif
Dernière prerelease avant `rel.001`, strictement limitée à la préparation de publication :
```text
bump workspace vers 0.3.1-pre.11
ajout de l'entrée stable candidate 0.3.1 dans CHANGELOG.md
fermeture 0.3.1 et trajectoire 0.3.2..0.3.7 dans ROADMAP.md
création du prompt 0.3.2
delta pre.011
```
Aucun code, test, manifest de crate, README/USAGE, plan, validation, architecture ou règle normative n'est rouvert.
## 3. Version Cargo
```text
0.3.1-pre.10
-> 0.3.1-pre.11
```
## 4. Changelog `0.3.1`
`CHANGELOG.md` enregistre la surface stable candidate réellement livrée :
```text
ksp-store-api uniquement
RawTransaction + observation
RawAccountState + observation
primitives RAW/provenance/hash/timestamp
queries cursorisées sans plafond métier KSP
10 capabilities object-safe
idempotence/conflit
rétention/tombstone/force-rehydrate
ExpectedStateMismatch
60 exports crate-root
backend externe canari
aucun PostgreSQL/runtime Config/Transport/Program/Logging
aucune surface STRUCTURAL/DECODED/DOMAIN
```
Il enregistre aussi le gate de référence après `cargo clean` et le redécoupage final :
```text
0.3.2 fondation Store/PostgreSQL
0.3.3 RawTransaction PostgreSQL
0.3.4 RawAccountState + complétude RAW
```
## 5. Roadmap
`ROADMAP.md` :
```text
passe 0.3.1 à [X]
réduit explicitement 0.3.2 à la fondation runtime/backend
ajoute 0.3.3 RawTransaction
ajoute 0.3.4 RawAccountState + complétude
renumérote Interface / Job / application en 0.3.5 / 0.3.6 / 0.3.7
reclasse les TODO déjà matérialisés par 0.3.1
```
La règle de pagination reste visible : Store navigue/cursorise ; batch-size, priorité et policy appartiennent aux futurs workers/jobs/executors.
## 6. Prompt `0.3.2`
Le nouveau prompt est confronté à :
```text
docs/rules/PROMPT_STRUCTURE.md
docs/rules/VERSION_WORKFLOW.md
docs/rules/FILE_CONTRACTS.md
docs/rules/RULES_KSP.md
docs/rules/RULES_DEPENDENCIES.md
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
docs/plans/022-V0_3_1_STORE_RAW_PLAN.md
docs/validation/018-V0_3_1_STORE_RAW.md
```
L'archive historique reste requise :
```text
khadhroony-bot3_v0.5.3-pre.005-fix010.zip
```
mais seulement pour réauditer les éléments physiques Store/PostgreSQL pertinents : runtime, pool, Config, migrations, schema/versioning et health. Elle n'est jamais une base de code.
Références externes vérifiées lors de la préparation du prompt, le **29 août 2026** :
```text
PostgreSQL stable : 18.6
tokio-postgres : 0.7.18
```
Le prompt impose de réauditer ces versions à l'ouverture réelle de `0.3.2`.
## 7. Scope strict du prompt suivant
`0.3.2` ouvre ensemble :
```text
ksp-store-lib
ksp-store-postgres-lib
```
pour :
```text
features/backend dispatch
Store settings/lifecycle
Config std.store
connexion/pool/TLS PostgreSQL
migrations/bootstrap privés
health/readiness seulement si justifié
PostgreSQL integration réelle
```
Sont explicitement réservés :
```text
0.3.3 -> RawTransaction PostgreSQL complet
0.3.4 -> RawAccountState PostgreSQL + complétude RAW
```
Aucune table RAW métier n'est demandée à `0.3.2`.
## 8. Prévision souple intégrée au prompt
Le prompt réserve :
```text
pre.001 audit/threat model/dependencies/sizing
pre.002 scaffold deux crates + feature graph
pre.003 settings/backend selection/lifecycle
pre.004 Config std.store
pre.005 connexion/pool/TLS
pre.006 migrations/bootstrap
pre.007 composition facade/backend + diagnostics
pre.008 PostgreSQL integration réelle
pre.009 hardening/completeness/feature matrix
pre.010 gate technique final
pre.011 réconciliation documentaire
pre.012 préparation de publication
rel.001 publication stable
```
La prévision reste souple et doit être recalibrée par `0.3.2-pre.001`.
## 9. Fichiers ajoutés
```text
prompts/021-V0_3_2_START_PROMPT.md
deltas/0.3.1/pre.011.md
```
## 10. Fichiers modifiés
```text
Cargo.toml
CHANGELOG.md
ROADMAP.md
```
## 11. Fichiers supprimés
Aucun.
## 12. Surfaces explicitement non rouvertes
```text
README.md
RULES.md
.env.example
config/**
crates/**
docs/**
prompts/001..020
```
En particulier :
```text
crates/ksp-store-api/**
docs/plans/022-V0_3_1_STORE_RAW_PLAN.md
docs/validation/018-V0_3_1_STORE_RAW.md
docs/architecture/**
```
## 13. Validations de préparation
À exécuter sur l'arbre reconstruit :
```text
audit Rust workspace
audit Markdown
contrôle exact du payload overlay
contrôle versions/file headers
contrôle qu'aucun fichier hors lane n'est modifié
```
Aucun résultat Cargo nouveau n'est revendiqué par la génération de cette tranche.
## 14. Gate opérateur
La lane est documentaire/de publication ; un gate ciblé suffit :
```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
```
Le gate lourd workspace/Tauri a déjà été exécuté sur `pre.008` et aucune surface code/runtime/dependency n'est rouverte depuis.
## 15. Étape suivante
Si le gate reste vert :
```text
0.3.1-rel.001
```
La publication stable doit être strictement mécanique :
```text
workspace.package.version = 0.3.1
deltas/0.3.1/rel.001.md
```
`rel.001` ne doit rouvrir ni `CHANGELOG.md`, ni `ROADMAP.md`, ni le prompt `0.3.2`.