Subtipo de modificacion (interno, MDVR, ...) derivado del diff, visible y filtrable - Compensaciones lo necesita para liquidar
Eugenia, chat 2026-08-20 14:42-14:43 (/resource/movilba/import-reports/2026-08-20-chat-stakeholder.txt), textual: 'tiene que tener como un tipo de info..que se entienda que se MODIFICA de INTERNO', 'entiendo que puede ser un desplegable', 'debajo asi como tramite MODIFICACIONES DE MDVR (configuracion tecnica) sea INTERNO', 'y que permita filtrar'. O sea: el tramite Modif necesita un SUBTIPO que diga QUE se modifico, mostrado en la ficha y usable como FILTRO. POR QUE LE IMPORTA, y es el driver de negocio de todo esto: Compensaciones paga por vehiculo dado de alta en un mes, y necesita saber que a partir del 15 de agosto ese vehiculo funciono con OTRO interno, porque 'ese vehiculo y con ese interno funciono de una manera con una maquina'. No es cosmetica de pantalla: es la trazabilidad que usan para liquidar. LO BUENO: esto ya es DERIVABLE y no hace falta que nadie lo cargue a mano. MOVILBA-95 dejo vehiculo_historial.cambios con {campo:{anterior,nuevo}} por tramite, asi que el subtipo sale de QUE CLAVES tiene el diff: si cambio nro_interno es MODIFICACION DE INTERNO, si cambio id_mdvr/mdvr es MODIFICACION DE MDVR, etc. Hay que decidir que pasa cuando un tramite cambia varios campos a la vez (subtipo multiple, o el de mayor jerarquia) y esa jerarquia la define Eugenia. El catalogo va a opciones como todo enumerado, nunca varchar suelto. ALCANCE: catalogo de subtipos, derivacion desde cambios, mostrarlo en el renglon del historial, y filtro en el listado. Depende de MOVILBA-95.
Activity
-
parent=MOVILBA-125
-
coder-mba-l-ca / coder
-
coder03-mba-l-cc
-
Clasificador puro (grupos/subtipoPrincipal) shippeado a dev v5.4.111. Alcance completo del ticket (catalogo opciones, wiring en el renglon del historial, filtro en listado) bloqueado hasta que MOVILBA-204 (contrato tipado RutapHistoryChange, coder-mba-l-ca) aterrice en dev.
-
CONFIRMADO POR LA FUENTE (Eugenia, tracker 2026-09-04-1100, respuesta 5d sobre AE512KL): 'SON EXPEDIENTES DE MODIFICCIONES (NO son BAJAS) por los cuales en un periodo estuvo con cierta info tecnica y luego se modifica'. Una modificacion cierra el periodo tecnico anterior y abre uno nuevo EN LA MISMA LINEA; no es una baja. Mismo patron en AA914MC, AE352LC, AH007QZ, AB674IP, AE618VI, AF106VS y AA935OF, cada uno con expediente POR BAJA y expedientes POR MODIFICACION separados. El clasificador de a78225f8 es requisito del loader de MOVILBA-227, no un refactor opcional.
-
MEDIDO EN EL LIBRO, no citado (db02, 2026-09-04, DEV snapshot 9). Confirma la respuesta de Eugenia y le pone denominador. **EX-2026-37226779 cubre 154 filas del libro sobre 77 DOMINIOS. Sus `tramite` son solo `Alta` y `Modif` — NO hay ninguna baja. Y los 77 de 77 CONSERVAN LA MISMA LINEA antes y despues. Cero cambian de linea.** Es exactamente la frase de ella - 'SON EXPEDIENTES DE MODIFICCIONES (NO son BAJAS)... en un periodo estuvo con cierta info tecnica y luego se modifica' - ahora medida. Un periodo se cierra el 2026-08-19 y otro se abre el mismo dia, misma linea, mismo operador, bajo un solo expediente. **TAMAÑO DE LA FALLA: un loader que lea 'periodo cerrado + expediente presente' como baja inventa 77 BAJAS con este unico expediente.** No es hipotetico: es el mismo expediente que esta en la fila abierta de AI239RS. AI239RS es el ejemplo trabajado de toda la forma: sus dos filas del libro dicen `Modif`, las dos traen linea 151, la cerrada termina el 2026-08-19 y la abierta empieza el 2026-08-19. **DEV guardo la fila abierta con `linea_id` NULL.** O sea la modificacion se leyo como algo que TIRA la linea en vez de como un cambio tecnico que la CONSERVA. Ahi nace la clase de MOVILBA-216 (170 filas abiertas vivas con linea_id NULL, 169 de las cuales SI tienen linea en la fila abierta del libro). GATE que se agrega: despues del reload, cero dominios de este lote cargan un evento con forma de baja, y los 77 conservan su linea. NO EJERCITADO (db02): no leyo el clasificador; no chequeo otros expedientes de lote, asi que 77/77 es DE ESTE LOTE y no una afirmacion sobre todo el libro; no toco PROD.
-
cleared: Clasificador puro (grupos/subtipoPrincipal) shippeado a dev v5.4.111. Alcance completo del ticket (catalogo opciones, wiring en el renglon del historial, filtro en listado) bloqueado hasta que MOVILBA-204 (contrato tipado RutapHistoryChange, coder-mba-l-ca) aterrice en dev.
-
UI done on branch movilba-97-subtype-ui (8179aac3): badge from subtipoPrincipal (+N, title lists all grupos), filter select any-match on grupos, only groups present; reads HistorialItem.cambios guarded as RutapHistoryChange[]. Deploy blocked: dev/dev v5.4.148 lacks src/lib/rutap-history-diff.ts (test shipped without lib), typecheck red on dev tip. Waiting on coder02.
-
Shipped dev 29e3febb: ExpedienteForm.tsx badge+filter, derive-only, guard on HistorialItem.cambios. GCABA mirror push failed (repositorio-asi unreachable), dev deploy stands.