Sobre o projeto
O Freepass ERP v4 é um ERP para operações de intermediação (brokerage) de aluguel de carros nichado em baixo crédito e sem análise. Ele remove o roteador artesanal e a fragmentação de páginas do v3 (SPA vanilla) e reconstrói a arquitetura atomizada validada no jpkerp6 para o domínio Freepass. O v3 permanece no ar na Vercel sem interrupções, enquanto o v4 adota uma estratégia local-first: construir localmente, estabilizar e depois fazer a implantação/migração remota.
Para executar, após npm install, use npm run dev e acesse http://localhost:4004. Se o Firebase não estiver configurado, lib/store.ts faz fallback automático para LocalAdapter(localStorage) e o sistema funciona imediatamente; na primeira execução, os contratos de exemplo de lib/seed.ts são injetados.
A arquitetura é organizada em 5 camadas atomizadas, e não se escreve JSX nem lógica de cálculo diretamente nas páginas. ① SSOT de entidades (lib/intake/entities.ts) gera simultaneamente formulários para três métodos — entrada direta, Excel e OCR — a partir de um único ENTITIES, incluindo ocrFrom/manual/idFrom. ② Átomo de armazenamento (lib/store.ts) usa um único StoreAdapter (Local/Firestore/Dispatch) para processar deduplicação por chave natural, soft-delete e isolamento por empresa (companyId). ③ Átomos de UI (components/ui/index.tsx) fornecem ObjCard (átomo único de lista com 56px), Sec, Cards, Metric, Badge, DataTable (mobile = cartões), Modal e FormGrid. ④ Seções (cockpit, app/page.tsx) classificam por perguntas lançadas pelo estado e tratam espera de análise, espera de envio, em operação, período de recuperação e créditos a receber. ⑤ Motor de domínio (lib/domain/*) calcula em funções puras marginFee (comissão da fornecedora − comissão do vendedor) e clawbackWatch (recuperação sem garantia aos 3 e 6 meses).
Em um eixo diferente do jpkerp (operação própria), os veículos não se centram em compra/depreciação/venda, mas em fornecedora, preço de fornecimento e margem; os contratos não se centram em valores a receber, mas em tipo de produto, análise, vendedor, comissão e recuperação. partner (vendedor) e supplier (fornecedora) são entidades 2-sided que não existem na operação própria.
Como regras de projeto invariáveis, tudo deve ser composto apenas por átomos e cartões (novas listas/detalhes reutilizam ObjCard+Sec; proibido cartões artesanais/inline), web e mobile devem ser unificados (o átomo tem responsividade embutida via useIsMobile; versões exclusivas para uma plataforma somente mediante acordo explícito) e erros devem ser evitados estruturalmente (proibido named export em arquivos de rota, isolar dev/build, evitar comparação de datas como string e indicar o restante em caso de silent truncation).
Atualmente, o esqueleto, a infraestrutura, o SSOT de entidades e o cockpit inicial (fatia de contratos) estão concluídos. Detalhe de contrato (Drawer), ações de análise/envio/assinatura, liquidação de comissões, rastreamento de recuperação, fatias de veículos (ofertas), vendedores e fornecedoras, intake por OCR (contrato, carteira de habilitação, certificado de registro), importação por Excel, adaptador de migração v3→v4 e conexão Firebase exclusiva do Freepass (remota) estão incompletos. Todos os IAs e trabalhadores devem verificar, antes de iniciar qualquer tarefa, a divisão de papéis no AGENTS.md (Claude = projeto e gate / Cursor = trabalho braçal / Codex = verificação exaustiva), assim como as regras imutáveis e os gates.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.