template-saas/docs/05-frontend/pages/PAGE-AUDIT.md
Adrian Flores Cortes 0ead18e28f [SPRINT-3] docs: Add page specifications and dead code analysis
## ST-3.3 Documentation (3 SP)
- Add 11 page specification files documenting 25 pages
- Create docs/05-frontend/pages/ directory
- Specs: Goals, MLM, Portfolio, RBAC, Notifications, Analytics,
  Audit, Storage, Webhooks, Settings
- Add _INDEX.md with complete listing

## ST-3.4 Dead Code Analysis (1 SP)
- Analyze usePortfolio hook usage (18/21 functions used)
- Document components ready for future use
- Decision: Keep all code as preparation for features
- Create DEAD-CODE-REPORT.md

## Frontend Submodule
- WCAG improvements (11 files)
- 160 unit tests (8 new test files)

Sprint 3 (P2) completed: 14 SP

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 20:27:51 -06:00

93 lines
2.4 KiB
Markdown

# Audit Logs Page Specification
**Modulo:** audit
**Ultima actualizacion:** 2026-02-03
**Total Paginas:** 1
---
## AuditLogsPage
**Ruta:** `/dashboard/audit`
**Archivo:** `src/pages/dashboard/AuditLogsPage.tsx`
### Descripcion
Pagina de logs de auditoria. Muestra registro de todas las acciones realizadas en el sistema con filtros avanzados y timeline.
### Componentes Utilizados
- AuditFilters - Panel de filtros multiples
- AuditLogRow - Fila de log con detalles expandibles
- AuditStatsCard - Tarjetas de estadisticas
- ActivityTimeline - Timeline visual de actividad
### Hooks Utilizados
- `useAuditLogs(filters)` - Lista logs con filtros
- `useActivityLogs()` - Timeline de actividad
### Funcionalidades
1. Filtrar por usuario
2. Filtrar por tipo de accion (create, update, delete, login, logout)
3. Filtrar por entidad afectada
4. Filtrar por rango de fechas
5. Ver detalles de cada accion
6. Ver cambios realizados (before/after)
7. Ver timeline de actividad reciente
### Filtros Disponibles
| Filtro | Tipo | Opciones |
|--------|------|----------|
| Usuario | Select | Lista de usuarios |
| Accion | Select | create, update, delete, login, logout |
| Entidad | Select | user, tenant, invoice, etc |
| Fecha desde | Date | Datepicker |
| Fecha hasta | Date | Datepicker |
### Estados
- Loading: Spinner centrado
- Success: Tabla de logs con paginacion
- Empty: Mensaje "No audit logs found"
- Error: Mensaje de error
### Acciones del Usuario
| Accion | Resultado |
|--------|-----------|
| Seleccionar filtro | Filtra resultados |
| Click en fila | Expande detalles |
| Limpiar filtros | Reset a todos |
| Previous/Next | Cambia pagina |
### Permisos Requeridos
- `audit:read` - Ver logs de auditoria
### Estructura de Log
```typescript
interface AuditLog {
id: string;
user_id: string;
user_email: string;
action: 'create' | 'update' | 'delete' | 'login' | 'logout';
entity_type: string;
entity_id: string;
changes?: {
before: Record<string, any>;
after: Record<string, any>;
};
metadata?: Record<string, any>;
ip_address?: string;
user_agent?: string;
created_at: string;
}
```
### Notas
- Los logs son inmutables, no se pueden editar ni eliminar
- La retencion de logs depende del plan de suscripcion
- Los campos sensibles (passwords) nunca se registran
- El IP y user agent se registran para seguridad
---
*Documentacion generada - Template SaaS - 2026-02-03*