CHANGELOG
Lo nuevo en Vejoc.
Desde la versión 1a, cada actualización se documenta con la misma estructura para que sea fácil entender qué cambió y por qué.
Nuevas funciones y mejoras
- Registros estructurados de eliminación, movilidad, sueño, rondas y participación.
- Planificación de menús, preparación de comidas, programación de actividades y bienestar mediante registros por establecimiento.
- Pruebas automáticas de acceso, permisos, formularios, SQL simulado, estructura de migración y catálogo responsive.
Correcciones de errores
- Una cuenta familiar sin residentes autorizados no obtiene facturas de todo el hogar.
- El portal de residentes consulta únicamente el residente asociado a la cuenta.
- Las operaciones de dieta y transcripción de orden ahora exigen permisos clínicos específicos y profesional prescriptor identificado.
Nuevas funciones y mejoras
- Seis categorías: Dirección, Clínica, Cuidado directo, Administración, Servicios y bienestar, Portales y auditoría.
- Sesenta fichas con búsqueda instantánea, filtrado por área, Mis apps, favoritas locales y pantalla de detalles.
- Navegación lateral simplificada a seis categorías y catálogo público actualizado.
Nuevas funciones y mejoras
- Pase eMAR y Hoy con porcentajes de administraciones reales y excepciones separadas.
- En excepciones de medicamentos se registra el motivo y la dosis administrada queda vacía, no como dosis entregada.
- Notas por tipo conservadas y bloqueo contra doble envío de una firma online.
Correcciones de errores
- Estados de eMAR inválidos ya no se convierten a Administrado.
- Órdenes fuera de su vigencia no se incluyen como dosis programadas activas ni se pueden documentar.
- La sincronización offline de medicamentos conserva conflictos para revisión cuando el estado o el momento no son válidos.
Rendimiento y confiabilidad
- Caché estática PWA versionada; protección Apache adicional de archivos internos.
- Cambios no probados contra infraestructura de producción; liberar solo después de QA en staging.
Nuevas funciones y mejoras
- Modo claro y oscuro con cambio instantáneo en todo el entorno autenticado.
- Búsqueda client-side inmediata en residentes, pase de medicamentos, tareas y vista móvil de turnos.
- Avisos flotantes accesibles sin datos sensibles y sin alarmas sonoras automáticas.
- Confirmación asíncrona de tareas con actualización optimista y reversión ante errores.
Cambios de funcionalidad
- Las firmas del eMAR continúan requiriendo verificación real del servidor, 5 Correctos y controles de seguridad.
- La cola offline y los borradores clínicos utilizan cifrado AES-GCM y clave no exportable por usuario, hogar y establecimiento; valida su identidad al sincronizar.
- Sincronización al recuperar conectividad, reintentos graduales y conservación cifrada de conflictos hasta revisión manual del usuario autorizado.
Correcciones de errores
- Eliminados los borradores clínicos en texto plano de localStorage, sustituidos por recuperación local cifrada; suprimido el capturador offline duplicado.
- Capturas heredadas 1h sin identidad asociada permanecen en cuarentena local hasta revisión; no se reasignan.
- Se conserva la estructura de base de datos y los hotfixes de inmunización 1h-r4.
Rendimiento y confiabilidad
- Shell Electron optimizado y PWA con caché de recursos estáticos, sin cachear páginas clínicas como HTML.
- Actualizaciones de estado en UI sin recargar toda la página en tareas compatibles.
- Se requiere validación de seguridad, reglamentaria, desempeño y aceptación en ambiente real antes de producción.
Nuevas funciones y mejoras
- Diez aplicaciones canónicas: Residentes, Cuidado, Medicamentos, Personal, Cumplimiento, Operaciones, Finanzas, Admisiones, Familia e Inteligencia.
- Vejoc Core concentra Hoy, Avisos, Mis pendientes, Buscar, Cuenta y Configuración fuera del catálogo de aplicaciones.
- Cada aplicación abre en una sola pantalla con contexto Hogar/Residente/Personal, indicadores concretos, acciones directas y cola de atención.
- PWA y app de escritorio usan accesos directos a las nuevas aplicaciones canónicas.
- Residente incorpora un expediente clínico 360 con vitales, problemas y condiciones, medicamentos, alergias, notas, inmunizaciones y evaluaciones.
- Nuevo examen físico interactivo con cuerpo completo anterior/posterior, regiones seleccionables y hallazgos clínicos documentables.
- La matriz regulatoria añade Ley 148-2025 y Ley 79-2025 y actualiza su fecha de verificación.
Cambios de funcionalidad
- Los códigos de las 34 extensiones previas se conservan como alias para no romper favoritos, enlaces ni suscripciones existentes.
- Aplicaciones deja de funcionar como una tienda interna y se convierte en un launcher operacional de diez áreas.
- La oferta pública nueva se concentra en Vejoc OS completo; licencias históricas individuales continúan siendo compatibles.
- El escritorio Electron abre el app shell y añade atajos nativos a Hoy, Aplicaciones, Buscar y Configuración.
- La ficha del residente prioriza ocho listas clínicas y conserva información administrativa como navegación secundaria.
Correcciones de errores
- Favoritos antiguos se canonizan automáticamente hacia las diez aplicaciones nuevas.
- Se eliminan referencias operacionales del shell a códigos de extensiones descontinuados.
- Calidad y confiabilidad valida exactamente diez aplicaciones canónicas en vez del catálogo anterior.
- El examen físico y las inmunizaciones muestran una advertencia segura si la migración 1h todavía no se ha aplicado, en vez de romper el expediente.
Rendimiento y confiabilidad
- La arquitectura server-rendered-first y la mejora progresiva continúan intactas.
- eMAR conserva 5 Correctos, alertas de seguridad, PRN, override documentado y sincronización offline.
- No se eliminan datos históricos; la consolidación de 34 a 10 se hace por alias y composición de funciones.
- La migración 1h añade de forma idempotente hallazgos de examen físico e inmunizaciones del residente.
Nuevas funciones y mejoras
- Un solo stylesheet de runtime 1g para eliminar carreras de cascada entre capas históricas en web y móvil.
- Nuevo sistema visual canónico para mantener tipografía, superficies, formularios, tablas, navegación y workspaces consistentes.
- Panel Calidad y confiabilidad con salud técnica, seguridad, extensiones, respaldos y controles de Puerto Rico en una sola vista.
- Health check público minimizado para monitoreo sin exponer rutas internas ni detalles sensibles.
- Request ID por solicitud para correlacionar fallas de interfaz con runtime-errors.log y el log del servidor.
- Módulos canónicos para catálogo de extensiones, calidad, contexto, IA, idioma, changelog y configuración pública.
Cambios de funcionalidad
- Las métricas de extensiones registran errores de consulta y muestran advertencia en vez de convertir una falla silenciosa en un cero aparentemente válido.
- La navegación y las páginas públicas/autenticadas comparten el mismo sistema de diseño negro, legible y responsive.
- La navegación móvil queda en cinco destinos estables e incluye Ajustes cuando el rol tiene acceso.
- Configuración muestra todas sus secciones en móvil sin depender de desplazamiento horizontal oculto.
- Reglamento 9720, SULME y renovación preventiva de licencia quedan visibles en el control de calidad regulatoria.
- Los nombres históricos de archivos quedan como stubs de compatibilidad, mientras Bootstrap usa nombres canónicos estables.
Correcciones de errores
- Se elimina la dependencia conceptual de archivos nombrados por versiones para las capas principales del sistema.
- Se alinea el service worker, asset cache-busting, manifest, config y VERSION con la misma versión visible 1g.
- Se corrige un atributo de launcher que podía interceptar enlaces móviles que no eran Apps, incluyendo Ajustes.
- Se eliminan del HTML activo las clases visuales de releases anteriores para que únicamente 1g determine la apariencia.
- Se evita exponer paths locales y mensajes internos de base de datos en health.php.
- Se unifican estados en español en controles de calidad y badges compartidos.
Rendimiento y confiabilidad
- Error boundary global para excepciones no capturadas y errores fatales con referencia de solicitud.
- Verificaciones de PHP, extensiones, storage, base de datos, migraciones, tablas críticas, service worker y HTTPS.
- QA de release incluye sintaxis PHP/JS, JSON, CSS, rutas públicas, contrato de 34 extensiones, eMAR, offline y controles regulatorios.
- No elimina datos históricos ni renombra identificadores de migración existentes.
Nuevas funciones y mejoras
- Las extensiones nuevas detectan una migración incompleta y muestran una instrucción clara en vez de producir un error interno.
- El selector de contexto obtiene la habitación desde cama y habitación cuando el esquema canónico no tiene una columna room en residentes.
Cambios de funcionalidad
- Los indicadores usan las columnas canónicas de asistencia, pagos, admisiones, mantenimiento, transportación y alertas del residente.
- Las actividades de admisión se cuentan mediante el lead correspondiente para conservar aislamiento por organización y hogar.
Correcciones de errores
- Corregido el error fatal al abrir cualquier extensión causado por SELECT residents.room en una tabla que no contiene esa columna.
- Corregido check_in → check_in_at en ponches.
- Corregido paid_at → received_at en pagos.
- Corregido admission_leads.status → admission_leads.stage.
- Corregido admission_activities.created_at → activity_at.
- Corregidos estados Pendiente/Completado en solicitudes y adiestramientos.
- Corregidos indicadores que trataban maintenance_assets y fleet_vehicles como si tuvieran una columna active.
Rendimiento y confiabilidad
- 34/34 extensiones conservadas.
- 761/761 controles de QA por extensión aprobados.
- Las páginas nuevas verifican sus tablas antes de ejecutar consultas.
- No requiere una migración 1f; si la migración 1e quedó pendiente, el actualizador la ejecuta durante la verificación de 1f.
Nuevas funciones y mejoras
- Cada extensión abre en una sola pantalla con indicadores, acciones y trabajo que requiere atención.
- Selector de contexto por hogar, residente y personal para mantener la misma entidad mientras se navega.
- Vejoc Clips: videos cortos verticales, feed Para ti, carga progresiva y recomendaciones por intereses e interacción.
- Conexiones y grupos: solicitudes, conexiones aceptadas y grupos comunitarios.
- Mensajería privada: texto y audios cifrados de extremo a extremo en dispositivos registrados, chats grupales y llamadas privadas WebRTC.
- Guía local: hogares, opiniones, lugares guardados y rutas mediante Google Maps o Apple Maps.
- Vejoc IA y Productividad: preguntar, redactar, resumir, generar ideas, analizar datos y automatizar trabajo.
Cambios de funcionalidad
- Las explicaciones largas salen de la vista principal y pasan a tooltips/ayuda contextual.
- Las funciones de una extensión se muestran como acciones directas, no como otra capa de navegación.
- La cantidad comercial de extensiones sube de 30 a 34 y todas continúan dentro de Vejoc OS.
- IA generativa externa es opcional y usa Responses API solamente cuando el servidor tiene OPENAI_API_KEY configurada; Vejoc mantiene modo local sin esa dependencia.
Correcciones de errores
- El número de extensiones en Suscripción deja de estar hard-coded y se calcula desde el catálogo canónico.
- Los nuevos módulos heredan RBAC, tenant scope, auditoría y entitlements del shell de Vejoc.
Rendimiento y confiabilidad
- Nuevo QA por extensión cubre 34/34 módulos y valida rutas, permisos, CSRF, auditoría, tenant scope y workflows competitivos.
- Mensajería guarda ciphertext y llaves de contenido envueltas por participante; el servidor no necesita el texto claro para entregar mensajes.
- La migración 1e es aditiva y crea solamente las tablas necesarias para comunidad, videos, mensajería y guía local.
Nuevas funciones y mejoras
- Nueva página de inicio inspirada en la jerarquía de productos SaaS modernos: encabezado limpio, producto visible de inmediato, principios de diseño y flujos clínicos destacados.
- Botón “Limpiar” en el escritorio y en Configuración para borrar caché, cookies, almacenamiento local, IndexedDB y service workers del navegador.
- Capa de lenguaje clínico en español para estados, términos médicos y áreas operacionales.
- Copias con lenguaje familiar para Puerto Rico, incluyendo turnos, ponches, pase de medicamentos, responsables y hogar.
Cambios de funcionalidad
- El sitio público reduce ruido visual y usa superficies negras, bordes sutiles, tipografía grande y demostraciones del producto como elemento principal.
- Los textos de sistema que todavía lleguen en inglés desde datos históricos se normalizan visualmente al español.
- Las categorías del historial de cambios pasan completamente a español.
Correcciones de errores
- Se corrige la versión fija “v1a” que aún aparecía en el pie del menú lateral.
- La limpieza local cierra la sesión de forma segura y usa Clear-Site-Data cuando el navegador lo permite.
- Se evita que una caché o service worker viejo mantenga archivos visuales de versiones anteriores después de una limpieza forzada.
Rendimiento y confiabilidad
- La limpieza local tiene respaldo manual para navegadores con soporte parcial de Clear-Site-Data.
- El flujo borra Cache Storage, localStorage, sessionStorage, IndexedDB y registros de service worker antes de volver a Acceder.
- No requiere migración SQL sobre 1c.
Nuevas funciones y mejoras
- Nueva página canónica /aplicaciones con todas las aplicaciones en una lista directa y buscable.
- Demo público enfocado en cinco tareas: vitales, medicamento, incidente, turno y admisión.
- Header público simplificado a Producto, Aplicaciones, Precios, Recursos, Demo, Acceder y Probar gratis.
- QA público de release valida versión, precios, rutas, CTAs, idioma y contenido obsoleto.
Cambios de funcionalidad
- Toda la información pública de versión, precios, descuento, prueba y cantidad de aplicaciones proviene de una sola configuración.
- Homepage reducido para priorizar hero, beneficios, producto, seis aplicaciones destacadas y precio.
- Roles se agrupa en seis experiencias principales en vez de decenas de perfiles expuestos al mismo tiempo.
- Registro inicial reducido a cinco datos; licencia, capacidad y detalles del hogar pasan al onboarding.
- El modelo comercial público queda limitado a aplicaciones individuales o Vejoc OS.
Correcciones de errores
- Se eliminan referencias públicas a versiones históricas que podían hacer parecer el producto inconsistente.
- Aplicaciones deja de depender de anchors del homepage y obtiene una ruta pública estable.
- Se eliminan del storefront modelos de precio antiguos y categorías intermedias obligatorias para descubrir aplicaciones.
Rendimiento y confiabilidad
- Las nuevas aplicaciones aparecen automáticamente en /aplicaciones porque la página usa el catálogo canónico.
- Versiones, pricing y CTAs públicos comparten una fuente de verdad para evitar drift entre páginas.
- El QA público puede fallar el release si reaparecen versiones, precios o selectores de idioma obsoletos.
- No requiere migración SQL sobre 1b.
Nuevas funciones y mejoras
- Registrar Vitales usa un panel interactivo con resumen en vivo, progreso, dolor 0–10 y alertas visuales antes de guardar.
- El menú de escritorio adopta una navegación vertical persistente tipo backend de WordPress, manteniendo la identidad visual de Vejoc.
- Apps continúa mostrando extensiones una por línea y las funciones de cada extensión se presentan como una lista directa.
- El buscador global prioriza resultados reales cuando el usuario escribe una consulta.
Cambios de funcionalidad
- Los atajos estáticos se ocultan mientras hay una búsqueda activa para no tapar residentes, empleados, extensiones u otros resultados.
- Las páginas autenticadas reducen descripciones largas y muestran primero acciones, nombres y estados.
- Las superficies navy del backend se sustituyen por negro y negro elevado sobre la galaxia animada.
- La instalación PWA vuelve a usar la experiencia nativa del navegador en vez de bloquear el banner por defecto.
Correcciones de errores
- Se corrige Response.clone() en sw.js para evitar “Response body is already used”.
- Se eliminan mutaciones style= generadas por JavaScript que chocaban con style-src self.
- Se añade compatibilidad CSP explícita y limitada para el script de métricas inyectado por el hosting.
- El demo público deja de generar estilos inline desde JavaScript.
- Se corrige la interacción del buscador para poder abrir los resultados reales con teclado o clic.
Rendimiento y confiabilidad
- El service worker clona la respuesta antes de entregarla al navegador y actualiza el cache a vejoc-static-v1b.
- El backend mantiene CSP estricto sin unsafe-inline.
- El zoom del directorio y el progreso visual usan clases/atributos CSS en lugar de estilos inline.
- No requiere migración SQL sobre 1a.
Nuevas funciones y mejoras
- Apps muestra todas las extensiones existentes y futuras en una sola lista, una por línea, con icono y nombre.
- Favoritos personalizables desde Personalizar usando todas las extensiones disponibles para el usuario.
- Búsqueda global con resultados reales para empleados, residentes, extensiones, medicamentos, documentos, pendientes y otras áreas.
- Nuevo fondo galaxia oscuro en movimiento y encabezados safety green → safety yellow.
- Changelog estructurado por categorías y reutilizado por Novedades y Actualizaciones.
Cambios de funcionalidad
- Vejoc queda temporalmente solo en español; se retira ES/EN hasta completar la localización.
- Las funciones principales aparecen primero; controles técnicos y regulatorios secundarios usan divulgación progresiva.
- La tipografía base del workspace sube a 16 px, controles a 15–16 px y textos secundarios a 14 px para mejorar legibilidad.
- La numeración visible del producto se reinicia en 1a; los IDs históricos de migración de base de datos se conservan por seguridad.
Correcciones de errores
- El buscador deja de limitarse a comandos estáticos y consulta datos reales del tenant.
- Buscar “empleados”, “residentes”, “extensiones”, “medicamentos” y categorías similares devuelve resultados útiles.
- Se eliminan estilos inline del markup y se centralizan en estilos globales para reducir conflictos visuales.
- Se retiran scripts ejecutables inline y se centraliza el comportamiento en JavaScript global cuando aplica.
- Se corrigen contrastes oscuros sobre fondo oscuro y tamaños de texto excesivamente pequeños.
Rendimiento y confiabilidad
- Preferencias de Favoritos reutilizan user_layout_preferences; no requieren una migración nueva.
- La búsqueda en Command Menu usa debounce, respuestas JSON limitadas y respeta permisos/organización.
- Apps y Favoritos se generan desde el catálogo canónico, por lo que nuevas extensiones aparecen automáticamente.
ANTES DE 1a
Historial técnico anterior
La numeración del producto se reinició en 1a. Los identificadores históricos de migraciones y releases anteriores se conservan internamente para que las actualizaciones y recuperaciones sigan siendo seguras.