v0.3.4-pre.004-fix.001
This commit is contained in:
119
deltas/0.3.4/pre.004-fix.001.md
Normal file
119
deltas/0.3.4/pre.004-fix.001.md
Normal file
@@ -0,0 +1,119 @@
|
||||
<!-- file: deltas/0.3.4/pre.004-fix.001.md -->
|
||||
<!-- version: 1 -->
|
||||
|
||||
# Delta `0.3.4-pre.004-fix.001` — conformité Clippy du mapping PostgreSQL account
|
||||
|
||||
## 1. Base requise
|
||||
|
||||
```text
|
||||
0.3.4-pre.4
|
||||
```
|
||||
|
||||
Le gate opérateur du 2026-08-30 confirme que `pre.004` compile et que les suites ciblées passent, mais `cargo clippy --workspace --all-targets` échoue sur le nouveau mapping `RawAccountState`.
|
||||
|
||||
## 2. Anomalies corrigées
|
||||
|
||||
Dans `src/raw_account.rs`, les deux helpers d'extraction physique utilisent 27 formes :
|
||||
|
||||
```text
|
||||
row.try_get(...).map_err(...)?
|
||||
```
|
||||
|
||||
Le profil workspace nie `clippy::question-mark-used` et `clippy::implicit-return`. Chaque occurrence génère donc deux erreurs Clippy, soit 54 diagnostics.
|
||||
|
||||
Le même gate signale un warning `unused_variables` pour `crate_root` dans `pre_003_v002_schema_is_complete_without_account_trait_or_write_dispatch`.
|
||||
|
||||
## 3. Correctif
|
||||
|
||||
Les 27 extractions sont dépliées en `match` typés :
|
||||
|
||||
```text
|
||||
Ok(value) -> value
|
||||
Err(_) -> return Err(DataInvalid)
|
||||
```
|
||||
|
||||
La logique et les phases d'erreur restent strictement identiques. Aucune macro, nouveau helper partagé ou nouvelle dépendance n'est introduit.
|
||||
|
||||
La variable `crate_root` réellement inutilisée est supprimée du seul canari concerné. Le canari `pre_004_raw_account_read_sql_and_mapping_remain_backend_private_and_read_only` conserve sa propre lecture de `src/lib.rs`, qui reste utilisée.
|
||||
|
||||
## 4. Version
|
||||
|
||||
Deux fichiers Rust sont modifiés. Conformément à `VER-ID-007/010`, le workspace passe à :
|
||||
|
||||
```text
|
||||
0.3.4-pre.4.fix.1
|
||||
```
|
||||
|
||||
## 5. Scope inchangé
|
||||
|
||||
Le fix ne modifie pas :
|
||||
|
||||
```text
|
||||
GET_ACCOUNT_STATE_SQL
|
||||
GET_ACCOUNT_OBSERVATION_SQL
|
||||
signatures get_raw_account_state/get_raw_account_observation
|
||||
modèles ksp-store-api
|
||||
write SQL account
|
||||
pagination/cursor KSPA
|
||||
impl RawAccount*
|
||||
Store dispatch account
|
||||
migrations V000/V001/V002
|
||||
```
|
||||
|
||||
Le checksum V002 final reste :
|
||||
|
||||
```text
|
||||
ff21605ed45f7ab4c0f92bbb692700b4118a9488b04d50a31d259ac59bdb550e
|
||||
```
|
||||
|
||||
## 6. Fichiers modifiés
|
||||
|
||||
```text
|
||||
Cargo.toml
|
||||
crates/ksp-store-postgres-lib/src/raw_account.rs
|
||||
crates/ksp-store-postgres-lib/tests/dependency_boundary.rs
|
||||
docs/plans/025-V0_3_4_STORE_POSTGRES_RAW_ACCOUNT_PLAN.md
|
||||
docs/validation/021-V0_3_4_STORE_POSTGRES_RAW_ACCOUNT.md
|
||||
```
|
||||
|
||||
## 7. Fichier ajouté
|
||||
|
||||
```text
|
||||
deltas/0.3.4/pre.004-fix.001.md
|
||||
```
|
||||
|
||||
## 8. Validations exécutées dans l'environnement d'assemblage
|
||||
|
||||
```text
|
||||
python3 scripts/audit_rust_workspace_rules.py
|
||||
General Rust rule audit: clean
|
||||
Rust export completeness audit: 0 candidate(s)
|
||||
KSP workspace Rust rule audit: clean
|
||||
|
||||
python3 scripts/audit_markdown_tables.py README.md RULES.md ROADMAP.md CHANGELOG.md docs prompts crates deltas/0.3.4
|
||||
PASS
|
||||
|
||||
grep '?' crates/ksp-store-postgres-lib/src/raw_account.rs
|
||||
aucune occurrence
|
||||
```
|
||||
|
||||
`cargo`, `rustc` et `rustfmt` ne sont pas disponibles dans l'environnement d'assemblage ; aucun gate Cargo post-fix n'est revendiqué PASS ici.
|
||||
|
||||
## 9. Gate opérateur à rejouer
|
||||
|
||||
```bash
|
||||
cargo fmt --all
|
||||
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.4
|
||||
cargo check --workspace
|
||||
cargo clippy --workspace --all-targets
|
||||
cargo test -p ksp-store-api
|
||||
cargo test -p ksp-store-lib
|
||||
cargo test -p ksp-store-postgres-lib
|
||||
cargo test -p ksp-config-lib
|
||||
cargo check -p ksp-store-lib --no-default-features
|
||||
```
|
||||
|
||||
## 10. Verdict
|
||||
|
||||
`pre.004-fix.001` reste strictement dans la responsabilité de `pre.004` : il corrige uniquement la conformité Clippy et l'hygiène du canari du mapping/read slice déjà introduit, sans ajouter de fonctionnalité.
|
||||
Reference in New Issue
Block a user