Files
khadhroony-solana-project/deltas/0.2.7/pre.011-fix.001.md

100 lines
3.6 KiB
Markdown

<!-- file: deltas/0.2.7/pre.011-fix.001.md -->
<!-- version: 1 -->
# Delta `0.2.7-pre.011-fix.001` — rustdoc `SolanaSlotUpdate` + idée metering différée
## Base
Base directe publiée :
```text
0.2.7-pre.011
Cargo 0.2.7-pre.11
```
La validation opérateur de `pre.011` confirme :
- `cargo fmt --all` : vert ;
- audit Python KSP : vert ;
- `cargo check --workspace` : vert avec 19 warnings `missing_docs` dans `ws_cluster.rs` ;
- `cargo clippy --workspace --all-targets` : vert avec les mêmes 19 warnings ;
- `cargo test -p ksp-onchain-transport-lib` : 309 tests unitaires, 35 tests d'API publique et 22 tests de release completeness verts ;
- `cargo test --workspace` : vert, avec les mêmes warnings répétés lors de la compilation de Transport.
Les warnings concernent exclusivement les champs publics des variantes de `SolanaSlotUpdate` introduites par le lot unstable `slotsUpdatesSubscribe`.
## Signal technique
```text
livraison = 0.2.7-pre.011-fix.001
workspace.package.version = 0.2.7-pre.11.fix.1
commit = v0.2.7-pre.011-fix.001
```
Aucun tag Git n'est requis pour ce fix de prerelease.
## Correction Rust
Chaque champ public des variantes suivantes reçoit une rustdoc adjacente et spécifique :
```text
FirstShredReceived
Completed
CreatedBank
Frozen
Dead
OptimisticConfirmation
Root
Unknown
```
Les 19 warnings `missing_docs` doivent ainsi disparaître sans `allow`, sans changement de visibilité et sans modification du wire ou du comportement runtime.
Aucune API publique n'est retirée ou ajoutée. Les wrappers `block`, `slotsUpdates` et `vote`, leurs DTOs, reconnect/resubscribe, backpressure et les warnings unstable restent sémantiquement identiques à `pre.011`.
## Idée différée : mesure du trafic / metering
`docs/IDEAS.md` enregistre une piste explicitement différée ; elle ne devient pas une tranche supplémentaire de `0.2.7`.
Direction à étudier ultérieurement :
- `ksp-onchain-transport-lib` reste le meilleur point de vérité pour les faits réellement observés à la frontière réseau, notamment volumes de payload, requêtes/réponses, notifications WebSocket, retries et reconnects ;
- ces mesures restent neutres et ne portent aucun modèle de prix, crédit ou facturation fournisseur ;
- le futur Store conserve les raw et pourra servir aux statistiques historiques sur les types de réponses, tailles, fréquences et distributions, mais ne reconstruit pas autoritairement les octets réellement transportés ;
- une future crate dédiée, nom provisoire `ksp-metering-lib` ou `ksp-metering-observer-lib`, pourra observer et agréger ces données sans devenir un filtre obligatoire dans le data path ;
- le nom, l'API, la granularité des événements et la relation exacte avec Store restent à déterminer avec les besoins réels.
Aucune métrique nouvelle n'est introduite dans le runtime par ce fix.
## Fichiers
```text
Cargo.toml
crates/ksp-onchain-transport-lib/src/ws_cluster.rs
docs/IDEAS.md
deltas/0.2.7/pre.011-fix.001.md
```
`ROADMAP.md`, `CHANGELOG.md`, le plan `0.2.7` et le document de validation restent inchangés.
## Validation attendue
```bash
cargo fmt --all
python3 scripts/audit_rust_workspace_rules.py
cargo check --workspace
cargo clippy --workspace --all-targets
cargo test -p ksp-onchain-transport-lib
cargo test --workspace
```
Comptages Transport attendus :
```text
unit tests = 309
public API tests = 35
release completeness = 22
```
Les validations Cargo doivent être exécutées par l'opérateur ; elles ne sont pas revendiquées depuis l'environnement de préparation du delta.