Backlog Unificado
Projeto: Cerebro. Fonte principal: /root/cerebro/docs/BACKLOG.md.
- 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+).
- 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-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-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)
- BK-45
- BK-47
- BK-56
- BK-57
- BK-58
- BK-64
- BK-69
- BK-124
- BK-125
- BK-126
- BK-127
- BK-129
- BK-142
- BK-143
- BK-144
- BK-145
- BK-146
- BK-152
- BK-156
- BK-157
- BK-158
- BK-170
- BK-190
- BK-191
- BK-192
- BK-193
- BK-194
- BK-195
- BK-198
- BK-199
- BK-200
Detalhe do BK Selecionado
BK-157 · Superfície única de visibilidade/orquestração Studio + OpenGravity + CLI
Criado em: 2026-03-19
Escopo: cerebro / studio / OpenGravity
Responsável: codex
Prioridade: média
Status: CONCLUÍDO em 2026-04-09
1. Problema
Hoje a coordenação real dos agentes/programadores ainda depende de copy/paste manual entre chat, terminal, Studio e OpenGravity.
Na prática isso gera:
- perda de contexto sobre quem está fazendo o quê;
- dificuldade para saber qual prompt ainda está "em andamento" e qual já respondeu;
- risco de enviar novo prompt para a mesma frente antes da resposta anterior;
- dificuldade para enxergar ownership, branch, repo, locks e estado de fechamento;
- baixa visibilidade do trabalho que já está rodando fora desta conversa.
O objetivo deste BK é abrir a trilha para uma superfície única, operacional e confiável, onde seja possível acompanhar os agentes/programadores sem depender de retransmissão manual pelo operador humano.
2. Resultado esperado
Ter uma superfície única de acompanhamento, preferencialmente via Studio e/ou OpenGravity, capaz de mostrar pelo menos:
- agente/programador;
- função atual;
- repositório alvo;
- BK ativo;
- branch atual;
- arquivos tocados;
- heartbeat/presença;
- status da frente (
ativo,aguardando resposta,pronto para revisão,pronto para fechamento,bloqueado); - locks relacionados;
- pendências de fechamento/governança.
3. Tese de implementação
Não começar por automação total de fechamento nem por "agent fleet" visual bonito. O primeiro ganho real é observabilidade operacional unificada.
Tese:
- reaproveitar o que já existe;
- consolidar metadados de presença/execução;
- exibir isso em uma superfície única;
- só depois pensar em ações operacionais de fechamento ou despacho.
Base já existente para reaproveitar:
tools/cli_session_presence.shdocs/ORQUESTRACAO_MULTI_CLI.md- runtime do Studio
- estado/health do Cérebro
- módulo
OpenGravity docs/LOCK.mddocs/BACKLOG.md
4. Decisão de Arquitetura (2026-04-09)
4.1 Superfície Principal
O Studio é a superfície principal. O OpenGravity é um módulo complementar.
Justificativa:
- O Studio já oferece interface HTTP acessível (porta 9903), WebSocket para eventos em tempo real, histórico de sessões persistido, e integração nativa com o kernel do Cérebro.
- O OpenGravity, embora seja um agente completo (bot, memória, ferramentas), opera como fonte de eventos e não como superfície de visibilidade consolidada.
- A CLI (
tools/cli_orchestrator.sh,tools/cli_session_presence.sh) permanece como infraestrutura de execução, mas a visualização centralizada deve residir no Studio.
4.2 Fontes de Estado
| Fonte | Tipo | Conteúdo | Como consumir |
|-------|------|----------|----------------|
| tools/cli_session_presence.sh | Arquivo + WS | agent, function, repo, BK, branch, status, heartbeat, timestamp | Script de registro + consumo via studio_ws events |
| docs/LOCK.md | Arquivo markdown | caminho_repo, BK, responsavel, status, observacao | Parse do quadro canonico |
| docs/BACKLOG.md | Arquivo markdown | Itens de backlog vivo e status | Parse do indice central |
| kernel/observability.js | Runtime JS | Eventos de LLM (llm_start, llm_attempt, llm_finish, llm_fail) | Consumir via observability-summary.js |
| studio/server.js | Runtime HTTP/WS | Sessões ativas, histórico, health | API REST + WS events |
| OpenGravity | Módulo externo | Eventos de agente (via Telegram ou arquivo) | Consumir como fonte de eventos, não como superfície |
4.3 Contrato Mínimo de Eventos
Para o painel read-only, o Studio deve expor:
```json
{
"type": "orchestration_state",
"timestamp": "2026-04-09T18:50:00Z",
"agents": [
{
"id": "codex",
"function": "documentacao",
"repo": "cerebro",
"bk": "BK-157",
"branch": "vps/BK-157-studio-opengravity-orchestration-visibility",
"status": "ativo",
"files": ["docs/LOCK.md", "docs/BACKLOG.md"],
"heartbeat": "2026-04-09T18:49:00Z"
}
],
"locks": [...],
"backlog_pending": [...]
}
```
Este contrato pode ser consumido via:
studio_wseventorchestration_state(push)GET /api/orchestration/state(pull, para dashboard read-only)
5. MVP Read-Only (2026-04-09)
O MVP read-only já existe parcialmente no Studio:
5.1 O que já existe
- Aba Locks no Studio (
/locks) — quadro canonico de locks com status. - Aba Backlog no Studio (
/backlog) — indice de backlogs com status. - Aba Changelog no Studio (
/changelog) — indice de entregas. - Observabilidade (
/observabilidade) — eventos de LLM, métricas, status. - Terminal com histórico de sessões — sessão ativa, engine, histórico.
5.2 O que falta (próximos passos)
- Painel unificado de "agentes ativos" consolidando
cli_session_presence+ locks + backlog. - Exibição de heartbeat/presença em tempo real.
- Alertas visuais de conflito (dois agents no mesmo arquivo, branch divergente da main, etc.).
- Integração do OpenGravity como fonte de eventos no mesmo painel.
6. Próximos Passos (follow-ups)
| ID | Descrição | Dependência | Prioridade |
|----|-----------|--------------|------------|
| OG-01 | Painel unificado de agentes ativos no Studio (read-only) | BK-157 (este) | alta |
| OG-02 | Exibir heartbeat/presença em tempo real | OG-01 | média |
| OG-03 | Alertas visuais de conflito (locks, branch drift) | OG-01 | média |
| OG-04 | Integrar eventos do OpenGravity como fonte no painel | BK-157 + BK-114 | baixa |
| OG-05 | API /api/orchestration/state para consumo externo | OG-01 | baixa |
7. Critérios de Aceite (cumpridos em 2026-04-09)
- [x] Artefato técnico de arquitetura criado (
docs/architecture/BK-157-STUDIO-OPENGRAVITY-CLI-MVP.md). - [x] Fontes de estado mapeadas e documentadas.
- [x] Contrato mínimo de eventos definido.
- [x] MVP read-only explicitado (o que já existe no Studio, o que falta).
- [x] Decisão explícita: Studio é a superfície principal, OpenGravity é módulo complementar.
- [x] Próximos passos identificados em follow-ups.
8. Path List (lock-files)
```
/root/cerebro/docs/LOCK.md
/root/cerebro/docs/BACKLOG.md
/root/cerebro/docs/CHANGELOG.md
/root/cerebro/docs/architecture/BK-157-STUDIO-OPENGRAVITY-CLI-MVP.md
/root/cerebro/docs/changelog/2026/CL-2026-04-09-BK-157.md
/root/cerebro/docs/backlog/BK-157-studio-opengravity-orchestration-visibility.md
```
9. Referências
/root/cerebro/docs/ORQUESTRACAO_MULTI_CLI.md/root/cerebro/docs/BACKLOG.md/root/cerebro/docs/LOCK.md/root/cerebro/OpenGravity//root/cerebro/studio//root/cerebro/kernel/observability.js/root/cerebro/tools/cli_session_presence.sh