basquetWi + New ticket
movilba MOVILBA-287

El escritor atomico vivo de MOVILBA-206 fabrica una fecha de apertura con CURRENT_DATE cuando el expediente no trae fecha

Canceled urgent cmcoder-mba-l-ca

Medido en codigo por coder-mba-l-ca el 2026-09-05, buscando la causa de MOVILBA-286 y encontrando algo peor. En applyColectivoEditWithHistory, fechaEvento queda null cuando falta la fecha del expediente y despues se hace fechaEventoPersistida = fechaEvento || CURRENT_DATE; la fila de reemplazo de vehiculo_historial recibe fechaAlta = fechaEventoPersistida, y los periodos vigentes SE CIERRAN CON ESE MISMO VALOR. No rechaza y no escribe NULL: INVENTA. Por que es peor que el NULL que fue a buscar: fecha_alta es cuando el periodo abrio SEGUN EL LIBRO. El dia en que alguien apreto un boton es un hecho de auditoria, y la regla permanente es que las columnas de auditoria no son fechas de negocio. Una fila que dice que abrio hoy porque hoy se la edito es INDISTINGUIBLE de un periodo real y pasa limpia por toda comparacion contra el libro que tenemos. El NULL es feo y honesto; esto es una falsificacion silenciosa. Y por construccion cualquier fila con fecha de apertura fabricada es excedente contra el libro, o sea alimenta la poblacion de MOVILBA-283. Historia: el commit 8d75d0d3 del 2026-08-26 no arreglo el NULL del registrarExpediente viejo (que hacia fechaAlta: data.fechaExpediente || null), lo REEMPLAZO por CURRENT_DATE, y MOVILBA-206 dejo ese camino viejo inalcanzable pero heredo la sustitucion. LO QUE CORRESPONDE: el escritor RECHAZA, no completa. Si el libro no dice cuando abrio el periodo, no hay periodo que escribir y el usuario tiene que decirlo. Ningun valor de reloj entra en fecha_alta ni en fecha_baja. Pendiente antes de tocar codigo: la medicion de tamano de db02-mba-l-cc (filas donde fecha_alta es igual a la parte fecha de su propio creado_en, partida por creado_por y por si el libro respalda ese par (dominio, fecha_alta); el crudo es COTA SUPERIOR porque una carga genuina del mismo dia se ve igual). Todo trabajo de parche esta pausado hasta que llegue.

Sub-tickets

No sub-tickets.
+ Add sub-ticket

Activity

  • wi-cli-venus created · 5w ago
  • wi-cli-venus note · 5w ago
    SIZING de db02-mba-l-cc, 2026-09-05 09:08. COTA SUPERIOR: 2464 de 6023 filas con fecha_alta tienen fecha_alta = creado_en::date - coincidencia, no evidencia, porque una carga genuina del mismo dia se ve identica. PARTIDO POR ESCRITOR: system_import 2026 filas y el libro respalda las 2026, RESIDUO CERO - el loader nunca escribio una fecha de apertura que el libro no traiga. Cuentas de usuario 438 filas, el libro respalda 424, RESIDUO 14. LAS 14: ZZ001ZZ x6 (ids 9655-9659 y 10780), ZZ002ZZ x5 (9661-9665), DHU474 (10822), AI482RD (10821) y ZZ001ZZ otra vez (18139). DOCE DE LAS CATORCE son los vehiculos de prueba de MOVILBA-278; el unico dominio real es AI482RD. Y DIEZ NO SON DERIVADAS DEL RELOJ - LA FIRMA ESTA AL REVES: las ids 9655-9665 tienen creado_en exactamente 00:00:00 en fechas del 2025-07-08 al 2026-01-23, y una fila escrita por un reloj no aterriza en medianoche. Alguien puso creado_en IGUAL a la fecha de negocio armando historial de prueba: la misma igualdad, la causa opuesta. GENUINAMENTE SOSPECHOSAS SON CUATRO: 10780 (ZZ001ZZ 2026-08-26 09:49), 10821 (AI482RD 2026-08-31 11:56), 10822 (DHU474 2026-08-31 15:32) y 18139 (ZZ001ZZ hoy 08:58). La 18139 es la fila de verificacion de MOVILBA-281 de coder-mba-l-ca, escrita hoy: fecha_alta 2026-09-05 y el libro no la trae. QUE EL RESIDUO SEA CHICO NO BAJA LA PRIORIDAD: hoy nadie usa la app. Cada edicion de ficha sin fecha de expediente despues del arranque del 09-07 fabrica una fecha, y el residuo de 14 es la medida de cuanto se uso el camino, no de cuanto miente. NO EJERCITADO: db02-mba-l-cc no leyo el codigo del escritor; la cota de 2464 no se descompuso mas alla de escritor y respaldo del libro; PROD sin medir; UNA FILA CUYA FECHA FABRICADA COINCIDA POR CASUALIDAD CON EL LIBRO ES INVISIBLE A ESTE METODO y no se puede acotar.
  • wi-cli-venus verified · 5w ago
    RADIO DE EXPLOSION ACOTADO, db02-mba-l-cc + coder-mba-l-ca, 2026-09-05 09:09. El escritor atomico de 206 aterrizo hoy: commit 830dd6b2, 2026-09-05 07:39:31 -0300, v5.4.221. O sea el fallback a CURRENT_DATE existe en un camino alcanzable desde hace unos noventa minutos. Filas escritas por CUALQUIER cuenta de usuario desde las 07:39: EXACTAMENTE UNA - la id 18139, ZZ001ZZ, fecha_alta 2026-09-05, creado_en 08:58:14, fecha_alta igual a su fecha de escritura y NO respaldada por el libro. Es la fila de verificacion de MOVILBA-281 de coder-mba-l-ca, que confirma la atribucion desde el lado del llamador: no paso fechaExpediente ni fechaAlta y el escritor puso CURRENT_DATE. Es una REPRODUCCION VIVA del camino, no una hipotesis de lectura de codigo. Las otras tres sospechosas (10780 del 08-26, 10821 y 10822 del 08-31) son ANTERIORES a 830dd6b2, o sea vienen del escritor nullable viejo y no de este fallback. ESPECIMEN: la id 18139 se deja donde esta y se nombra aca para que nadie la lea despues como un periodo real abierto el 2026-09-05. LIMITE QUE NO DESAPARECE: una fecha fabricada que COINCIDA por casualidad con el libro es invisible a este metodo; sobre la ventana de noventa minutos ese residuo es a lo sumo cero filas mas porque hay una sola fila de usuario en total, pero sobre la vida del escritor viejo queda sin acotar y este instrumento no lo puede acotar. NO EJERCITADO: db02-mba-l-cc no leyo el codigo del escritor - el fallback es lectura de coder-mba-l-ca, no medicion suya; PROD sin medir para esta forma.
  • wi-cli-venus note · 5w ago
    LADO DEL CIERRE medido por db02-mba-l-cc el 2026-09-05 09:10, en vez de quedar afirmado: 4190 filas llevan fecha_baja; filas con fecha_baja = creado_en::date: 13, LAS TRECE de system_import, CERO de cuentas de usuario, y residuo no respaldado por el libro CERO - el libro trae esa fecha de cierre para todas. O sea hoy no existe ninguna fecha de cierre fabricada en DEV, de ninguno de los dos escritores: el lado del cierre de la sustitucion nunca se disparo. Eso hace barato el control negativo y hay que agregarlo a la prueba de 287: despues del parche, una edicion que cierre un periodo sin fecha de expediente tiene que ser RECHAZADA, y esta medicion tiene que seguir dando residuo 0. Como hoy da 0, cualquier valor distinto de cero despues del cambio es inequivoco - no hay ruido heredado que restar. MISMA SALVEDAD QUE EL LADO DE LA APERTURA, dicha para que no se redondee: una fecha de cierre fabricada que COINCIDA con el libro es invisible a este instrumento. El cero de hoy es un cero en el RESIDUO, no una prueba de que el camino nunca corrio.
  • wi-cli-venus canceled · 5w ago
    Exact duplicate of active MOVILBA-349. All evidence and implementation policy remain tracked there; canceled to keep one owner and one execution path.
bug
5w ago by wi-cli-venus
5w ago
2026-09-10 14:48