saveinmed/AGENT.md
2026-03-07 18:45:58 -03:00

1.6 KiB
Raw Blame History

SaveInMed - AI Engineering Standards (Advanced)

🎨 Lei do Estilo Único (Frontend)

  1. Zero CSS Customizado: É PROIBIDO criar classes CSS novas no globals.css ou usar o atributo style={{}}.
  2. Componentes UI: Use EXCLUSIVAMENTE componentes da pasta @/components/ui (padrão shadcn). Se precisar de um componente novo, peça permissão ou siga o padrão Radix UI.
  3. Atomicidade: Separe "Smart Components" (que buscam dados) de "Dumb Components" (que apenas renderizam UI).
  4. Tailwind Only: Use apenas classes utilitárias padrão do Tailwind. Não invente valores arbitrários (ex: w-[347px]), use a escala padrão (w-80).

🧪 Protocolo de Teste (Mandatório)

  1. Backend: Todo UseCase em internal/usecase DEVE ter um arquivo _test.go cobrindo sucesso e erro (usando mocks das interfaces em domain/ports).
  2. Frontend: Componentes críticos (Checkout, Cart) devem ter testes unitários com Vitest.
  3. Validação: Antes de dar a tarefa como pronta, o agente deve rodar go test ./... e npm run build no frontend para garantir que não quebrou tipos.

ðŸ“<EFBFBD> Estrutura de Pastas (Lei do Projeto)

  • @/components/modules/*: Componentes complexos por funcionalidade (ex: Cart/, Checkout/).
  • @/components/ui/*: Componentes base (Botão, Input, Modal).
  • @/hooks/*: Toda lógica de API e estados complexos.
  • @/services/*: Chamadas puras de API (Axios/Fetch).

?? Gestão de Credenciais

  • Dinâmico: Todas as chaves de API devem ser gerenciáveis via Dashboard e salvas no banco de dados.
  • Segurança: Chaves sensíveis devem ser armazenadas de forma segura ou rotacionadas via sistema.