121 lines
3.3 KiB
Markdown
121 lines
3.3 KiB
Markdown
<!-- file: deltas/0.1.1/pre.004.md -->
|
|
<!-- version: 1 -->
|
|
|
|
# Delta `0.1.1-pre.004` — intégration Core + audits
|
|
|
|
## Statut
|
|
|
|
Tranche d'intégration préparée après validation réussie par le user de `0.1.1-pre.003-fix.001`.
|
|
|
|
La base validée utilise :
|
|
|
|
```text
|
|
workspace.package.version = "0.1.1-pre.3.fix.1"
|
|
```
|
|
|
|
Le présent delta ouvre :
|
|
|
|
```text
|
|
workspace.package.version = "0.1.1-pre.4"
|
|
```
|
|
|
|
## Validation de la base précédente
|
|
|
|
Le user a exécuté avec succès :
|
|
|
|
```bash
|
|
cargo fmt --all
|
|
cargo check --workspace
|
|
cargo test --workspace
|
|
cargo clippy --workspace --all-targets
|
|
cargo tree -p ksp-core-lib
|
|
cargo tree -p ksp-core-lib -d
|
|
```
|
|
|
|
Résultats communiqués :
|
|
|
|
- 14 tests unitaires passent ;
|
|
- 3 tests d'intégration publics passent ;
|
|
- Clippy ne rapporte plus de warning ou d'erreur ;
|
|
- `cargo tree` résout `solana-pubkey 4.3.0` puis `solana-address 2.7.0` et leurs dépendances fondamentales ;
|
|
- `cargo tree -d` ne rapporte aucun doublon.
|
|
|
|
## Audit d'intégration Core
|
|
|
|
L'audit conjoint de `Error` / `Result`, `Pubkey` et Program IDs ne démontre aucun besoin de primitive N1 supplémentaire dans `0.1.1`.
|
|
|
|
La façade conserve les propriétés attendues :
|
|
|
|
- les modules d'implémentation restent privés ;
|
|
- les contrats consommables sont réexportés explicitement au crate-root ;
|
|
- `ksp-core-lib` ne dépend d'aucune couche KSP supérieure ;
|
|
- `solana-pubkey` reste l'unique dépendance externe directe de Core ;
|
|
- aucun codec wire, RPC/client, signer/keypair, store, logging ou configuration n'est introduit ;
|
|
- le registre Program IDs reste descriptif et distinct de tout registry de decoder/executor.
|
|
|
|
## Rustdocs
|
|
|
|
La rustdoc crate-level de `ksp-core-lib` est complétée afin de rendre explicites :
|
|
|
|
- le contrat d'erreur commun ;
|
|
- la propriété de `Pubkey` dans la façade Core ;
|
|
- la propriété KSP du registre de Program IDs fondamentaux ;
|
|
- l'absence de dépendance inverse vers les domaines supérieurs.
|
|
|
|
## Test public renforcé
|
|
|
|
`tests/public_api.rs` déclare désormais :
|
|
|
|
```text
|
|
const TEST_ERROR_CODE: ksp_core_lib::ErrorCode = ...
|
|
```
|
|
|
|
Le test confirme ainsi depuis une crate consommatrice que `ErrorCode::new(...)` est réellement utilisable en contexte `const`, ce qui permettra aux futures crates de domaine de posséder leurs codes sans faire connaître leurs domaines à Core.
|
|
|
|
Aucune signature publique n'est modifiée.
|
|
|
|
## Documentation du plan
|
|
|
|
`docs/plans/003-V0_1_1_CORE_FOUNDATION_PLAN.md` passe en version documentaire 8 pour enregistrer le résultat de l'audit `pre.004` et ajouter le contrôle explicite des features résolues :
|
|
|
|
```bash
|
|
cargo tree -p ksp-core-lib -e features
|
|
```
|
|
|
|
## Fichiers modifiés
|
|
|
|
```text
|
|
Cargo.toml
|
|
crates/ksp-core-lib/src/lib.rs
|
|
crates/ksp-core-lib/tests/public_api.rs
|
|
docs/plans/003-V0_1_1_CORE_FOUNDATION_PLAN.md
|
|
```
|
|
|
|
## Fichier ajouté
|
|
|
|
```text
|
|
deltas/0.1.1/pre.004.md
|
|
```
|
|
|
|
## Validations à exécuter sur le dépôt cible
|
|
|
|
```bash
|
|
cargo fmt --all
|
|
cargo check --workspace
|
|
cargo test --workspace
|
|
cargo clippy --workspace --all-targets
|
|
cargo tree -p ksp-core-lib
|
|
cargo tree -p ksp-core-lib -d
|
|
cargo tree -p ksp-core-lib -e features
|
|
```
|
|
|
|
Aucune validation non exécutée dans l'environnement de préparation n'est déclarée réussie pour ce delta.
|
|
|
|
## Suite
|
|
|
|
Si cette tranche est propre, la suite prévue est :
|
|
|
|
```text
|
|
0.1.1-pre.005 — clôture, documentation finale et prompt 0.1.2
|
|
```
|