v0.3.12-pre.011
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!-- file: docs/validation/029-V0_3_12_YELLOWSTONE_HYDRATION_CONTINUITY.md -->
|
||||
<!-- version: 21 -->
|
||||
<!-- version: 22 -->
|
||||
|
||||
# Validation v0.3.12 — Yellowstone + hydration HTTP + continuité de run du Worker RawTransaction
|
||||
|
||||
@@ -1923,3 +1923,150 @@ cargo tree --duplicates
|
||||
|
||||
Dans l'environnement d'assemblage, `cargo`, `rustc` et `rustfmt` ne sont pas installés ; aucun gate Cargo local n'est revendiqué.
|
||||
|
||||
## 80. Gate opérateur `pre.010`
|
||||
|
||||
Le gate opérateur communiqué pour `0.3.12-pre.10` est vert sur toutes les commandes effectivement exécutées :
|
||||
|
||||
```text
|
||||
General Rust rule audit : clean
|
||||
Rust export completeness audit : 0 candidate(s)
|
||||
KSP workspace Rust rule audit : clean
|
||||
Markdown table audit : clean (340 tables, 820 fichiers)
|
||||
cargo check --workspace : PASS
|
||||
cargo clippy --workspace --all-targets --all-features -- -D warnings : PASS
|
||||
```
|
||||
|
||||
Suites ciblées réellement exécutées :
|
||||
|
||||
```text
|
||||
ksp-onchain-transport-lib
|
||||
388 unit PASS
|
||||
51 public_api PASS
|
||||
43 release_completeness PASS
|
||||
4 doc-tests PASS
|
||||
smokes live : 5 tests ignored par défaut
|
||||
|
||||
ksp-raw-transaction-lib
|
||||
17 unit PASS
|
||||
2 dependency_boundary PASS
|
||||
5 public_api PASS
|
||||
2 release_completeness PASS
|
||||
2 security_hardening PASS
|
||||
|
||||
ksp-store-api
|
||||
22 unit PASS
|
||||
2 dependency_boundary PASS
|
||||
1 external_backend PASS
|
||||
8 public_api PASS
|
||||
5 release_completeness PASS
|
||||
5 security_hardening PASS
|
||||
|
||||
ksp-store-lib --no-default-features
|
||||
9 unit PASS
|
||||
3 dependency_boundary PASS
|
||||
1 feature_mismatch PASS
|
||||
6 hardening_completeness PASS
|
||||
5 public_api PASS
|
||||
|
||||
ksp-worker-raw-transaction-ingest-lib
|
||||
66 unit PASS
|
||||
4 cross_layer_completeness PASS
|
||||
9 dependency_boundary PASS
|
||||
16 hardening PASS
|
||||
9 public_api PASS
|
||||
4 release_completeness PASS
|
||||
```
|
||||
|
||||
Les commandes `cargo tree` et le gate `cargo test --workspace --all-targets --all-features` ne figurent pas dans le log opérateur reçu pour `pre.010` ; aucun PASS n'est revendiqué pour ces commandes. Elles appartiennent explicitement au gate `pre.011`.
|
||||
|
||||
`pre.010` devient la base autoritaire de `pre.011`.
|
||||
|
||||
## 81. Gate technique complet et live opt-in `pre.011`
|
||||
|
||||
`pre.011` n'ajoute aucun comportement runtime, aucune API et aucun nouveau test réseau. La tranche ferme le gate technique final prévu par le plan à partir de la candidate déjà qualifiée par `pre.010`.
|
||||
|
||||
Gate déterministe requis :
|
||||
|
||||
```bash
|
||||
cargo fmt --all -- --check
|
||||
python3 scripts/audit_rust_workspace_rules.py
|
||||
python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates deltas
|
||||
cargo check --workspace
|
||||
cargo clippy --workspace --all-targets --all-features -- -D warnings
|
||||
cargo test --workspace --all-targets --all-features
|
||||
cargo test -p ksp-onchain-transport-lib
|
||||
cargo test -p ksp-raw-transaction-lib
|
||||
cargo test -p ksp-store-api
|
||||
cargo test -p ksp-store-lib --no-default-features
|
||||
cargo test -p ksp-worker-raw-transaction-ingest-lib
|
||||
cargo tree -p ksp-worker-raw-transaction-ingest-lib --edges normal
|
||||
cargo tree -p ksp-worker-raw-transaction-ingest-lib -e features
|
||||
cargo tree --duplicates
|
||||
```
|
||||
|
||||
Les smokes réseau restent hors du gate déterministe. Ils sont exécutés uniquement de manière explicite et leur résultat est enregistré séparément.
|
||||
|
||||
### 81.1 Smokes keyless réellement accessibles
|
||||
|
||||
Ces deux smokes Transport n'exigent aucun secret opérateur :
|
||||
|
||||
```bash
|
||||
cargo test -p ksp-onchain-transport-lib --test transport_devnet_smoke -- --ignored --nocapture
|
||||
cargo test -p ksp-onchain-transport-lib --test websocket_devnet_smoke -- --ignored --nocapture
|
||||
```
|
||||
|
||||
Ils prouvent respectivement un accès HTTP Devnet et un cycle WebSocket Devnet. Ils ne prouvent ni Yellowstone, ni hydration Worker, ni persistence Store.
|
||||
|
||||
### 81.2 Smokes Yellowstone token-gated
|
||||
|
||||
Les smokes Yellowstone existants restent operator-only et lisent leurs tokens sur stdin. Les secrets ne doivent jamais être passés comme arguments CLI ni copiés dans un delta/log.
|
||||
|
||||
OrbitFlare Devnet, uniquement si un token valide est réellement disponible :
|
||||
|
||||
```bash
|
||||
read -rsp 'OrbitFlare x-token: ' ORBITFLARE_X_TOKEN; printf '\n'
|
||||
printf '%s\n' "$ORBITFLARE_X_TOKEN" | cargo test -p ksp-onchain-transport-lib --test yellowstone_orbitflare_smoke -- --ignored --nocapture
|
||||
unset ORBITFLARE_X_TOKEN
|
||||
```
|
||||
|
||||
PublicNode Mainnet/Testnet, uniquement si les deux tokens personnels sont réellement disponibles :
|
||||
|
||||
```bash
|
||||
read -rsp 'PublicNode Mainnet x-token: ' PUBLICNODE_MAINNET_X_TOKEN; printf '\n'
|
||||
read -rsp 'PublicNode Testnet x-token: ' PUBLICNODE_TESTNET_X_TOKEN; printf '\n'
|
||||
printf '%s\n%s\n' "$PUBLICNODE_MAINNET_X_TOKEN" "$PUBLICNODE_TESTNET_X_TOKEN" | cargo test -p ksp-onchain-transport-lib --test yellowstone_publicnode_smoke -- --ignored --nocapture
|
||||
unset PUBLICNODE_MAINNET_X_TOKEN PUBLICNODE_TESTNET_X_TOKEN
|
||||
```
|
||||
|
||||
L'absence de token valide laisse le smoke correspondant `NON EXÉCUTÉ`; elle n'est ni un PASS ni un défaut produit.
|
||||
|
||||
### 81.3 Worker live smoke
|
||||
|
||||
Aucun nouveau smoke Worker end-to-end n'est introduit dans `pre.011`. Une telle preuve exigerait simultanément :
|
||||
|
||||
```text
|
||||
secret Yellowstone valide
|
||||
route HTTP d'hydration cohérente
|
||||
Store réellement provisionné sur le même network
|
||||
signal transactionnel live observé
|
||||
persistence vérifiable
|
||||
stop borné
|
||||
```
|
||||
|
||||
Ces ressources ne sont pas fournies dans l'environnement d'assemblage. Conformément au plan, `Worker live smoke` reste donc `NON EXÉCUTÉ` tant qu'un gate opérateur ne fournit pas réellement ces préconditions. Les fixtures déterministes et les gates cross-layer restent les preuves de correction obligatoires.
|
||||
|
||||
### 81.4 Critère de fermeture
|
||||
|
||||
`pre.011` peut être fermé lorsque :
|
||||
|
||||
```text
|
||||
gate déterministe complet = PASS
|
||||
arbres Cargo demandés = exécutés et examinés
|
||||
cargo tree --duplicates = exécuté et enregistré
|
||||
smokes keyless = exécutés ou échec externe explicitement qualifié
|
||||
smokes token-gated = PASS si les tokens sont disponibles, sinon NON EXÉCUTÉ explicite
|
||||
aucun secret n'apparaît dans les logs
|
||||
aucun nouveau scope fonctionnel n'est ajouté pour contourner un provider indisponible
|
||||
```
|
||||
|
||||
Dans l'environnement d'assemblage, `cargo`, `rustc` et `rustfmt` ne sont pas installés ; aucun PASS Cargo ou live local n'est revendiqué.
|
||||
|
||||
Reference in New Issue
Block a user