Cerebro Studio · Backlog · Changelog
Cerebro • /root/cerebro/docs/changelog/2026/CL-2026-05-03-BK-56-daily-standup.md • 2026-05-03T12:16:53.000Z

CL-2026-05-03-BK-56-daily-standup

Escopo

  • Projeto: cerebro-kernel
  • Projetos afetados: cerebro-kernel, cerebro-studio
  • Aprovacao humana necessaria: nao

Contexto

O heartbeat read-only ja mostrava saude instantanea do ambiente, mas ainda faltava uma camada diaria que resumisse as runs do orquestrador com linguagem operacional curta: o que rodou no dia, se houve bloqueios e qual o proximo passo mais objetivo.

Entrega

Componentes criados

| Arquivo | Descricao |

|---------|-----------|

| kernel/daily_standup.js | Agregador read-only do standup diario com fonte primaria em orchestrator.db, fallback em meta.env, heuristica de bloqueios e render humano |

| kernel/scripts/daily_standup.js | CLI com modos stdout humano, --json e --write |

| kernel/tests/unit/daily-standup.test.js | Suite cobrindo resumo via banco, fallback sem banco e escrita do relatorio |

Componentes ajustados

| Arquivo | Descricao |

|---------|-----------|

| kernel/heartbeat_readonly.js | Passou a anexar daily_standup ao snapshot e a emitir alerta daily_standup_blocker quando houver erro objetivo no dia |

| kernel/package.json | Ganhou os scripts standup:daily, standup:daily:json e standup:daily:write |

Comportamento novo

  1. O standup consolida a data operacional no timezone da VPS (America/Sao_Paulo por default).
  2. Runs presentes no banco mas sem run_targets ainda aparecem como exploracao/planejamento quando forem dry-run.
  3. Runs recentes ainda fora do banco entram por fallback em docs/runs/*/meta.env, evitando sumir do resumo.
  4. O modo --write gera um markdown em docs/runs/standups/YYYY-MM-DD.md.
  5. O heartbeat_readonly agora expose daily_standup para consumo da API/Studio sem depender de endpoint novo.

Validacao

  • node --check kernel/daily_standup.js
  • node --check kernel/scripts/daily_standup.js
  • node --check kernel/heartbeat_readonly.js
  • npm --prefix kernel test -- --runInBand tests/unit/daily-standup.test.js tests/unit/heartbeat-readonly.test.js
  • npm --prefix kernel run standup:daily -- --date 2026-05-02
  • npm --prefix kernel run standup:daily:json -- --date 2026-05-02
  • npm --prefix kernel run standup:daily:write -- --date 2026-05-02
  • smoke local com heartbeat_readonly.buildHeartbeatSnapshot() confirmando daily_standup.date=2026-05-03

Evidencias objetivas

  • O standup manual de 2026-05-02 encontrou 3 dry-runs (bk47-rollback-smoke*), 0 falhas e 1 proximo passo: promover ou arquivar a exploracao.
  • O arquivo /root/cerebro/docs/runs/standups/2026-05-02.md foi escrito com sucesso pelo script.
  • O heartbeat local do dia atual retornou headline = "Sem runs registradas em 2026-05-03.", sem gerar alerta falso de blocker.

Limites e follow-up natural

  • O BK fecha a camada CLI/API read-only do standup diario, mas nao agenda execucao automatica por cron.
  • O proximo passo natural e consumir snapshot.daily_standup na UI do Studio ou plugar agendamento controlado quando a frente de autonomia justificar.