kazzle.config.ts. Un componente puede llevar tantos triggers como necesites.
La estructura
processModeelige el ciclo de vida — servidor de larga duración, o una ejecución única por trigger.triggers[]lista los eventos que deben activar este componente.
processMode
Triggers
Cada trigger tiene unname (único dentro del componente), un kind, y — dependiendo del modo — un schedule y/o path.
Modo persistente — HTTP hacia el servidor
Cuando un trigger se activa para un componente persistente, Kazzle envía un POST a tu servidor en elpath declarado. La solicitud lleva:
Para triggers de webhook, el cuerpo de la solicitud original se reenvía como cuerpo POST. Para triggers de programación el cuerpo está vacío.
Modo activado — una ejecución única por trigger
Cuando un trigger se activa para un componentetriggered, Kazzle genera el script de entrada nuevo y espera a que salga. No hay path; el script aprende qué trigger se activó desde variables de entorno.
URLs de webhook
triggerName debe coincidir con una entrada kind: 'webhook' en el triggers[] de ese componente. Los nombres de trigger desconocidos devuelven 404.
Resolución de programación
Las expresiones cron son de 5 campos (minuto, hora, día del mes, mes, día de la semana) y la resolución de minutos es el mínimo. Las programaciones sub-minuto se rechazan en el tiempo de validación del manifiesto.Cómo se registran las ejecuciones
Cada activación de trigger escribe una filaprocess_runs con el trigger_name, triggered_by, run_id, y el estado de salida de la ejecución. Puedes consultar estos desde tu propio código o inspeccionarlos en la vista de ejecuciones de la app.
Agotamiento de créditos
Una ejecución fallida se registra y se registra, pero la programación sigue ejecutándose en su cadencia normal — una ejecución inestable nunca desactiva el trigger. Lo único que detiene una ejecución son los créditos: cada activación de trigger se verifica contra el saldo del espacio, y mientras el espacio no tenga créditos (o no tenga facturación configurada) las ejecuciones se omiten con un402. Esto se recupera automáticamente — la programación permanece armada y la siguiente activación después de que recargues se ejecuta normalmente, sin reanudación manual.
Agregar automatizaciones después
Una app simple puede comenzar sin triggers y ganarlos después — agregar un resumen diario, conectar Stripe, ejecutar limpieza. El ciclo de vida del componente (processMode) y los triggers (triggers[]) son independientes, así que puedes cambiarlos sin reescribir el resto de la app.