EDlabsEDcheck

Ver qué está pasando

Hooks opcionales para saber cuándo EDcheck llama a la IA, qué contestó, o si falló.

EDcheck no escribe en la consola. Si quieres logs o traces, tú los pegas con hooks.

Hay tres: onRequest, onResponse y onError. Cada uno corre una vez por petición al provider. Si un parse no necesita IA (porque Zod ya rechazó todo), no corre ninguno.

Ejemplo simple

const edcheck = createEDcheck({  provider,  hooks: {    onRequest: (event) => {      console.log("preguntando", event.ruleIds);    },    onResponse: (event) => {      console.log("listo", event.outcomes, event.durationMs);    },    onError: (event) => {      console.log("falló", event.kind);    },  },});

Qué trae cada evento

CampoSignificado
parseIdUn id por cada safeParse.
requestIdUn id por cada llamada al provider.
requestIndex / requestCountEsta es la petición 1 de N de ese parse.
providerEl nombre (typesafe, gateway, mock).
entryobject o node, según cómo validaste.
ruleIdsQué reglas iban en esta petición.
durationMsCuánto tardó (en la respuesta o el error).
outcomespasa / aviso / falla por regla, antes de armar issues.
kindEn onError: provider, abort o unexpected.

Dos cuidados

  • Si tu hook lanza un error, EDcheck lo traga y no te avisa. Prueba tus hooks.
  • El evento trae el request completo, incluido state. Si exportas esto a un logger, quita datos sensibles antes.

Si un parse abre varias peticiones, espera requestCount eventos finales (onResponse o onError) con el mismo parseId. Ahí sabes que ese parse terminó de hablar con la IA.