Volver a la wiki

Detección de equipos parados en el LED del widget HARNESS (staleness detection)

Contexto del problema

El widget HARNESS del dashboard mostraba el LED de cada perfil de acuerdo al último status publicado, sin considerar la antigüedad del dato. El estado se escribe por push cuando cada perfil ejecuta method-doctor (aproximadamente a diario en operación normal); sin embargo, un veredicto verde quedaba congelado para siempre aunque la máquina llevara días apagada.

Caso real: el PC de Txell llevaba parado desde el viernes pero su LED seguía verde. El dato ya no era fiable.

Solución implementada

Backend: /api/harness-leds (endpoint CF Workers)

La lógica de “staleness” se implementa directamente en el endpoint usando SQL:

SELECT profile, status, updated_at,
  CAST((julianday('now') - julianday(updated_at)) AS REAL) AS age_days
FROM harness_status

Nueva constante:

const STALE_DAYS = 3;

Transformación de la respuesta: cada registro ahora incluye:

Justificación del umbral:

Frontend: HarnessLeds.tsx (componente React)

Nuevo estado visual: el LED adopta 3 colores + 1 apagado:

Cambios CSS:

Tooltip mejorado:

Verificación

El cambio fue verificado visualmente tras el deploy:

Archivos modificados

Véase también

Subir