MEMORÁNDUM PÚBLICO · 30 OCT 2026

Evolución, foco y próximos pasos.

Registro ejecutivo de cómo FORNEXA convierte operación logística compleja en control verificable.

64hitos documentados
Web + Mobileuna evolución conectada
681cambios revisados
Diariarevisión si hay actividad

Este documento comparte dirección y progreso sin exponer información operativa, personal o de seguridad.

01 Producto
02 Plataforma
03 Ejecución

FOCO ACTUAL

Pendientes

Decisiones abiertas y siguientes acciones, expresadas en su forma mínima.

TécnicoAhora

01

Verificación y publicación de evidencias de auditoría

La candidata amplía las comprobaciones de conexión y de publicación de evidencias, con pruebas de aceptación y rechazo. Sigue pendiente de revisión independiente; su preparación no acredita una nueva auditoría de producción.

EstadoEn seguimiento
FuncionalAhora

02

Almacenes — reglas de reposición, propuestas y lote sintético (E2 / F4 / F5)

El núcleo operativo de Almacenes (recepción con chequeo en playa, ubicación dirigida, reservas por línea, picking con rotación FIFO/LIFO/FEFO, recursos, políticas jerárquicas y control de etiqueta, estado, peso y volumen antes de la carga) ya está implementado y su migración E1 aplicada y verificada en producción, con los 30 códigos de rechazo acreditados mediante ensayo transaccional y sonda con pre/postestado medido y diagnóstico explícito de fixtures ausentes (SHOULD-1 y robustez M5 verificados en producción). La migración C-3 está aplicada y el código de aplicación está desplegado en producción tras revisión independiente. Admite el peso y volumen vigentes y editables de SGA y las reposiciones de distintas órdenes hacia una misma ubicación, respetando el saldo reservado compartido. La verificación funcional autenticada en producción sigue pendiente; el despliegue no acredita por sí solo el recorrido completo de controles de estado y carga. Quedan pendientes la entrega E2 (reglas de reposición min/max y consolidación en cola), la carga del lote sintético de escenarios de almacén y la verificación funcional punto a punto en producción.

EstadoEn seguimiento
TécnicoSiguiente

03

Tablas: caja por debajo del pliegue en pantallas bajas

Las cabeceras ya se mantienen fijas y la barra horizontal vive dentro de la caja de la tabla. Aun así, cuando el módulo acumula métricas y filtros por encima, la caja puede empezar por debajo del pliegue en pantallas de poca altura y obliga a desplazar la página antes de llegar a ella. Falta decidir si conviene anclarla también en vertical.

EstadoPendiente
FuncionalSiguiente

04

Portada pública: contenido comercial y legal

La portada y la página de plataforma describen capacidades y declaran el estado real. Faltan páginas legales (aviso, privacidad) y política de cookies, y confirmar el buzón de contacto publicado. Las afirmaciones sobre validez jurídica del documento electrónico y sobre conexión con la administración aduanera permanecen fuera de la web hasta que exista dictamen.

EstadoPendiente
FuncionalAhora

05

Muelles — planificación y patio

El núcleo de planificación por muelle, alta y edición en ventana, patio, trazabilidad, horarios y reglas configurables, informes derivados de eventos y el portal público del transportista con acceso temporal revocable ya están integrados y desplegados en producción, con los 150 perfiles horarios normalizados y el lote sintético propio de muelles y citas ejecutado y confirmado en producción (2.031 filas en 6 tablas: 450 zonas operativas, 800 muelles, 450 reglas de cita, 150 políticas horarias, 150 citas vinculadas a paradas y 31 eventos de patio). Quedan pendientes el recorrido E2E autenticado y la definición de excepciones operativas internas del planificador sobre los parámetros de corte y cupo.

EstadoEn seguimiento
FuncionalSiguiente

06

Conectores de almacenamiento y repositorios cloud

Evolución planificada del subsistema de almacenamiento de adjuntos y expedientes documentales de órdenes: incorporación de conectores cloud corporativos (Microsoft OneDrive, Google Drive, Claude Workspace) y servicio nativo Fornexa Storage con cifrado en reposo, retención documental y cumplimiento eFTI.

EstadoPor definir
TécnicoAhora

07

A2 — reproducibilidad de migraciones

La fuente versionada ya recuperó el requisito de unicidad que existe en producción. Un contraste que preserva literales y cuerpos de funciones clasificó los 32 pares compartidos en la captura registrada. Los tests reproducen el lado Git, pero no verifican de nuevo el SQL remoto ni el estado vivo de producción. A2 sigue abierto: faltan preparar la reconciliación no productiva y ejecutar un replay controlado antes de plantear cualquier alineación del historial.

EstadoEn seguimiento
TécnicoAhora

08

TLM-1 — identidad de red fail-safe

El endurecimiento fail-safe ya está desplegado en producción: requests y eventos de acceso comparten una identidad de red única; con secreto dedicado se conserva IP junto con su HMAC SHA-256 y, sin secreto o sin IP disponible, ambos campos quedan en null. Un smoke productivo confirmó que, mientras el secreto sigue sin configurar, una petición nueva se registra sin IP en claro ni hash. TLM-1 no está cerrado: falta configurar y verificar el secreto dedicado y la allowlist OWNER. La retención de IP a siete días continúa siendo oportunista y queda como riesgo residual documentado.

EstadoEn seguimiento
TécnicoSiguiente

09

CMR — impresión legible del documento

El marco físico por hoja de continuación ya está integrado: el borde se repite en cada fragmento de página sin retirar el marco actual y sin depender de que el navegador pinte el borde de la caja de página. La tipografía de impresión sube de 4,35 pt de cuerpo y 3,60 pt de cabeceras de mercancía a 7,5 pt y 5,62 pt, y el QR pasa de 10 mm pegados al marco a 22 mm con separación real, medido sobre un CMR exportado real. Confirmado en producción sobre impresión real: QR legible con lector y layout conforme. Queda pendiente únicamente la verificación en Firefox y Safari, no ejecutables en el entorno de verificación.

EstadoEn seguimiento
TécnicoAhora

10

DeCA — motor PDF/QR y acceso público

P0-A, P0-B y el domicilio FISCAL canónico ya están desplegados en producción. La fuente legal queda separada de los centros operativos, con unicidad y auditoría transaccional, edición OWNER/ADMIN y DeCA fail-closed sobre una dirección FISCAL activa seleccionada explícitamente. El siguiente gate es el E2E HTTP autenticado con un fixture CMR sintético completo; debe ejecutarse con una sesión OWNER/ADMIN legítima, sin resetear credenciales ni inferir roles desde strings. La superficie operativa de emisión, M8, lifecycle operativo automático y eCMR siguen separados.

EstadoEn seguimiento
TécnicoSiguiente

11

Conectividades

Mejorar las capacidades de verificación de Claude y DeepSeek con accesos de solo lectura y mínimo privilegio a la evidencia que necesiten para revisar FORNEXA: repositorio y migraciones históricas en GitHub, esquema/constraints y configuración de Storage en Supabase, estado de Preview/runtime en Vercel y documentación técnica autorizada. El objetivo es que puedan confirmar directamente invariantes como unicidad de versionado, privacidad de buckets, compatibilidad de migraciones y comportamiento desplegado, reduciendo MUST de confirmación causados únicamente por falta de conectividad. Sin secretos, escritura, merge ni deploy para revisores independientes.

EstadoEn seguimiento
TécnicoSiguiente

12

Auditoría UX transversal

Aplicar evidencia visual obligatoria en Preview para cambios de layout, tipografía, SVG, responsive o impresión; revisar clipping/overflow, estados, accesibilidad y breakpoints representativos antes de declarar cierre productivo. Los tests de fuente protegen invariantes, pero no sustituyen la comprobación visual desplegada.

EstadoEn seguimiento
TécnicoAhora

13

Activación del maestro ADR 2025

Importar y verificar la fuente oficial, sus embalajes y reglas antes de activar el cálculo regulatorio.

EstadoPendiente
FuncionalAhora

14

Autonomía de tenants

Definir cómo un nuevo cliente configura y administra su organización; decidir el alcance de OWNER y ADMIN.

EstadoPor definir
TécnicoSiguiente

15

Control Tower con fuente única

Completar la sustitución de indicadores de demostración por datos operativos trazables y aislados por tenant.

EstadoPendiente
TécnicoSiguiente

16

Cobertura de recorridos críticos

Consolidar pruebas E2E de acceso, alta inicial, operación tenant y continuidad Web–Mobile.

EstadoEn seguimiento
TécnicoSiguiente

17

Canal estable de Mobile

Formalizar promoción, distribución y trazabilidad de cada build Android más allá del canal interno.

EstadoPendiente
FuncionalSiguiente

18

Tarifas — motor de cálculo y valoración en tiempo real

Conectar el esquema existente de tariffs, tariff_lines y fuel_indices con una interfaz de administración y un motor de valoración en ejecución para órdenes y partidas, equiparando el módulo Costing de TESI TMS con disponibilidad de tarifas por zonas, volumen y carburante en tiempo real.

EstadoPendiente
FuncionalSiguiente

19

Planning — optimización de rondas y pizarra interactiva

Desarrollar una interfaz visual de tráfico (timeline / Gantt interactivo) y un motor algorítmico de optimización de cargas y rutas multi-parada con restricciones de capacidad y ventanas horarias, cerrando la brecha con las funciones de Planning & Route Optimization de TESI.

EstadoPor definir
FuncionalSiguiente

20

e-CMR — protocolo digital transfronterizo y firma electrónica

Extender el motor documental más allá de la DeCA nacional española para soportar el ciclo e-CMR internacional completo (cargador, transportista, conductor, destinatario), incorporando firma electrónica cualificada y custodia probatoria conforme al Convenio e-CMR de Naciones Unidas.

EstadoPor definir
TécnicoSiguiente

21

Control Tower — analítica predictiva SCOR y cálculo dinámico de ETA

Ampliar la telemetría actual hacia una Torre de Control operativa con alertas proactivas por umbrales, cuadros de mando SCOR normalizados y algoritmos de Machine Learning para el recálculo predictivo de tiempos estimados de llegada (ETA/EDT) y detección temprana de anomalías.

EstadoPendiente
TécnicoSiguiente

22

Integraciones — pasarela EDI gestionada y red B2Authority

Sustituir los conectores demo por una pasarela de integración EDI estándar (EDIFACT, XML) y enlaces hacia redes regulatorias (Peppol, B2Authority para aduanas intra/extra-UE y facturación electrónica obligatoria), equiparando TESI Extended Integration.

EstadoPor definir
TécnicoSiguiente

23

Telemática — ingesta en tiempo real de flotas (CAN-Bus / FMS)

Implementar endpoints y conectores de campo (On-field Integration) con proveedores telemáticos de flota para la ingesta continua de coordenadas GPS, velocidad, odómetro real y consumo vía bus CAN/FMS, superando el actual campo estático de proveedor en vehículos.

EstadoPor definir
FuncionalSiguiente

24

Logística Inversa — trazabilidad de retornos y paletería

Modelar en el núcleo operativo el circuito formal de logística inversa: flujos de devolución de mercancía, intercambio y regularización de palets retornables y expediciones de retorno, capacidad nativa presente en el ciclo inbound/outbound de TESI.

EstadoPor definir
FuncionalSiguiente

25

Sostenibilidad — cálculo y reporte de emisiones CO2 (ESG)

Incorporar en expediciones y viajes el cálculo de emisiones de gases de efecto invernadero bajo estándares reconocidos (GLEC / ISO 14083), permitiendo generar indicadores de huella de carbono y reportes de sostenibilidad corporativa (CSRD) presentes en TESI ESG Vertical.

EstadoPor definir

REGISTRO DE PRODUCTO

Historial

Hitos agrupados desde el historial completo del producto. Fecha, intención y resultado.

2026.10.23-3Preproducción

Auditoría de base de datos — ejecutor oficial de captura en modo de solo lectura (READ ONLY)

Plataforma
Propósito
Implementar un ejecutor de captura oficial y seguro en modo de solo lectura con transaccionalidad estricta para la auditoría de migraciones y métricas referenciales de Supabase.
Resultado
Implementado el ejecutor oficial y seguro en scripts/audit/run-supabase-audit-readonly.ts y el script canónico scripts/audit/capture-supabase-migration-audit.sql con transacción BEGIN TRANSACTION READ ONLY ... ROLLBACK, validación estricta de endpoint y credenciales permitidas, transformación de ledger por tubería en memoria (cero payload_base64 en disco o registros), preservación inmutable de la línea base 20260912 y suite de pruebas automatizadas certificando la protección fail-closed a nivel de kernel de PostgreSQL (código 25006).
2026.10.23-2Preproducción

Comprobaciones automatizadas con resultados de la ejecución actual

Plataforma
Propósito
Mantener la trazabilidad de las verificaciones de cada entrega.
Resultado
Preparada una mejora para retirar resultados anteriores al iniciar las comprobaciones y emitir y validar los nuevos antes de ejecutar las pruebas que los necesitan. La comprobación inicial detectó una dependencia de orden que se ha corregido. Pendiente de validación completa en integración continua, revisión y despliegue.
2026.10.23-1Producción

Almacenes — validación de solicitudes y diagnóstico de lecturas

Plataforma
Propósito
Entregar la aplicación de controles de carga sobre la base de datos ya actualizada.
Resultado
Se rechazan solicitudes mal formadas antes de operar, se distinguen errores de entrada de fallos del servicio y las incidencias de permisos o conexión se muestran como error de lectura. La aplicación está desplegada tras CI y revisión independiente, con comprobación del dominio y rechazo del acceso sin sesión. La verificación funcional autenticada sigue pendiente; la actualización de base de datos ya está aplicada y verificada.
2026.10.22-1Canal interno

Preparación de la aplicación de controles de carga en Almacenes

Plataforma
Propósito
Preparar la actualización de la base de datos antes del despliegue de la aplicación.
Resultado
Se incorpora una vía manual de aplicación con comprobaciones del destino, del contenido de la migración y de su reversión, precondiciones y verificaciones de estructura y datos. La verificación automatizada comprueba la procedencia de los resultados y distingue aplicación confirmada, fallo e incertidumbre. El ensayo aislado de aplicación, aborto ante errores y concurrencia ha pasado. La integración pasó revisión y la migración se aplicó mediante la vía manual, con estructura e historial verificados y datos conservados. La aplicación se entregó posteriormente; la verificación funcional autenticada permanece pendiente.
2026.10.17-3Producción

Almacenes — núcleo operativo, unidades de manipulación y control de carga (E1)

WebPlataforma
Propósito
Dotar al módulo de Almacenes de su flujo operativo completo de recepción, playa, ubicación, reserva, preparación, etiquetado y carga verificada, parametrizable por almacén, propietario, categoría y artículo.
Resultado
Pantalla operativa de Almacenes en seis vistas (Recepción y Playa, Ubicaciones y Stock, Tareas y Recursos, Picking y Reservas, Expedición y Carga, Políticas WMS) conectada a una acción transaccional única en base de datos con catálogo cerrado de treinta códigos de rechazo tipados. Incorpora unidades de manipulación (LPN/SSCC), recursos de almacén (operarios, carretillas y equipos con alturas y certificaciones), políticas de comportamiento con herencia determinista, prohibición de reservar o preparar mercancía sin chequear o sin ubicar (incluyendo aislamiento fail-closed de saldos históricos sin estado de flujo) y control obligatorio de etiqueta emitida y escaneada, estado, peso y volumen antes de autorizar la carga.
2026.10.17-2Producción

Workflow manual de aplicación atómica de la migración del núcleo de Almacenes

Plataforma
Propósito
Habilitar un cauce de despliegue atómico, transaccional y verificable para la migración de esquema y permisos del módulo de Almacenes en producción sin herramientas directas.
Resultado
Workflow manual de aplicación con confirmación literal y verificación estricta de árbol git, checksum SHA-256 fijado y tamaño en bytes del script SQL de migración. Transacción única atómica con bloqueo temporal, precondiciones de estado limpio, postcondiciones exhaustivas de tablas, procedimientos y permisos, y registro en el ledger de migraciones de la base de datos.
2026.10.17-1Producción

Niveles de visualización y corrección del scroll en tablas

WebPlataforma
Propósito
Permitir que cada puesto elija cuánta información quiere ver de una vez, y devolver a las tablas una cabecera y una barra de desplazamiento que no se pierdan al desplazar.
Resultado
Tres niveles de densidad (Cómoda, Estándar, Compacta) aplicados por tokens CSS y recordados en el navegador, con Compacta por defecto. La pestaña Interfaz de Configuración permite cambiarlos con previsualización inmediata. Cómoda reproduce exactamente la escala anterior. Las cabeceras de tabla mantienen su posición y la barra horizontal queda dentro de la caja de la tabla, acotada a la altura de la pantalla. El ancho de la rejilla se calcula con su número de columnas, de modo que las celdas nunca se desbordan de su fila y no aparece un hueco al desplazar a la derecha.
2026.10.15-1Producción

Portada pública, página de plataforma y contacto

Web
Propósito
Explicar qué hace la plataforma y en qué estado está, con una portada navegable y páginas de plataforma y contacto dentro del dominio.
Resultado
Portada rediseñada con la cadena operativa, cuatro ejes de capacidad, ventajas, los dieciséis módulos y las superficies públicas. Nueva página de plataforma con el detalle por capacidad y un bloque de estado real. Nueva página de contacto sin formulario ni envío automático. Se retiran de la portada los nombres de producto ajenos y las métricas ilustrativas sin etiquetar. Se corrige además la viñeta de almacén, que prometía escritura inexistente: queda como consulta desde trazabilidad y declarada en preparación hasta que el módulo de Almacenes esté operativo. Contenido descriptivo: sin validez jurídica atribuida, sin métricas de tracción y sin nombres de empresas reales.
2026.10.14-2Producción

Muelles y portal de reserva del transportista

WebPlataforma
Propósito
Planificar la recepción y expedición por muelle y permitir reservas sobre viajes asignados al transportista.
Resultado
Planificación por muelle, patio, alta y edición en ventana, trazabilidad, horarios canónicos con normalización auditada de los 150 perfiles existentes, configuración e informes derivados de eventos. Portal público de reservas con acceso temporal revocable, secreto HMAC dedicado activo, control de frecuencia distribuido, validación estricta de datos, disponibilidad agregada y consulta de citas propias. Integrado, migrado y desplegado en producción tras las revisiones independientes, con el lote sintético propio de muelles y citas ejecutado y confirmado en producción (2.031 filas en 6 tablas con recibo y compensación determinista verificados).
2026.10.14-1Producción

Carga sintética de revisión en producción (DATA150)

WebPlataforma
Propósito
Habilitar lote sintético autorizado de pruebas con 150 filas completas y distintas por tabla de negocio aplicable para revisión operativa, preservando datos existentes y excluyendo entidades de seguridad o auditoría.
Resultado
Incorporación autorizada por Fran (Opción B) de las 3 tablas regulatorias y de firmas (cmr_signatures, transport_evidence, regulatory_document_artifacts) con 150 firmas MOCK sintéticas autorizadas sin validez legal atribuida, elevando el lote a 70 tablas de negocio objetivo (10.500 filas sintéticas totales). Resolución de observaciones de Codex Review: emparejamiento canónico estricto de tipos y ámbitos regulatorios (deca/deca_es, cmr/cmr_convention, ecmr/ecmr_protocol, pod/efti) para interoperabilidad con los endpoints de acceso (/api/regulatory/artifacts/[artifact]/access) y descarga pública (/regulatory/d/[token]); generación de artefactos sintéticos con payloads PDF y JPEG reales en disco, derivando tamaño exacto y hash SHA-256 de los bytes de prueba. Resolución Ciclo 1 M1: purga total de fallback centinela en loader SQL y dataset; resolución de actor en transport_events a miembro activo OWNER/ADMIN o NULL contractualmente seguro; validación preflight fail-closed en FK externas a auth.users; y ensayo en PostgreSQL 17.11 vivo sin pre-sembrado cubriendo tenant sin miembros, miembro real activo y actor inválido (SQLSTATE 23503) con 100% de integridad. Resolución Ciclo 2 M2/M3/M4: manifiesto canónico RFC-8785 exhaustivo con hashes SHA-256 por cada una de las 10.500 filas anclado al commit 7145665, catalogación formal y justificada de 22 tablas excepcionales sin columna metadata (3.300 filas) vs 48 tablas con marcadores físicos en fila (7.200 filas), cabecera del cargador SQL alineada con 150 firmas MOCK autorizadas sin validez legal atribuida, claves RETURNING en tablas con identidad discriminando skips de inserciones, script verificador reproducible verify_manifest.py y 4 pruebas negativas (falta, extra, duplicado, hash incorrecto). Resolución Ciclo 3 M5: versionado de evidencia local saneada del ensayo PostgreSQL 17.11 en docs/verification/data150-rehearsal-execution-receipt.json (70 tablas, 10.498 filas capturadas efectivamente por RETURNING, status COMMITTED, dataset_hash 28996cacc2535155669e1107f07d8b8bceebfb272d52ce893c6bcc176d9a8a77) con reconciliación documentada de las 2 filas de diferencia por colisión intencionada de clave preexistente en parties y party_addresses (ON CONFLICT DO NOTHING devolviendo 0 filas y excluidas del recibo y del rollback); rollback materializado y reproducible versionado en docs/verification/data150-rehearsal-rollback.sql (401 KB, 66 sentencias DELETE) generado determinísticamente por generate_rollback_from_receipt.ts (mismo input -> mismo hash 88ac89a290a4d48612d67802793c43e521ead24a34d688b25818e37bd1b12a57) en orden topológico inverso y ámbito estricto de tenant; verificación en PostgreSQL 17.11 vivo de aislamiento total de datos preexistentes y ajenos, preservación íntegra y sin debilitar del guard append-only de auditoría (SQLSTATE 55000 en transport_events y operational_events) y contabilidad exacta de residuales protegidos por cascada (cmr_documents y transport_stops con FKs a padres anuladas limpiamente por ON DELETE SET NULL); declaración explícita de binarios locales en disco vs cero objetos en Supabase Storage, cero buckets remotos y cero migraciones de esquema; y reporte formal en docs/verification/data150-rehearsal-report.md con 272/272 tests passing en suite automatizada. Resolución Ciclo 4 y Ciclo 5: derivación programática de la columna Categoría en §6 del reporte desde manifest.exceptional_tables_catalog resolviendo los 18 desajustes (exactamente 22 excepcionales, 44 mutables, 2 inmutables y 2 protegidas por cascada) con test M5 de igualdad estricta de conjuntos; métricas en matriz de inventario alineadas a 993 columnas y 196 FKs de negocio; aserción de fecha exacta 14 oct 2026; y trazabilidad transparente de la procedencia del log del ensayo en PG17. Lote de 10.500 filas ejecutado y confirmado en la base de datos de producción (+150 filas exactas por cada una de las 70 tablas objetivo, 0 filas fuera de alcance modificadas) con recibo y rollback determinista verificados; queda pendiente únicamente la subida opcional de los artefactos binarios de prueba a almacenamiento remoto.
2026.10.09-2Producción

Trazabilidad de artículos desde un código

Web
Propósito
Que con solo un EAN/GTIN, un SKU, el nombre, un lote o un número de serie se pueda reconstruir el recorrido completo de un artículo sin saltar entre pantallas.
Resultado
La pantalla Trazabilidad busca el artículo dentro de la empresa (coincidencia exacta de EAN/GTIN o SKU, lote o serie y, si no, coincidencia parcial con elección del artículo) y muestra en una línea de tiempo filtrable qué pasó, dónde, cuándo y quién: órdenes, albaranes y expedientes; viajes con vehículo y conductor; cargas y descargas en paradas; CMR y sus firmas, fotos e incidencias; despachos de aduana relacionados solo por referencia o MRN exactos; movimientos de almacén con ubicación, lote y operario; stock actual y cambios de los registros. Resume las personas que intervinieron y enlaza con cada viaje, documento y expediente aduanero. Es de solo lectura y avisa cuando un EAN tiene el dígito de control incorrecto. Índices nuevos para las búsquedas inversas.
2026.10.09-1Preproducción

Órdenes interactivas con re-lanzamiento, combos configurables y adjuntos locales

WebPlataforma
Propósito
Renombrar Partidas a Órdenes, habilitar edición y re-lanzamiento de pedidos, configuración dinámica de desplegables (incluyendo cross y picking en servicios) y gestión de adjuntos con ruta local.
Resultado
Navegación y vistas actualizadas a Órdenes, retiro del subtítulo remanente en creación de orden, panel de edición con re-lanzamiento de pedido, configuración de combos con adición/edición/borrado/defecto y modo selección única/múltiple (incorporando cross y picking en servicios), y almacenamiento local configurable para adjuntos.
2026.10.08-4Preproducción

Documentos, Configuración, Trazabilidad y limpieza visual de cabeceras

Web
Propósito
Renombrar ePOD & CMR a Documentos e Integraciones a Configuración, crear la pantalla y menú de Trazabilidad, centrar el botón de cierre en Artículos y retirar los subtítulos explicativos bajo los títulos de pantalla.
Resultado
La navegación principal y cabeceras de pantalla renombran ePOD & CMR por Documentos e Integraciones por Configuración. Se incorpora el nuevo módulo y menú de Trazabilidad para la navegación aguas arriba y aguas abajo en la cadena de suministro. Se eliminan los subtítulos descriptivos bajo los títulos en todas las pantallas. El botón de cierre del modal de alta de artículo se centra y cuadra perfectamente mediante icono SVG y dimensionamiento flex.
2026.10.08-3Producción

Pantallas homogéneas y alta de artículos en ventana

Web
Propósito
Que todas las pantallas de la aplicación compartan la misma cabecera, botones y tarjetas de indicadores que Control Tower, retirar Decision Center y simplificar el maestro de artículos.
Resultado
Control Tower, Partidas, Expedientes, Viajes, Aduanas, Clientes, Artículos, Ofertas y tarifas, Colaboradores, Almacenes, Tracking, Informes, ePOD & CMR, Integraciones y Telemática usan un único componente de cabecera y de tarjetas: mismos colores, tamaños, avatar y botones, que ya no se parten en dos líneas, e identificadores largos que no se cortan. Decision Center desaparece del menú y sus enlaces antiguos llevan a Control Tower. Artículos muestra solo el grid; el alta y la edición se abren en una ventana superpuesta con el botón «+ Nuevo artículo» o la tecla +, y permite «Crear y añadir otro» conservando cliente y unidad.
2026.10.08-2Producción

Paridad estricta de menú lateral y layout responsive

Web
Propósito
Garantizar que el menú lateral se mantenga siempre anclado a la izquierda en todos los viewports (desktop, tablet 701px y móvil), eliminando cualquier conversión a menú horizontal superior y purgando sidebars duplicados residuales.
Resultado
El layout general del dashboard y de demo preserva la barra lateral izquierda en todos los anchos de pantalla mediante rejilla canónica y adaptación compacta sin alteración de jerarquía. Se eliminan las barras laterales duplicadas internas en Aduanas, ePOD/CMR, módulos maestros, Importar, Velocity y RecordEditor, y se limpian las reglas de anulación CSS correspondientes.
2026.10.08-1Producción

Interfaz coherente y demostración fiel

Web
Propósito
Validar pantallas sin sustituir la estructura de la aplicación ni utilizar datos u operaciones reales, con controles de compilación y revisión antes de la publicación.
Resultado
La demostración reutiliza el menú completo, Control Tower, módulos y formularios de la aplicación, con datos ficticios y acciones simuladas sin persistencia. Se unifican títulos, botones y paneles y se corrigen contrastes ilegibles. El acceso sin login queda limitado al entorno de preproducción habilitado explícitamente; producción conserva su autenticación y sus fuentes operativas. El alta de un CMR real empieza vacía y permite seleccionar clientes activos de la empresa, sin referencias ilustrativas precargadas. Los listados compartidos respetan el contexto de empresa autenticado. Pendiente de validación final y despliegue productivo.
2026.10.07-3Preproducción

Direcciones nuevas al grabar una partida

Web
Propósito
Permitir grabar una partida aunque el punto de recogida o de entrega no exista todavía en el maestro de direcciones del cliente.
Resultado
En Nueva partida, recogida y entrega ofrecen «Nueva dirección». La dirección se guarda con la partida y, solo si el usuario marca la casilla, se añade al maestro de direcciones del cliente para futuras partidas. Si la partida no llega a guardarse, las direcciones creadas se descartan.
2026.10.07-2Preproducción

Catálogo maestro de artículos

WebPlataforma
Propósito
Llevar a la interfaz el maestro de artículos creado en la fundación de datos maestros y usarlo al grabar partidas.
Resultado
Nueva pantalla de Artículos con SKU, GTIN, cliente propietario, unidad base, pesos, dimensiones, volumen y estado, con altas y cambios limitados por rol y empresa y registrados en auditoría; un artículo no puede cambiar de cliente propietario y las ediciones simultáneas se detectan. Nueva partida ofrece los artículos activos del cliente. Todas las referencias a artículos quedan ligadas a la misma empresa también en base de datos.
2026.10.07Preproducción

Producción sin datos ficticios

Web
Propósito
Garantizar que el entorno de producción solo muestra información real, manteniendo los datos de demostración en preview y desarrollo para presentaciones comerciales.
Resultado
Un único interruptor de entorno decide si se permiten datos ilustrativos y falla de forma segura: un entorno desconocido se trata como producción. En producción, Control Tower muestra recuentos y últimos registros reales del tenant; Decision Center, Colaboradores e Integraciones muestran estados vacíos honestos; la ficha ilustrativa de colaborador no está disponible; un fallo de lectura se muestra como no disponible en lugar de como cero, y los formularios de correo ya no llevan direcciones precargadas. Preview y desarrollo conservan la demostración.
2026.10.02Producción

Fundación de Datos Maestros y Estructura WMS

Plataforma
Propósito
Establecer la estructura maestra de catálogo (PRD, PACK, UOM), homologación y seguros de transportistas (CAR), multiactividad/entidades legales (ORG, ROL) y gestión de ubicaciones físicas y movimientos lógicos con trazabilidad horaria (WMS).
Resultado
Migración 20261002233000_master_data_foundation aplicada y verificada en producción: once nuevas tablas con aislamiento tenant RLS, catálogo de artículos con jerarquía de embalaje y UOM, perfil y pólizas de transportistas, entidades societarias y roles de partes, ubicaciones físicas de almacén y registro auditable de movimientos internos con marcas de tiempo y operador. La función interna que calcula la duración conserva su trigger, pero queda bloqueada como RPC directa para usuarios anónimos y autenticados.
2026.09.24Producción

CMR impreso legible y QR escaneable

Web
Propósito
Corregir el tamaño de letra y del código QR del CMR impreso y exportado, medido sobre un documento real y no sobre una impresión subjetiva.
Resultado
El export real medido salía con el cuerpo de casilla a 4,35 pt, las cabeceras de mercancía a 3,60 pt y un QR de 7,5 mm de módulos dentro de una caja de 10 mm pegada al marco. La corrección lleva el cuerpo a 7,5 pt, los rótulos a 6 pt, las celdas de mercancía a 6,75 pt y el QR a 22 mm con separación real del marco, aprovechando el espacio en blanco que ya tenían las casillas. Solo cambia el bloque @media print; datos, API, QR payload y la maquinaria de continuación multipágina no se tocan. Una réplica estática renderizada con Chromium 141 reprodujo exactamente los tamaños del documento real antes del cambio y confirmó los nuevos después, manteniendo una sola hoja A4. Falta confirmación en impresora física y en Firefox y Safari. Confirmado en producción sobre una impresión real: el QR se lee con lector y el diseño y el layout impreso quedan conformes.
2026.09.12Producción

A2 con fuente tarifaria reproducible

Plataforma
Propósito
Recuperar en el repositorio el requisito de unicidad que ya fue ejecutado en producción y que necesita la clave foránea compuesta del motor tarifario.
Resultado
PR #72 quedó integrada y desplegada con CI y Vercel producción verdes sobre la misma revisión. La migración versionada vuelve a crear el índice único antes de la clave foránea y una prueba protege esa presencia y orden. PR #74 integró y desplegó el contraste literal-safe de los 32 pares de la captura registrada, sin ejecutar SQL ni alterar el historial. El artefacto permite recomputar Git y contrastar los digests remotos registrados, no reconstruir el SQL remoto ni verificar producción de nuevo. A2 permanece abierto para la reconciliación no productiva y el replay controlado antes de proponer cualquier alineación de provenance.
2026.09.11Producción

TLM-1 con privacidad fail-safe ante configuración incompleta

WebPlataforma
Propósito
Evitar que una ausencia del secreto de hashing convierta silenciosamente la telemetría en un canal de persistencia de IP en claro.
Resultado
Corrección desplegada y verificada en producción: requests y eventos de acceso usan una única identidad de red; con secreto dedicado se conserva IP con HMAC SHA-256 y, sin secreto, ambos campos quedan en null mientras el resto de la telemetría continúa best-effort. CI y Vercel producción quedaron verdes y un smoke posterior al despliegue confirmó una petición nueva con IP e ip_hash nulos mientras el secreto sigue sin configurar. La configuración y verificación del secreto dedicado y de la allowlist OWNER permanece como gate separado antes de cerrar TLM-1. La retención de IP sigue siendo oportunista y no se presenta como cron garantizado.
2026.09.10.2Producción

CMR multipágina con identidad y cabeceras repetidas

Web
Propósito
Hacer que las hojas de continuación del CMR mantengan contexto documental visible sin sacrificar integridad, paginación ni el caso normal de una sola hoja.
Resultado
PR #66 está en producción. Las mercancías 6-12 usan tabla semántica con thead repetible, identidad CMR y encabezados de columna en cada hoja que contiene mercancía. CI y Vercel producción quedaron verdes sobre la misma revisión y fornexasc.com sirve el cambio. La evidencia manual con Chromium 144.0.7559.96 conservó 42/42 y 80/80 líneas, soportó una fila excepcionalmente larga sin hoja vacía y mantuvo 1 página en el fixture sintético normal. El marco físico por hoja queda como mejora visual futura no bloqueante.
2026.09.10Producción

Domicilio FISCAL canónico para documentación regulatoria

WebPlataforma
Propósito
Separar el domicilio legal del cliente de sus centros operativos y evitar que DeCA infiera datos jurídicos desde recogidas o entregas.
Resultado
PR #64 y la migración canonical_fiscal_address están en producción mediante rollout DB-first. El modelo impone FISCAL canónico único por empresa, auditoría transaccional y permisos OWNER/ADMIN; la emisión DeCA exige una dirección FISCAL activa seleccionada explícitamente. CI #270 y Vercel producción quedaron verdes en el mismo SHA y la migración no creó datos FISCAL ni artefactos regulatorios por sí sola. El E2E HTTP autenticado con fixture sintético completo permanece como gate separado.
2026.09.09Producción

CMR resistente a recortes por contenido extenso

Web
Propósito
Preservar la integridad del CMR impreso cuando nombres, direcciones, ADR o líneas de mercancía exceden la capacidad de la primera hoja A4.
Resultado
Corrección desplegada y verificada: se mantiene A4 portrait con margen de 9 mm y ancho útil de 192 mm, pero 279 mm es altura mínima y no un límite que oculte contenido. CI #253 y Vercel producción quedaron verdes en el merge SHA de PR #62; una verificación controlada con Chromium confirmó 1 página para un CMR normal y 2 páginas para un caso extremo con 28 líneas de mercancía y 10 ADR, preservando todos los bloques y firmas sin clipping visible.
2026.09.08.3Canal interno

Revisor DeepSeek recuperado en Slack

Plataforma
Propósito
Restablecer la revisión independiente cuando los handoffs usan la forma operativa de HEAD exacto o una mención directa al bot.
Resultado
Canal interno recuperado y verificado de extremo a extremo: el reviewer reconoce ambas formas de HEAD, distingue solicitudes humanas de respuestas propias, usa explícitamente DeepSeek V4 Pro y volvió a publicar una revisión pendiente en el canal autorizado sin ampliar permisos.
2026.09.08.2Producción

CMR A4 con ocupación documental equilibrada

Web
Propósito
Aprovechar correctamente el folio A4 impreso y acercar el CMR de FORNEXA a las proporciones de un documento operativo real sin copiar su estética heredada.
Resultado
Corrección desplegada: margen de impresión de 9 mm, superficie útil 192×279 mm, reparto vertical proporcional entre las casillas 1-21 y bloque de firmas 22-24 anclado al final de página. Se elimina el gran vacío inferior y se preservan QR, datos, firmas y estructura funcional existentes.
2026.09.08Producción

Firmas CMR vinculadas a las partes reales

Web
Propósito
Evitar que el CMR impreso o exportado atribuya a FORNEXA el sello del expedidor o afirme firmas electrónicas inexistentes.
Resultado
Corrección desplegada: las casillas 22, 23 y 24 usan las partes reales del CMR y el estado de firma canónico por rol sender/carrier/consignee. La casilla 22 deja de usar el sello fijo provisional de FORNEXA y la casilla 23 deja de declarar una firma sin evidencia.
2026.09.07Producción

Lifecycle DeCA de siete días corregido

WebPlataforma
Propósito
Alinear la vigencia de la URL pública DeCA con la Resolución de 5 de junio de 2026 y eliminar el antiguo techo de siete días tras la finalización del servicio.
Resultado
P0-A desplegado y verificado en producción: public_until debe cubrir al menos siete días naturales tras service_completed_at, las ventanas superiores siguen permitidas y el acceso permanece válido hasta public_until inclusive. CI y Vercel quedaron verdes, el constraint productivo de Supabase fue sustituido y el resolver público mantiene fail-closed, token opaco hasheado y descarga privada verificada.
2026.09.05.3Preproducción

Reintento real ante fallos transitorios de acceso

Web
Propósito
Evitar que un fallo puntual de configuración o red bloquee todos los intentos posteriores de inicio de sesión en la misma pestaña.
Resultado
Corrección en preproducción: un fallo al preparar el cliente de acceso ya no queda memorizado; el siguiente intento vuelve a conectar y el mensaje indica cómo recuperar la sesión sin exponer detalles internos.
2026.09.05.2Producción

Impresión CMR condicionada al QR real

Web
Propósito
Evitar PDFs o impresiones CMR con un QR pendiente o no disponible, sin confundir un fallo transitorio con una capability caducada.
Resultado
Corrección desplegada: imprimir y exportar esperan la carga confirmada del QR exacto; mientras se prepara o falla, las acciones permanecen bloqueadas, la imagen rota se sustituye por un estado legible y el usuario puede reintentar la carga.
2026.09.05Preproducción

DeCA-2 — artefactos privados y acceso público controlado

WebPlataforma
Propósito
Separar la conservación probatoria del PDF regulatorio de su exposición temporal y evitar URLs públicas o credenciales persistentes de Storage.
Resultado
Implementación en preproducción: bucket privado PDF-only de 5 MB, alta tenant-aware OWNER/ADMIN de versiones inmutables, token público opaco almacenado solo como SHA-256, QR a ruta FORNEXA y resolución fail-closed que revalida vigencia, tamaño y hash antes de servir el PDF. Crear el artefacto no lo publica; public_until debe configurarse explícitamente. M8, motor PDF nativo, lifecycle operativo y eCMR permanecen como gates separados.
2026.09.04Producción

Logotipo de acceso resistente a clipping de glifos

Web
Propósito
Eliminar el recorte de la pata inferior derecha de la A de 4NXA observado en producción y reforzar el control de regresiones visuales.
Resultado
Fix desplegado y verificado en producción: el SVG amplía su margen intrínseco y declara overflow visible en el elemento raíz; CI #191, el Preview exacto y la validación visual de Fran quedaron verdes, y fornexasc.com sirve el SVG corregido sin errores runtime. El protocolo UX exige desde ahora evidencia visual desplegada antes de cerrar cambios de layout, tipografía, SVG, responsive o impresión.
2026.09.03.5Producción

Impresión CMR sin interfaz de navegación

Web
Propósito
Asegurar que imprimir o exportar a PDF desde ePOD & CMR produzca únicamente el documento A4, sin sidebar ni chrome del dashboard.
Resultado
Fix desplegado y verificado en producción: el layout del dashboard elimina la navegación durante media print y libera el stage a ancho completo, preservando el contrato A4 específico del CMR.
2026.09.03.4Producción

QR CMR accesible desde sesión interna

WebPlataforma
Propósito
Completar el acceso tenant-aware del detalle CMR para que el QR se renderice también cuando el usuario interno no conserva la capability local.
Resultado
Fix desplegado y verificado en producción: la ruta QR mantiene capability/sesión pública como vía primaria, añade fallback exclusivo por getAuthenticatedContext() con lookup cmr_number + tenant_id, rechaza access_key ausente, revocada, caducada o con expiración inválida y conserva 401 genérico sin REVIEW context ni apertura cross-tenant.
2026.09.03.3Producción

Acceso interno tenant-aware a CMR

WebPlataforma
Propósito
Permitir que usuarios internos autenticados abran CMR de su organización sin depender de una capability guardada en el navegador.
Resultado
Fix desplegado y verificado en producción: capability pública preservada como vía primaria, fallback interno limitado a getAuthenticatedContext() y lookup por cmr_number + tenant_id, con respuesta genérica para evitar enumeración cross-tenant.
2026.09.03.2Producción

Fundación documental regulatoria DeCA-1

Plataforma
Propósito
Preparar la emisión regulatoria sin duplicar el modelo canónico CMR ni acoplar la conservación del PDF a la URL pública.
Resultado
Base documental regulatoria desplegada en producción con document_kind/regulatory_scope controlados, artefactos PDF versionados e inmutables y credenciales públicas con ciclo de vida separado.
2026.09.03Producción

Histórico operativo append-only T1

Plataforma
Propósito
Impedir que eventos de transporte y operación pierdan valor probatorio por actualizaciones o borrados posteriores.
Resultado
Los históricos de transporte y operación quedan en producción con lectura autenticada, inserción server-side, mutaciones directas revocadas y guardas de base de datos contra UPDATE/DELETE accidentales.
2026.09.01.3Producción

Logotipo de acceso sin recortes

Web
Propósito
Completar la corrección visual del acceso aislando el logotipo SVG de las dimensiones heredadas de la marca global.
Resultado
La pantalla de acceso muestra el logotipo FORNEXA completo, con su proporción natural y sin fondos duplicados ni recortes.
2026.09.01.2Canal interno

Telemetría privada de plataforma TLM-1

WebPlataforma
Propósito
Crear una base propia para analizar tráfico, accesos y recorridos de navegación sin capturar contenido sensible ni bloquear peticiones reales.
Resultado
FORNEXA incorpora captura best-effort de requests, eventos de acceso y rutas por sesión, persistencia aislada, retención automática y un panel interno protegido por OWNER y allowlist.
2026.09.01Producción

Corrección visual del acceso

Web
Propósito
Eliminar la superposición del wordmark heredado sobre el logotipo SVG de la pantalla de acceso.
Resultado
El login neutraliza el fondo global heredado y muestra una única identidad FORNEXA sin duplicación visual.
2026.08.27Producción

Base tarifaria aislada por organización

WebPlataforma
Propósito
Preparar el cálculo de precios para crecer sin mezclar condiciones comerciales entre clientes.
Resultado
La estructura de tarifas, zonas, escalados y recargos queda versionada, auditable y protegida por organización.
2026.08.26Producción

Maestro de clientes trazable y operativo

WebPlataforma
Propósito
Convertir la ficha de cliente en la fuente fiable de condiciones comerciales, operativas y de riesgo.
Resultado
Contactos, servicios, facturación, bloqueos, direcciones y tarifas versionadas quedan persistidos, auditados y conectados con los pedidos.
2026.08.25.3Producción

Geografía mundial en direcciones

WebPlataforma
Propósito
Extender el maestro de direcciones más allá de una cobertura limitada de países y regiones.
Resultado
Países y subdivisiones administrativas quedan normalizados, localizados y validados con reglas postales cuando existe correspondencia fiable.
2026.08.25.2Producción

Ficha de cliente integrada en el UX actual

Web
Propósito
Eliminar la última experiencia visual heredada del maestro de clientes.
Resultado
Identificación, direcciones, ADR y servicios comparten ahora el sistema claro, responsive y accesible de FORNEXA.
2026.08.25Producción

Catálogo de servicios y ayudas contextuales

WebPlataforma
Propósito
Evitar que coberturas heredadas aparezcan como servicios y mantener los formularios alineados con ayuda accionable.
Resultado
Catálogo depurado, campos alineados y avisos enlazados directamente a la configuración correspondiente.
2026.08.23.2Producción

Direcciones reutilizables y formularios explícitos

WebPlataforma
Propósito
Evitar selecciones aparentes y centralizar los puntos operativos sin duplicar direcciones.
Resultado
Controles alineados, estados Seleccionar, direcciones compartibles por cliente y uso controlado desde su configuración.
2026.08.23Producción

Clasificación ADR trazable por artículo

WebPlataforma
Propósito
Acelerar la identificación de mercancías peligrosas sin permitir códigos regulatorios manuales.
Resultado
Perfiles por cliente, artículos reutilizables, clasificación por línea, advertencias configurables, revisiones y auditoría.
2026.08.22Producción

Continuidad de sesión y acceso

WebPlataforma
Propósito
Evitar bloqueos ante sesiones revocadas, incompletas o caducadas.
Resultado
Recuperación segura de sesión, limpieza de credenciales inválidas y regresiones cubiertas.
2026.08.21Producción

Primera configuración y enlaces seguros

Web
Propósito
Completar los pasos iniciales de un tenant sin exponer accesos directos desprotegidos.
Resultado
Navegación contextual, configuración paso a paso y protección de rutas según madurez del espacio de trabajo.
2026.08.20Producción

Recuperación de acceso entre dispositivos

WebPlataforma
Propósito
Separar la verificación del navegador que solicita el correo.
Resultado
Generación y validación de recuperación en servidor, redirecciones y caché endurecidas.
Mobile 0.7.0Canal interno

Viajes operativos en movilidad

MobilePlataforma
Propósito
Conectar al conductor con viajes, paradas y evidencias reales de FORNEXA.
Resultado
Acceso por capacidad, deep links, QR privado, incidencias, firma, POD y cierre sincronizado.
2026.08.19Producción

Operación real aislada por tenant

WebPlataforma
Propósito
Sustituir recorridos de demostración y asegurar el perímetro multiempresa.
Resultado
Partidas, expediciones, viajes y CMR con contexto tenant, permisos y rutas internas protegidas.
2026.08.18Hito de producto

Modelo CMR y datos operativos reales

WebPlataforma
Propósito
Llevar la operativa principal desde prototipos locales a persistencia compartida.
Resultado
CMR relacional, listados Supabase, cardinalidades validadas y acceso autenticado en servidor.
Suite 0.6.0Producción

Base operacional compartida

WebMobilePlataforma
Propósito
Unificar datos web y movilidad sobre una estructura preparada para crecer.
Resultado
Modelo operacional, migración de datos locales y FORNEXA Mobile 0.6.0.
2026.08.11Hito de producto

Identidad FORNEXA consistente

WebMobile
Propósito
Consolidar una presencia visual reconocible en todos los puntos de contacto.
Resultado
Marca 4NXA unificada, navegación persistente y sistema visual claro y responsive.
2026.08.08Hito de producto

Conectividad operativa

WebMobilePlataforma
Propósito
Acercar documentación, telemática y trabajo del conductor.
Resultado
Hub telemático, viabilidad de rutas, flujo ADR y conexión CMR–Mobile.
2026.08.07Hito de producto

Integraciones, aduanas y relación comercial

WebPlataforma
Propósito
Extender FORNEXA más allá de la ejecución de transporte.
Resultado
Connectivity Hub, workspace aduanero, CRM de correo y servicios por entidad.
Mobile betaCanal interno

Primer flujo de conductor y ePOD/CMR

MobileWeb
Propósito
Validar la continuidad documental desde oficina hasta carretera.
Resultado
Beta Android interna, paradas guiadas, CMR imprimible y exportación A4.
2026.08.04Hito de producto

Exploración de datos operativos

Web
Propósito
Hacer utilizables listados crecientes de expediciones y maestros.
Resultado
DataGrid reutilizable con filtros, ordenación y personalización.
2026.07.31Hito de producto

Servicios y replanificación

Web
Propósito
Representar catálogo logístico y decisiones de cambio durante el viaje.
Resultado
Catálogo estructurado, espacio de servicios y flujo de replanificación.
2026.07.29Hito de producto

Decisión e incorporación de datos

Web
Propósito
Acelerar el arranque operativo y apoyar decisiones de planificación.
Resultado
Decision Center, importación Excel y editores relacionales.
FundaciónHito de producto

Nacimiento de FORNEXA

WebPlataforma
Propósito
Establecer el núcleo de una suite de control de cadena de suministro.
Resultado
Aplicación Next.js, acceso, onboarding, tracking y primera Control Tower navegable.