v0.2.8-rel.001
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/plans/000-README.md -->
|
||||
<!-- version: 58 -->
|
||||
<!-- version: 59 -->
|
||||
|
||||
# Plans KSP
|
||||
|
||||
@@ -23,7 +23,7 @@ Un plan décrit le périmètre, les décisions déjà acquises, les questions ou
|
||||
- [`012-V0_2_5_WALLET_FOUNDATION_PLAN.md`](012-V0_2_5_WALLET_FOUNDATION_PLAN.md) — plan historique clôturé de la release stable `0.2.5 — Wallet foundation`, ouvert par `pre.001`, livré jusqu’à `pre.010`, renforcé par `pre.010-fix.001`–`fix.003` pour Dalek 3 et la normalisation Rust/audit structurel, puis publié par `rel.001`; il couvre `.kspwallet` V1, VIEW/OWNER, crypto, persistence, administration, transfer et compliance.
|
||||
- [`013-V0_2_6_WALLET_DESK_PLAN.md`](013-V0_2_6_WALLET_DESK_PLAN.md) — plan historique clôturé de la release stable `0.2.6 — Wallet Desk`, ouvert par `pre.001`, étendu en `pre.015`–`pre.017` au wire binaire `.kspwallet` V2, aux APIs multi-version et à la migration V1 -> V2, puis fermé par `pre.018`/`fix.001` avec le runtime Tauri packagé et le build final vert avant publication `rel.001`.
|
||||
- [`014-V0_2_7_ONCHAIN_WEBSOCKET_PLAN.md`](014-V0_2_7_ONCHAIN_WEBSOCKET_PLAN.md) — plan historique clôturé de la release stable `0.2.7 — WebSocket Solana standard`, ouvert par `pre.001`, exécuté jusqu’à `pre.014`, corrigé documentairement par `pre.014-fix.001` puis publié par `rel.001`; il conserve l’inventaire officiel 18 méthodes, le modèle session/subscription, le threat model, les preuves de compliance/smoke/dépendances et la préparation de `0.2.8`.
|
||||
- [`015-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET_PLAN.md`](015-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET_PLAN.md) — plan candidat de `0.2.8 — Helius LaserStream WebSocket`, ouvert par `pre.001` et fermé techniquement/documentairement jusqu’à `pre.011`; il conserve la surface finale Helius `7 standard + transaction`, heartbeat/Config/secrets, l’historique des fixes heartbeat, la stratégie live architecture-safe, les graphes Cargo finaux et la préparation du prompt `0.2.9`.
|
||||
- [`015-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET_PLAN.md`](015-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET_PLAN.md) — plan historique clôturé de la release stable `0.2.8 — Helius LaserStream WebSocket`, ouvert par `pre.001`, fermé techniquement/documentairement par `pre.011` puis publié par `rel.001`; il conserve la surface finale Helius `7 standard + transaction`, heartbeat/Config/secrets, l’historique des fixes heartbeat, la stratégie live architecture-safe, les graphes Cargo finaux et la préparation du prompt `0.2.9`.
|
||||
|
||||
Le `pre.001` de chaque release fonctionnelle peut introduire son propre plan détaillé lorsque la release s'ouvre.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/plans/002-FUNCTIONAL_RELEASE_SEQUENCE.md -->
|
||||
<!-- version: 84 -->
|
||||
<!-- version: 85 -->
|
||||
|
||||
# Séquence des releases fonctionnelles KSP
|
||||
|
||||
@@ -465,11 +465,11 @@ La candidate atteint `pre.014` après matérialisation des 9 familles standard,
|
||||
|
||||
### `0.2.8` — Helius LaserStream WebSocket
|
||||
|
||||
Mission candidate : étendre le moteur WebSocket standard avec la surface Helius LaserStream WebSocket actuelle sans copier le client/session actor. Le gate et l'historique complet sont conservés dans [`015-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET_PLAN.md`](015-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET_PLAN.md) et la matrice candidate dans [`../validation/011-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET.md`](../validation/011-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET.md).
|
||||
Mission accomplie : étendre le moteur WebSocket standard avec la surface Helius LaserStream WebSocket actuelle sans copier le client/session actor. Le gate et l'historique complet sont conservés dans [`015-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET_PLAN.md`](015-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET_PLAN.md) et la matrice finale dans [`../validation/011-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET.md`](../validation/011-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET.md).
|
||||
|
||||
Le réaudit final Helius du 23 août 2026 retient `helius_laserstream` comme protocol kind WebSocket : les sept familles standard `account/logs/program/root/signature/slot/slotsUpdates` réutilisent les wrappers publiés, `block/vote` restent absents et `transactionSubscribe`/`transactionUnsubscribe` constitue l'extension provider-specific. `slotsUpdates` conserve son statut unstable, `notifyOn` deprecated/no-op n'est pas exposé et le heartbeat Helius-only envoie un WebSocket Ping control frame toutes les 60 secondes depuis l'actor partagé.
|
||||
|
||||
`pre.010` ferme README/USAGE, la stratégie smoke live architecture-safe et les graphes Cargo finaux ; `pre.011` prépare la candidate documentaire et [`../../prompts/014-V0_2_9_START_PROMPT.md`](../../prompts/014-V0_2_9_START_PROMPT.md). Aucun SDK Helius, aucune dépendance gRPC et aucun replay historique WebSocket ne sont introduits. La publication stable reste réservée à `rel.001`.
|
||||
`pre.010` ferme README/USAGE, la stratégie smoke live architecture-safe et les graphes Cargo finaux ; `pre.011` ferme la candidate documentaire et prépare [`../../prompts/014-V0_2_9_START_PROMPT.md`](../../prompts/014-V0_2_9_START_PROMPT.md). `0.2.8-rel.001` publie ensuite cette surface stable sans nouvelle capacité runtime. Aucun SDK Helius, aucune dépendance gRPC et aucun replay historique WebSocket ne sont introduits.
|
||||
|
||||
### `0.2.9` — Yellowstone gRPC standard
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<!-- file: docs/plans/015-V0_2_8_HELIUS_LASERSTREAM_WEBSOCKET_PLAN.md -->
|
||||
<!-- version: 25 -->
|
||||
<!-- version: 26 -->
|
||||
|
||||
# Plan `0.2.8` — Helius LaserStream WebSocket
|
||||
|
||||
> **Statut : `0.2.8-pre.010` est validé intégralement par l’opérateur : fmt/audit/check/Clippy, 335 unit Transport, 41 API, 34 completeness, 4 doctests, workspace complet et trois audits `cargo tree` exécutés. `0.2.8-pre.011` prépare la candidate documentaire finale, ferme plan/matrice/indexes et crée le prompt autonome `0.2.9`.**
|
||||
> **Statut : release stable `0.2.8 — Helius LaserStream WebSocket` publiée par `rel.001` après candidate `pre.011` entièrement verte : fmt/audit/check/Clippy, 335 unit Transport, 41 API, 34 completeness, 4 doctests et workspace complet. Les trois audits `cargo tree` finaux restent ceux de `pre.010`. Le prompt autonome `0.2.9` est prêt.**
|
||||
|
||||
## 1. Objet, base et état courant
|
||||
|
||||
@@ -42,14 +42,15 @@ pre.007-fix.004 alignement canari dependency-firewall Tokio dev validé
|
||||
pre.008 adversarial provider/capabilities/payload/security validé
|
||||
pre.009 compliance provider/current + slotsUpdates Helius validé
|
||||
pre.010 documentation/smoke policy/cargo tree final validé
|
||||
pre.011 clôture candidate plan/matrice/indexes + prompt 0.2.9 — préparé
|
||||
pre.011 clôture candidate plan/matrice/indexes + prompt 0.2.9 — validé
|
||||
rel.001 publication stable
|
||||
|
||||
workspace.package.version courant = 0.2.8-pre.11
|
||||
commit attendu = v0.2.8-pre.011
|
||||
aucun tag prerelease
|
||||
workspace.package.version courant = 0.2.8
|
||||
commit attendu = v0.2.8-rel.001
|
||||
tag stable attendu = v0.2.8
|
||||
```
|
||||
|
||||
Le checkpoint opérateur de `pre.010` est intégralement vert, y compris les trois audits `cargo tree`. La candidate `pre.011` ne rouvre aucune capacité runtime : elle synchronise uniquement la documentation de clôture et le contrat de démarrage `0.2.9`.
|
||||
Le checkpoint opérateur de `pre.011` est intégralement vert. Cette candidate n’a rouvert aucune capacité runtime : elle a synchronisé uniquement la documentation de clôture et le contrat de démarrage `0.2.9`. `rel.001` publie le même état fonctionnel avec le signal Cargo stable.
|
||||
|
||||
## 2. Forecast souple courant
|
||||
|
||||
@@ -85,7 +86,7 @@ pre.009 DONE — compliance Helius WebSocket + réconciliation documentaire `sl
|
||||
+ non-régressions Solana standard 18/18 + HTTP 52/14 + Config/API/dependency-firewall canaries
|
||||
pre.010 DONE — stratégie smoke Helius live fermée sans nouveau cross-crate owner + README/USAGE
|
||||
+ cargo tree direct/duplicates final exécutés et inspectés
|
||||
pre.011 PREPARED — validation workspace finale + fermeture plan/matrice/indexes + prompt 0.2.9 autonome
|
||||
pre.011 DONE — validation workspace finale + fermeture plan/matrice/indexes + prompt 0.2.9 autonome
|
||||
rel.001 publication stable stricte
|
||||
```
|
||||
|
||||
@@ -1596,24 +1597,64 @@ Le réaudit préparatoire Yellowstone du 23 août 2026 confirme que l'upstream
|
||||
Critères `pre.011` :
|
||||
|
||||
```text
|
||||
[ ] workspace.package.version = 0.2.8-pre.11
|
||||
[ ] aucun code runtime Helius modifié
|
||||
[ ] aucune nouvelle dépendance
|
||||
[ ] prompt 0.2.9 autonome présent
|
||||
[ ] prompt suit les 16 rubriques normatives de PROMPT_STRUCTURE
|
||||
[ ] forecast 0.2.9 visible, détaillé et explicitement souple
|
||||
[ ] prompt impose audit licence/dependencies avant Yellowstone/Tonic/Prost
|
||||
[ ] prompt distingue Yellowstone standard des providers et de deshred/pré-exécution
|
||||
[ ] docs/000, plans/000, validation/000, prompts/000 et séquence fonctionnelle synchronisés
|
||||
[ ] ROADMAP non marqué stable avant rel.001
|
||||
[ ] CHANGELOG non utilisé comme journal de prerelease
|
||||
[ ] cargo fmt --all
|
||||
[ ] audit Rust workspace clean
|
||||
[ ] cargo check --workspace sans warning
|
||||
[ ] cargo clippy --workspace --all-targets sans warning
|
||||
[ ] cargo test -p ksp-onchain-transport-lib
|
||||
[ ] cargo test --workspace
|
||||
[x] workspace.package.version = 0.2.8-pre.11
|
||||
[x] aucun code runtime Helius modifié
|
||||
[x] aucune nouvelle dépendance
|
||||
[x] prompt 0.2.9 autonome présent
|
||||
[x] prompt suit les 16 rubriques normatives de PROMPT_STRUCTURE
|
||||
[x] forecast 0.2.9 visible, détaillé et explicitement souple
|
||||
[x] prompt impose audit licence/dependencies avant Yellowstone/Tonic/Prost
|
||||
[x] prompt distingue Yellowstone standard des providers et de deshred/pré-exécution
|
||||
[x] docs/000, plans/000, validation/000, prompts/000 et séquence fonctionnelle synchronisés
|
||||
[x] ROADMAP non marqué stable avant rel.001
|
||||
[x] CHANGELOG non utilisé comme journal de prerelease
|
||||
[x] cargo fmt --all
|
||||
[x] audit Rust workspace clean
|
||||
[x] cargo check --workspace sans warning
|
||||
[x] cargo clippy --workspace --all-targets sans warning
|
||||
[x] cargo test -p ksp-onchain-transport-lib
|
||||
[x] cargo test --workspace
|
||||
```
|
||||
|
||||
Si ce gate est vert, la prochaine livraison est `0.2.8-rel.001`; aucune `pre.012` n'est nécessaire sauf défaut réel.
|
||||
|
||||
## 24. Candidate `pre.011` validée et publication stable `rel.001`
|
||||
|
||||
Le checkpoint opérateur du 23 août 2026 ferme la candidate :
|
||||
|
||||
```text
|
||||
[x] cargo fmt --all
|
||||
[x] python3 scripts/audit_rust_workspace_rules.py
|
||||
General Rust rule audit: clean
|
||||
Rust export completeness audit: 0 candidate(s)
|
||||
KSP workspace Rust rule audit: clean
|
||||
[x] cargo check --workspace
|
||||
[x] cargo clippy --workspace --all-targets
|
||||
[x] Transport unit = 335/335
|
||||
[x] Transport public API = 41/41
|
||||
[x] release completeness = 34/34
|
||||
[x] Transport doctests = 4/4
|
||||
[x] cargo test --workspace
|
||||
```
|
||||
|
||||
Les `cargo tree` finaux ont déjà été exécutés et enregistrés en `pre.010`; `pre.011` n’a modifié aucune dépendance. Aucun fichier sous `crates/` n’a été modifié par la candidate documentaire.
|
||||
|
||||
Verdict : **`pre.011` DONE ; aucune `pre.012` nécessaire.**
|
||||
|
||||
`0.2.8-rel.001` publie ensuite la surface candidate sans nouvelle capacité runtime :
|
||||
|
||||
```text
|
||||
workspace.package.version = 0.2.8
|
||||
Helius WS = Stable
|
||||
HTTP = 52 current + 14 historical
|
||||
Solana Standard WS = 9 familles / 18 opérations
|
||||
Helius = 7 familles standard + transaction
|
||||
block/vote Helius = absents
|
||||
heartbeat = Ping control frame / 60 s / Helius only
|
||||
Config = V2 helius_laserstream + secret redacted
|
||||
smoke live provider = reporté vers intégration/orchestration
|
||||
prochain prompt = prompts/014-V0_2_9_START_PROMPT.md
|
||||
```
|
||||
|
||||
La publication stable ne change ni source Rust, ni Config runtime, ni dépendance. `ROADMAP.md`, `CHANGELOG.md`, les index et l’inventaire composants sont synchronisés uniquement au niveau stable.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user