Files

65 lines
2.2 KiB
Markdown

# Fase B5 — Procedencia de datos y consulta temporal
Versión: `0.12.0`
## Objetivo
Completar el Maestro de Activos con dos capacidades previstas desde su diseño:
- identificar de dónde proviene la información principal de cada activo;
- reconstruir cómo se encontraba el maestro en una fecha y hora determinada.
## Procedencia
Cada activo registra:
- origen controlado: carga manual, relevamiento de campo, documentación
recibida, importación o sistema;
- nombre de la fuente y referencia;
- fecha y hora observada;
- notas de procedencia;
- usuario y fecha de la última actualización;
- usuario y fecha de verificación.
Actualizar la procedencia reinicia cualquier verificación previa. Las fuentes
documentales e importaciones requieren identificar la fuente.
## Permisos
- `assets.read_provenance`: cinco roles base;
- `assets.manage_provenance`: admin, supervisor e inspector;
- `assets.verify_provenance`: admin, director y supervisor;
- `assets.read_temporal`: cinco roles base.
## Versionado y auditoría
La migración incorpora una versión inicial de procedencia a todos los activos
existentes. Las actualizaciones y verificaciones posteriores:
- incrementan `assets.current_version`;
- generan un snapshot inmutable completo;
- registran actor, origen, request ID y evento de auditoría;
- no permiten al usuario runtime modificar ni borrar versiones anteriores.
## Consulta temporal
La API selecciona la última versión de cada activo cuya fecha sea menor o igual
al instante solicitado. Así reconstruye sólo los activos que ya existían en ese
momento y conserva sus códigos, nombres, tipos, jerarquías, estados, atributos,
geometrías, archivos y procedencia histórica.
Rutas:
- `GET /api/v3/temporal-assets?at=...`: maestro histórico paginado y filtrable;
- `GET /api/v3/temporal-assets/:assetId?at=...`: snapshot exacto de un activo.
Las consultas son de sólo lectura y no modifican el estado actual.
## Interfaz
- panel de procedencia dentro de cada activo;
- estado pendiente o verificado en el listado maestro;
- sección **Consulta temporal** con fecha, hora y filtros;
- vigencia desde/hasta de cada snapshot;
- visor semántico y snapshot técnico exacto.