# Estado y hoja de ruta

## Estado comprobado

Fecha de corte: 29 de setiembre de 2026.

- Aplicación local funcional con Node.js y SQLite.
- Inicio de sesión operativo con cuenta maestra, gestor y usuario.
- Base demo separada de la base normal.
- Registro de ingresos, egresos y categorías persistente.
- Importación, exportación y plantillas XLSX o CSV para movimientos.
- Importación, exportación y plantilla XLSX para usuarios administrativos.
- Plan de caja anual con IGV, planilla, aportes, renta y políticas de pago y cobro.
- Créditos múltiples con entidad manual y cronograma de cuota fija.
- Fórmula TEA visible mediante notación matemática.
- Reportes tabulares y gráficos animados.
- Iniciadores para Windows, macOS y acceso desde iPhone o iPad.
- Pruebas automatizadas: 7 aprobadas y 0 fallidas.
- Bandeja persistente para coordinación, respuestas y autocorrección entre Codex, Antigravity y Gemini.
- Registro cronológico compartido de solicitudes, hora, estado, responsable y evidencia.
- Auditoría UX responsive documentada para 1440, 390 y 320 píxeles, sin desbordamiento global de página.
- Guía priorizada de lenguaje claro y tres ilustraciones explicativas por perfil.
- Recorrido guiado responsive por rol con activación global versionada desde Administración, repetición manual y mascota Nexo en PNG transparente.
- Paquete mínimo reproducible para un subdominio Node.js, sin bases ni credenciales locales, con guía de instalación, manifiesto SHA-256 y ruta pública de salud.

## Riesgos antes de producción

- Las credenciales demo deben quedar deshabilitadas fuera del piloto.
- Las tasas y reglas tributarias necesitan revisión y aprobación de un profesional contable.
- El acceso por red local no usa HTTPS.
- Debe definirse una política institucional de copias de seguridad, retención y recuperación.
- Debe realizarse una evaluación de seguridad y privacidad antes de almacenar información real.
- Falta una validación formal de accesibilidad y pruebas con usuarios MYPE.
- En móvil existen controles inferiores al objetivo táctil de 44 por 44 píxeles y las tablas anuales siguen dependiendo del desplazamiento lateral interno.
- El paquete de subdominio conserva Node.js y SQLite y es apto para una prueba controlada; un despliegue remoto con alta concurrencia requiere revisar base de datos, observabilidad, recuperación y arquitectura.
- El hosting debe ofrecer Node.js 22.13 o superior, HTTPS, proceso persistente y almacenamiento duradero. Un plan exclusivo de WordPress/PHP no puede ejecutar NexoCaja.

## Próximas etapas propuestas

### Validación funcional

- Ejecutar sesiones con usuarios MYPE y gestores.
- Aplicar primero las recomendaciones P0 de `07_GUIA_MEJORAS_UX_MYPE.md` y validar su comprensión antes de ampliar funciones.
- Registrar dificultades, tiempos de tarea y conceptos que requieren explicación.
- Validar formatos de importación con hojas reales anonimizadas.

### Validación contable

- Revisar fórmulas, tasas predeterminadas y nombres de conceptos.
- Definir advertencias y alcances del simulador.
- Aprobar ejemplos para demostración institucional.

### Preparación institucional

- Definir responsables de soporte y respaldo.
- Preparar ambiente sin credenciales compartidas.
- Establecer procedimiento de alta, baja y recuperación de cuentas.

### Evolución técnica

- Incorporar migraciones versionadas de base de datos.
- Automatizar pruebas de interfaz y accesibilidad.
- Evaluar empaquetado de escritorio o despliegue web seguro según el alcance aprobado.
- Implementar registro estructurado de errores y diagnóstico.

## Condición para cambiar de etapa

El piloto puede considerarse listo para una evaluación institucional cuando los flujos críticos estén validados por usuarios, los cálculos tengan conformidad contable, exista un procedimiento de respaldo y la revisión de seguridad no detecte riesgos críticos sin tratamiento.

## Cómo actualizar este archivo

Mover una tarea a estado comprobado solo cuando exista evidencia de prueba. No presentar una propuesta como funcionalidad implementada. Cada cambio de etapa debe enlazarse con una entrada de `REGISTRO_CAMBIOS.md`.
