gohorsejobs/.cursorrules
2026-02-21 13:33:36 -06:00

25 lines
1.5 KiB
Text
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# GoHorse Jobs Regras de Contexto para IA
> 🚨 **CRITICAL / MANDATORY**: Leia primeiro as restrições absolutas de infraestrutura e chaves em `.agent/rules.md`. **NUNCA** modifique arquivos k8s/k3s. 🚨
## 1) Regras de Ouro (Obrigatórias)
- **TypeScript estrito**: não use `any`. Prefira tipos explícitos, `unknown` e validação.
- **IDs são UUID v7**: todos os `id`, `userId`, `companyId`, `jobId`, etc. devem ser UUID v7 (string).
- **Sincronia de contrato**: qualquer alteração em modelos Go exige **verificação e atualização** dos tipos do frontend antes de escrever o código do backend.
- **Shadcn/UI**: não invente componentes; use apenas os existentes em `frontend/src/components/ui`.
## 2) Âncoras de Contrato (Fonte da Verdade)
- **Backend**: `backend/internal/models` (JSON tags definem o contrato HTTP).
- **Frontend**: `frontend/src/lib/types.ts` (tipos usados na UI).
- **Entidades de domínio**: `backend/internal/core/domain/entity` (regras e semântica do domínio).
## 3) Protocolo de Execução (sempre que receber uma tarefa)
1. **Check de Impacto**: liste quais arquivos do backend e frontend serão afetados.
2. **Validação de Contrato**: compare o JSON real do backend com os tipos do frontend.
3. **Plano de Execução**: apresente o plano em lista; só depois de aprovado, gere o código completo.
## 4) Checklist rápido antes de finalizar
- Tipos TS sem `any` ✅
- IDs como UUID v7 ✅
- Contratos API alinhados ✅
- Componentes UI existentes ✅