Files
khadhroony-solana-project/deltas/0.3.8/pre.004-fix.001.md

2.9 KiB

Delta 0.3.8-pre.004-fix.001 — réconciliation des canaris PostgreSQL pre.004

Base requise

0.3.8-pre.004
workspace.package.version = 0.3.8-pre.4

La livraison devient :

0.3.8-pre.004-fix.001
workspace.package.version = 0.3.8-pre.4.fix.1
commit = v0.3.8-pre.004-fix.001
tag = aucun

Cause du fix

Le gate opérateur révèle deux défauts de tests :

  1. quatre closures ajoutées dans hardening_completeness.rs enfreignent clippy::implicit-return ;
  2. le canari historique pre_006_raw_pagination_is_keyset_cursor_bound_and_policy_free interdit encore OFFSET sur l'intégralité de raw_transaction.rs, alors que pre.004 autorise explicitement OFFSET uniquement dans les statements d'inspection random-access.

Les tests fonctionnels PostgreSQL pre.004 eux-mêmes sont verts : 66 tests unitaires passent, y compris les trois nouveaux tests d'inspection.

Correction

Les quatre closures utilisent désormais un return explicite.

Le canari pre.006 conserve son invariant historique mais le mesure au bon niveau :

LIST_TRANSACTIONS_ASC_SQL  -> OFFSET interdit
LIST_TRANSACTIONS_DESC_SQL -> OFFSET interdit
raw_transaction/cursor.rs  -> OFFSET interdit
inspection SQL             -> OFFSET autorisé uniquement par pre.004

Les autres interdictions de policy (limit.min, clamp, plafonds arbitraires) restent globales dans le chemin transaction/cursor.

Live proof

Le run opérateur interrompu après plus de 60 secondes n'a jamais imprimé server major ...; il ne constitue donc pas une preuve que le scénario PostgreSQL a commencé. Le message du test précise désormais qu'il attend une ligne URI sur stdin et ne démarre qu'après Enter.

Commande recommandée avec saisie masquée :

read -rsp 'Dedicated PostgreSQL URI: ' KSP_LIVE_PG_URI
printf '\n'
printf '%s\n' "$KSP_LIVE_PG_URI" | cargo test -p ksp-store-postgres-lib --test postgres_raw_transaction_live -- --ignored --nocapture
unset KSP_LIVE_PG_URI

Scope

Aucun SQL de production, runtime PostgreSQL, contrat Store, façade, migration, capability Account ou UI n'est modifié.

Fichiers ajoutés

deltas/0.3.8/pre.004-fix.001.md

Fichiers modifiés

Cargo.toml
crates/ksp-store-postgres-lib/tests/dependency_boundary.rs
crates/ksp-store-postgres-lib/tests/hardening_completeness.rs
crates/ksp-store-postgres-lib/tests/postgres_raw_transaction_live.rs
docs/validation/025-V0_3_8_STORE_DESK.md

Fichiers supprimés

aucun

Gate requis

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
cargo check --workspace
cargo clippy --workspace --all-targets
cargo test -p ksp-store-postgres-lib
cargo test -p ksp-store-lib
cargo check -p ksp-store-lib --no-default-features
cargo test -p ksp-store-api