Commit Graph

133 Commits

Author SHA1 Message Date
ATM Platform 97e0aeecd4 feat(P0.9): fase issuer - o issuer passa para athleticmap.com 2026-09-23 12:30:41 +00:00
ATM Platform eeda1e90da Revert "feat(P0.9): fase issuer - o issuer passa para athleticmap.com"
This reverts commit f4747712ad.
2026-09-23 12:22:02 +00:00
ATM Platform f4747712ad feat(P0.9): fase issuer - o issuer passa para athleticmap.com 2026-09-23 12:21:47 +00:00
ATM Platform 5e1bf3a00b feat(P0.9): fase realm - o realm passa a aceitar os dois dominios 2026-09-23 12:14:17 +00:00
deploy 440ade90f5 feat(P0.9): fase HOSTS — os cinco tenants passam a atender os DOIS dominios
Aditiva de proposito: nenhum endereco antigo sai. Quem esta usando
<tenant>.athleticmap.influxdigital.com.br continua entrando, e o cert-manager
passa a emitir tambem o certificado de <tenant>.athleticmap.com.

Foi possivel porque o dono criou o curinga hoje: *.athleticmap.com resolve para
187.77.37.184, conferido com um nome ALEATORIO — demo. ou www. responderiam
mesmo sem curinga, e a conferencia passaria por engano.

9 arquivos, 28 trocas, 317 insercoes e 4 remocoes. As 4 sao as linhas de TLS em
fluxo, reescritas com os dois dominios na mesma lista.

Cada regra de Ingress foi DUPLICADA com os mesmos paths, e nao trocada: uma
regra com host: X so atende X.

`platform/` (ArgoCD e Grafana) fica FORA: mexer no Ingress do ArgoCD no meio de
uma migracao de dominio e perder o instrumento de rollback.

Conferido antes de aplicar: YAML valido em todos os Ingress, e ZERO host sem
entrada de TLS.

O que NAO muda aqui: ATM_ISSUER, ATM_KC_URL e as URLs do Garmin. Ninguem e
deslogado nesta fase.
2026-09-23 11:35:48 +00:00
deploy 4c338c0eda feat(piloto,acme,escolinha): o Ingress simplificado, como no demo (P4.6)
Mesma mudanca do commit anterior, agora nos tres restantes. O demo foi primeiro
e ficou conferido de fora: os 13 contextos em 200, /bff em 200, /inicio e
/lp-escolinhas em 200, e — o que mais importava — /api/nao-mapeado continua
devolvendo 401, como antes. O comportamento visivel nao mudou.

Catorze linhas saem de cada um. O destino do /api passa de backend (o legado)
para frontend-spa; a decisao "401 ou 404" segue aberta e intacta.
2026-09-22 19:54:40 +00:00
deploy 1dda8d518d fix(tenants): o webhook de PAGAMENTO do Asaas morria no BFF
O arquivo 96-ingress-garmin-public.yaml foi criado para o callback do Garmin e
leva TODO o /api/public para o servico-bff. O BFF relaya o Garmin de proposito
(GarminBffController), mas NAO tem controlador para /api/public/webhooks/asaas —
so o financeiro tem (WebhookAsaasController).

Resultado nos quatro tenants: o aviso de pagamento do Asaas chegava ao BFF e
parava ali. O sintoma seria o pior possivel — a cobranca e paga e NUNCA baixada,
sem erro nenhum do nosso lado; o provedor so registra uma entrega recusada.

Esta dormente hoje porque nenhum dos quatro tem asaas-credentials (cada cliente
traz a propria chave, decisao de 19/09). Passaria a morder no primeiro cliente
que ligasse a cobranca — e o diagnostico comecaria pelo lado errado, olhando o
financeiro, que nunca recebeu nada.

O Traefik ordena por TAMANHO do prefixo, entao a rota nova vence a generica
sozinha; fica escrita primeiro mesmo assim, para ninguem reordenar sem perceber.

Achado a partir do scripts/conferir_rotas_publicas.py, que acusou o piloto. A
acusacao estava certa no problema e errada no alcance: ele le a copia PARCIAL do
monorepo, que nao tem o Ingress de nenhum dos quatro, e concluiu sobre um.
Medido no cluster, os quatro eram identicos e os quatro estavam quebrados.
2026-09-22 15:02:05 +00:00
deploy a6d1f36d67 fix(tenants): o roteamento interno do nginx precisa de FQDN, e nunca funcionou
Ao conferir o P4.6, o nginx do frontend devolveu 502 em TODOS os caminhos
internos, inclusive /bff. O log diz o porque:

    servico-bff could not be resolved (3: Host not found)
    runtime-saude could not be resolved (3: Host not found)

O "resolver" do nginx NAO aplica os "search" do /etc/resolv.conf: ele consulta o
nome exatamente como esta escrito. O comando "getent hosts servico-bff", de
dentro do MESMO pod, resolve — porque usa o resolv.conf, que tem
"search escolinha-prod.svc.cluster.local ...". O nginx nao usa.

Isso e PREEXISTENTE e estava invisivel: o Ingress roteia /bff e as treze linhas
de /api/<contexto> direto para os Services, entao o nginx nunca foi exercitado
nesses caminhos. Quem removesse as linhas do Ingress — que e exatamente o que
P4.6 quer — derrubaria os treze contextos E o /bff de uma vez, com 502 e nenhuma
pista no Ingress para explicar.

As cinco variaveis passam a usar FQDN. Conferido depois, batendo no nginx por
dentro (sem passar pelo Ingress): os 13 contextos respondem 200, e o /bff
tambem. De fora, os quatro tenants seguem em 200 — nada regrediu.
2026-09-22 13:53:06 +00:00
deploy 6dd1fbc24e feat(tenants): o roteamento interno do nginx, por grupo de contextos (P4.6)
As tres variaveis estavam VAZIAS nos quatro tenants, e render-config.sh faz toda
ausente cair em ATM_API_URL, que cai em http://servico-bff. O nginx mandaria
/api/cadastro para o BFF, que responde 401 em vez da resposta do contexto.

Nada quebrava porque o INGRESS atende antes, com uma linha por contexto — e sao
justamente essas linhas que P4.6 quer remover. Sem isto, remove-las quebraria os
treze caminhos de uma vez.

Aditivo: enquanto o Ingress existir, o trafego nem chega a este nginx.
2026-09-22 13:49:10 +00:00
deploy 2a7292455d feat(escolinha): BFF e frontend novos (P4.3-P4.9) 2026-09-22 12:28:46 +00:00
deploy 63889b64f9 feat(escolinha): contextos do runtime-saude passam a responder por ele (P4.3-P4.9) 2026-09-22 12:27:55 +00:00
deploy ea6c08797e feat(escolinha): runtime-saude no ar (P4.3-P4.9) 2026-09-22 12:27:52 +00:00
deploy 0ca5a3bdfa feat(escolinha): contextos do runtime-operacao passam a responder por ele (P4.3-P4.9) 2026-09-22 12:26:49 +00:00
deploy 492acaf0fa feat(escolinha): runtime-operacao no ar (P4.3-P4.9) 2026-09-22 12:26:47 +00:00
deploy 1343b52278 feat(escolinha): contextos do runtime-core passam a responder por ele (P4.3-P4.9) 2026-09-22 12:26:19 +00:00
deploy ccd98c252c feat(escolinha): runtimes consolidados ao lado dos servicos (P4.3-P4.9) 2026-09-22 12:25:30 +00:00
deploy a2d8644595 chore(tenants): frontend-spa:2.67-csp-script 2026-09-22 12:17:44 +00:00
deploy a67efba9de fix(tenants): ATM_PLANO=institucional (sem ele a barreira cai em bronze e os modulos pagos dao 403) 2026-09-22 11:06:09 +00:00
deploy 22412c40aa feat(backup): envio para fora do servidor (atm-pg-backup:1.2 com rclone) 2026-09-22 01:57:55 +00:00
deploy ac40b21768 chore(tenants): frontend-spa:2.66-lp-css 2026-09-22 01:41:27 +00:00
deploy 69db0586f9 fix(tenants): ATM_PLANO=institucional (sem ele a barreira cai em bronze e os modulos pagos dao 403) 2026-09-21 21:37:08 +00:00
deploy 1ed00120c0 feat(plataforma,tenants): coleta de metricas e permissao do provisionamento 2026-09-21 02:30:31 +00:00
deploy a93c2cb179 feat(escolinha): frontend 2.62-captacao 2026-09-15 16:26:37 +00:00
deploy 7218876f31 feat(escolinha): liberacao medica, cartao de elenco e hub 2026-09-09 01:31:19 +00:00
deploy d7fd92d33f feat(escolinha): liberacao medica para treino 2026-09-09 01:29:05 +00:00
deploy 2959e77053 feat(escolinha): roteiro com biblioteca e anexos com miniatura 2026-09-09 00:47:11 +00:00
deploy 840e2de5c2 feat(escolinha): bff repassa a biblioteca de atividades 2026-09-09 00:44:54 +00:00
deploy f707f0519a feat(escolinha): biblioteca de atividades 2026-09-09 00:43:23 +00:00
deploy 84a48811ad feat(escolinha): cartoes de elenco, turma e atleta 2026-09-08 23:49:28 +00:00
deploy 17d6165d38 feat(escolinha): cartoes de elenco, turma e atleta 2026-09-08 23:43:51 +00:00
deploy 22d8fd56f2 feat(escolinha): cartoes de elenco, turma e atleta 2026-09-08 23:36:54 +00:00
deploy 22a8e5843b feat(escolinha): cartoes de elenco, turma e atleta 2026-09-08 23:07:28 +00:00
deploy 1ae59583af feat(escolinha): cartoes de elenco, turma e atleta 2026-09-08 22:59:49 +00:00
deploy b5a10865ae feat(escolinha): cartoes de elenco, turma e atleta 2026-09-08 22:54:25 +00:00
deploy 034e528a48 feat(escolinha): cartoes de elenco, turma e atleta 2026-09-08 22:43:03 +00:00
deploy 21cd5c69d6 feat(escolinha): cartoes de elenco, turma e atleta 2026-09-08 22:35:24 +00:00
deploy 2efa238dd4 feat(escolinha): cartoes de elenco, turma e atleta 2026-09-08 22:29:29 +00:00
deploy 467b506805 feat(escolinha): cartoes de elenco, turma e atleta 2026-09-08 22:03:59 +00:00
deploy 436dd8bad2 feat(escolinha): cartoes de elenco, turma e atleta 2026-09-08 22:01:49 +00:00
deploy 40a7bdfda8 feat(escolinha): bff repassa os filtros de elenco e turma 2026-09-08 21:59:36 +00:00
deploy 272ce97554 feat(escolinha): categoria por faixa de nascimento 2026-09-08 21:58:08 +00:00
deploy 904d922057 feat(escolinha): cartoes de elenco, turma e atleta 2026-09-08 21:27:25 +00:00
deploy aff696348f feat(escolinha): bff repassa os filtros de elenco e turma 2026-09-08 21:23:12 +00:00
deploy 39126d2337 feat(escolinha): elenco e turma com escudo e filtros 2026-09-08 21:20:46 +00:00
deploy edd3c53682 feat(escolinha): posicao do atleta e filtros de lista 2026-09-08 21:17:48 +00:00
deploy e8e90df23f feat(escolinha): categoria por faixa de nascimento 2026-09-08 21:13:36 +00:00
deploy 443830a35e feat(escolinha): toda tabela abre com 5 linhas 2026-09-03 20:22:44 +00:00
deploy c76e08db65 feat(escolinha): acoes da linha com alvo para o dedo 2026-09-03 20:06:18 +00:00
deploy 023733b593 feat(escolinha): a tela em caixa diz o proprio nome 2026-09-03 19:54:58 +00:00
deploy 635a2f951f feat(escolinha): nascimento, idade e sexo na lista de atletas 2026-09-03 19:45:44 +00:00