--- 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__SPEC_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: " 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) - [ ] 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