O que é este formulário
O formulário de atualização YAML é uma ferramenta para que cada equipe de serviço
possa revisar o contrato planejado da API TV 3.0 e indicar, rota por rota,
o que deve ser mantido, removido ou corrigido no arquivo
api-gateway-tv30.yaml.
O formulário é gerado automaticamente pelo Baliza a partir do último ciclo de comparação entre o YAML planejado e os swaggers implementados. Todas as rotas já estão pré-carregadas — a equipe só precisa marcar a ação proposta para cada uma e exportar o resultado.
Fluxo de trabalho
- Abra o arquivo
baliza-form-run7.htmlno navegador (duplo clique). - Use a aba do seu serviço (topo da página) para ver apenas suas rotas.
- Para cada rota, selecione a ação proposta e preencha a justificativa.
- Clique em ↓ JSON ou ↓ CSV para baixar o arquivo de resposta.
- Envie o arquivo baixado para o arquiteto de API (Carlos Eduardo) via WhatsApp ou Mattermost.
Abas de serviço
No topo do formulário há abas, uma por serviço. Clique na aba do seu serviço para ver apenas as rotas que lhe dizem respeito. A aba Todas exibe o conjunto completo (241 rotas únicas).
| Aba | Serviço / Módulo |
|---|---|
| Meta 4 · CHAT | Chat API e Chat CMS |
| Meta 4 · DEB | Debates CMS |
| Meta 4 · PERG | Questions (Perguntas) |
| Meta 4 · ENQ | Enquetes (Polls API + Votes) |
| Meta 9 · CMS-MAM | VOD / CMS-MAM |
| Meta 4 · NOTIF | Notificações |
| Meta 3 · PU | Usuários |
| Meta 10 · REC | Recomendações |
Filtros e busca
Filtros por categoria
Ao lado das abas há botões de filtro rápido:
| Filtro | O que exibe |
|---|---|
| Todas | Todas as rotas do serviço selecionado |
| Só planejado | Rotas que existem no YAML mas não foram encontradas nos swaggers implementados — as mais importantes para revisar |
| Divergente | Rotas presentes em ambos os lados mas com diferenças (schema, parâmetros, etc.) |
| Só impl. | Rotas implementadas que não estão no YAML planejado |
| Igual | Rotas sem divergência — YAML e implementação coincidem |
| Cosmético | Diferenças de documentação (descrições, exemplos) sem impacto funcional |
Campo de busca
O campo Filtrar por path... filtra as rotas visíveis por texto
no método ou no caminho. Exemplos: digitar rooms mostra só rotas
com /rooms; digitar delete mostra só rotas DELETE.
Categorias de rota
Cada rota exibe um badge colorido indicando sua situação atual no Baliza:
Campos por rota
Cada linha da tabela representa uma rota e tem quatro campos editáveis:
/api/v1/polls/{id}
— não editável, informativo
Campo "Rota equivalente"
Só é habilitado quando a ação é "↪ Implementado em outra rota".
Use o formato MÉTODO /caminho/completo, por exemplo:
PATCH /cms/v1/debates/sessions/{sessionId}/status.
Quando a ação for outra, o campo fica desabilitado e cinza — ignore-o.
Campo "Justificativa"
Texto livre. Explique brevemente o motivo da decisão. Uma frase é suficiente. Exemplos:
- "Moderação é assíncrona via Kafka; endpoint HTTP quebraria separação de responsabilidades."
- "GET já retornado no detalhe do canal; rota separada é redundante."
- "Rota nova ainda não implementada — schema em definição."
Ações disponíveis
Selecione a ação que melhor descreve o que deve acontecer com cada rota no YAML:
GET /cms/v1/cms/channels/{id}já cobre o dado desta rotaPATCH /cms/v1/cms/channels/{id}/statussubstitui PUT nesta URL
Barra de progresso
No canto superior direito há um contador X / Y avaliados com uma barra de progresso. Conta quantas rotas já têm uma ação selecionada (qualquer opção diferente de pendente). A barra considera todas as rotas, não apenas as do filtro ativo.
Exportar JSON / CSV
No canto superior direito há dois botões de exportação. Ambos geram um arquivo com todas as rotas (incluindo pendentes), independente do filtro ativo.
Botão ↓ JSON (recomendado)
Gera baliza-yaml-proposals-run7.json com a estrutura:
{
"meta": {
"run_id": 7,
"total": 241
},
"proposals": [
{
"service": "Meta 4 · CHAT",
"method": "DELETE",
"path": "/rooms/{roomId}/moderation/queue",
"category": "so_planejado",
"breaking": false,
"action": "decisao_arquitetural",
"equivalent_route": "",
"justification": "Moderação assíncrona via Kafka",
"priority": "alta"
},
...
]
}
Botão ↓ CSV
Gera baliza-yaml-proposals-run7.csv com as mesmas colunas, compatível com
Excel e Google Sheets. Útil para revisão offline em planilha.
Importar resposta anterior
O botão ↑ Importar permite carregar um JSON exportado anteriormente (por você ou por outra pessoa) para continuar o preenchimento ou consolidar respostas.
Ao importar, os campos preenchidos no JSON são aplicados às rotas correspondentes. Rotas já preenchidas no navegador são sobrescritas pelos valores do JSON importado. Rotas sem correspondência no arquivo são ignoradas.
Como enviar
baliza-proposals-<seu-serviço>.json para facilitar a identificação. Ex: baliza-proposals-chat.json.- Quantas rotas foram avaliadas
- Se há alguma rota ainda pendente e qual o motivo
- Se há alguma rota que requer discussão antes da atualização do YAML
[DÚVIDA] — ex: "[DÚVIDA] Não sei se esta rota foi descartada ou migrada."
O arquiteto vai consolidar e responder antes de aplicar as mudanças no YAML.
O que acontece depois
Após receber os JSONs de todas as equipes, o arquiteto de API irá:
- Consolidar todas as respostas em um único arquivo
- Aplicar as mudanças no
api-gateway-tv30.yamlem MRs separados por grupo de mudança - Solicitar schemas das rotas marcadas como Necessita schema
- Abrir discussão para itens marcados como [DÚVIDA] antes de agir