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)
- BK-136
- BK-137
- BK-138
- BK-147
- BK-148
- BK-149
- BK-150
- BK-151
- BK-156
- BK-158
- BK-159
- BK-160
- BK-161
- BK-162
- BK-163
- BK-164
- BK-165
- BK-166
- BK-170
- BK-171
- BK-172
- BK-177
- BK-183
- BK-186
- BK-187
- BK-189
- BK-190
- BK-191
- BK-192
- BK-193
- BK-195
- BK-196
- BK-197
- BK-198
- BK-199
- BK-201
- BK-205
- BK-207
- BK-208
- BK-209
- BK-210
- BK-211
- BK-212
- BK-213
- BK-214
- BK-215
- BK-216
- BK-217
- BK-218
- BK-219
- BK-220
- BK-221
- BK-229
- BK-230
- BK-231
- BK-232
- BK-233
- BK-234
- BK-235
- BK-236
- BK-239
- BK-240
- BK-241
- BK-242
- BK-243
- BK-244
- BK-245
- BK-246
- BK-248
- BK-249
- BK-250
- BK-251
- BK-252
- BK-253
- BK-254
- BK-255
- BK-256
- BK-257
- BK-258
- BK-259
- BK-260
- BK-261
- BK-262
- BK-263
- BK-264
- BK-265
- BK-266
- BK-267
- BK-268
- BK-269
- BK-270
- BK-271
- BK-272
- BK-275
- BK-276
- BK-277
- BK-278
- BK-279
- BK-280
- BK-295
- BK-313
Detalhe do BK Selecionado
/www/wwwroot/rionoteatro.com.br/docs/backlog/BK-205-threads-operacional.md • 2026-04-11T02:13:48.419Z
BK-205 - Threads operacional: credencial, video e guardrails
Objetivo
- tirar
threads_feeddo estado de token/configuracao invalida - permitir configuracao operacional real do Threads no admin
- manter o dispatcher social pre-automatico usando a infraestrutura que ja existe
- deixar claro quando o canal esta apto e quando ainda esta bloqueado por credencial externa
Estado auditado antes desta rodada
threads_feedja existe na fila social, no planner, no dispatcher e na agendaadmin/classes/FacebookEventService.phpja possui:getThreadsUserInfo()createThreadsMedia()publishThreadsMedia()admin/cron/sync_facebook_events.phpja:- detecta se Threads esta configurado
- monta fila
threads_feed - cria container e publica perto do horario due
- o ponto de bloqueio real era operacional:
config_facebooknao tinha colunas de Threadsadmin/modulos/facebook/configure.phpnao tinha campos nem fluxo de Threadsadmin/modulos/campanhas/threads_callback.phpparava nocodee nao entregava token pronto para o admin
Documentacao oficial confirmada nesta rodada
threads_basice obrigatorio para todos os endpoints do Threadsthreads_content_publishe obrigatorio para publicarthreads_manage_insightse recomendado se quisermos metricas reais do canal- fluxo oficial:
- abrir
https://threads.net/oauth/authorize - receber
code - trocar por short-lived token em
POST https://graph.threads.net/oauth/access_token - trocar por long-lived token em
GET https://graph.threads.net/access_token?grant_type=th_exchange_token - renovar em
GET /refresh_access_tokenantes de expirar
- limites oficiais confirmados:
- texto com limite de
500caracteres media_typeaceitandoTEXT,IMAGEeVIDEOimage_urlevideo_urlprecisam estar em URL publica
Escopo desta rodada
- abrir configuracao real de Threads no admin
- adicionar schema minimo para Threads em
config_facebook - permitir autorizar conta, trocar code por token e preencher os campos necessarios
- manter o write set minimo sem mexer no dispatcher ja existente
Estado apos esta rodada
- o admin ja ganhou fluxo real de configuracao de Threads em
admin/modulos/facebook/configure.php - o callback do Threads agora devolve o
codepara a tela de configuracao - o endpoint
admin/modulos/facebook/threads_token_exchange.phpja faz:
code -> short-lived tokenshort-lived -> long-lived token- leitura opcional de
id/username/namepara preencher othreads_user_id
- o schema minimo de Threads foi confirmado no banco de producao:
threads_app_idthreads_app_secretthreads_access_tokenthreads_user_idthreads_token_expires_at- o dispatcher existente ja esta apto a consumir
threads_feedquando houverthreads_access_token + threads_user_id
Arbitragem desta rodada
- leitura externa
gemini: considerou refresh automatico como melhoria operacional e nao como bloqueio imediato da rodada - leitura externa
opencode: confirmou que o cron ja processathreads_feede que o unico bloqueio real era a trilha de credencial/configuracao - arbitragem final do Codex:
- o BK desta rodada entrega a habilitacao operacional do canal
- refresh automatico do token e validacao real de video continuam como follow-up, nao como bloqueio da configuracao inicial
Write set desta rodada
admin/modulos/facebook/configure.phpadmin/modulos/facebook/config_schema.phpadmin/modulos/facebook/threads_token_exchange.phpadmin/modulos/campanhas/threads_callback.phpsql_updates/update_config_facebook_threads_columns.sql
Proximo passo esperado apos o deploy
- preencher
Threads App IDeThreads App Secret - cadastrar o redirect URI do RNT no app do Threads
- autorizar a conta do Threads do Rio no Teatro
- trocar o
codepor token long-lived no admin - salvar configuracao
- validar em execucao real um item
threads_feed - testar publicacao com video real do acervo
Pendencias que continuam abertas mesmo apos a configuracao
- validar publicacao real de video no Threads com os formatos do acervo
- melhorar leitura operacional no admin quando Threads estiver invalido/expirado
- avaliar renovacao automatica do token long-lived antes do vencimento