69 lines
2.2 KiB
Markdown
69 lines
2.2 KiB
Markdown
<!-- file: deltas/0.2.9/pre.002-fix.002.md -->
|
|
<!-- version: 1 -->
|
|
|
|
# Delta `0.2.9-pre.002-fix.002` — canari public API sous runtime Tokio
|
|
|
|
## 1. Déclencheur
|
|
|
|
Le second gate opérateur, après `pre.002-fix.001`, confirme :
|
|
|
|
```text
|
|
cargo fmt --all PASS
|
|
audit_rust_workspace_rules.py PASS / clean
|
|
cargo check --workspace PASS
|
|
cargo clippy --workspace --all-targets PASS
|
|
cargo test -p ksp-onchain-transport-lib unit PASS 346/346
|
|
public_api FAIL 41/42
|
|
dependency canary Core PASS 3/3
|
|
```
|
|
|
|
Le seul échec restant est le canari :
|
|
|
|
```text
|
|
public_v0_2_9_pre_002_yellowstone_engine_settings_and_lazy_channel_are_available_from_crate_root
|
|
```
|
|
|
|
Il appelle `YellowstoneGrpcChannel::prepare()` depuis un `#[test]` synchrone. Depuis `fix.001`, `prepare()` exige volontairement un runtime Tokio actif avant `tonic::transport::Endpoint::connect_lazy()` ; le canari public API n'avait pas encore été aligné sur cette précondition KSP explicite.
|
|
|
|
## 2. Correction
|
|
|
|
Le test d'intégration devient :
|
|
|
|
```text
|
|
#[tokio::test(flavor = "current_thread")]
|
|
async fn public_v0_2_9_pre_002_...
|
|
```
|
|
|
|
Aucun code N1 de production n'est modifié. En particulier :
|
|
|
|
```text
|
|
YellowstoneGrpcChannel::prepare() inchangé
|
|
_channel de production conservé
|
|
aucun cfg(test) ajouté au channel
|
|
aucune dépendance/feature Cargo ajoutée
|
|
aucun TLS/metadata/unary anticipé
|
|
```
|
|
|
|
## 3. Version
|
|
|
|
Le correctif touche le code de test et fait partie du signal technique de la prerelease :
|
|
|
|
```text
|
|
workspace.package.version = 0.2.9-pre.2.fix.2
|
|
commit attendu = v0.2.9-pre.002-fix.002
|
|
```
|
|
|
|
## 4. Validation requise
|
|
|
|
```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 -p ksp-core-lib --test workspace_dependencies
|
|
cargo test --workspace
|
|
```
|
|
|
|
Les graphes Cargo n'ont pas changé avec `fix.002`; ils ne nécessitent pas une nouvelle inspection structurelle, mais peuvent être relancés si l'opérateur veut conserver une preuve complète du gate final `pre.002`.
|