Files
khadhroony-solana-project/deltas/0.3.15/pre.002-fix.001.md

3.5 KiB

Delta 0.3.15-pre.002-fix.001 — correction du pattern Option::Some des capabilities WebSocket

Base requise

0.3.15-pre.002
workspace.package.version = 0.3.15-pre.2
deltas/0.3.15/pre.002.md présent

Défaut observé au gate opérateur

Les audits statiques de pre.002 passent :

General Rust rule audit: clean
Rust export completeness audit: 0 candidate(s)
KSP workspace Rust rule audit: clean
Markdown table audit: clean (318 table(s), 186 file(s))

cargo check --workspace, Clippy et la suite Transport échouent ensuite à la compilation sur une faute de qualification dans ws_settings.rs :

error[E0599]: no variant or associated item named `Some` found for enum `Result<T, E>`
crates/ksp-onchain-transport-lib/src/ws_settings.rs

La branche de validation des capabilities optionnelles utilisait par erreur :

if let std::result::Result::Some(capabilities) = endpoint.subscription_capabilities() {

alors que subscription_capabilities() retourne un Option<&[WsSubscriptionKind]>.

Correction

Le pattern est corrigé en utilisant le type propriétaire exact :

if let std::option::Option::Some(capabilities) = endpoint.subscription_capabilities() {

Aucune condition de validation, capability, partition protocolaire ou sémantique fail-closed n'est modifiée.

Une recherche workspace confirme qu'il n'existait qu'une seule occurrence de Result::Some dans les sources Rust.

Périmètre

Le fix reste strictement dans la responsabilité Transport de pre.002 :

aucune modification Config/schema/composite
aucune modification Worker
aucune modification Store
aucune modification Desk
aucune nouvelle API publique
aucune nouvelle dépendance ou feature
aucun changement de partition SolanaStandard / HeliusLaserStream
aucun changement de supports_subscription
aucune inférence provider

Fichiers ajoutés

deltas/0.3.15/pre.002-fix.001.md

Fichiers modifiés

Cargo.toml
crates/ksp-onchain-transport-lib/src/ws_settings.rs

Fichiers supprimés

aucun

Version Cargo

Le correctif modifie du code Rust de production. Conformément à VER-ID-007 et VER-ID-010 :

header Cargo.toml : 595 -> 596
workspace.package.version : 0.3.15-pre.2 -> 0.3.15-pre.2.fix.1

Version du fichier Rust modifié :

ksp-onchain-transport-lib/src/ws_settings.rs : 5 -> 6

Validations exécutées dans l'environnement d'assemblage

recherche Result::Some workspace : aucune occurrence restante
audit Rust workspace : PASS
audit Markdown : PASS
archive delta : contrôle d'intégrité PASS

Validations non exécutées dans l'environnement d'assemblage

L'environnement d'assemblage ne fournit pas la toolchain Cargo/Rust. Le gate opérateur doit donc confirmer :

cargo fmt --all
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/0.3.15
cargo check --workspace
cargo clippy --workspace --all-targets --all-features -- -D warnings
cargo test -p ksp-onchain-transport-lib --all-targets --all-features

Décisions prises

le correctif reste un fix de pre.002 et n'ouvre pas pre.003
la version Cargo porte le suffixe SemVer pre.2.fix.1 car du code production est modifié
le delta pre.002 publié reste immuable

Questions ouvertes

aucune