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

3.2 KiB

Delta 0.1.1-pre.002-fix.001

Base requise

Commit de livraison attendu :

v0.1.1-pre.002

La version Cargo reste :

0.1.1-pre.2

Ce correctif ne modifie aucun contrat public de ksp-core-lib et ne justifie donc aucune nouvelle prerelease Cargo.

Objectif

Corriger les deux warnings remontés par les validations réelles de 0.1.1-pre.002 avant d'ouvrir 0.1.1-pre.003.

Les validations exécutées sur le dépôt cible ont confirmé que :

  • cargo fmt --all réussit ;
  • cargo check --workspace réussit ;
  • cargo test --workspace réussit avec 6 tests unitaires, 1 test d'intégration et 0 échec ;
  • cargo clippy --workspace --all-targets termine sans erreur mais remonte deux warnings à corriger.

Warnings observés :

  1. clippy::extra_unused_type_parameters sur le helper de vérification Send + Sync ;
  2. missing_docs sur la crate de test d'intégration tests/public_api.rs.

Fichiers modifiés

  • crates/ksp-core-lib/unit_tests/error.rs
  • crates/ksp-core-lib/tests/public_api.rs

Fichier ajouté

  • deltas/0.1.1/pre.002-fix.001.md

Fichiers supprimés

Aucun.

Correction Send + Sync

Le helper de test :

assert_send_sync<T>()

utilisait T uniquement dans ses bornes de trait. Clippy considère alors le paramètre de type comme inutilisé avec extra_unused_type_parameters.

Le helper reçoit désormais un std::marker::PhantomData<T> :

assert_send_sync<T>(PhantomData<T>)

et le test fournit PhantomData<crate::Error>.

Cette forme conserve exactement l'objectif du test de compilation : l'appel ne compile que si crate::Error satisfait Send + Sync, tout en utilisant réellement le paramètre générique et sans ajouter de dépendance, d'import ou de logique runtime significative.

Correction missing_docs

Le test d'intégration crates/ksp-core-lib/tests/public_api.rs constitue une crate Rust indépendante lors de sa compilation.

Une rustdoc crate-level est ajoutée :

//! Integration tests for the public `ksp-core-lib` error contract.

Cela satisfait le lint workspace missing_docs = warn sans désactiver le lint et sans documenter artificiellement les helpers privés du test.

Headers de fichiers

Les deux fichiers Rust modifiés passent de :

version: 1

à :

version: 2

Contrat public

Aucun changement.

Les éléments suivants restent strictement identiques à 0.1.1-pre.002 :

ksp_core_lib::Error
ksp_core_lib::ErrorCode
ksp_core_lib::ErrorContext
ksp_core_lib::Result<T>

Le plan docs/plans/003-V0_1_1_CORE_FOUNDATION_PLAN.md reste en version documentaire 5 : aucune décision d'architecture ou d'API n'est modifiée par ce correctif.

Dépendances

Aucune dépendance ajoutée ou modifiée.

Validations à exécuter après application

cargo fmt --all
cargo check --workspace
cargo test --workspace
cargo clippy --workspace --all-targets

Le résultat attendu de ce correctif est l'absence des deux warnings qui ont motivé pre.002-fix.001.

Aucune validation du correctif lui-même n'est déclarée réussie tant que ces commandes n'ont pas été exécutées sur le dépôt cible.