# ADR-012: Politica de Trazabilidad Completa **Estado:** Aceptado **Fecha:** 2025-11-24 **Responsable:** Architecture-Analyst **Proyecto:** ERP Construccion ## Contexto El ERP de Construccion es un sistema complejo con multiples capas y cientos de objetos. Para mantener coherencia, facilitar mantenimiento y permitir analisis de impacto, necesitamos trazabilidad completa. ## Decision **Adoptamos la politica de "Trazabilidad Completa End-to-End".** ### Principio Fundamental ``` +---------------------------------------------------------------------+ | TRAZABILIDAD COMPLETA | | | | RF (Requerimiento) --> ET-Backend --> ET-Frontend --> US (Stories) | | | | | | | | v v v v | | +---------+ +---------+ +---------+ +---------+ | | | Tablas |<-------->| APIs |<--->| Comps |<-->| Tests | | | | BD | | Backend | | Frontend| | E2E | | | +---------+ +---------+ +---------+ +---------+ | +---------------------------------------------------------------------+ ``` ### Inventarios Requeridos | Inventario | Ubicacion | Contenido | |------------|-----------|-----------| | Objetos BD | `02-modelado/trazabilidad/INVENTARIO-OBJETOS-BD.yml` | Tablas, funciones, triggers | | Objetos Backend | `02-modelado/trazabilidad/INVENTARIO-OBJETOS-BACKEND.yml` | Controllers, services, DTOs | | Objetos Frontend | `02-modelado/trazabilidad/INVENTARIO-OBJETOS-FRONTEND.yml` | Components, pages, hooks | | Matriz Completa | `02-modelado/trazabilidad/MATRIZ-TRAZABILIDAD-COMPLETA.md` | RF -> ET -> BD -> Codigo | ### Reglas de Mantenimiento ``` REGLA 1: CREAR -> DOCUMENTAR - Agregar al inventario correspondiente - Documentar RF/ET/US de origen - Mapear dependencias y dependientes REGLA 2: MODIFICAR -> ACTUALIZAR - Actualizar inventario si cambio estructura - Verificar impacto en dependientes - Actualizar documentacion relacionada REGLA 3: ELIMINAR -> LIMPIAR - Eliminar del inventario - Actualizar dependientes que lo usaban - Eliminar referencias huerfanas REGLA 4: PR -> VALIDAR TRAZABILIDAD - Incluir actualizacion de inventarios - Verificar dependencias actualizadas ``` ## Justificacion ### Alineacion con ERP Generico - Misma politica de trazabilidad - Inventarios compatibles ### Especifico para Construccion - Trazabilidad para auditorias INFONAVIT - Impacto de cambios en estimaciones - Control de cambios en presupuestos ## Consecuencias ### Positivas - Analisis de impacto antes de cambios - Debugging eficiente (UI a BD) - Onboarding rapido - Refactoring seguro - Auditorias INFONAVIT facilitadas ### Negativas - Overhead inicial: Requiere disciplina - Mitigacion: Templates y automatizacion ## Directiva para Agentes ``` DIRECTIVA ADR-012 - TRAZABILIDAD COMPLETA Los agentes DEBEN: - Verificar trazabilidad antes de crear objetos - Actualizar inventarios al crear/modificar/eliminar - Documentar dependencias y dependientes - Mantener referencias cruzadas entre capas - Incluir seccion de trazabilidad en documentos Los agentes NO DEBEN: - Crear objetos sin documentar origen (RF/ET/US) - Modificar objetos sin actualizar dependientes - Eliminar objetos sin limpiar referencias - Ignorar impacto en otras capas ``` ## Referencias - [ERP Generico ADR-012](../../erp-generic/docs/adr/ADR-012-complete-traceability-policy.md)