Cerebro Studio · Backlog · Changelog
RioNoTeatro • /www/wwwroot/rionoteatro.com.br/docs/BACKLOG.md
Abrir Studio Projeto externo em modo read-only; encaminhamento permitido, escrita bloqueada.

Backlog Unificado

Projeto: RioNoTeatro. Fonte principal: /www/wwwroot/rionoteatro.com.br/docs/BACKLOG.md.

Modo read-only: ações de escrita ficam disponíveis apenas para o Cérebro.

Sem itens pendentes em /www/wwwroot/rionoteatro.com.br/docs/BACKLOG.md.

Especificações Disponíveis (fora da fila pendente)

Detalhe do BK Selecionado

/www/wwwroot/rionoteatro.com.br/docs/backlog/BK-252-bot-identidade-origem-consistencia.md • 2026-04-10T20:56:03.546Z

BK-252 - Consistência entre origem='bot' e BOT_PRODUTOR_ID

Objetivo

  • Registrar a duplicidade conceitual atual do BOT no Rio no Teatro.
  • Definir a regra de consistência para evitar drift entre origem='bot' e o produtor técnico bot@rionoteatro.com.br.
  • Disponibilizar um auditor seguro antes de qualquer migração ampla.

Contexto

Hoje o sistema usa dois marcadores para o mesmo agente:

  • marcador semântico de negócio:
  • pecas.origem = 'bot'
  • identidade técnica legada:
  • pecas.id_produtor = BOT_PRODUTOR_ID
  • cliente técnico bot@rionoteatro.com.br

Isso não significa “dois bots diferentes”. Significa uma modelagem duplicada:

  • um campo para roteamento/regra de negócio
  • um FK técnico para caber no schema legado e reaproveitar fluxos de produtor/cliente

Invariantes desejadas

  • Se origem = 'bot', então id_produtor = BOT_PRODUTOR_ID
  • Se id_produtor = BOT_PRODUTOR_ID, então origem = 'bot' ou, no máximo, vazio durante janela transitória controlada
  • Filtros de UI e relatórios não devem depender de heurísticas divergentes entre origem, id_produtor e email

Auditoria executada nesta rodada

Data: 2026-04-10

Resultado da base viva:

  • origem='bot' com id_produtor divergente: 0
  • id_produtor=BOT_PRODUTOR_ID com origem vazia: 0
  • id_produtor=BOT_PRODUTOR_ID com origem divergente não-vazia: 0
  • pecas com origem='bot': 159
  • pecas com id_produtor=BOT_PRODUTOR_ID: 159

Leitura:

  • a base viva atual está consistente
  • o risco maior hoje não está nos dados correntes, e sim nas queries e fallback híbridos espalhados pelo código

Entrega desta rodada

  • script one-shot de auditoria:
  • admin/cron/audit_bot_identity_consistency.php
  • modo padrão:
  • dry-run
  • modo opcional:
  • --apply

Reparo automático permitido pelo script:

  • origem='bot' com id_produtor divergente:
  • corrige id_produtor para BOT_PRODUTOR_ID
  • id_produtor=BOT_PRODUTOR_ID com origem vazia:
  • corrige origem='bot'

Reparo que o script NÃO força automaticamente:

  • id_produtor=BOT_PRODUTOR_ID com origem='admin' ou origem='produtor'
  • esse cenário deve ser tratado manualmente porque pode esconder regra de negócio legítima ou drift antigo

Próximo passo recomendado

  1. Centralizar uma função/condição canônica para “item BOT” nas listagens admin.
  2. Remover fallback por email='bot@...' onde a base já estiver íntegra.
  3. Deixar origem='bot' como marcador canônico de negócio.
  4. Manter BOT_PRODUTOR_ID como identidade técnica obrigatoriamente alinhada ao origem='bot'.