El diff del historial compara modelo de carroceria contra una columna que el import nunca llena
Item 24 de Eugenia: 'Tomo un cambio no realizado en el modelo de carroceria ya que figura previamente en el historial.' Es un defecto real, pero la causa no es la que sugiere el reporte. MEDIDO por db02 en DEV 2026-09-17, dominio AG202SZ. El periodo anterior (fila de import id 234797, cierra 2026-09-15) YA trae carroceria_fabricante = 'TODO BUS'. Lo que tiene NULL es carroceria_modelo. Y NINGUNA fila de import de ese dominio llena carroceria_modelo - tampoco las de AA013AD, chequeado aparte. El pipeline de import escribe unicamente carroceria_fabricante. Entonces el diff de la app compara carroceria_modelo, que del lado import esta SIEMPRE vacia, contra el valor que la app escribe en la primera edicion. Resultado: 'Modelo de carroceria: De (vacio) A: TODO BUS' aparece en la PRIMERA edicion de CUALQUIER vehiculo de origen import, haya cambiado o no la carroceria. No es una fila mal escrita: es estructural. Por eso el item 5 de Eugenia (mismo sintoma con ADAS/MDVR, '(vacio) -> CORWIN') figura como corregido y el sintoma volvio igual en el 24: se arreglo el caso que se vio, no el mecanismo. Pertenece a la clase de [[reference_agrupar_items_por_sintoma_manda_a_una_reimportacion_lo_que_la_reimportacion_no_puede_tocar]]. Lo que hay que decidir antes de tocar codigo, y es una pregunta de datos, no de UI: si carroceria_fabricante y carroceria_modelo son el mismo hecho con dos nombres, sobra una columna y hay que portar y borrar; si son hechos distintos, el import tiene que llenar las dos o el diff no puede mirar la que el import no escribe. No es un arreglo de renderer. Antes de cerrar hay que censar las demas columnas con la misma forma: cualquier campo que la app escriba y el import deje NULL produce exactamente este falso cambio en la primera edicion. El censo es el entregable, no el parche de carroceria.
Activity
-
CERRADO POR MOVILBA-450, ya shipeado. El diagnostico de esta descripcion se escribio leyendo el checkout compartido SUCIO, que tenia la version vieja de src/lib/rutap-history-presentation.ts. El commit 61722ee2 (MOVILBA-450, 2026-09-17 14:27) ya cambio la regla: el vacio de una fila de import solo cuenta como evidencia si el campo TIENE columna del libro (definition.rawColumn !== undefined). bodyModel no la tiene, asi que el falso cambio queda suprimido. Esta en dev/dev y vivo en dev01 desde v5.5.209. Tests: src/lib/rutap-history-presentation.test.ts:158-168 cubre bodyModel y state. El censo que esta descripcion pedia como entregable ya no hace falta como parche por campo: la regla es generica y cubre los 7 campos sin columna del libro (bodyModel, state, reason, subeValidator, subeMountingKit, openpassValidator, openpassMountingKit). creator no aplica: tiene face y sale por renderedFaceKeys. MEDIDO por db02 hoy en DEV, aparte: en las 64 filas de origen app donde carroceria_modelo y carroceria_fabricante estan poblados los dos, coinciden 64/64. En las 5514 de import, carroceria_modelo es NULL en las 5514 y carroceria_fabricante no-nulo en las 5514. O sea es UN hecho en dos columnas, no dos hechos - lo que esta descripcion pedia decidir antes de tocar codigo. Queda como limpieza aparte, no como defecto de Eugenia.
-
Cerrado por MOVILBA-450 (61722ee2, v5.5.209 en dev01). Ver la nota de hoy: el diagnostico salio de leer el checkout compartido sucio con la version vieja del archivo.