Handoff entre agentes/sessões: template, checkpoints idle, 043 in_progress actualizado, spec-session-handoff.mdc e checklist spec-driver-sync.
90 lines
3.4 KiB
Text
90 lines
3.4 KiB
Text
---
|
|
description: Sincronização imediata Spec → Spec Driver, chat-bruto, Forgejo e GitHub
|
|
globs: specs/**/*,chat-bruto/**/*,portal/**/*
|
|
alwaysApply: true
|
|
---
|
|
|
|
# Spec Driver — sincronização imediata (Roger)
|
|
|
|
**Spec Driver** = portal [spec.ligbox.com.br](https://spec.ligbox.com.br) + browser `/specs/` + sidebars + inventário VMs.
|
|
|
|
Sempre que **criar, ampliar ou modificar** qualquer spec (`specs/NNN-*`), **na mesma sessão**, antes de encerrar a tarefa:
|
|
|
|
## 1. Spec Kit (conteúdo)
|
|
|
|
- Atualizar artefatos SDD: `spec.md`, `tasks.md`, `plan.md`, `quickstart.md`, `contracts/` conforme a mudança.
|
|
- Em `spec.md`, secção **Decisões** / **Histórico** com o que foi decidido (data + resumo).
|
|
- Se houve discussão em chat: **salvar chat bruto** em `chat-bruto/` e referenciar na spec.
|
|
|
|
## 2. Chat bruto (obrigatório se existir discussão)
|
|
|
|
- Salvar em `chat-bruto/CHAT_BRUTO_<TEMA>_SPEC<NNN>_YYYYMMDD.txt` (e `.jsonl` se disponível).
|
|
- Atualizar ou criar `chat-bruto/CHAT_BRUTO_*_INDICE.txt` com link para a spec e ficheiros.
|
|
- Na spec, link explícito: `Ver chat bruto: chat-bruto/...`
|
|
- Copiar espelho para `obsidian-vault/ligbox-ops-platform/chat-bruto/` no CT130 quando aplicável.
|
|
|
|
## 3. Spec Driver (portal CT130) — imediato
|
|
|
|
No CT130 (`10.10.10.130`), após alterações no repo:
|
|
|
|
```bash
|
|
cd /opt/ligbox-spec-hub
|
|
./portal/refresh-spec-driver.sh
|
|
```
|
|
|
|
O script deve:
|
|
1. `generate-sidebars.sh` → `_sidebar.md`
|
|
2. `generate-specs-portal.py` → `/specs/index.html` (menu com **todas** as specs que têm `spec.md`, auto-descoberta)
|
|
3. Incluir **todos** os ficheiros em `chat-bruto/` no menu lateral
|
|
4. Atualizar contagem na homepage se existir placeholder estático
|
|
|
|
**Nunca** deixar specs novas só no disco sem regenerar o portal.
|
|
|
|
## 4. Git — Forgejo (fonte de verdade primária)
|
|
|
|
Repositório: `https://git.spec.ligbox.com.br/ligbox/ligbox-ops-platform`
|
|
|
|
Incluir no commit (quando aplicável):
|
|
- `specs/NNN-*/`
|
|
- `chat-bruto/`
|
|
- `contracts/`
|
|
- `docs/vms/` se VM inventário mudou
|
|
- `_sidebar.md` gerado
|
|
- `portal/html/specs/index.html` gerado
|
|
|
|
```bash
|
|
git add specs/ chat-bruto/ contracts/ docs/vms/ _sidebar.md portal/html/specs/index.html
|
|
git commit -m "spec NNN: <resumo da decisão>"
|
|
git push origin main
|
|
```
|
|
|
|
Esta regra **autoriza commit automático** para mudanças de spec (exceção à regra geral de só commitar quando pedido).
|
|
|
|
## 5. GitHub (espelho / segunda fonte de verdade)
|
|
|
|
Após push Forgejo, espelhar para GitHub (modelo de suporte + backup):
|
|
|
|
```bash
|
|
git push github main # remote `github` — mirror ligbox-ops-platform
|
|
```
|
|
|
|
Se `github` remote não existir, criar mirror ou `git push` para repo `itecnologys/ligbox-ops-platform` (confirmar URL com Roger).
|
|
|
|
GitHub **não substitui** Forgejo; é réplica read-only ou bidirecional acordada.
|
|
|
|
## 6. Checklist de saída (não dispensar)
|
|
|
|
- [ ] `SESSION-CHECKPOINT.md` actualizado (ver `spec-session-handoff.mdc`)
|
|
- [ ] `tasks.md` sincronizado (`[x]` / `[ ]`)
|
|
- [ ] Spec reflete decisões do chat
|
|
- [ ] Chat bruto salvo e linkado (se houve discussão)
|
|
- [ ] `refresh-spec-driver.sh` executado no CT130
|
|
- [ ] Spec visível em https://spec.ligbox.com.br/specs/
|
|
- [ ] Commit + push Forgejo
|
|
- [ ] Push/mirror GitHub
|
|
|
|
## 7. Falhas conhecidas a evitar
|
|
|
|
- Menu `/specs/` com lista hardcoded sem auto-descoberta → corrigir em `generate-specs-portal.py`
|
|
- Spec no repo mas portal mostra contagem antiga → regenerar portal
|
|
- Chat bruto só no laptop → não conta; tem de estar no repo + portal
|