Files
2026-08-18 23:51:56 +02:00

186 lines
5.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!-- file: deltas/0.2.4/rel.001.md -->
<!-- version: 1 -->
# Delta `v0.2.4-rel.001`
## Base
Base attendue :
```text
v0.2.4-pre.009-fix.001
```
Le fix `pre.009-fix.001` est documentation-only :
```text
workspace.package.version = "0.2.4-pre.9"
prompt 0.2.5 = version 2
```
Version Cargo cible :
```text
0.2.4
```
## Objectif
Publier `0.2.4 — HTTP Blocks + Economics + compliance HTTP finale` sans ajouter de capacité fonctionnelle après `pre.009`.
`rel.001` est strictement publicationnelle :
- passage du workspace à la version stable `0.2.4` ;
- clôture `[X]` de `0.2.4` dans le ROADMAP ;
- ajout de l'entrée stable `0.2.4` au CHANGELOG ;
- clôture du plan `011` et de la matrice `validation/007` avec les preuves opérateur ;
- synchronisation des index, de l'inventaire composant et des README/USAGE Transport vers le statut stable ;
- conservation du prompt `prompts/010-V0_2_5_START_PROMPT.md` version 2 comme point d'ouverture de `0.2.5`.
Aucun fichier Rust de production, aucune API publique, aucune configuration runtime, aucune dépendance et aucune feature Cargo ne changent dans cette livraison.
## Surface stable publiée
La série HTTP `0.2.1``0.2.4` est complète :
```text
0.2.1 Foundation 4
0.2.2 Accounts/Tokens/Cluster 22
0.2.3 Transactions 11
0.2.4 Blocks/Economics 15
-------------------------------------
Current typed 52/52
Historical Deprecated/Removed 14/14
```
`0.2.4` publie exactement les dix wrappers Blocks et cinq wrappers Economics.
Points sensibles stabilisés notamment :
```text
getBlock moderne + bare encoding legacy deprecated
transactionDetails full/signatures/none/accounts
versions transaction numériques génériques
SIMD-0118 numRewardPartitions omitted/null/value
SIMD-0291 commission / commissionBps indépendants
overloads getBlocks et limites runtime auditées
getBlockProduction range/identity/context
Economics sans formule/minimum local codé en dur
getInflationReward ordre/doublons/null positionnels/cardinalité
```
La canary publique référence les 52 wrappers courants plus les deux formes legacy séparées `get_block_legacy` et `get_transaction_legacy`. La canary release fige les ensembles exacts 52 + 14 et leur partition `4/22/11/15`.
## Validation opérateur de la candidate
Les résultats fournis le **18 août 2026** confirment :
```text
cargo test -p ksp-config-lib OK
cargo test -p ksp-core-lib OK
cargo test -p ksp-app-config-desk OK
cargo test --workspace OK
```
Dans le workspace, Transport passe :
```text
240 unit
27 public API
22 release completeness
```
Les canaries Core de dépendances et les canaries Logging d'ownership passent également.
Les deux smokes Devnet opt-in ont été exécutés explicitement :
```text
Transport pur Accounts/Tokens/Cluster/Transactions/Blocks/Economics 1 passed
Config -> Transport -> foundation 1 passed
```
Le smoke Config -> Transport reste une exception transitoire cross-crates et devra migrer vers une future surface d'intégration/orchestration/demo lorsqu'elle existera.
Les sorties manuelles `cargo tree` demandées par la candidate ne figurent pas dans le journal opérateur fourni à la construction de `rel.001`. Elles ne sont donc pas marquées artificiellement comme exécutées ; la gate post-application ci-dessous les rejoue avant création du tag stable.
## Documentation de clôture
Mises à jour :
```text
Cargo.toml
CHANGELOG.md
ROADMAP.md
crates/ksp-onchain-transport-lib/README.md
crates/ksp-onchain-transport-lib/USAGE.md
docs/000-README.md
docs/architecture/004-COMPONENT_INVENTORY.md
docs/plans/000-README.md
docs/plans/002-FUNCTIONAL_RELEASE_SEQUENCE.md
docs/plans/011-V0_2_4_HTTP_BLOCKS_ECONOMICS_PLAN.md
docs/validation/000-README.md
docs/validation/007-V0_2_4_HTTP_FINAL_COMPLIANCE.md
prompts/000-README.md
```
Ajout :
```text
deltas/0.2.4/rel.001.md
```
Le prompt `prompts/010-V0_2_5_START_PROMPT.md` reste inchangé par `rel.001` et conserve exactement la version 2 livrée par `pre.009-fix.001` : interopérabilité externe `.kspwallet`, threat model offline, metadata protégées, capacités VIEW/OWNER indépendantes, key slots/rotations à auditer et choix KDF/AEAD non préjugés avant `0.2.5-pre.001`.
Tous les deltas historiques `0.2.4` précédents restent inchangés.
## Commit et tag
Identifiant de commit attendu :
```text
v0.2.4-rel.001
```
Le tag stable ne doit être créé qu'après application et validation de ce delta :
```text
v0.2.4
```
## Validation finale après application
Gate stable :
```bash
cargo fmt --all
cargo check --workspace
cargo clippy --workspace --all-targets
cargo test --workspace
```
Puis dernière inspection des graphes :
```bash
cargo tree -p ksp-onchain-transport-lib
cargo tree -p ksp-onchain-transport-lib -d
cargo tree -p ksp-onchain-transport-lib -e features
cargo tree -p ksp-onchain-transport-lib -e normal
cargo tree -p ksp-config-lib
cargo tree -p ksp-config-lib -d
cargo tree -p ksp-config-lib -e features
cargo tree -p ksp-config-lib -e normal
```
Vérifier en particulier :
```text
ksp-config-lib -> ksp-onchain-transport-lib
Transport -X-> Config/Store/Program/tracing direct
aucun solana-client/rpc-client haut niveau
```
Après succès : commit `v0.2.4-rel.001`, puis création du tag `v0.2.4`.
La session suivante s'ouvre avec `prompts/010-V0_2_5_START_PROMPT.md` et `0.2.5-pre.001` commence par audit officiel actuel + héritage utile + brainstorming + threat model + sizing avant implémentation cryptographique lourde.