workspace-v1/shared/catalog/audit-logs
rckrdmrd cb4c0681d3 feat(workspace): Add new projects and update architecture
New projects created:
- michangarrito (marketplace mobile)
- template-saas (SaaS template)
- clinica-dental (dental ERP)
- clinica-veterinaria (veterinary ERP)

Architecture updates:
- Move catalog from core/ to shared/
- Add MCP servers structure and templates
- Add git management scripts
- Update SUBREPOSITORIOS.md with 15 new repos
- Update .gitignore for new projects

Repository infrastructure:
- 4 main repositories
- 11 subrepositorios
- Gitea remotes configured

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-07 04:43:28 -06:00
..
IMPLEMENTATION.md feat(workspace): Add new projects and update architecture 2026-01-07 04:43:28 -06:00
README.md feat(workspace): Add new projects and update architecture 2026-01-07 04:43:28 -06:00

Audit Logs (Registro de Auditoria)

Version: 1.0.0 Origen: projects/gamilit, projects/erp-core Estado: Produccion Ultima actualizacion: 2025-12-27


Descripcion

Sistema completo de auditoria y logging con:

  • Registro automatico de cambios en entidades
  • Historial de acciones de usuario
  • Tracking de acceso a recursos sensibles
  • Busqueda y filtrado de logs
  • Retencion configurable
  • Exportacion de reportes

Caracteristicas

Caracteristica Descripcion
Entity Tracking Cambios automaticos en entidades (create, update, delete)
User Actions Registro de acciones de usuario
Access Logs Tracking de acceso a recursos
Immutable Logs no modificables (append-only)
Searchable Busqueda full-text y filtros
Retention Politicas de retencion configurables
Export Exportacion a CSV/JSON

Stack Tecnologico

backend:
  framework: NestJS
  orm: TypeORM
  interceptors: AuditInterceptor
  subscribers: EntitySubscriber

database:
  engine: PostgreSQL
  schemas:
    - audit (logs, access_logs)
  extensions:
    - pg_trgm (busqueda)

optional:
  elasticsearch: Para busqueda avanzada
  s3: Para archivo de logs antiguos

Tipos de Audit Log

1. Entity Audit (Cambios en datos)

{
  "action": "UPDATE",
  "entity": "users",
  "entityId": "uuid-xxx",
  "changes": {
    "name": { "old": "John", "new": "Johnny" }
  },
  "userId": "uuid-yyy",
  "timestamp": "2025-12-27T10:30:00Z"
}

2. Action Audit (Acciones de usuario)

{
  "action": "LOGIN",
  "userId": "uuid-xxx",
  "metadata": {
    "ip": "192.168.1.1",
    "userAgent": "Mozilla/5.0..."
  },
  "timestamp": "2025-12-27T10:30:00Z"
}

3. Access Audit (Acceso a recursos)

{
  "action": "VIEW",
  "resource": "medical_record",
  "resourceId": "uuid-xxx",
  "userId": "uuid-yyy",
  "reason": "Consulta de rutina",
  "timestamp": "2025-12-27T10:30:00Z"
}

Estructura del Modulo

audit-logs/
├── backend/
│   ├── src/
│   │   ├── modules/
│   │   │   └── audit/
│   │   │       ├── entities/
│   │   │       │   ├── audit-log.entity.ts
│   │   │       │   └── access-log.entity.ts
│   │   │       ├── services/
│   │   │       │   ├── audit.service.ts
│   │   │       │   └── retention.service.ts
│   │   │       ├── subscribers/
│   │   │       │   └── entity-audit.subscriber.ts
│   │   │       └── audit.module.ts
│   │   ├── interceptors/
│   │   │   └── audit.interceptor.ts
│   │   └── decorators/
│   │       ├── audited.decorator.ts
│   │       └── track-access.decorator.ts
│   └── database/
│       └── ddl/
│           └── audit-schema.sql
│
├── frontend/
│   ├── src/
│   │   ├── pages/
│   │   │   └── admin/
│   │   │       └── AuditLogs.tsx
│   │   └── components/
│   │       └── audit/
│   │           ├── AuditLogTable.tsx
│   │           ├── AuditLogFilters.tsx
│   │           └── AuditLogDetail.tsx
│   └── stores/
│       └── audit.store.ts
│
└── docs/
    ├── entity-tracking.md
    └── compliance-requirements.md

Casos de Uso

  • Cumplimiento normativo (SOX, HIPAA, GDPR)
  • Investigacion de incidentes
  • Historial de cambios en registros criticos
  • Acceso a datos sensibles (expedientes medicos, financieros)
  • Deteccion de anomalias

Trade-offs

Ventaja Desventaja
Cumplimiento normativo Storage adicional
Investigacion de incidentes Performance overhead
Historial completo Complejidad de queries
Inmutabilidad No se puede borrar

Proyectos que lo Usan

Proyecto Version Notas
gamilit 1.0.0 Auditoria de progreso
erp-core 1.0.0 Base para verticales
erp-clinicas pendiente Requerido por NOM-024

Requisitos de Cumplimiento

Normativa Requisito Implementacion
GDPR Right to access Export de logs por usuario
HIPAA Access tracking access-log por expediente
SOX Financial audit Entity audit en transacciones
NOM-024 Expediente electronico Access log + entity audit

Referencias

  • IMPLEMENTATION.md - Guia paso a paso
  • _reference/ - Codigo de referencia
  • auth - Informacion de usuario para logs
  • multi-tenancy - Aislamiento de logs por tenant

Catalogo de Funcionalidades - SIMCO v3.4