Files
khadhroony-bot3/ks-store/README.md
2026-08-09 19:34:08 +02:00

53 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!-- file: ks-store/README.md -->
<!-- version: 4 -->
# ks-store
`ks-store` consolide les contrats de stockage et limplémentation PostgreSQL de `khadhroony-bot3`.
## Périmètre
La crate expose :
- DTO et entités raw, observations, Core, décodage, matérialisation et ledger ;
- traits async de repositories indépendants du backend ;
- pagination et filtres bornés ;
- `PostgresStore` et ses options de connexion ;
- initialisation idempotente du schéma et migrations SQL ;
- diagnostics read-only, healthchecks et résumés de replay ;
- transactions atomiques pour extraction, décodage et matérialisation.
## Responsabilités
- garantir les invariants des données persistées ;
- séparer contrats et implémentation PostgreSQL à lintérieur de la crate consolidée ;
- maintenir les tables canoniques `kb_sol_*` ;
- fournir au pipeline des frontières async typées ;
- protéger les opérations multi-tables par transactions ;
- borner toutes les requêtes de diagnostic et de replay exposées.
## Hors périmètre
La crate ne décode pas les instructions, nacquiert pas les transactions et ne décide pas quelle matérialisation exécuter. Elle persiste les résultats produits par `ks-lib` et orchestrés par `ks-pipeline`.
## API publique
Les consommateurs utilisent principalement `PostgresStore`, `PostgresStoreOptions`, les traits `*Store`, les DTO `*Insert`/`*Row`, les filtres de replay et les diagnostics. Les constantes de tables et fonctions de validation sont publiques pour les audits et outils dadministration.
## Relations
- dépend de `ks-core` pour les erreurs ;
- utilise les contrats de replay de `ks-lib` ;
- est consommée principalement par `ks-pipeline`, les scénarios de démonstration et le desktop.
## Statut
Le stockage consolidé dispose de tests unitaires étendus et de tests PostgreSQL optionnels pilotés par environnement. Les opérations réelles exigent un serveur PostgreSQL et lapplication préalable des migrations.
## Documents
- [Utilisation](USAGE.md)
- [Travaux restants](TODO.md)
- [Historique](CHANGELOG.md)
- [Architecture du stockage](../docs/architecture/STORAGE_ARCHITECTURE.md)