feat(plataforma): duas rotas publicas que existiam no codigo e nao no Ingress

O Ingress do plataforma nao tem catch-all, por desenho: rota publica nova
precisa ser acrescentada a mao, ou devolve 404. Duas estavam faltando, as duas
achadas por scripts/conferir_rotas_publicas.py.

/api/public/conta (P5.8) — a tela de espera depois do pagamento. Quem acabou de
pagar AINDA NAO TEM CONTA, logo nao tem token. O controlador existia
(EstadoDaContaController) e a cadeia ja liberava (permitAll), mas o Ingress
devolvia 404: a tela que existe para tranquilizar quem pagou nao respondia.

/api/public/webhooks/assinatura (P5.1) — e outra coisa do webhooks/asaas que ja
estava la: aquele avisa que uma COBRANCA de cliente foi paga e vai para o
financeiro do tenant; este avisa que alguem assinou a Athletic Map, e dispara o
provisionamento de um tenant NOVO. Contas diferentes no Asaas, servicos
diferentes aqui. Sem esta linha, alguem assinaria, pagaria, e nenhum tenant
seria criado — sem erro em lugar nenhum do nosso lado.
This commit is contained in:
deploy
2026-09-22 14:56:43 +00:00
parent a6d1f36d67
commit 2a4b387e37
+31
View File
@@ -72,6 +72,37 @@ spec:
# reordene sem perceber.
- { path: /api/public/leads, pathType: Prefix, backend: { service: { name: servico-captacao, port: { number: 80 } } } }
# PUBLICA — a tela de espera depois do pagamento (P5.8). Quem acabou de
# pagar AINDA NAO TEM CONTA, logo nao tem token: se esta rota exigisse
# um, a tela que existe para tranquilizar quem pagou seria a primeira a
# recusa-lo.
#
# O que ela entrega e deliberadamente pouco: se a conta ficou pronta e
# o endereco do tenant. Nem nome, nem e-mail, nem plano, nem realm — o
# id da assinatura na URL e a unica "credencial" da tela, e ha teste
# guardando esse limite. Acrescentar um campo aqui e acrescentar o que
# um link vazado entrega.
#
# Estava PREPARADA e nao publicada desde 2026-09-19: o controlador
# existe (`EstadoDaContaController`) e a cadeia ja a liberava
# (`SecurityConfig`, permitAll), mas sem esta linha o Ingress devolvia
# 404 — nao ha catch-all aqui, por desenho.
- { path: /api/public/conta, pathType: Prefix, backend: { service: { name: servico-captacao, port: { number: 80 } } } }
# PUBLICA — o aviso de ASSINATURA do Asaas (P5.1), que e outra coisa do
# `/api/public/webhooks/asaas` logo abaixo: aquele avisa que uma COBRANCA
# de cliente foi paga e vai para o financeiro do tenant; este avisa que
# alguem assinou a Athletic Map, e e o que dispara o provisionamento de
# um tenant NOVO. Contas diferentes no Asaas, servicos diferentes aqui.
#
# Chega da internet sem token nosso; quem autentica e o
# `PLATAFORMA_WEBHOOK_TOKEN`, conferido no `WebhookDeAssinatura`. Sem o
# segredo selado, o endpoint RECUSA tudo de proposito, e o log diz isso.
#
# Sem esta linha o Ingress devolvia 404: alguem assinaria, pagaria, e
# nenhum tenant seria criado — sem erro em lugar nenhum do nosso lado.
- { path: /api/public/webhooks/assinatura, pathType: Prefix, backend: { service: { name: servico-captacao, port: { number: 80 } } } }
# PUBLICA — o aviso de pagamento do Asaas, que chega da internet sem
# token nenhum (P3.3). NAO casa com /api/financeiro: o controlador
# atende em /api/public/webhooks/asaas, e como aqui nao ha catch-all,