Files

47 lines
1.4 KiB
Markdown

# DH Inspección V2 — Fase A1
## Alcance implementado
- entidades TypeORM para usuarios, roles, permisos, sesiones y auditoría;
- cinco migraciones controladas e independientes de `synchronize`;
- seed idempotente de roles, permisos y matriz inicial;
- grants explícitos y default privileges para `dhv2_app`;
- repositorios base para A2, A4 y A5;
- servicio Docker temporal para ejecutar migraciones como owner.
No se agregaron endpoints públicos ni autenticación incompleta. El único
endpoint disponible continúa siendo `/api/v3/health`.
## Migraciones
1. `PhaseAUsersRolesPermissions1786548000000`
2. `PhaseAAuthSessions1786548001000`
3. `PhaseAAuditEvents1786548002000`
4. `PhaseASeedRolesPermissions1786548003000`
5. `PhaseARuntimeGrants1786548004000`
## Ejecución
```bash
docker compose --profile tools build api migrate
docker compose up -d db
docker compose --profile tools run --rm migrate
docker compose up -d --no-deps api
```
## Verificación
```bash
docker compose --profile tools run --rm migrate npm run migration:show
docker compose ps
curl -fsS http://127.0.0.1:3101/api/v3/health
```
El resultado esperado de `migration:show` es `Pending migrations: no`.
## Reversión inmediata
`migration:revert` revierte una sola migración por ejecución. Sólo debe usarse
antes de crear usuarios o sesiones reales. Si ya existe actividad, restaurar el
backup previo en lugar de ejecutar reversiones parciales.