Files
2026-08-30 05:55:29 +02:00

8.2 KiB

Delta 0.3.2-pre.011 — réconciliation documentaire finale Store/PostgreSQL

1. Base requise

Base directe attendue :

0.3.2-pre.010

Commit attendu :

v0.3.2-pre.011

Archive overlay attendue :

ksp-general-0.3.2-pre.011.zip

Cette tranche suit le gate technique final pre.010 et n'ajoute aucun comportement runtime.

2. Résultat du gate technique pre.010

Le gate opérateur 0.3.2-pre.010 a été rejoué après cargo clean et fournit les preuves suivantes :

audits Rust                                          PASS
cargo check --workspace                              PASS
cargo clippy --workspace --all-targets               PASS
tests ciblés de toutes les crates                    PASS
ksp-store-lib default + --no-default-features        PASS
cargo test --workspace                               PASS
graphes Cargo normal/features/duplicates             exécutés
3 builds Tauri Linux                                 PASS
PostgreSQL live foundation                           PASS — major 17

La ligne d'audit Markdown du journal opérateur pre.010 a utilisé par erreur deltas/0.3.1 au lieu de deltas/0.3.2. L'overlay pre.010 avait été audité dans l'environnement de génération avec le chemin correct ; pre.011 rejoue explicitement le scope complet deltas/0.3.2. Cette erreur de scope de commande ne constitue pas un défaut runtime et n'ouvre pas un pre.010-fix.

3. Objectif

Appliquer VER-LIFECYCLE-006 et figer les documents durables de la fondation Store/PostgreSQL avant la préparation de publication minimale :

README/USAGE ksp-store-lib
README/USAGE ksp-store-postgres-lib
README/USAGE ksp-config-lib pour std.store
index docs global
index plans
index validations
plan 023
validation 019

Cette tranche ne finalise pas CHANGELOG.md, ROADMAP.md ni le prompt 0.3.3.

4. Documentation de ksp-store-lib

Le nouveau README fixe durablement :

façade runtime backend-neutral
feature postgres par défaut
1 Store = 1 RawNetworkId + 1 backend physique
aucun multiplexage automatique de bases/réseaux
Config propriétaire des targets et secrets
aucun type PostgreSQL physique réexporté
aucune capability RAW PostgreSQL encore implémentée

Le nouveau USAGE documente :

dépendance consumer normale uniquement vers ksp-store-lib
construction programmatique de StoreSettings
Store::open / runtime_snapshot / health / close
résolution recommandée via ksp-config-lib
settings pool/bootstrap/TLS
surface health sûre
limite fonctionnelle de la fondation

5. Documentation de ksp-store-postgres-lib

Le README et le USAGE fixent la crate comme backend physique, non comme seconde façade :

consumer ordinaire -X-> ksp-store-postgres-lib
bridge façade/tests seulement
pool Deadpool borné
TLS Disabled / VerifyFull via Rustls
roots système + AWS-LC
moteur de migrations KSP privé
V000 bootstrap + ksp_store_schema_migrations
history version/name/SHA-256 + advisory transaction lock
health/runtime snapshots sûrs
PostgresBackendError = kind + phase statique
aucune table/repository/capability RAW métier

La politique durable reste PostgreSQL >= 15 pour la validation de fondation ; le major effectivement exercé reste enregistré dans la matrice et non figé comme dépendance runtime maximale.

6. Réconciliation Config

ksp-config-lib/README.md et USAGE.md documentent désormais :

cfg.std.store / schema.std.store
Config -> Store avec default-features = false
sélection de target nommée
RawNetworkId explicite
provenance Secret obligatoire de l'URI PostgreSQL
variables KSP_SECRET_STORE_DEVNET_POSTGRES_URI
          KSP_SECRET_STORE_MAINNET_POSTGRES_URI
          KSP_SECRET_STORE_TESTNET_POSTGRES_URI
targets committed devnet/mainnet/testnet
bases PostgreSQL indépendantes par target
absence de routage multi-target dans Store

Aucune lecture d'environnement n'est déplacée vers Store/backend.

7. Indexes et documents de release

Les indexes durables référencent maintenant le plan 023 et la validation 019 ainsi que la documentation des deux crates runtime.

Le plan 023 enregistre le résultat réel de pre.010, la correction de scope Markdown à rejouer et la matérialisation documentaire de pre.011.

La matrice 019 est réconciliée avec les preuves réelles de pre.002 à pre.010, y compris :

ksp-store-api non régressé
pool/TLS/bootstrap/health/close
hardening/security
feature mismatch
no-env
PostgreSQL live major 17 en pre.008 et pre.010
3 builds Tauri au gate final
aucun TODO technique applicable à 0.3.2

Le seul statut restant avant fermeture de pre.011 est son propre gate documentaire opérateur.

8. Documents relus et volontairement inchangés

Les architectures suivantes ont été relues sur la surface finale pre.010 :

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

Elles sont déjà cohérentes avec le split façade/backend et ne sont pas modifiées artificiellement.

Le choix documentaire de 0.3.1-pre.009 de ne pas créer un README/USAGE propre à ksp-store-api n'est pas rouvert par cette release runtime/backend.

9. Hors scope préservé

Aucun élément suivant n'est introduit :

RawTransaction PostgreSQL persistence/query/retention
RawAccountState PostgreSQL persistence/query/retention
SQL métier RAW
repository métier
batch/backlog/priority worker/job
Store Desk
nouvelle migration
nouvelle dépendance
nouveau test fonctionnel
modification src/**

10. Fichiers ajoutés

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
deltas/0.3.2/pre.011.md

11. Fichiers modifiés

Cargo.toml
crates/ksp-config-lib/README.md
crates/ksp-config-lib/USAGE.md
docs/000-README.md
docs/plans/000-README.md
docs/plans/023-V0_3_2_STORE_POSTGRES_FOUNDATION_PLAN.md
docs/validation/000-README.md
docs/validation/019-V0_3_2_STORE_POSTGRES_FOUNDATION.md

12. Fichiers supprimés

aucun

13. Version Cargo

La prerelease non-fix synchronise :

workspace.package.version = 0.3.2-pre.11

Aucune dépendance, feature ou configuration Cargo n'est modifiée en dehors de cette version.

14. Validation de génération

L'environnement de génération ne fournit pas cargo/rustc; aucun résultat Cargo local n'est donc déclaré PASS par ce delta.

Les audits Python applicables ont été rejoués après matérialisation de l'overlay, avec le chemin Markdown exact deltas/0.3.2 :

General Rust rule audit: clean
Rust export completeness audit: 0 candidate(s)
KSP workspace Rust rule audit: clean
Markdown table audit: clean (186 table(s), 142 file(s))

Cette preuve corrige explicitement le défaut de scope de la commande Markdown observé dans le journal opérateur pre.010.

15. Gate opérateur après application

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.2

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

Le smoke PostgreSQL réel, les graphes Cargo complets, cargo test --workspace et les trois builds Tauri ne sont pas rejoués par nécessité dans cette tranche documentaire : ils sont déjà le gate technique vert de pre.010 et pre.011 ne modifie aucun code, dépendance, config runtime, resource Tauri ou migration.

16. Suite

Si le gate documentaire pre.011 est vert, la seule prerelease restante est pre.012, strictement limitée à la préparation de publication :

Cargo.toml
CHANGELOG.md
ROADMAP.md
prompts/022-V0_3_3_START_PROMPT.md
deltas/0.3.2/pre.012.md

Aucun README, USAGE, plan, validation, architecture, code, test, schema ou config ne devra être rouvert dans pre.012.