--- description: Protocolo SESSION-CHECKPOINT — handoff entre agentes e sessões (todas as specs Ligbox) globs: specs/**/*,**/ligbox-ops-platform/specs/**,**/SESSION-CHECKPOINT*.md alwaysApply: true --- # Spec Session Handoff — Roger / Ligbox **Problema:** agentes Cursor não partilham memória de chat. **Solução:** estado vivo em `SESSION-CHECKPOINT.md` por spec (vault VM130 = fonte de verdade). ## Entrada (OBRIGATÓRIO antes de implementar) 1. Identificar a spec activa (Roger indica ou `tasks.md` com `[ ]` críticos). 2. Ler **`specs/NNN-*/SESSION-CHECKPOINT.md`** — status, bloqueios, smoke tests. 3. Ler **`spec.md`** + **`tasks.md`** + **`contracts/`** se existir. 4. Correr **smoke test** listado no checkpoint (ou health mínimo da VM da spec). 5. Se `status: in_progress` e outro agente listado → **não sobrescrever**; actualizar secção Histórico ou pedir confirmação a Roger. ## Durante o trabalho - Uma spec **in_progress** de cada vez em VMs críticas (VM112, VM122, VM123). - Decisões novas → `spec.md` (Decisões/Histórico) + checkpoint. - Código deploy → nota no checkpoint (path, container, versão). ## Saída (OBRIGATÓRIO antes de encerrar) 1. Actualizar **`SESSION-CHECKPOINT.md`**: - `status`, data, resumo feito/bloqueio/próximo passo - linha em **Histórico de sessões** 2. Actualizar **`tasks.md`** (`[x]` / `[ ]`). 3. Se spec nova ou template mudou → seguir também **`spec-driver-sync.mdc`** (portal Forgejo). 4. **Nunca** deixar secrets no checkpoint (só referências: «ver .env VM122»). ## Status permitidos | Status | Significado | |--------|-------------| | `idle` | Spec documentada; sem trabalho activo | | `in_progress` | Agente a implementar/deploy/testar | | `blocked` | Parado — bloqueio explícito na secção Bloqueios | | `done` | Entregue; smoke OK; tasks críticas `[x]` | ## Template Copiar de `specs/SESSION-CHECKPOINT-TEMPLATE.md` ao criar spec nova. ## Spec activa (referência rápida) Consultar sempre o checkpoint **com `status: in_progress`** mais recente — tipicamente a spec que Roger mencionou na mensagem.