Backlog Unificado
Fonte principal: /root/cerebro/docs/BACKLOG.md. Detalhes (quando existirem): /root/cerebro/docs/specs.
- BK-36 · MCP Bridge: Integração com o Model Context Protocol com catálogo de permissões por ferramenta. (detalhe pendente)
- BK-38 · Gate B — Núcleo útil da inspiração: executar BK-38 em fase segura (heartbeat 30 min read-only + alerta + sugestão; sem execução automática R2+). (detalhe pendente)
- BK-40 · Builder Engine (Specs): Implementar orquestração baseada em arquivos de especificação (TDD/PRD automáticos). (detalhe pendente)
- BK-41 · Evals e Benchmark: Sistema para medir a qualidade das respostas e evitar regressões de inteligência. (detalhe pendente)
- BK-42 · Gate C — Pipeline oficial do Cerebro: concluir BK-42 + BK-55 (peer review gate) + BK-41 (evals). (detalhe pendente)
- BK-46.1 · Gate A — Governança primeiro (OBRIGATÓRIO): concluir BK-46.1 + BK-47 antes de qualquer autonomia contínua. (detalhe pendente)
- BK-47 · [PASSO-03 | Orquestrador] Executar BK-47 (rollback templates): automatizar script de reversão por alteração para reduzir risco operacional em jobs R2+. (detalhe pendente)
- BK-48 · Auto-Tuning: Agente que analisa logs de performance e sugere melhorias na configuração do Kernel. (detalhe pendente)
- BK-50 · Versionamento de Memória: Snapshotting do MEMORY.md para evitar corrupção de contexto a longo prazo. (detalhe pendente)
- BK-52 · WhatsApp SaaS (Extração do RNT): Transformar o microserviço/fluxo de WhatsApp do Rio no Teatro (helper PHP + fila + healthcheck + restart + telemetria) em componente reutilizável/multitenant para outros projetos da VPS e futura integração no Cerebro (canal alternativo ao Discord para alertas/testes). Inspirado em Mission Control HQ. (detalhe pendente)
- BK-55 · Peer Review Gate entre Agents: Adicionar etapa obrigatória de revisão cruzada antes de Done, com evidência em log/DB e bloqueio em caso de conflito crítico. (detalhe pendente)
- BK-56 · Gate D — Standup diário automático: concluir BK-56 para resumo diário de runs, bloqueios e próximos passos. (detalhe pendente)
- BK-61 · Terminal Multi-Sessão (Fase 1 e 2): Implementar gerenciador de sessões paralelas por engine. (detalhe pendente)
- BK-62 · [PASSO-01 | Usuário/Admin] Fechar BK-62 (P0 de segurança): revogar tokens legados no Discord Developer Portal, atualizar CEREBRO_DISCORD_TOKEN na VPS e validar bot/kernel após restart. (detalhe pendente)
- BK-66 · Flag explícita planejar vs executar: (detalhe pendente)
- BK-128 · Copywriter multi-formato + Revisor comercial RNT (FOLLOW-UP RECONCILIADO em 2026-03-18): O RNT ja possui base parcial entregue no historico local BK-122, com copy contextual para story/reels, selecao manual e fallback operacional. O que ainda falta neste backlog central e expandir para feed/carrossel, scorecard comercial consistente e integracao completa com o fluxo WhatsApp -> agenda -> conferencia de rascunho. Detalhe: docs/specs/BK-128-rnt-copy-multiformato-review.md.
- BK-133 · Planejamento Antecipado (Greedy Planner): Ajustar o robô para gerar conteúdos de fim de temporada (Last Week/Last Session) no momento do cadastro da peça, permitindo aprovação e agendamento prévio. (detalhe pendente)
- BK-134 · Messenger Channel Integration: Automatizar postagem no canal do Messenger (rionoteatro) após inclusão de nova peça, com fluxo de aprovação via WhatsApp. (detalhe pendente)
- BK-135 · FB Events Auto-Creation: Integrar a criação de eventos do Facebook ao fluxo de "Peça Nova", parando no rascunho para conferência humana. (detalhe pendente)
- BK-136 · Meta Weekly Challenges Bot: Criar rotina para monitorar e sugerir postagens criativas (Reels/Posts) para cumprir os desafios de nível da Meta. (detalhe pendente)
- BK-153 · Refatoracao fase 1 de sync_facebook_events.php: Separar planner, dispatcher, montagem de aprovacao e fallback browser em modulos/testes controlados, sem reescrever tudo de uma vez. (detalhe pendente)
- BK-154 · Harmonizacao backlog central x backlog RNT x roadmap Squad: Consolidar a semantica indice central -> backlog local de execucao -> roadmap estrategico, sem texto divergente entre os tres. (detalhe pendente)
- BK-155 · Piloto de migracao de cron social para Node: Escolher um cron social menor para piloto controlado e validar contrato/rollback antes de considerar a frente grande de migracao do legado social. (detalhe pendente)
Especificações Disponíveis (fora da fila pendente)
Detalhe do BK Selecionado
SPEC: BK-45 Safe Mode (Modo de Segurança)
1. Objetivo
O Safe Mode visa garantir que o ecossistema Cérebro (Kernel + Studio) possa subir em um estado funcional mínimo mesmo durante incidentes críticos (ex: falha de banco de dados, erros de rede, conflitos de porta EADDRINUSE ou comportamentos anômalos de LLMs). Ele permite o diagnóstico e a leitura de logs sem o risco de execução de ações que alterem o estado da VPS ou dos projetos.
2. Gatilho de Ativação
A ativação é definida no momento do boot (bootstrap) através de:
- Variável de Ambiente:
CEREBRO_SAFE_MODE=true(no.envou export global). - Flag de CLI:
--safe(passada ao processo Node). - Precedência: A flag
--safetem precedência absoluta sobre a variável de ambiente. - Valores Inválidos: Qualquer valor diferente de
true(case-insensitive) ou1na env var será tratado comofalse. Se a flag--safeestiver presente, o valor é ignorado e o modo é ativado. - Verificação: O check ocorre no arquivo
kernel/index.jsantes da inicialização de sockets e roteadores. No Studio (studio/server.js), o modo deve refletir o estado reportado pelo Kernel ou sua própria env var de segurança.
3. Comportamento Mínimo
Em Safe Mode, o sistema deve:
- Subir em Modo Degradado: O sistema deve permitir operação mínima de diagnóstico. O comportamento exato por componente (Kernel/Studio) segue a matriz abaixo, incluindo cenário com Studio ativo e Kernel indisponível.
- Bloqueio de Escrita (R2+): Qualquer tentativa de executar comandos
write,replace,rm,mv,git commit,git pushou alterações em banco de dados deve ser abortada com um erro explícito:⛔ BLOQUEADO: Safe Mode ativo. - Serviços Disponíveis:
- Diagnóstico de sistema (
df,free,ps,ls). - Leitura de arquivos e documentação.
- Endpoints de
/healthe/status. - Streaming de logs existentes.
- Observabilidade (consulta dos logs JSONL + registro de eventos de bloqueio em Safe Mode, sem executar ações de escrita R2+).
- Sinalização no Boot (Log Mock):
```text
[BOOT] 🚀 ClawCerebro V8.2 iniciando...
[SAFE MODE] 🛡️ ALERTA: Modo de Segurança ATIVO.
[SAFE MODE] ⛔ Ações R2, R3 e R4 estão BLOQUEADAS.
[SAFE MODE] ✅ Leitura, Logs e Diagnóstico estão LIBERADOS.
[EVENT] kernel_ready | mode: safe | port: 18790
```
- Payload
/health//status(JSON):
```json
{
"status": "ok",
"mode": "safe",
"timestamp": "2026-02-26T18:00:00Z",
"restrictions": ["no_write", "no_git_push", "no_db_alter"]
}
```
4. Matriz de Componentes
| Componente | Normal | Safe Mode | Motivo |
| :--- | :--- | :--- | :--- |
| Router | Roteamento Total | Roteamento Read-Only | Evitar que agentes planejem escritas. |
| Executor R2+ | Executa e Valida | Bloqueia e Notifica | Prevenir alterações de estado. |
| Executor R3/R4 | Aprovação + Execução | Bloqueio Total | Risco inaceitável em incidente. |
| WebSocket | Bidirecional Total | Bidirecional (Log Only) | Manter dashboard vivo para diagnóstico. |
| Health Endpoints | Retorna Status | Retorna Status + Mode | Informar monitoramento externo. |
| Logs | Gravação Normal | Gravação Normal | Essencial para auditoria e diagnóstico de incidente. |
| Observabilidade | Append/Consulta JSONL | Consulta + Append de eventos de bloqueio | Registrar tentativas negadas em Safe Mode sem liberar execução R2+. |
| LLMs Integration | Chamada Total | Chamada Limitada (Analista) | IA atua apenas como consultora. |
| Aprovações (R2+) | Fluxo normal (quando existir) | Fluxo visual pode existir, mas execução permanece bloqueada | Evitar falsa sensação de liberação durante incidente. |
| Studio UI | Operação Total | Visualização/Diagnóstico | UI bloqueia botões de ação. |
5. Critérios de Aceite
- [ ] O Kernel reporta
mode: "safe"no log de boot quando--safeé passado. (sim/não) - [ ] O endpoint
/statusretorna o JSON com o campomodecorreto. (sim/não) - [ ] Tentativas de
git pushvia Skill Git-Guardian retornam erro de Safe Mode. (sim/não) - [ ] Tentativas de
rmvia DevOps Agent retornam erro de Safe Mode. (sim/não) - [ ] A flag
--safeanulaCEREBRO_SAFE_MODE=false. (sim/não) - [ ] O Studio UI exibe um banner visual de "SAFE MODE" no topo. (sim/não)
6. Testes Planejados
- Ativação Env: Setar
CEREBRO_SAFE_MODE=truee validar log de boot. - Ativação Flag: Rodar
node index.js --safee validar retorno de/status. - Precedência: Setar env
false+ flag--safee garantir modo seguro ativo. - Bloqueio R2+: Simular comando
replaceno router e validarError: Safe Mode. - Integridade JSON: Validar que o payload de
/healthé um JSON parseável commode: "safe".
7. Riscos e Decisões em Aberto
- Tarefas em Execução:
DECISAO EM ABERTO- Devemos matar tarefas R2+ em andamento se o modo mudar em runtime (hot-reload) ou apenas no próximo boot? - Escopo do Bloqueio:
DECISAO EM ABERTO- Bloqueamos R2 (mudanças simples) ou apenas R3/R4? (Sugestão inicial: R2+). - Studio Isolado:
DECISAO EM ABERTO- Se o Kernel estiver offline, o Studio deve subir em modo diagnóstico local e sinalizarmode: "safe"automaticamente? - Auditoria: Como registrar no
execution-observability.jsonlque um evento foi negado pelo Safe Mode (novo camporejected_by: "safe_mode").
8. Impacto Esperado no Checklist de Migração
- Bloqueador Alvo: "Modo incidente / safe mode definido" (removido somente apos implementacao + validacao em runtime).
- Evolução de Status: Item 8 (Alertas operacionais) e Item 1 (Observabilidade) ganham robustez.
- Bloqueio Remanescente: A migração ainda dependerá de "Rollback claro para R3/R4" [BK-47] e da implementação/validação de aprovações R2+ no Studio (BK a definir/confirmar no backlog).
9. Status Atual (MVP Passo 2 + Delta UX, auditado em 2026-02-26)
9.1 MVP Safe Mode (Kernel + Router + Studio)
- Status: Implementado e validado em
smokelocal (sem PM2 / sem produção). - Kernel: Ativação por
CEREBRO_SAFE_MODE=true|1e--safe(precedência da flag), sinalização de boot em Safe Mode, bloqueio de fluxos de execução (!cerebro,startExecution,execution_readyno Studio WS) e propagação de estado Safe Mode no WebSocket (init/status). - Router: Bloqueio defensivo em
checkSafety(...)para comandos R2+ com erro⛔ BLOQUEADO: Safe Mode ativoe registro de observabilidade comrejected_by: "safe_mode". - Studio API: Endpoints
GET /healtheGET /statusretornandomode,restrictionse payloadsafeMode;/healthzmantido compatível. - Testes/Evidências: Suite do Kernel verde (
6 suites,50 testes) esmokelocal do Studio commode: "safe"confirmado em/healthe/status.
9.2 Delta de UX do Studio (acabamento)
- Arquivo alterado (delta):
studio/server.js(sem alteração de lógica do Kernel neste delta). - Banner SAFE MODE: Implementado no topo do Studio com maior visibilidade e texto de estado/ restrições.
- Ações bloqueadas (UI):
Execução pronta,Executar Plano ColadoeAprovar (marcar OK)ficam desabilitadas/bloqueadas em Safe Mode, com feedback claro viatoaste/ou status da página. - Consumo de estado: Studio usa estado vindo do Kernel (WS
init/status) com fallback por env local para Safe Mode.
9.3 Observações de Precisão (auditoria)
- As restrições no banner são exibidas como texto/lista inline (não chips visuais individuais).
- O motivo do bloqueio é exibido via toast/status e desabilitação de controles; não há
tooltip/titlededicado implementado em todos os botões.
9.4 Validação R3 em Produção (domínio real, temporária + rollback)
- Status: Validado em produção controlada no domínio
https://cerebro.seuimovel.rio.br/com ativação temporária via PM2 (--update-env) e rollback na mesma sessão. - Ativação temporária:
CEREBRO_SAFE_MODE=true pm2 restart cerebro-kernel --update-envseguido deCEREBRO_SAFE_MODE=true pm2 restart cerebro-studio --update-env. - Evidência de runtime em Safe Mode:
/statuse/healthretornandomode: "safe"comrestrictionspreenchido; banner SAFE MODE visível no Studio (validação manual); bloqueio manual confirmado ao tentar selecionar Execução pronta no Terminal (toast/feedback de bloqueio). - Rollback temporário:
CEREBRO_SAFE_MODE=false pm2 restart ... --update-envem Kernel + Studio, com/statusretornandomode: "normal"após reinício. - Observação operacional: ocorreu
502 Bad Gatewaytransitório durante a janela de restart (curl executado imediatamente após reiniciar), sem persistência; PM2 e endpoints estabilizaram em seguida. - Pendências de validação funcional complementar (não bloqueiam a conclusão do R3):
- teste manual do botão Executar Plano Colado em Safe Mode;
- teste do botão Aprovar (marcar OK) em página de BK com fixture/backlog disponível (nesta sessão o ambiente retornou "BACKLOG.md não encontrado").
Documento gerado em 26/02/2026 para BK-45 Fase 1.