Cerebro Studio · Backlog · Changelog
Cerebro • /root/cerebro/docs/changelog/2026/CL-2026-04-28-BK-CORE-005-project-context-report.md • 2026-04-28T22:45:00.576Z

CL-2026-04-28-BK-CORE-005 - Project Context Report

Status: (V)

Escopo: projeto

Projetos afetados: cerebro-kernel

Aprovacao humana obrigatoria: nao

Revisor IA: Gemini + OpenCode em triagem read-only; Gemini em segunda passada tecnica

Resumo

Criada a primeira camada de observabilidade do Project Context em producao. O runtime agora gera evento leve de contexto por projeto, e o kernel ganhou um relatorio CLI para medir hit/miss, tamanho e erros antes de expandir o uso do contexto em outros fluxos.

Alteracoes

  • kernel/router.js passou a gravar evento project_context no execution-observability.jsonl quando uma chamada LLM recebe projectId com o contexto habilitado.
  • callLLMWithAutoFallback propaga taskId para correlacionar o evento de contexto com a chamada LLM.
  • Criado kernel/scripts/project-context-report.js.
  • Adicionado script npm run context:report.
  • Criada suite kernel/tests/unit/project-context-report.test.js.
  • kernel/tests/unit/project-context-runtime.test.js passou a usar DB temporario por teste, removendo dependencia acidental do banco persistente de producao.

Guardrails

  • O log nao registra query textual.
  • O log nao registra conteudo dos snippets.
  • O relatorio ignora linhas JSONL invalidas sem quebrar.
  • O report pode filtrar por projeto e janela temporal.
  • Sem API pay-per-use e sem free tier.

Validacao

Comandos executados:

```bash

node --check kernel/router.js

node --check kernel/scripts/project-context-report.js

node --check kernel/tests/unit/project-context-report.test.js

node --check kernel/tests/unit/project-context-runtime.test.js

cd kernel && npm test -- --runInBand tests/unit/project-context-report.test.js tests/unit/project-context-runtime.test.js

cd kernel && npm run context:report

```

Resultado observado:

  • sintaxe OK nos arquivos JS tocados/adicionados;
  • Jest verde com 23 suites e 160 testes;
  • context:report retornou relatorio vazio antes do deploy do novo evento em producao, esperado para o log historico.

Observacoes

OpenCode demorou na primeira leitura, mas retornou recomendando a opcao de monitoramento. Gemini confirmou a mesma direcao e reforcou privacidade, schema resiliente e nao persistencia de snippets/query. A implementacao ficou restrita a metadados.