v0.2.3-rel.001

This commit is contained in:
2026-08-18 17:42:12 +02:00
parent 039b93cfb3
commit f7acac3fc8
13 changed files with 312 additions and 103 deletions

View File

@@ -1,5 +1,5 @@
<!-- file: docs/plans/000-README.md -->
<!-- version: 36 -->
<!-- version: 37 -->
# Plans KSP
@@ -18,7 +18,7 @@ Un plan décrit le périmètre, les décisions déjà acquises, les questions ou
- [`007-V0_2_0_SERIES_PLANNING.md`](007-V0_2_0_SERIES_PLANNING.md) — plan historique clôturé de la release stable `0.2.0`, ouvert par `pre.001`, consolidé par `pre.002`, audité par `pre.003` puis publié par `rel.001`; il fixe l'ordre `0.2.1+`, la stratégie RAW/CORE/DECODE/SPECIALIZED, les vertical slices Program et le prompt `0.2.1`.
- [`008-V0_2_1_ONCHAIN_HTTP_PLAN.md`](008-V0_2_1_ONCHAIN_HTTP_PLAN.md) — plan de `0.2.1`, établi par `0.2.1-pre.001`, recalibré par `pre.001-fix.001` et amené en clôture candidate par `pre.007`; il conserve l'inventaire 52 méthodes HTTP courantes + 14 Deprecated historiques, le design Transport/Config et le split de couverture typée sur `0.2.1``0.2.4`.
- [`009-V0_2_2_HTTP_ACCOUNTS_TOKENS_CLUSTER_PLAN.md`](009-V0_2_2_HTTP_ACCOUNTS_TOKENS_CLUSTER_PLAN.md) — plan clôturé de la release stable `0.2.2`, établi par `pre.001`, corrigé après réaudit Agave v4.2.1 puis exécuté jusqu'à `pre.007-fix.002`; il couvre les 22 wrappers Accounts/Tokens/Cluster, le smoke Transport opt-in et la préparation de `0.2.3`.
- [`010-V0_2_3_HTTP_TRANSACTIONS_PLAN.md`](010-V0_2_3_HTTP_TRANSACTIONS_PLAN.md) — plan candidat de `0.2.3 — HTTP Transactions`, ouvert par `pre.001` puis exécuté jusqu'à `pre.009`; il couvre les 11 méthodes, la classification `8 Read / 2 WriteSubmission / 1 Simulation`, `KSP-TRANSPORT-007`, le no-resend et la préparation de `0.2.4`.
- [`010-V0_2_3_HTTP_TRANSACTIONS_PLAN.md`](010-V0_2_3_HTTP_TRANSACTIONS_PLAN.md) — plan historique clôturé de la release stable `0.2.3 — HTTP Transactions`, ouvert par `pre.001`, exécuté jusqu'à `pre.009` puis publié par `rel.001`; il couvre les 11 méthodes, la classification `8 Read / 2 WriteSubmission / 1 Simulation`, `KSP-TRANSPORT-007`, le no-resend et la préparation de `0.2.4`.
Le `pre.001` de chaque release fonctionnelle peut introduire son propre plan détaillé lorsque la release s'ouvre.

View File

@@ -1,5 +1,5 @@
<!-- file: docs/plans/002-FUNCTIONAL_RELEASE_SEQUENCE.md -->
<!-- version: 38 -->
<!-- version: 39 -->
# Séquence des releases fonctionnelles KSP
@@ -392,7 +392,7 @@ Chaque `pre.001` réaudite la documentation officielle actuelle. Les méthodes D
`0.2.2-pre.001` a confirmé la partition de 22 méthodes et son fix documentaire a recoupé les formes wire avec Agave v4.2.1. Les tranches `pre.002``pre.006` ont livré les DTOs puis les 5 Accounts, 5 Tokens et 12 Cluster. `pre.007`, puis `pre.007-fix.001` et `pre.007-fix.002`, ont fermé les canaries exactes 22/22, le smoke Devnet Transport pur, README/USAGE, la matrice de validation `004` et le prompt `0.2.3`. `0.2.2-rel.001` publie cette surface stable après validation du workspace et des deux smokes Devnet. Le smoke cross-crates Config -> Transport de `0.2.1` reste séparé et transitoire.
`0.2.3-pre.001` réaudite le 2026-08-18 la catégorie Transactions contre la documentation Solana actuelle et Agave v4.2.1 : les 11 méthodes prévues restent exactes, la classification `8 Read / RetrySafe`, `2 WriteSubmission / NeverAfterDispatch` et `1 Simulation / RetrySafe` reste correcte, et le gate de sizing est positif. `pre.002``pre.007` livrent ensuite les primitives wire puis les 11 wrappers, `pre.008` réaudite rétroactivement `KSP-TRANSPORT-007` sur les 37 wrappers HTTP typés sans remédiation fonctionnelle, et `pre.009` prépare la candidate finale avec documentation, smoke Transport read-only étendu et prompt `0.2.4`. Aucun `base64`, `bs58`, `wincode` ni client RPC Solana supplémentaire n'est ajouté : les payloads sérialisés restent opaques dans Transport tant qu'un besoin de décodage local n'est pas démontré. Le plan détaillé candidat est `docs/plans/010-V0_2_3_HTTP_TRANSACTIONS_PLAN.md`.
`0.2.3-pre.001` réaudite le 2026-08-18 la catégorie Transactions contre la documentation Solana actuelle et Agave v4.2.1 : les 11 méthodes prévues restent exactes, la classification `8 Read / RetrySafe`, `2 WriteSubmission / NeverAfterDispatch` et `1 Simulation / RetrySafe` reste correcte, et le gate de sizing est positif. `pre.002``pre.007` livrent ensuite les primitives wire puis les 11 wrappers, `pre.008` réaudite rétroactivement `KSP-TRANSPORT-007` sur les 37 wrappers HTTP typés sans remédiation fonctionnelle, et `pre.009` prépare la candidate finale avec documentation, smoke Transport read-only étendu et prompt `0.2.4`. `0.2.3-rel.001` publie cette surface stable après validation du workspace, des graphes Cargo Transport/Config et des deux smokes Devnet. Aucun `base64`, `bs58`, `wincode` ni client RPC Solana supplémentaire n'est ajouté : les payloads sérialisés restent opaques dans Transport tant qu'un besoin de décodage local n'est pas démontré. Le plan détaillé clôturé est `docs/plans/010-V0_2_3_HTTP_TRANSACTIONS_PLAN.md`.
## `0.2.5` — Wallet foundation

View File

@@ -1,11 +1,11 @@
<!-- file: docs/plans/010-V0_2_3_HTTP_TRANSACTIONS_PLAN.md -->
<!-- version: 8 -->
<!-- version: 9 -->
# Plan `0.2.3` — HTTP Transactions
## Statut
Ce plan est ouvert par `0.2.3-pre.001` sur la base stable `v0.2.2`. `pre.009` amène la release au statut **candidate de clôture** ; la publication stable reste réservée à `0.2.3-rel.001`.
Ce plan, ouvert par `0.2.3-pre.001` sur la base stable `v0.2.2`, est désormais **clôturé par `0.2.3-rel.001`**. `pre.009` a constitué la candidate finale validée avant publication stable.
`0.2.1` a stabilisé la foundation HTTP Solana et quatre wrappers typés canari. `0.2.2` a ajouté les 22 wrappers Accounts/Tokens/Cluster,
les DTOs wire communs, le smoke Devnet Transport pur et les canaries exactes de complétude.
@@ -654,9 +654,29 @@ La candidate `pre.009` ne modifie aucun wrapper fonctionnel. Elle :
La publication stable reste strictement publicationnelle : version Cargo finale, ROADMAP `[X]`, CHANGELOG, clôture des preuves opérateur et tag stable après validation.
## Résultat de `rel.001` — publication stable
La candidate `0.2.3-pre.009` a été validée par l'opérateur le **18 août 2026** avec la matrice de clôture complète : formatage, check et clippy workspace, tests ciblés Transport/Config/Core/Config Desk, `cargo test --workspace`, graphes Cargo Transport/Config et les deux smokes Devnet opt-in.
Preuves principales :
```text
Transport : 182 unit + 19 public API + 14 release completeness, 0 échec
Config : 95 unit + 5 ownership + 13 public API, 0 échec
Core : 14 unit + 3 public API + 2 workspace dependencies + 1 workspace logging, 0 échec
Config Desk : 63 unit + 2 desktop contract + 2 desktop security + 1 public API, 0 échec
cargo test --workspace : OK
smoke Transport Devnet : 1 passed
smoke Config -> Transport Devnet : 1 passed
```
Les graphes confirment la frontière attendue `Config -> Transport`, sans dépendance inverse Transport -> Config/Store/Program ni `tracing` direct. Les doublons observés restent transitifs/proc-macro, notamment `syn` 2.x/3.x, sans seconde stack HTTP KSP.
`rel.001` ne modifie aucun wrapper, DTO, comportement runtime, dépendance ou feature. Il publie uniquement la version Cargo stable `0.2.3`, clôt le ROADMAP/CHANGELOG et transforme cette matrice candidate en historique stable. Le point d'entrée suivant est `prompts/009-V0_2_4_START_PROMPT.md`.
## Critères de clôture de `0.2.3`
La release ne peut être candidate stable que si :
Les critères de clôture suivants sont satisfaits par la candidate validée `pre.009` :
- les 11 wrappers sont publics et passent tous par `execute_standard_rpc` ;
- chaque wrapper couvre tous les paramètres/options/overloads normatifs ou runtime supportés retenus par l'audit, selon `KSP-TRANSPORT-007` ;
@@ -671,7 +691,7 @@ La release ne peut être candidate stable que si :
- aucune dépendance Transport -> Config/Store/Program/tracing direct n'est introduite ;
- README/USAGE, plan, matrice de validation et prompt `0.2.4` sont synchronisés ;
- les validations Cargo de clôture et graphes de dépendances ont une preuve opérateur ou une exécution réelle ;
- `CHANGELOG.md` reste réservé à `0.2.3-rel.001` ;
- `CHANGELOG.md` est renseigné uniquement par `0.2.3-rel.001` ;
- la release stable finale reste strictement publicationnelle.
## Validations prévues pendant le développement