Limpeza técnica
Itens aprovados (out/2026) e itens recomendados que ainda faltam, em ordem de execução sugerida. O que já foi feito sai desta página e fica registrado no Changelog.
Segurança (prioridade máxima)
Seção intitulada “Segurança (prioridade máxima)”- R-14 Rotacionar as credenciais de produção que ficaram no histórico do git e avaliar a reescrita do histórico.
- R-01 Verificar o webhook da InfinitePay junto ao gateway, validar valor e tornar idempotente.
- R-13 Parar de logar valores de cookies no middleware de auth da order-lifecycle e rotacionar as sessões.
- R-02
requireAdmin()em todas as escritas de catálogo e uploads de catálogo. - R-03 Proteger
DELETE /health/cache/flushe o CRUD dehelp-info. - R-04 Remover a rota
/home/payment/[orderId](Pix fictício).
Aprovados para remoção
Seção intitulada “Aprovados para remoção”| Item | O que remover |
|---|---|
| Uploadcare (resto) | Renomear components/uploadcare/UploadcareButton e lib/uploadcare/use-uploadcare-generic (já usam o upload em partes da API), remover app/api/uploadcare/* e as variáveis *UPLOADCARE* |
| Documentação antiga | .docs/ (incluindo .docs/ia/), docs/*.md, README-DEPLOYMENT.md. O README.md já aponta para apps/docs |
| Testes da API sem banco próprio | apps/order-lifecycle/test.env não é carregado por nenhum script e aponta para SQLite; os testes usam o DATABASE_URL normal e o setup apaga dados. Criar um banco de teste e remover o arquivo |
Recomendados
Seção intitulada “Recomendados”| Item | Ação |
|---|---|
| Migrations | Configurar pnpm prisma:migrate:deploy como pre-deploy command do order-lifecycle no Coolify (R-07) |
| CI | Trocar o bitbucket-pipelines.yml pelo modelo de Revisor de PRs: Node 20, sem o passo healthcheck inexistente, com pnpm versions:check e o nos-revisor |
| Cookies no login | O LoginForm grava cópias do token de sessão em cookies legíveis por JS (authCookies.setAuthData); o cookie HttpOnly do Better Auth já basta. Remover após validar o login em homologação |
| Navegação no estúdio | plantigraphy-left e plantigraphy-right chamam router.push durante a renderização; mover para useEffect |
| Paleta fixa | O tema do Material Tailwind está congelado em apps/web/tailwind.theme.js. Substituir esses hex pelos tokens semânticos e voltar aos breakpoints padrão do Tailwind |
Classes do @moldape/ui |
O content do Tailwind do web não inclui packages/ui, então classes usadas só no pacote (ex.: animações dos diálogos) não são geradas. Incluir o caminho e revisar o visual dos diálogos |
| Variáveis | Unificar SMTP_PASS (web) e SMTP_PASSWORD (API) e os três nomes de origem do CORS da API (CORS_ORIGINS, ORDER_CORS_ORIGIN, CORS_ORIGIN) |
| Banco | Remover PasswordResetToken e Order.pixCode por migration |
| Fontes | Carregar só os pesos de Asap e Encode Sans realmente usados (hoje vão todos, de 100 a 900) |

Desenvolvido e documentado porNós Tecnologia · Desenvolvimento Criativo

