6.1 KiB
Delta 0.3.1-pre.009 — Réconciliation documentaire finale Store API RAW
Base requise
0.3.1-pre.008
Le gate opérateur de cette base a été exécuté après cargo clean et passe les audits Rust/Markdown, cargo check --workspace, Clippy, les tests ciblés des crates présentes, cargo test --workspace, les trois builds Tauri Linux et les graphes Cargo. La commande ciblée initiale cargo test -p ksp-program-lib utilisait un nom de package inexistant ; cargo test -p ksp-program-api a ensuite été exécuté séparément et passe intégralement.
Objectif
Fermer la réconciliation documentaire durable de 0.3.1 sans développement fonctionnel nouveau et sans empiéter sur la lane de publication pre.010.
La tranche doit refléter la surface réellement matérialisée de ksp-store-api :
RawTransaction / RawTransactionObservation
RawAccountState / RawAccountObservation
primitives RAW/provenance/format/hash/timestamps
queries cursorisées sans plafond métier KSP arbitraire
outcomes d'idempotence/conflit
RawRetentionState + tombstone transactionnel
normal skip après purge + force rehydrate explicite
10 capabilities backend fines/object-safe
Elle doit également figer explicitement les reports :
TransactionStatusObservation
logs/slot/vote event-only contracts
StoreHealth/readiness runtime
type canonique dédié de wake-up persisté-data
processing ledger / backlog métier / executor policy
compression/archive physique
ksp-store-lib / PostgreSQL / std.store
N2 STRUCTURAL / N3 DECODED / N4 DOMAIN
Fichiers ajoutés
deltas/0.3.1/pre.009.md
Fichiers modifiés
Cargo.toml
docs/000-README.md
docs/IDEAS.md
docs/architecture/003-COMPONENT_CONTRACTS.md
docs/architecture/004-COMPONENT_INVENTORY.md
docs/architecture/005-DEPENDENCY_GRAPH.md
docs/architecture/009-ACQUISITION_WORKERS_AND_JOBS.md
docs/architecture/010-APPS_SERVICES_SCENARIOS_AND_CONTROL.md
docs/plans/000-README.md
docs/plans/022-V0_3_1_STORE_RAW_PLAN.md
docs/validation/000-README.md
docs/validation/018-V0_3_1_STORE_RAW.md
Fichiers supprimés
Aucun.
Décisions réconciliées
workspace.package.versionpasse à0.3.1-pre.9conformément àVER-ID-009pour une nouvelle prerelease non-fix, même documentaire.ksp-store-apireste la seule crate Store de0.3.1et conserve uniquementksp-core-libcomme dépendance runtime normale.- Le health/readiness n'est pas un contrat RAW nécessaire et n'est pas inventé dans
ksp-store-api; il est reporté au runtimeksp-store-libde0.3.2si un consumer réel le justifie. 0.3.1n'ajoute aucun type dédié de notification persistée-data. Les références durables existantes pourront alimenter un futur contrat de wake-up lorsqu'un publisher/consumer réel sera introduit.- PostgreSQL
LISTEN/NOTIFYn'est plus présenté comme mécanisme déjà retenu. Un futur publisher suitpersist -> commit -> publish; un mécanisme PostgreSQL éventuel reste une optimisation backend/runtime et jamais un event bus possédé par Store. - Les consumers runtime ordinaires — jobs, workers et apps — utilisent
ksp-store-libà partir de0.3.2; ils ne dépendent pas d'un backend concret. Les crates backend implémententksp-store-apiet ne dépendent pas deksp-store-lib. - La pagination Store exprime navigation/cursorisation. Batch-size, priorité et policy de sélection appartiennent au worker/job/executor. Store ne crée aucun plafond métier global inférieur à une capacité physique disponible du backend.
RawAccountStateetRawAccountObservationsont réconciliés comme surface réellement livrée de0.3.1, tandis queTransactionStatusObservationreste explicitement reporté.- Les index
docs/, plans et validations référencent désormais0.2.14et la candidate0.3.1actuelle. README.mdracine ne contient aucune surface Store détaillée devenue fausse et aucun README/USAGE propre àksp-store-apin'existe encore ; aucun fichier artificiel n'est créé uniquement pour satisfaire une prévision ancienne.CHANGELOG.md,ROADMAP.mdetprompts/021-V0_3_2_START_PROMPT.mdrestent strictement réservés àpre.010.- La réconciliation globale du vocabulaire historique
COREvers le futur N2STRUCTURALn'est toujours pas ouverte dans les architectures générales ; elle reste reportée au moment où N2 sera réellement introduit.
Validations exécutées pendant la génération
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.1
-> Markdown table audit: clean (186 table(s), 134 file(s))
Les tableaux modifiés ont été réalignés selon le format RustRover attendu par l'audit Markdown.
Validations non exécutées pendant la génération
L'environnement de génération ne dispose pas de la toolchain Cargo/Rust utilisée par l'opérateur ; aucun cargo check, Clippy ou test Cargo n'est revendiqué pour cette archive.
Aucun code Rust, manifest de crate, ressource runtime, migration ou configuration exécutable n'est modifié dans cette tranche. Le gate lourd pre.008 reste la preuve technique de référence ; pre.009 nécessite seulement un re-gate ciblé après application.
Gate opérateur demandé
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
Les builds Tauri et le cargo test --workspace complet n'ont pas besoin d'être rejoués pour cette tranche purement documentaire/versionnée si ce gate ciblé reste vert.
Questions ouvertes
Aucune question bloquante pour 0.3.1.
Les décisions runtime/backend restantes appartiennent au prompt et à la release 0.3.2 : façade ksp-store-lib, backend ksp-store-postgres-lib, Config std.store, migrations et validation PostgreSQL réelle.