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-251-teatros-vinculos-legados-endereco.md • 2026-04-10T20:17:18.668Z

BK-251 - Teatros / vínculos legados por endereço incompleto

Objetivo

  • Corrigir a trilha de sugestão de teatros que promovia vínculo forte só por logradouro.
  • Preservar histórico dos vínculos legados suspeitos sem continuar induzindo o admin ao teatro errado.
  • Registrar o aprendizado operacional do scraper/matcher para futuras fontes externas.

O que entrou nesta rodada

  • bot/handlers/theater_matcher.php
  • carregamento do bairro do teatro cadastrado
  • persistência de bairro_captado e bairro_sugerido em dados_extras
  • extração mais completa de logradouro, numero e bairro
  • bloqueio de endereco_forte quando o captado não tem número e o cadastro tem número
  • admin/modulos/teatros/index.php
  • coluna Sugestão de Vínculo passou a mostrar o bairro do teatro sugerido
  • vínculos legados suspeitos recebem aviso visual e deixam de exibir o botão verde de vínculo automático
  • ação rápida para mover o item suspeito para a fila de novos
  • saneamento de base executado diretamente em bot_teatros_sugestoes
  • IDs afetados: 295, 260, 259, 251, 249, 248, 247, 246
  • ação aplicada:
  • teatro_id_sugerido = NULL
  • similaridade voltou para o score de nome
  • dados_extras preservou o vínculo legado anterior (*_legado) para auditoria
  • docs/documentacao_tecnica/BOT_CAPTADOR_EVENTOS.md
  • playbook multi-fonte Sympla/Bileto
  • fallback por campo
  • regra consolidada de matching de teatro
  • admin/cron/backfill_teatros_endereco_numero.php
  • one-shot CLI para completar teatros.endereco quando faltar número
  • alvo restrito a endereços iniciando por Av/Avenida/R/Rua
  • usa apenas links aprovados da própria memória de teatro
  • consulta Sympla BFF e Bileto event API
  • só aplica quando o logradouro bate e existe número único/coerente

Estado atual validado

  • A fila filtro=atualizados caiu para 1 item remanescente:
  • 245 | Teatro Henriqueta Brieba - Tijuca Tênis Clube
  • Os 8 itens legados suspeitos foram devolvidos para filtro=novos.
  • O histórico do vínculo antigo foi preservado em dados_extras.
  • Backfill na tabela real teatros executado em produção:
  • 24 teatros atualizados com número
  • 1 teatro permaneceu sem alteração por falta de fonte coerente:
  • 142 | T de Tattu - Estúdio de Tatuagem | Rua Farani
  • causa confirmada do #142:
  • o link aprovado em bot_teatros_sugestoes.id = 229 aponta para 3326162
  • a BFF do Sympla hoje devolve outro evento (Joker Comedy Bar, Vila Velha/ES)
  • o script pulou corretamente por divergência de logradouro
  • fechamento manual aplicado depois:
  • número confirmado externamente para Rua Farani, 8

Pendência aberta para retomar

  • Em https://rionoteatro.com.br/admin/modulos/teatros/index.php?filtro=novos, a UI precisava exibir o comparativo captado x legado sugerido sem mascarar o endereço original.
  • Descoberta operacional validada:
  • a BFF do Sympla (event-page.svc.sympla.com.br/api/event-bff/purchase/event/<id>) devolve eventsAddress.addressNum e eventsAddress.neighborhood
  • isso permitiu reidratar os legados saneados quando o logradouro da BFF batia com o logradouro salvo na quarentena
  • Reidratação executada em produção:
  • 295 -> 175 / Barra da Tijuca
  • 260 -> 253 / Botafogo
  • 259 -> 262 / Grajaú
  • 251 -> 680
  • 249 -> 680 / Copacabana
  • 248 -> 680 / Copacabana
  • 247 -> 179 / Centro
  • 246 foi mantido sem reidratação porque a BFF do link retornou logradouro divergente
  • O admin pediu explicitamente que a tela exiba os números para comparação.

Hipótese técnica atual

  • A quarentena de teatro antiga guardou só o logradouro em vários casos.
  • O fluxo futuro do bot tende a ficar correto porque theater_matcher->match() roda depois de refinarEvento(), quando o scraper já pode enriquecer o endereço com a BFF do Sympla.
  • O risco remanescente é somente legado antigo ou algum caso em que a BFF retorne venue divergente do item salvo.

Próximo passo recomendado

  1. Revisar a origem do dado do item 295 e verificar se o número correto do endereço ainda existe em alguma captura irmã.
  2. Ajustar a aba novos para exibir comparativo explícito quando vinculo_legado_suspeito = 1.
  3. Não voltar a misturar número do cadastro sugerido dentro do campo visual de Endereço Captado.