65 lines
2.2 KiB
Markdown
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.
|