Agents & SystèmesPacemaker
Modele de donnees
Schema complet de la base Turso : tables, relations, index et colonnes vectorielles.
REF-SPEC/PM-011 v1.0 — 2026-04-05
1. Vue d'ensemble
Pacemaker utilise Turso (SQLite distribue) avec l'extension libsql-vector pour le stockage vectoriel. La base contient 12 tables principales couvrant le planning, les risques, les documents, les generations IA et l'apprentissage.
2. Tables principales
weeks
Semaines de mission avec planning baseline et reel.
| Colonne | Type | Description |
|---|---|---|
| id | INTEGER PK | Numero de semaine |
| phase | TEXT | Phase de la mission |
| title | TEXT | Description de la semaine |
| budget_jh | REAL | Budget jours-homme |
| actions | TEXT (JSON) | Actions planifiees |
| livrables_plan | TEXT (JSON) | Livrables attendus |
| owner | TEXT | Responsable |
| start_date | TEXT | Date de debut reelle |
| end_date | TEXT | Date de fin reelle |
| baseline_start_date | TEXT | Date de debut planifiee |
| baseline_end_date | TEXT | Date de fin planifiee |
tasks
Taches rattachees aux semaines.
| Colonne | Type | Description |
|---|---|---|
| id | TEXT PK | Identifiant unique |
| week_id | INTEGER FK | Semaine rattachee |
| label | TEXT | Description de la tache |
| description | TEXT | Detail complementaire |
| owner | TEXT | Paul, LLM, Client |
| priority | TEXT | haute, moyenne, basse |
| status | TEXT | a faire, en cours, fait, bloque |
| source | TEXT | manual, llm, upload, recalib, vision |
| jh_estime | REAL | Charge estimee |
| livrables_generes | TEXT (JSON) | Fichiers produits |
| created_at | TEXT | Date de creation |
| completed_at | TEXT | Date de completion |
risks
Registre des risques projet.
| Colonne | Type | Description |
|---|---|---|
| id | TEXT PK | Identifiant unique |
| label | TEXT | Description du risque |
| impact | INTEGER | 1 a 5 |
| probability | INTEGER | 1 a 5 |
| status | TEXT | actif, resolu, mitige |
| mitigation | TEXT | Action de mitigation |
events
Journal de bord.
| Colonne | Type | Description |
|---|---|---|
| id | TEXT PK | Identifiant unique |
| type | TEXT | manual, llm, upload, recalib, vision, milestone, decision |
| label | TEXT | Description |
| week_id | INTEGER | Semaine rattachee |
| date | TEXT | Horodatage |
| content | TEXT | Detail optionnel |
documents
Base documentaire pour le RAG.
| Colonne | Type | Description |
|---|---|---|
| id | TEXT PK | Identifiant unique |
| title | TEXT | Titre du document |
| type | TEXT | cr, spec, referentiel, livrable, autre |
| source | TEXT | manual, upload, vision |
| week_id | INTEGER | Semaine rattachee (optionnel) |
| blob_url | TEXT | URL Vercel Blob |
| content | TEXT | Contenu texte complet |
| created_at | TEXT | Date de creation |
doc_chunks
Chunks de documents avec embeddings vectoriels.
| Colonne | Type | Description |
|---|---|---|
| id | TEXT PK | Identifiant unique |
| doc_id | TEXT FK | Document source |
| chunk_index | INTEGER | Position dans le document |
| content | TEXT | Contenu du chunk |
| embedding | F32_BLOB(1024) | Vecteur Voyage AI |
generations
Tracking des appels LLM.
| Colonne | Type | Description |
|---|---|---|
| id | TEXT PK | Identifiant unique |
| generation_type | TEXT | tasks, parse_cr, recalib, vision, livrables |
| context | TEXT (JSON) | Contexte de la generation |
| prompt | TEXT | Prompt complet |
| raw_output | TEXT | Sortie brute du LLM |
| applied_rules | TEXT (JSON) | Regles appliquees |
| week_id | INTEGER | Semaine concernee |
| created_at | TEXT | Horodatage |
corrections
Corrections utilisateur et regles apprises.
| Colonne | Type | Description |
|---|---|---|
| id | TEXT PK | Identifiant unique |
| generation_id | TEXT FK | Generation corrigee |
| corrected_output | TEXT | Sortie corrigee |
| diff_summary | TEXT | Resume du diff |
| rule_learned | TEXT | Regle extraite |
| rule_embedding | F32_BLOB(1024) | Vecteur de la regle |
| generation_type | TEXT | Type (filtrage rapide) |
| applied_count | INTEGER | Compteur d'applications |
| status | TEXT | active, superseded, archived |
| created_at | TEXT | Horodatage |
3. Autres tables
| Table | Role |
|---|---|
livrables | Livrables planifies par semaine |
rapports | Rapports de la mission (lot, complexite) |
task_attachments | Pieces jointes des taches |
project | Cle-valeur (budget, semaine courante, JH consommes) |
schedule_changes | Historique des deviations de planning |
4. Index
| Index | Table | Colonnes |
|---|---|---|
| idx_tasks_week | tasks | week_id |
| idx_tasks_status | tasks | status |
| idx_task_attachments | task_attachments | task_id |
| idx_livrables_week | livrables | week_id |
| idx_events_type | events | type |
| idx_rapports_lot | rapports | lot |
| idx_doc_chunks_doc | doc_chunks | doc_id |
| doc_chunks_embedding_idx | doc_chunks | libsql_vector_idx(embedding) |
| idx_generations_type | generations | generation_type |
| idx_generations_week | generations | week_id |
| idx_corrections_gen_id | corrections | generation_id |
| idx_corrections_type | corrections | generation_type, status |
| rules_embedding_idx | corrections | libsql_vector_idx(rule_embedding) |
5. Relations
weeks ──< tasks ──< task_attachments
weeks ──< livrables
weeks ──< events
weeks ──< rapports
documents ──< doc_chunks
generations ──< corrections