El desplegable de unidad propulsora ofrece DOS opciones 'GNC' identicas y la primera no es la del libro (LP555EP es toda la poblacion de la mala)
Medido el 2026-09-08 por db02-mba-l-cc en DEV, SELECT only, durante el ensayo de MOVILBA-359. NO es error del operador. EL HECHO. public.v_unidad_propulsora, la unica vista detras de los dos desplegables `unidadPropulsora` y `unidadPropulsoraEnUso` (src/app/api/dropdowns/route.ts:149 y :198), devuelve DIEZ filas y TRES son gas: id 34 etiqueta 'GNC', id 157 etiqueta 'GNC', id 158 etiqueta 'Gas Natural Comprimido'. Dos opciones con la etiqueta IDENTICA byte a byte, las dos vivas, y la 34 ordena primero. El operador eligio la primera 'GNC' porque la pantalla no puede distinguirlas: no hay nada en el select que las diferencie. CUAL ES LA BUENA. La respaldada por el libro es la 157. Medido contra la salida del propio import: raw_unidad_propulsora 'GNC' -> id 157 en 2429 de 2429 filas; 'GO' -> 124 en 18857; 'ELECTRICO-CABA' -> 37 en 212; 'ELECTRICO' -> 37 en 16. La 157 es valor_opcion 'GN', nombre_mostrable 'GNC'. La 34 es valor_opcion 'COMBUSTION_GNC'. LA POBLACION DICE TODO. Vehiculos vivos: id 124 tiene 2021, id 157 tiene 351, id 37 tiene 37, y la id 34 tiene EXACTAMENTE UNO - LP555EP, la fila que el ensayo acaba de guardar. Esa unica fila es toda la poblacion de la opcion 34. Antes de esta noche nadie habia elegido nunca esa opcion; la primera persona que la encontro la eligio mal, que es la demostracion del defecto. EL COMENTARIO ES EL BUG. En route.ts:146-148 hay una afirmacion de que los hermanos fantasma estan soft-deleted en el catalogo y que por eso no hace falta DISTINCT ni join. HOY ES FALSA: 34, 157 y 158 tienen las tres borrado_en NULL. Es la misma forma que la nota 'Opcion invalida' que ya esta en agregar/colectivo/page.tsx:87-88. Una guarda que AFIRMA un estado del mundo en vez de medirlo. DONDE VA EL ARREGLO. En el CATALOGO, no en el formulario y no en la fila: los hermanos no respaldados por el libro se soft-deletean para que el select ofrezca UNA sola opcion de gas. Eso es una ESCRITURA a opciones y NO esta propuesta aca, solo nombrada. Quien la haga re-deriva la poblacion primero, porque la 34 tiene hoy un vehiculo vivo colgando. TAMBIEN HAY QUE CORREGIR LP555EP despues, y no antes: si se soft-deletea la 34 con la fila apuntando ahi, el vehiculo queda apuntando a una opcion muerta. Orden: decidir, corregir la fila, despues el catalogo. Nada de esto sin GO expreso. NO CONFUNDIR CON emissions 173, que db02 verifico VALIDA: opciones 173, campo estandar_emisiones, ofrecida por v_estandar_emisiones (6 filas, sin etiquetas duplicadas). Misma palabra 'GNC', campo_nombre distinto: 173 y 157 no son alternativas entre si. NO EJERCITADO: PROD (deliberadamente, DEV only), los caminos de escritura, y si otros campos de opciones tienen la misma duplicacion de etiqueta. Cero escrituras.
Activity
-
CORRECCION Y REFUERZO, medido por db02-mba-l-cc, senalado por Elazar en CLI. Yo escribi este item apoyandolo en un CONTEO de poblacion. Existe algo mejor y aprobado: el mapeo esta ESCRITO. rutap.unidad_propulsora_resolver (MOVILBA-199, docs/migrations/2026-09-02-movilba-199-rutap-chasis-resolver-DEV-PROD.sql, aplicada en DEV y PROD) mapea la etiqueta fuente 'GNC' -> opcion 157, estado 'aprobado'. Su columna evidencia dice textual: "etiqueta fuente GNC mapea a opcion canonica GN (opcion 157 vigente); la opcion GNC separada no se usa y no es el destino." ESO NO DEBILITA EL ITEM, LO AFILA. Esa frase y el preflight de la migracion (lineas 154-166) nombran UN homonimo: el id 158. Ni el resolver ni el preflight saben que existe el id 34 COMBUSTION_GNC, vivo y con la misma etiqueta. El proyecto catalogo el duplicado que habia encontrado, y el desplegable sigue mostrando dos 'GNC' identicos porque 34 es una TERCERA fila que nadie anoto. Y LA GUARDA NO PODIA AGARRARLO. La linea 144 afirma que GO, GN y ELECTRICO EXISTEN (count = 3); no afirma que el conjunto vivo sea EXACTAMENTE ese. Cualquier hermano vivo de mas pasa. Es gatear por PRESENCIA en vez de por la FORMA VALIDA, y es la razon por la que un catalogo revisado, evidenciado y migrado igual publica un select con etiqueta duplicada. Al arreglar: la guarda se reescribe para afirmar el conjunto vivo completo, no la presencia de tres. Si solo se soft-deletea el 34, el proximo hermano que aparezca vuelve a pasar.
-
coder03-mba-l-cc / coder
-
MOVILBA-535 retira la opcion 158 'GNC' (0 referencias en las dos bases) y renombra la 157 a valor_opcion='GNC'. El desplegable de unidad propulsora ya no ofrece dos entradas GNC: v_unidad_propulsora pasa de 9 a 8 filas en DEV y de 10 a 8 en PROD (tambien salio la 34 COMBUSTION_GNC, viva solo en PROD). Queda una sola, la 157, que es la que tienen las 617 filas de vhn y las 355 de vehiculos en PROD - ninguna fila se movio, lo afirma el GATE 5 comparando las cuatro distribuciones contra la PRE de la misma transaccion. NO exercitado: no se abrio la UI, la afirmacion es sobre el contenido de la matview.
-
db03-mba-l-cc
-
db04-mba-l-ca
-
db03-mba-l-cc / db
-
Resolved by MOVILBA-535 (2026-09-22), which soft-deleted BOTH homonym siblings, not just 158 - confirmed live just now: opciones 34 (COMBUSTION_GNC) and 158 (Gas Natural Comprimido) both borrado_en NOT NULL in PROD+DEV, v_unidad_propulsora shows a single GNC row (157) in both bases, LP555EP already repointed to 157, zero live vehicles reference 34 or 158 in either base.