Admin — Audit Trail Global
ADMIN-AUDIT-001

Audit Trail Global

El registro de auditoría centraliza todos los eventos del sistema en orden cronológico inverso. Es el único módulo que puede acceder desde una vista global (no filtrada por entidad). Es de solo lectura — ningún usuario puede modificar o eliminar entradas.

Admin exclusivo
⚖️

21 CFR Parte 11 — Atribuible, Contemporáneo, Original, Exacto, Legible (ALCOA+). El audit trail es append-only, reforzado por PostgreSQL RLS. Ninguna acción del sistema (ni siquiera del usuario Admin) puede modificar o eliminar entradas del audit trail. Es el registro de evidencia inmutable del sistema de calidad.

¿Qué se registra?

Toda acción regulada o relevante del sistema genera un evento en el audit trail:

  • Creación, edición, aprobación, rechazo y efectivización de documentos (CDMS)
  • Firmas electrónicas: técnico, verificador, aprobador (CTR, CCM, QEM)
  • Transiciones de estado en todos los módulos
  • Completación de trainings y acuses de lectura (TMS)
  • Registro y cierre de hallazgos (AUM)
  • Acciones CAPA (QEM)
  • Cambios de roles de usuario (Admin)
  • Operaciones de configuración (Admin)
  • Acceso a PDFs sellados

Estructura de un evento del audit trail

CampoDescripción
event_typeTipo de evento. Formato: módulo:acción. Ej: cdms:document_approved, ctr:bundle_signed_tech, qem:capa_completed.
actor_emailEmail del usuario que ejecutó la acción. Nunca nulo — toda acción tiene un actor humano o de sistema.
entity_typeTipo de entidad afectada. Ej: document_version, bundle, qem_event.
entity_idUUID de la entidad afectada.
entity_labelEtiqueta legible. Ej: ION-CLD-042 v3.0, CTR-2026-0118.
created_at (UTC)Timestamp del evento en UTC. Inmutable. El sistema muestra la conversión a ART en la interfaz.
detailsJSON con datos adicionales del evento. Ej: estado anterior/nuevo, motivo de rechazo, campos modificados, prefijo del reauth token.

Filtros disponibles

El audit trail global tiene los siguientes filtros combinables:

  • Módulo: CDMS / CTR / TMS / CCM / QEM / AUM / Admin / Todos
  • Tipo de evento: selector por event_type específico dentro del módulo seleccionado
  • Actor (usuario): filtra todos los eventos de un usuario específico
  • Entidad: ingresá el código de la entidad (ej: ION-CLD-042) para ver todos los eventos de esa entidad
  • Rango de fechas: desde / hasta en hora ART
  • Texto libre: busca en el campo entity_label y details

El resultado se pagina (20 eventos por página) en orden cronológico inverso (más reciente primero).

Exportar el audit trail

El botón Exportar CSV descarga todos los eventos que coincidan con los filtros activos (no solo la página actual) en formato CSV con BOM UTF-8. Las columnas del CSV son: timestamp UTC, timestamp ART, actor, módulo, event_type, entity_type, entity_label, entity_id, details (JSON serializado).

Para exportaciones de auditoría regulatoria, aplicá los filtros de rango de fechas antes de exportar para obtener el período relevante.

¿Puedo buscar todos los eventos de un documento específico?

Sí. Ingresá el código del documento en el filtro "Entidad" (ej: ION-CLD-042). El sistema muestra todos los eventos asociados a ese documento desde su creación hasta el estado actual: cada aprobación, cada firma, cada modificación de metadatos y cada acceso al PDF sellado.

¿Los módulos también tienen su propio audit trail?

Sí. Dentro del panel de detalle de cada entidad (un documento, un bundle CTR, un evento QEM, etc.) hay una sección de "Historial" o "Audit Trail" que muestra los eventos filtrados a esa entidad específica. El Audit Trail Global en el panel Admin es la vista consolidada de todos los módulos sin filtro de entidad.