v0.3.11-rel.001

This commit is contained in:
2026-09-08 22:02:24 +02:00
parent 107986bf85
commit 85937b8cbb
2 changed files with 178 additions and 2 deletions

View File

@@ -1,12 +1,12 @@
# file: Cargo.toml
# version: 517
# version: 518
[workspace]
resolver = "3"
members = ["crates/ksp-app-backfill-desk", "crates/ksp-app-config-desk", "crates/ksp-app-solprices-desk", "crates/ksp-app-store-desk", "crates/ksp-app-wallet-desk", "crates/ksp-config-lib", "crates/ksp-core-lib", "crates/ksp-interface-lib", "crates/ksp-job-api", "crates/ksp-job-backfill-lib", "crates/ksp-logging-lib", "crates/ksp-offchain-transport-lib", "crates/ksp-onchain-transport-lib", "crates/ksp-program-api", "crates/ksp-raw-transaction-lib", "crates/ksp-store-api", "crates/ksp-store-lib", "crates/ksp-store-postgres-lib", "crates/ksp-wallet-lib", "crates/ksp-worker-api", "crates/ksp-worker-raw-transaction-ingest-lib"]
[workspace.package]
version = "0.3.11-pre.13"
version = "0.3.11"
edition = "2024"
license = "MIT"
repository = "https://git.sasedev.com/Sasedev/khadhroony-solana-project"

176
deltas/0.3.11/rel.001.md Normal file
View File

@@ -0,0 +1,176 @@
<!-- file: deltas/0.3.11/rel.001.md -->
<!-- version: 1 -->
# Delta `0.3.11-rel.001` — publication stable
## Base requise
Base directe attendue :
```text
0.3.11-pre.013
workspace.package.version = 0.3.11-pre.13
```
Le gate opérateur de `pre.013`, exécuté le **8 septembre 2026**, est propre :
```text
cargo fmt --all -- --check: PASS
General Rust rule audit: clean
Rust export completeness audit: 0 candidate(s)
KSP workspace Rust rule audit: clean
Markdown table audit: clean (340 table(s), 797 file(s))
cargo check --workspace: PASS
```
Les couloirs de fermeture antérieurs sont déjà fermés :
- `pre.011` : gate technique final sur `0.3.11-pre.11`, avec rustfmt check, audits Rust/Markdown, `cargo check --workspace`, Clippy workspace/all-targets/all-features `-D warnings`, 56 tests Worker, `cargo test --workspace --all-targets --all-features`, arbres Cargo Worker normal/features et `cargo tree --duplicates` ;
- `pre.012` : réconciliation documentaire finale avec README/USAGE durables du Worker et architecture/références réalignées sur l'absence volontaire de source live dans `0.3.11` ;
- `pre.013` : préparation minimale de publication avec `CHANGELOG.md`, `ROADMAP.md` et `prompts/031-V0_3_12_START_PROMPT.md`, dont les 16 sections normatives ont été vérifiées conformes à `docs/rules/PROMPT_STRUCTURE.md`.
## Objet
Publier mécaniquement la version stable :
```text
0.3.11
```
Conformément à `VER-LIFECYCLE-012`, cette tranche ne corrige ni code, ni test, ni documentation durable, ni architecture, ni configuration, ni dépendance, ni prompt.
Tout défaut nouveau renvoie vers une prerelease appropriée ; `rel.001` n'est pas une tranche de rattrapage.
## Modification
### `Cargo.toml`
Le header est incrémenté parce que le fichier est réellement modifié :
```text
517 -> 518
```
La version workspace devient :
```text
0.3.11-pre.13 -> 0.3.11
```
Aucune autre ligne du `Cargo.toml` racine n'est modifiée.
## Fichiers ajoutés
```text
deltas/0.3.11/rel.001.md
```
## Fichiers modifiés
```text
Cargo.toml
```
## Fichiers supprimés
```text
aucun
```
## Surfaces explicitement inchangées
```text
CHANGELOG.md
ROADMAP.md
README.md
RULES.md
prompts/031-V0_3_12_START_PROMPT.md
crates/**
docs/**
config/**
```
La surface préparée en `pre.013` reste byte-identique hors mécanique Cargo et ajout du présent delta.
## Surface stable publiée
`0.3.11` stabilise `ksp-worker-raw-transaction-ingest-lib` comme fondation source-neutral du Worker continu `RawTransaction` :
- identité Worker stable `raw_transaction_ingest` et settings bornés ;
- lifecycle `start` / stop idempotent / terminal future sur runtime Tokio fourni par le caller ;
- supervisor privé avec ownership explicite des tâches source et persistence ;
- admission centrale `mpsc` bornée, backpressure observable et absence de drop silencieux ;
- canonicalisation/assembly via `ksp-raw-transaction-lib` et observation key déterministe ;
- persistence atomique via la seule façade `ksp-store-lib`, en mode `Normal`, avec insert/idempotence/tombstone et `content_conflict` explicite ;
- snapshots concrets latest-value projetés sur `WorkerSnapshotSource`, avec séquences et compteurs checked ;
- classification stable des faults Store/source/counter/drain ;
- hardening des races stop/fault, Store lent/fautif, saturation et shutdown borné ;
- expiration de `shutdown_drain_timeout` suivie d'un abort + join de toutes les tâches privées avant publication terminale ;
- canaris externes de dependency firewall, redaction, inventaire des modules et exports publics.
La release ferme volontairement **sans source réseau productive** :
```text
Worker -X-> ksp-onchain-transport-lib
Worker -X-> ksp-config-lib
Worker -X-> ksp-job-backfill-lib
Worker -X-> backend Store physique
```
Le Job Backfill historique paramétré et le Worker Ingest continu restent deux producteurs indépendants du même Store. `0.3.11` ne fournit ni adapter HTTP/WS/Yellowstone productif, ni API publique d'enqueue/source registration, ni replay/gap-repair live.
La trajectoire live stabilisée est :
```text
0.3.12 Yellowstone + hydration HTTP + continuité propre au run
0.3.13 WS standard / Helius / HTTP live + convergence multi-source
0.3.14 gap repair / hardening multi-source
0.3.15 ksp-app-raw-transaction-ingest-desk
0.3.16 Backfill multi-source / multi-stratégie
```
## Suite préparée
La session suivante part exclusivement de la base stable :
```text
v0.3.11
```
et exécute :
```text
prompts/031-V0_3_12_START_PROMPT.md
```
pour ouvrir :
```text
0.3.12 — Yellowstone + hydration HTTP + continuité de run du Worker RawTransaction
```
`0.3.12-pre.001` doit commencer par lecture, audit interne/externe, brainstorming, sizing et planification avant toute implémentation lourde. Il doit notamment réauditer Yellowstone/Solana/providers, l'injection Transport, l'hydration HTTP, le frontier, `from_slot`/ReplayInfo, les smokes réellement accessibles et le graphe Cargo cible avant d'ajouter un edge productif au Worker.
## Gate demandé
La tranche est purement mécanique. Aucune dépendance, feature, source runtime, configuration ou documentation durable n'est modifiée par `rel.001`.
```bash
cargo fmt --all -- --check
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.11
cargo check --workspace
cargo clippy --workspace --all-targets --all-features -- -D warnings
cargo test -p ksp-worker-raw-transaction-ingest-lib
cargo tree -p ksp-worker-raw-transaction-ingest-lib --edges normal
cargo tree -p ksp-worker-raw-transaction-ingest-lib -e features
```
Après gate propre :
```text
commit : v0.3.11-rel.001
tag : v0.3.11
```
Aucun tag de prerelease ou `rel.001` n'est requis.