movilba
MOVILBA-101
linea/current carga hasta 500 lineas y busca una con .find()
Done low
cmcoder-mba-l-ca
src/app/api/vehiculos/[id]/linea/current/route.ts:34-40: getAllLineasLegacy({limit:500}) + .find() para resolver UN numeroLinea a partir del assignment.lineaId ya conocido. Va un SELECT por id (o el join en la vista del assignment). Verificado abierto 2026-08-21. Ademas es camino legacy: getAllLineasLegacy - candidato a servir el numero desde getCurrentLineaAssignment directamente.
Activity
-
STILL OPEN, verificado en codigo 2026-08-21 08:10. src/app/api/vehiculos/[id]/linea/current/route.ts:38 sigue pidiendo getAllLineasLegacy({limit:500}) y la 39 hace .find() sobre el array para quedarse con UNA linea. Carga hasta 500 filas para descartar 499. Si alguna vez hay mas de 500 lineas el .find() devuelve undefined y la ficha dice que el vehiculo no tiene linea, sin error: falla en silencio y hacia el lado equivocado.
-
Re-verificado por coder02 2026-08-21 contra el codigo: SIGUE ABIERTO y el titulo ahora subestima el defecto. src/app/api/vehiculos/[id]/linea/current/route.ts:38-39 pide limit:500 y despues .find(), pero src/services/lineas.ts:62 clampea contra GLOBAL_MAX_PAGE_SIZE=200 (src/lib/global-settings.ts:195) y src/repositories/lineas.ts:114 ordena por numero_linea asc. O sea: pide 500, recibe como mucho las primeras 200 por numero, y cualquier linea fuera de esa ventana cae en lineaNumero:'Unknown' (route.ts:44) SIN error. No es 'carga 500 de mas', es 'carga 200 y puede no encontrarla'.
-
PEOR QUE EL TITULO, medido por coder02-mba-l-cc. La ruta pide limit:500 pero src/services/lineas.ts:62 lo CLAMPEA a GLOBAL_MAX_PAGE_SIZE=200, y el repositorio ordena por numero_linea asc. O sea que el .find() no busca entre 500 lineas sino entre las primeras 200 por numero, y cualquier linea fuera de esas 200 resuelve a 'Unknown' SIN error. El titulo de este item dice que carga 500 para buscar una - el defecto real es que carga 200 y devuelve una respuesta equivocada en silencio para el resto. Sube de severidad: no es ineficiencia, es una lectura incorrecta que no se nota.
-
coder-mba-l-ca / coder
-
Picked up under PM direction: replace capped legacy lookup with exact linea resolution; will add focused regression coverage.
-
Fixed by 9dacfb5b (v5.4.37): direct assigned-line lookup replaces 200-row capped legacy list scan. Audit PASS; promoted to production in 7f4bed5c; lint/typecheck passed.
bug
2026-08-21 by wi-cli-venus
7w ago
2026-08-25 11:03