Code Review: EPIC-CP1 v4.0

Checkpoint 1: Ingreso de Tela — Trace4Value DPP Data Protocol  •  PR: #225  •  Reviewer: architect-fintechlab  •  Fecha: 2026-03-17

1. Resumen Ejecutivo

48 Parametros definidos 14 EPCIS + 13 Core/PEF + 9 PEF Ext. + 12 Residuos — numeracion #1 a #48 (3 N/A/Futuro)
Historias de usuario
7
T4V Items cubiertos
25
Story Points
42
Sprints estimados
~2

EPIC-CP1 v4.0 define el flujo de Ingreso de Tela alineado al Trace4Value DPP Data Protocol. Captura datos para 5 de los 8 Info Groups del estandar, cubriendo el 20% del DPP completo (25/126 Item Numbers). El review identifica 9 observaciones — 4 criticas que deben corregirse antes del merge.

Metricas del documento

Info Groups DPP
5 / 8
Params automaticos
30 (68%)
Params manuales
8 (18%)
Scenarios Gherkin
23
Scoring ICE-M
4,374

2. Fortalezas

3. Observaciones y Problemas Encontrados

4Criticas
3Media
2Informativas
9Total

Bloqueo de merge: Las observaciones #1, #3, #4 y #5 deben corregirse antes de aprobar el PR. Las observaciones #6–#9 pueden documentarse como notas para implementacion.

3.1 Observaciones Criticas

#1CriticoConteo inconsistente de parametros
El header dice “44 parametros” pero el Bloque 3 (Residuos) tiene 12 items numerados del 37 al 48 (no 44). Total real por numeracion = 14 + 13 + 12 = 39 en los bloques, pero la numeracion llega hasta 48. Hay que reconciliar.
Accion: Reconciliar el conteo. Si el total real es 48, actualizar el header. Si es 44 (por Items unicos), renumerar el Bloque 3.
#3CriticoT4V Items duplicados sin discriminador
656.00 (Amounts of Waste Generated) aparece en parametros #38, #41 y #46 para plastico, carton y tela rechazada. 657.00 y 358.00 tambien se repiten. El documento no especifica como se discriminan en el modelo de datos (sub-tipo? array?).
Accion: Definir el discriminador (ej: waste_category: plastic | cardboard | textile) y el modelo de almacenamiento.
#4CriticoEndpoints inconsistentes con CLAUDE.md
El documento define POST /api/v1/checkpoint-records/iniciar-cp1 y GET /api/v1/checkpoints/1/lote/{lote_id}/precargado, pero CLAUDE.md establece CP1 como POST /api/v1/checkpoints/cp1/rollos.
Accion: Definir una unica fuente de verdad para los endpoints. Actualizar CLAUDE.md o la EPIC (no ambos).
#5CriticoCredenciales en texto plano
La seccion Implementation Handoff incluye credenciales de prueba en un documento versionado en Git. Incluso si es ambiente de prueba, no debe estar en el repositorio.
Accion: Mover credenciales a vault, variable de entorno o documento privado no versionado. Considerar rotar la contrasena.

3.2 Observaciones de Severidad Media

#2MediaParametros N/A / Futuro inflan el conteo
Los items #34 (Lote Hilado Tier 4), #35 (Proceso Tenido Tier 3) y #36 (Consumo Agua Tenido) estan marcados como “N/A Trento” o “Futuro”. Si no se implementan en Sprint 14, el conteo de “44 parametros” es enganoso.
Accion: Excluir del total o marcar como “fuera de Sprint 14”. Separar en bloque “Roadmap Futuro”.
#8MediaFalta scenario Gherkin para Carbon Footprint incompleto
Los riesgos mencionan un factor generico de 3.50 kgCO2eq/kg cuando la composicion es incompleta, pero ningun escenario Gherkin lo cubre. HU-CP1-04 solo tiene el caso exitoso.
Accion: Agregar Scenario: “Carbon Footprint con composicion parcial usa factor generico mixed fiber”.
#9Media“6 campos operacionales” son mas de 6
La seccion de riesgos menciona “6 campos operacionales sin mapeo T4V”, pero en realidad son #4, #5, #6, #10, #11, #19, #20, #44, #47 — al menos 9, no 6.
Accion: Enlistar explicitamente los campos operacionales y corregir el conteo.

3.3 Observaciones Informativas

#6InfoFormato de Batch/Lot Number no definido
HU-CP1-01 scenario “Formato invalido” retorna 422 para ABC-INVALIDO, pero no define el regex o patron valido. Es \d{2}-\d{5}?
Accion: Documentar el formato valido con regex y ejemplos. Consultar con operaciones de Trento.
#7InfoRango de Component Weight puede ser insuficiente
HU-CP1-04 establece “entre 1 y 100 kg”. Algunos rollos industriales pueden pesar mas de 100 kg.
Accion: Consultar con el equipo de planta de Trento el rango real de pesos de rollo.

4. Inventario de Parametros

Los 48 parametros organizados por bloque. Los parametros #34–#36 estan marcados como fuera de alcance (N/A o Futuro).

4.1 Bloque 1: Trazabilidad EPCIS (14 parametros)

#Nombre FTLNombre DPP (T4V)T4V ItemDim.Fuente
1SGTIN Lote TelaUnique Product ID300.20WHATAuto
2Peso total recibidoComponent Weight350.50WHATIoT
3Lote proveedor (Partida)Batch/Lot Number304.20WHATERP
4Timestamp recepcionOperacional EPCISWHENAuto
5Zona horariaOperacional EPCISWHENAuto
6Timestamp registroOperacional EPCISWHENAuto
7GLN zona recepcionFacility Identifier202.10WHEREAuto
8GLN almacen materialesFacility Location202.30WHEREAuto
9GLN proveedor Tier 2Supplier Location201.00WHEREERP
10bizStepOperacional EPCISWHYAuto
11dispositionOperacional EPCISWHYAuto
12Orden Compra TelaPO Number305.00WHYERP
13GLN proveedor origenSupplier Location (source)201.00HOWERP
14GLN almacen destinoFacility Location (dest)202.30HOWAuto

5. Cobertura DPP — Mapeo a Info Groups Trace4Value

Cobertura por Info Group

Sustainability (650)
5/9
56%
Supply Chain (200)
5/12
42%
Material (350)
9/29
31%
Product (300)
5/32
16%
Compliance (500)
1/10
10%
Brand (100)
0%
Digital ID (370)
0%
Care (400)
0%

CP1 cubre 25 de 126 Item Numbers del DPP completo (20%). Los Info Groups Brand (100), Digital Identifier (370), Care (400) y Circularity (600) se completan en checkpoints posteriores.

Sistema vs Supervisor

Distribucion por fuente de datos

Auto (backend genera)
13
29%
Precargado (ERP)
17
38%
Manual (supervisor)
8
18%
IoT / Manual
2
4%
N/A / Futuro
3
7%

Principio de diseno: El supervisor en zona de acopio NO conoce terminologia EPCIS, PEF ni DPP. El sistema precarga el 68% de los datos y solicita solo lo que requiere observacion fisica directa (8 campos).

6. Historias de Usuario

Estimacion total: 42 Story Points — ~2 Sprints

HU-CP1-01
Escaneo / ingreso de Batch/Lot Number
5 SP4 scenariosT4V: 304.20
HU-CP1-02
Seleccion automatica de Orden de Produccion
5 SP3 scenariosT4V: 305.00
HU-CP1-03
Verificacion de datos DPP precargados (30 params)
8 SP6 scenarios5 Info Groups
HU-CP1-04
Completar datos manuales (8 params DPP)
8 SP5 scenariosT4V: 350.50, 656.00
HU-CP1-05
Cierre, Unique Product ID (QR) y persistencia DPP
8 SP3 scenarios25 T4V Items
HU-CP1-06
Flujo multiples rollos por sesion
3 SP2 scenarios10-12 rollos/dia
HU-CP1-07
Dataset de prueba abierto
5 SP2 scenariosOPs 7223-7230

Definition of Done — 3 Niveles

NivelCriterioT4V Items verificados
L1 Test Data48 params capturados con dataset clonado. 25 T4V Items persistidos. Carbon Footprint (653.00) calculado.Todos los 25
L2 HistoricalDatos reales de Trento mapeados. Content Name/Value coincide con ERP. Supplier Name verificado.200.00, 304.20, 350.20, 350.21, 501.00
L3 ProductionSupervisor ejecuta en planta. QR fisico con Unique Product ID. JSON EPCIS exportable como fragmento DPP.Los 25 + exportacion JSON

7. Veredicto

El documento es solido como especificacion funcional. Estructura clara, criterios Gherkin concretos, mapeo DPP explicito y separacion sistema/supervisor bien definida.

Estado del review

Veredicto
Changes Requested
Corregir antes del merge
4 issues
Documentar para impl.
5 issues

Proximos Pasos

Corregir antes del merge (bloqueantes)

Documentar como notas de implementacion