feat(checkpoint): CHECKPOINT signal — snapshot mid-session, reprise sans perte

This commit is contained in:
2026-03-14 03:30:31 +01:00
parent 80c59dc13d
commit 06a61f77f6
3 changed files with 93 additions and 20 deletions

View File

@@ -1,16 +1,17 @@
# BRAIN-INDEX.md — Registre de claims
> Système de locking optimiste — Brain Session Index (BSI).
> Mis à jour par le **scribe uniquement**. Ne jamais éditer manuellement.
> **Claims** : scribe uniquement. **Signals** : orchestrator-scribe uniquement.
> Ne jamais éditer manuellement.
> Spec complète : `brain/profil/bsi-spec.md`
---
## Claims actifs
| Session | Portée | Niveau | Ouvert le | Expire le | État |
|---------|--------|--------|-----------|-----------|------|
| — | — | — | — | — | — |
| Session | Instance | Portée | Niveau | Ouvert le | Expire le | État |
|---------|----------|--------|--------|-----------|-----------|------|
| — | — | — | — | — | — | — |
*Aucun claim actif.*
@@ -18,21 +19,46 @@
## Claims stale — contrôle humain requis
| Session | Portée | Expiré le | Action requise |
|---------|--------|-----------|----------------|
| Session | Instance | Portée | Expiré le | Action requise |
|---------|----------|--------|-----------|----------------|
*Aucun claim stale.*
---
## Signals — Bus inter-sessions
> Écrit par `orchestrator-scribe`. Lu par toutes les instances au démarrage.
> Un signal livré reste 24h pour audit, puis archivé.
| ID | De | Pour | Type | Concerné | Payload | État |
|----|----|------|------|----------|---------|------|
| — | — | — | — | — | — | — |
*Aucun signal en attente.*
**Types de signaux :**
- `READY_FOR_REVIEW` — instance A termine, demande review à instance B
- `REVIEWED` — review terminée, résultats dans `reviews/`
- `BLOCKED_ON` — instance A attend que instance B libère un scope
- `HANDOFF` — passage de main, instance B reprend depuis un point précis
- `CHECKPOINT` — snapshot mid-session (A→A), reprise après compactage ou coupure
- `INFO` — message sans action requise
---
## Historique — 30 derniers jours
| Session | Portée | Ouvert | Fermé | Statut |
|---------|--------|--------|-------|--------|
| Session | Instance | Portée | Commits | Ouvert | Fermé | Statut |
|---------|----------|--------|---------|--------|-------|--------|
*Aucun historique.*
---
> **Règle watchdog :** au démarrage de chaque session brain, le scribe scanne ce fichier.
> TTL expiré → déplacer vers "Claims stale". Jamais auto-release — contrôle humain toujours.
> **Règle watchdog :** au démarrage, le scribe scanne Claims + Signals.
> Claims TTL expiré → stale. Signals pending adressés à cette instance → alerter.
>
> **Format session ID :** `sess-YYYYMMDD-HHMM-<slug>`
> **Format signal ID :** `sig-YYYYMMDD-<seq>` (ex: `sig-20260314-001`)
> **Format instance :** `brain_name@machine` — ex: `prod@desktop`, `template-test@laptop`