Pular para o conteúdo principal

2 publicações com a etiqueta "paridade-legado"

Ver todas as etiquetas

Changelog - 06/05/2026

Pós-registro & Auth — fluxo regulatório e dedup de bursts

  • Novo hook useAfterRegisterFlow (app/hooks/useAfterRegisterFlow.ts) orquestra o pós-registro: abre o modal de depósito uma vez, logo após o cadastro, bypassando o throttle de 12h do useAutoDepositModal. Replica o handleOpenRegisterStrategy → openModal('deposit') do handleSuccessRegister legado em Vue. Suporta o ramo regulatório (espera o LimitsStep do ValidationBlockerOverlay resolver antes de abrir o depósito) e suprime quando há ?deposit=<campaign> na URL, conta restrita ou featuresConfig.autoDepositAfterRegister === false.
  • Store app/store/onboarding.ts (Zustand, não persistida) carrega o sinal justRegistered + lastPrudentialLimitActive entre o sucesso do RegisterModal e o próximo render do DefaultLayout. Reset automático no logout.
  • Forward de user_prudential_limit_active no payload de signup (/bff/register-simplified, /auth/register): sinaliza ao BFF qual botão regulatório o usuário clicou ("Quero definir meus limites agora" vs "Continuar sem limites"). Nova feature flag autoDepositAfterRegister propagada nos 13 overrides de brand.
  • Dedup cross-request de /auth/user-profile em app/services/auth.server.ts: cache token-scoped com TTL de 10s + cap de 100 entradas (chave = SHA-256 hex do token, evita expor token cru em dumps de memória). Resolve o burst pós-login onde POST /api/auth/login, useAuthProfileSync → GET /api/auth/profile e revalidator.revalidate() → _layout loader pegavam três Requests distintos com o mesmo token — o WeakMap<Request> antigo não conseguia deduplicar.
  • /api/auth/profile agora consome getAuthForRequest em vez de chamar createAuthFromClient direto, herdando automaticamente o cache acima. PRs touch-up em 20+ componentes (UserSummaryHeader, ValidationContextGate, GameIframe, payments, protection, validation steps) que liam useProfile() ad-hoc.

Changelog - 22/04/2026

Tracking de Marketing / UTMs

  • Captura de UTMs agora roda server-side no root loader (app/root.tsx). Antes, a captura era apenas client-side em useEffect — UTMs se perdiam quando um loader fazia redirect(...) antes do hydrate. Ex: landing /?utm_source=X&ref=AFIL1 que dispara redirect para /register agora preserva os parâmetros via Set-Cookie na própria response do redirect. Resolve o report "Rastreamento perde-se após o login/redirecionamento".
  • Política de atribuição alinhada com legado: last-touch. Cada nova URL com UTM sobrescreve o cookie anterior, igual ao middleware global do Nuxt antigo. A versão anterior (first-touch) divergia silenciosamente da atribuição calibrada nos dashboards de BI.
  • Captura também re-executa em toda navegação SPA via useLocation() no TrackingCapture — antes corria só 1x no mount.