O que unslop-audit faz?
Procedimento
- Colete evidências do código e, se possível, do aplicativo em execução: rotas, componentes, endpoints de API, tabelas de banco de dados, variáveis de ambiente, configuração de compose/proxy.
- Pontue cada dimensão de 0 a 4 usando a rubrica abaixo. Uma pontuação precisa de uma justificativa com um arquivo ou rota.
- Liste as marcas da seção
Marcas de estrutura. Uma linha cada, com localização. - Classifique os achados: Bloqueador (segurança, perda de dados, legal, efeitos colaterais externos) → Lacuna (um fluxo inteiro faltando) → Bruto (inconsistente ou inacabado) → Polimento.
- Escreva o relatório a partir do template no final.
Rubrica (0 = ausente, 2 = funciona mas é superficial, 4 = proposital)
| Dimensão | 4 significa |
|---|---|
| Identidade e acesso | Login, logout, reset, convite, papéis aplicados no backend, propriedade sobre dados, limites de taxa |
| Onboarding | A primeira execução explica o loop, coleta o que o produto precisa, termina em um primeiro sucesso |
| Loop principal | Iniciar, progredir, resultado, repetir, cancelar, exportar existem e são linkáveis |
| Configurações | Perfil, equipe, notificações, integrações, exportação e exclusão de dados; nada importante vive apenas em variáveis de ambiente |
| Estados | Cada tela tem estados vazio, carregando, erro, parcial, offline, sem permissão, limite |
| Estrutura | Rotas reais, links profundos por entidade, paginação, filtros, navegação consistente |
| Copy | Específico, humano, sem erros crus, sem frases de slop, uma voz |
| Visuais | Tokens para espaço/cor/tipo, chrome discreto, um elemento focal deliberado, funciona em mobile |
| Componentes | Cada tela tem um componente assinatura escolhido por sua forma de dados; sem padrão de tabela/KPI-card/formulário; leitura primeiro com edição um nível mais profundo |
Total /36. Abaixo de 14: protótipo. 14-23: utilizável internamente. 24-31: pronto para envio. 32+: proposital.
Marcas de estrutura (apps construídos com IA)
- Um componente de 800+ linhas renderiza o produto inteiro; sem roteador.
- Autenticação apenas em uma configuração de proxy ou comentada; API aberta.
- Textos de confirmação que dizem "para todos os usuários" ou dados sem um proprietário.
- Configurações existem apenas como variáveis de ambiente ou nem existem.
- A interface refaz o fetch de cada item a cada atualização (N+1 no cliente).
- "Em breve", páginas placeholder, botões mortos, lorem ipsum, dados de seed mostrados como reais.
- Suporte é prometido em textos de erro, mas não existe contato.
- Status sem explicação; o mesmo estado nomeado de três formas.
- Sem página 404/403/500; o fallback da SPA serve o shell para cada caminho.
- E-mail ou webhooks de saída sem prévia, envio de teste, histórico, limite de taxa ou desistência.
- Dashboards de cards de vaidade sem ação por trás deles.
- Telas construídas a partir da silhueta padrão: título, linha de cards KPI, tabela com controles de edição nas células, formulário (veja
unslop-components).
Template do relatório
# Auditoria: <app> - <data>
Pontuação: <n>/36 (<faixa>)
## Bloqueadores
- <achado> - <arquivo/rota> - <por que importa> - <menor correção>
## Lacunas
## Bruto
## Polimento
## Pontuações
| Dimensão | Pontuação | Justificativa |
## Não verificado