Ir al contenido

Contexto de Dominio

Cada página de esta sección documenta un módulo/feature de controlgmg-v2: modelo/BD, rutas, componentes Vue, permisos (Laratrust), selectores usados por el tester y datos observados en QA. Cubren todo el sidebar de la app.

Módulo Cobertura Playwright
Home Sí
Centro de Mensajes Ninguna
Usuarios Ninguna
Settings Ninguna
Liquidaciones Ninguna
Expediente Operador Ninguna
Expediente Admin Ninguna
Expediente Clientes Ninguna
Compras Ninguna
Compras Cotizadas Ninguna — relacionado con GMG-3084
Cartas Porte (Waybills) Ninguna — relacionado con GMG-3084
Vales Ninguna
Tractores Sí
Taller Ninguna
Remolques Sí
Subcontrataciones Ninguna
Llantas / Inspecciones Ninguna
Control Data Ninguna
Personal Ninguna
GMG-Utils (Videos/Links/Tareas) Ninguna

Home, Remolques y Tractores tienen specs de Playwright reales hoy (motor de testing en tester/, proyecto gmg). El resto es documentación de dominio para escribir tests después.

Bugs confirmados (reproducidos en vivo en QA, 2026-08-13)

Sección titulada «Bugs confirmados (reproducidos en vivo en QA, 2026-08-13)»
  • Tractores — selector “Prioridad” nunca muestra opciones (filtro ni editor inline de fila). Sin llamada de red a catálogo de prioridades; el select “Usuario Ejecutivo” en la misma página sí funciona. Detalle en Tractores.
  • Tractores — reporte “Historial Situaciones” siempre muestra tabla vacía en los tres filtros, aunque los totales agregados sí calculan correctamente. Detalle en Tractores.
  • Tractores — gráfica de pastel “Situaciones al momento” no dibuja datos, pese a que la vista de lista en la misma página sí muestra conteos reales. Detalle en Tractores.

Hallazgos que vale la pena revisar (no confirmados, son pistas)

Sección titulada «Hallazgos que vale la pena revisar (no confirmados, son pistas)»
  • GMG-3084 (duplicidad de remolques) toca directamente Compras Cotizadas (FK numérica real trailer_id, no rompe integridad referencial) y Cartas Porte (Waybill::trailer() sin withTrashed(), más una columna desnormalizada trailer_code aparte del FK). Detalle completo en Remolques.
  • Posibles permisos copy-paste (mismo patrón sospechoso en 3 módulos distintos, no confirmado):
    • Liquidaciones: botón de papelera usa can('delete-operator') en vez de can('delete-operation').
    • Usuarios: mismo patrón, can('delete-operator') en vez de can('delete-user').
    • Personal: guard de ruta (view-staff) no coincide con guard del ítem de menú (approve-staff).
  • Tractores probablemente NO tiene el bug GMG-3084: Unit::createOrFindFromAS400() busca por (code, company.code) sin dimensión “propietario” — ver Tractores.
  • Al añadir specs nuevos para un módulo ya documentado, si descubres un campo, ruta o comportamiento no reflejado aquí.
  • Si un test empieza a fallar por un selector roto (markup de la app cambió), actualiza la sección “Selectores” con el nuevo hallazgo.
  • Al agregar una query nueva en tester/projects/gmg/db/queries/, documenta qué regresión detecta y de qué bug/ticket viene.
  • Varias fichas dejaron secciones marcadas explícitamente “por verificar” (se priorizó velocidad sobre exhaustividad al generarlas) — complétalas la próxima vez que trabajes en ese módulo.

Copia la estructura de Remolques o Liquidaciones: Backend (modelo/tabla/columnas clave), Bugs conocidos (si aplica), Rutas, Frontend (Vue), Permisos, Selectores usados y riesgo de fragilidad, Datos observados en QA con fecha.