4.2 KiB
Delta 0.3.1-pre.008 — gate technique final Store API
1. Base requise
Cette tranche s'applique exclusivement après :
0.3.1-pre.007-fix.001
workspace.package.version = 0.3.1-pre.7-fix.1
Le gate opérateur fourni le 29 août 2026 est intégralement vert :
cargo fmt --all PASS
audits Rust / exports / workspace PASS / clean
audit Markdown PASS — 186 tables / 132 fichiers
cargo check --workspace PASS
cargo clippy --workspace --all-targets PASS
cargo test -p ksp-store-api PASS
Le gate Store API comprend :
15 unit tests
2 dependency-boundary tests
1 external-backend test
7 public-api tests
5 release-completeness tests
4 security-hardening tests
doc-tests propres
2. Objectif
pre.008 est exclusivement le gate technique final de 0.3.1.
Aucun nouveau modèle, capability, outcome, query, règle de rétention, event-only type, backend, codec, dépendance ou comportement runtime n'est ajouté. Les canaris déjà présents couvrent la surface fonctionnelle de la release.
La tranche doit seulement :
bump la prerelease Cargo vers pre.8
mettre le plan et la validation en état de gate final
tracer le présent delta
faire rejouer le gate workspace complet + graphes Cargo par l'opérateur
3. Version
La prerelease non-fix synchronise l'identité Cargo :
0.3.1-pre.7-fix.1
->
0.3.1-pre.8
Le bump garantit une identité de build distincte après la série pre.007/fix.001 et évite toute ambiguïté avec les artefacts Cargo précédents.
4. Surface déjà couverte
Les canaris existants verrouillent notamment :
RawTransaction + RawTransactionObservation
RawAccountState + RawAccountObservation
provenance / références / payload / hashes bornés
queries cursorisées sans plafond métier Store arbitraire
outcomes idempotence/conflict
atomic acquisition contracts
RawRetentionState + tombstone + force-rehydrate
ExpectedStateMismatch pour les races de rétention
10 capabilities fines object-safe
backend externe implémentable sans ksp-store-lib
60 exports crate-root exacts
frontière ksp-interface-lib / ksp-store-api
aucun backend SQL/runtime
aucune surface N2 STRUCTURAL / N3 DECODED / N4 DOMAIN
Aucun nouveau test n'est ajouté uniquement pour matérialiser pre.008.
5. Fichiers ajoutés
deltas/0.3.1/pre.008.md
6. Fichiers modifiés
Cargo.toml
docs/plans/022-V0_3_1_STORE_RAW_PLAN.md
docs/validation/018-V0_3_1_STORE_RAW.md
7. Surface explicitement inchangée
Cette tranche ne touche pas :
crates/ksp-store-api/src/**
crates/ksp-store-api/tests/**
crates/ksp-store-api/unit_tests/**
crates/ksp-store-api/Cargo.toml
README.md
ROADMAP.md
CHANGELOG.md
prompts/**
config/**
docs/architecture/**
docs/rules/**
8. Gate opérateur final
Exécuter :
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.1
cargo check --workspace
cargo clippy --workspace --all-targets
cargo test -p ksp-store-api
cargo test -p ksp-logging-lib --test ownership
cargo test --workspace
cargo tree -p ksp-store-api --edges normal
cargo tree --duplicates
Résultat architectural attendu pour le graphe ciblé :
ksp-store-api
└── ksp-core-lib
└── dépendances low-level Core existantes
Aucune dépendance Store -> Interface/Transport/Program/Config/Logging/backend DB ne doit apparaître.
cargo tree --duplicates est un gate d'inspection : les doublons transitifs déjà présents dans le workspace doivent être observés, mais pre.008 n'introduit aucune dépendance nouvelle susceptible d'en créer.
9. Suite
Si ce gate complet est vert :
0.3.1-pre.009
ouvre uniquement la réconciliation documentaire finale (ksp-store-api/README.md, USAGE.md, plan, validation et indexes/références durables réellement concernés), sans rouvrir CHANGELOG.md, ROADMAP.md ni le prompt 0.3.2.