Files
khadhroony-solana-project/deltas/0.3.1/rel.001.md
2026-08-29 12:33:09 +02:00

8.6 KiB

Delta 0.3.1-rel.001 — publication stable Store API RAW foundation

1. Base requise

Base directe attendue :

0.3.1-pre.011
workspace.package.version = 0.3.1-pre.11

Commit attendu pour cette livraison :

v0.3.1-rel.001

Tag stable attendu après validation :

v0.3.1

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.1-pre.11 à 0.3.1 ;
  • ajoute le présent delta rel.001 ;
  • ne corrige ni code, ni test, ni manifest de crate, 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 complet de 0.3.1-pre.008, exécuté le 29 août 2026 après cargo clean, a reconstruit et validé la workspace depuis zéro :

cargo clean                                      PASS
cargo fmt --all                                  PASS
python3 scripts/audit_rust_workspace_rules.py    PASS
  General Rust rule audit                        clean
  Rust export completeness audit                 0 candidate(s)
  KSP workspace Rust rule audit                  clean
python3 scripts/audit_markdown_tables.py         PASS
cargo check --workspace                          PASS
cargo clippy --workspace --all-targets           PASS
cargo test --workspace                           PASS
cargo tauri build — SOL Prices Desk              PASS
cargo tauri build — Wallet Desk                  PASS
cargo tauri build — Config Desk                  PASS
cargo tree -p ksp-store-api --edges normal       inspecté
cargo tree --duplicates                          inspecté

Le test ciblé ksp-program-api, initialement invoqué sous un nom de package erroné dans la séquence opérateur, a ensuite été rejoué explicitement avec le bon package et est passé intégralement.

Le gate ciblé de la préparation minimale de publication 0.3.1-pre.011, exécuté le 29 août 2026, est également vert :

cargo fmt --all                                  PASS
python3 scripts/audit_rust_workspace_rules.py    PASS
  General Rust rule audit                        clean
  Rust export completeness audit                 0 candidate(s)
  KSP workspace Rust rule audit                  clean
python3 scripts/audit_markdown_tables.py         PASS — 186 tables / 137 fichiers
cargo check --workspace                          PASS
cargo clippy --workspace --all-targets           PASS
cargo test -p ksp-store-api                      PASS
  unit                                             15 passed
  dependency_boundary                               2 passed
  external_backend                                  1 passed
  public_api                                        7 passed
  release_completeness                              5 passed
  security_hardening                                4 passed
  doc-tests                                         0 failed

Les tranches pre.009, pre.010 et pre.011 n'ont rouvert aucun code Rust de ksp-store-api ni aucune dépendance runtime ; elles ont porté la réconciliation documentaire, le redécoupage de la trajectoire Store/PostgreSQL puis la préparation de publication.

4. Version stable publiée

La version Cargo devient :

workspace.package.version = 0.3.1

La release stable publiée est :

0.3.1 — Store API RAW foundation

La surface stable comprend notamment :

ksp-store-api
RawTransaction + RawTransactionObservation
RawAccountState + RawAccountObservation
primitives RAW bornées et redaction-safe
10 capabilities backend-agnostic fines et object-safe
queries/cursors sans plafond métier arbitraire imposé par Store
outcomes d'idempotence et de conflit
lifecycle RawTransaction Full -> Compacted -> Archived -> Purged
RawTransactionTombstone minimal
ForceRehydrate explicite
ExpectedStateMismatch pour compare-and-transition concurrent
60 exports crate-root exacts
runtime dependency normale : ksp-core-lib uniquement

Restent volontairement absents de 0.3.1 :

ksp-store-lib runtime
ksp-store-postgres-lib
PostgreSQL / SQL / migrations runtime
Config std.store
worker / job / executor policy
N2 STRUCTURAL
N3 DECODED
N4 DOMAIN
RawLog persistant
TransactionStatusObservation commun
backend-specific rows / SQL ids

La frontière de responsabilité stable reste :

ksp-store-api
    = modèles persistants/replayables + capabilities backend-agnostic

ksp-interface-lib
    = contrats passifs/event-only inter-composants lorsqu'ils existent

worker / job / executor
    = batch-size, priorité, stratégie de sélection, policy de traitement

La pagination Store reste une primitive de navigation/cursorisation. Une limite physique future d'un backend peut être exposée ou gérée par continuation, mais Store n'invente pas de plafond métier global inférieur.

5. Trajectoire suivante confirmée

Le redécoupage final conserve ksp-store-lib et ksp-store-postgres-lib développés ensemble à chaque release, en trois slices verticales :

0.3.2  fondation runtime/backend PostgreSQL
0.3.3  vertical slice PostgreSQL RawTransaction complète
0.3.4  vertical slice PostgreSQL RawAccountState + complétude Store RAW
0.3.5  Interface events partagés réellement nécessaires
0.3.6  Job API + premier backfill RAW
0.3.7  application backfill/inspection RAW

Le prompt actif de la prochaine release est :

prompts/021-V0_3_2_START_PROMPT.md

Il exige l'archive historique khadhroony-bot3_v0.5.3-pre.005-fix010.zip pour l'audit ciblé des anciennes surfaces Store/PostgreSQL, sans lui donner d'autorité normative sur KSP.

6. Fichiers ajoutés

deltas/0.3.1/rel.001.md

7. Fichiers modifiés

Cargo.toml

8. Fichiers supprimés

aucun

9. Validations exécutées pour préparer le delta

Contrôles statiques de l'overlay :

Cargo.toml                         version 0.3.1
payload rel.001                    2 fichiers exactement
CHANGELOG.md                       non rouvert
ROADMAP.md                         non rouvert
prompt 021                         non rouvert
README/USAGE                       non rouverts
plan / validation                  non rouverts
architecture / règles             non rouvertes
code / tests                       non rouverts
aucun fichier de rattrapage        présent

La préparation de l'archive ne rejoue aucun test Cargo dans l'environnement de génération. Les preuves techniques acquises sont celles des gates opérateur ci-dessus ; le gate stable final reste à exécuter après application.

10. Validation stable après application

Exécuter avant commit/tag :

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 --workspace

Il n'est pas nécessaire de rejouer les trois builds Tauri, les graphes Cargo ni les smokes live : rel.001 ne modifie ni code/runtime, ni dépendance, ni Config, ni surface desktop.

11. Questions ouvertes

Aucune question ouverte ne bloque la publication de 0.3.1.

Les choix de pool, TLS, mécanisme de migrations/checksums/verrouillage, forme exacte de StoreSettings/std.store et health/readiness appartiennent à l'audit/sizing de 0.3.2-pre.001.

Les capabilities PostgreSQL métier RawTransaction et RawAccountState restent volontairement reportées à 0.3.3 et 0.3.4 respectivement.

12. Commit et tag stable

Après succès du gate stable :

commit : v0.3.1-rel.001
tag    : v0.3.1

Aucun tag intermédiaire rel.001 n'est requis.

Commandes Git typiques :

git add Cargo.toml deltas/0.3.1/rel.001.md
git commit -m "v0.3.1-rel.001"
git tag v0.3.1
git push
git push origin v0.3.1

13. Suite

Après publication du tag stable v0.3.1, ouvrir exclusivement :

0.3.2-pre.001 — Store runtime / PostgreSQL foundation

avec :

prompts/021-V0_3_2_START_PROMPT.md

La session suivante doit recevoir :

archive opérateur exacte de v0.3.1
khadhroony-bot3_v0.5.3-pre.005-fix010.zip

0.3.2-pre.001 reste une tranche d'audit/brainstorming/sizing avant implémentation lourde et doit préserver strictement le découpage 0.3.2 / 0.3.3 / 0.3.4 défini en fin de 0.3.1.