Sobre el proyecto

El ERP Prepass v4 es un ERP para operaciones de intermediación de alquiler de autos en el nicho de bajo crédito y sin verificación de crédito. Elimina el enrutador manual y la fragmentación de páginas de v3 (SPA vanilla) y reconstruye la arquitectura atómica validada en jpkerp6 adaptándola al dominio de preaprobación. v3 se mantiene en producción (Vercel) sin interrupciones, mientras que v4 se construye primero en local-first y luego se migra a remoto tras estabilizarse. La ejecución se realiza con npm install seguido de npm run dev, verificable en http://localhost:4004. Si Firebase no está configurado, lib/store.ts hace fallback automático a LocalAdapter (localStorage) y funciona de inmediato; en la primera ejecución se inyectan los contratos de muestra de lib/seed.ts. La arquitectura consta de 5 capas atómicas, sin escribir JSX ni lógica de cálculo directamente en las páginas. ① SSOT de entidades (lib/intake/entities.ts): ENTITIES genera simultáneamente formularios de entrada directa, Excel y OCR, incluyendo ocrFrom/manual/idFrom. ② Átomo de almacenamiento (lib/store.ts): un único StoreAdapter (Local/Firestore/Dispatch) maneja deduplicación por clave natural, eliminación lógica y aislamiento por empresa (companyId). ③ Átomos de UI (components/ui/index.tsx): proporciona ObjCard (átomo único de lista de 56px), Sec, Cards, Metric, Badge, DataTable (móvil = tarjeta), Modal y FormGrid. ④ Secciones (cockpit, app/page.tsx): clasifican según las preguntas que plantea el estado, cubriendo pendientes de revisión, pendientes de envío, en operación, período de recuperación y cobranza. ⑤ Motor de dominio (lib/domain/*): funciones puras que calculan marginFee (comisión del proveedor − comisión del agente) y clawbackWatch (recuperación a 3 y 6 meses sin garantía). En contraste con jpkerp (operación directa), los vehículos se centran en proveedor, precio de suministro y margen, no en compra/depreciación/venta; los contratos se centran en tipo de producto, revisión, agente, comisión y recuperación, no en cuentas por cobrar. partner (agente) y supplier (proveedor) son entidades de doble lado que no existen en la operación directa. Principios de diseño: composición solo con átomos y tarjetas (listas/detalles nuevos reutilizan ObjCard+Sec, prohibido tarjetas manuales o inline), unificación web/móvil (los átomos incluyen responsividad con useIsMobile, uso exclusivo de un lado solo con acuerdo explícito), prevención estructural de errores (prohibido named export en archivos de ruta, aislamiento dev/build, evitar comparación de fechas como cadena, mostrar resto en truncamiento silencioso). Actualmente están completados el esqueleto, la infraestructura, el SSOT de entidades y el cockpit de inicio (slice de contratos). Pendientes: detalle de contrato (Drawer), acciones de revisión/envío/firma, liquidación de comisiones, seguimiento de recuperación, slices de vehículos (inventario), agentes y proveedores, intake OCR (contratos, licencias, registros), importación de Excel, adaptador de migración v3→v4 y conexión Firebase exclusiva de Prepass (remoto). Todos los agentes de IA y colaboradores deben revisar antes de comenzar la asignación de roles en AGENTS.md (Claude = diseño y control de calidad / Cursor = trabajo pesado / Codex = verificación exhaustiva) y las reglas inmutables y controles de calidad.