Pular para o conteúdo principal
← Voltar ao changelog

Changelog - 06/03/2026

SDK Core (@cactus-agents/*)

  • Criado o monorepo front-cactus-core com os pacotes base do SDK: api-client, auth, brand, types e utils
  • Renomeado escopo de @cactus/* para @cactus-agents/* para alinhar com a organização no GitHub Packages
  • Adicionados wrappers createAuthFromClient e createBrandFromClient que eliminam boilerplate nos consumidores
  • Adicionado createFullFetcherFromClient e interface FullClientLike para pacotes que precisam de PATCH/PUT/DELETE
  • Novo helper extractApiError para padronizar extração de erros da API em todos os pacotes
  • Pipeline de release com Changesets publicando automaticamente no GitHub Packages

Auth

  • Adicionados campos faltantes em AuthUserInfo: aceite de contratos (tc, privacidade, LGPD, lei, marketing), jogo responsável (limites e exclusão), localização e ForceRequestKycReason
  • Corrigido envio do header User-Agent em chamadas server-side — o backend PHP exigia esse header e retornava 422 sem ele
  • Melhorado tratamento e logging de erros no action de login: loga baseUrl, tenant, idioma, e serializa corretamente os erros do ApiClient (que não são instâncias de Error)

Pacote Wallet (@cactus-agents/wallet)

  • Publicado novo pacote SDK @cactus-agents/wallet com tipos (Wallet, Transaction, Rollover, TransactionFilter, WalletData), serviços e transforms
  • Lógica de "smart rollover": ignora requests de rollover quando o bônus está vazio ou expirado
  • Tipos migrados de @cactus-agents/user com re-exports mantidos para retrocompatibilidade

Módulo Wallet (front-web-base)

  • Integrado módulo de carteira completo no frontend: página principal com cards de bônus/cashback, progresso de rollover e contadores regressivos
  • Página de transações com abas, filtro por período e paginação
  • Modais: saque de bônus, regras de bônus, resgate de cashback e detalhes de saque
  • Rotas server-side: /api/wallet/refresh, /transactions, /action, /receipt
  • Zustand store com hook useWallet para gerenciamento de estado global da carteira
  • Header conectado ao store da wallet para exibir saldo real do usuário

Módulo Usuário (front-web-base)

  • Implementadas páginas de conta do usuário: perfil, segurança, histórico de login e carteira
  • Página de jogo responsável: proteção de conta com limites e exclusão
  • Relatório de renda: geração e polling para o IRPF
  • Área do usuário no header com exibição de saldo e dropdown (lazy loaded)
  • Menu lateral de conta com navegação
  • Serviço singleton de usuário, stores e hooks

Pacote Usuário (@cactus-agents/user)

  • Publicado pacote @cactus-agents/user cobrindo: perfil, segurança (senha, 2FA, contas sociais), histórico de login, jogo responsável (limites, timeout, autoexclusão), relatório de renda e transforms de carteira
  • 30 testes passando

Infra / CI

  • Configurado workflow de deploy para Cloudflare Workers com suporte a múltiplos ambientes (produção/staging)
  • Corrigido ponto de entrada do Worker para deploy: novo workers/app.deploy.js que importa o output pré-compilado em vez de usar import virtual do Vite
  • Adicionada flag --keep-vars no deploy para preservar variáveis de ambiente configuradas no dashboard da Cloudflare
  • Token de autenticação do GitHub Packages migrado para secret de nível de organização (GH_PACKAGES_TOKEN), permitindo acesso cross-repo
  • Habilitado observability no wrangler.toml com logs e head sampling
  • Adicionado pnpm typecheck no hook pre-commit via Husky para capturar erros de TypeScript antes do commit
  • Projeto inicializado com stack: React Router v7 (SSR), Cloudflare Workers, Tailwind CSS, Zustand