Garu

2026-08-16

v0.20.1 — Aceitar convite de afiliado voltou a funcionar (e a página cabe no celular)

afiliadosbugfixmobilecadastroapi

O que mudou

Aceitar convite de afiliado funciona de novo

Quem clicava em Aceitar convite no link recebido por e-mail via um erro genérico — e isso acontecia com todo mundo, desde 2025-11-17. Um import type no controller apagava o tipo do corpo da requisição em tempo de compilação; a validação global então não reconhecia campo nenhum e descartava o corpo inteiro antes de chegar ao serviço, que quebrava com 500.

O import virou import de valor (com um teste de regressão que trava se alguém reverter), a rota ganhou validação de verdade, e os links antigos — inclusive convites criados antes da validação existir, com e-mail contendo espaços — voltam a funcionar sem precisar de convite novo.

Erros que dizem a verdade

  • Convite inexistente para aquele produto e e-mail agora responde 404 com mensagem clara — antes respondia sucesso (HTTP 200) e a tela seguia adiante como se o aceite tivesse funcionado.
  • Corpo malformado responde 400 com a lista de campos, em vez de 500.
  • A página de convite mostra uma única mensagem de erro, com orientação do que fazer ("peça um novo convite a quem te indicou"), e falhas de aceite e de cadastro agora são reportadas ao nosso monitoramento — nunca mais nove meses de quebra invisível.

Layout no celular

  • A página de aceite de convite (/login/affiliate) tinha largura fixa de desktop: no celular o conteúdo e o botão ficavam fora da tela, sem scroll. Agora o cartão é fluido e o botão ocupa a largura toda.
  • A página de cadastro (/cadastro) dividia a tela meio a meio com a ilustração mesmo no celular, espremendo o formulário em ~180px. No celular a ilustração sai de cena e o formulário ocupa a tela.

Rodapé

  • O rodapé do site ganhou o link do app Garu na App Store, ao lado do GitHub.

Segurança

  • A tela de cadastro registrava no console do navegador os dados do formulário — incluindo a senha em texto puro. Não registra mais.