Endurecimiento de Cron Add
Endurecimiento de Cron Add y Alineación de Esquema
Sección titulada «Endurecimiento de Cron Add y Alineación de Esquema»Contexto
Sección titulada «Contexto»Los registros recientes de la pasarela muestran fallos repetidos de cron.add con parámetros no válidos (faltan sessionTarget, wakeMode, payload y schedule malformado). Esto indica que al menos un cliente (probablemente la ruta de llamada de la herramienta del agente) está enviando cargas útiles de trabajo envueltas o especificadas parcialmente. Por separado, existe una discrepancia entre los enums de proveedores de cron en TypeScript, el esquema de la pasarela, las banderas de la CLI y los tipos de formularios de la interfaz de usuario, además de una discordancia en la interfaz de usuario para cron.status (espera jobCount mientras que la pasarela devuelve jobs).
Objetivos
Sección titulada «Objetivos»- Detener el spam de INVALID_REQUEST de
cron.addnormalizando las cargas útiles de contenedor comunes e infiriendo los camposkindfaltantes. - Alinear las listas de proveedores de cron en el esquema de la pasarela, los tipos de cron, la documentación de la CLI y los formularios de la interfaz de usuario.
- Hacer explícito el esquema de la herramienta de cron del agente para que el LLM produzca cargas útiles de trabajo correctas.
- Corregir la visualización del recuento de trabajos de estado de cron en la interfaz de usuario de Control.
- Agregar pruebas para cubrir la normalización y el comportamiento de la herramienta.
No objetivos
Sección titulada «No objetivos»- Cambiar la semántica de programación de cron o el comportamiento de ejecución del trabajo.
- Agregar nuevos tipos de programación o análisis de expresiones de cron.
- Rediseñar la interfaz de usuario/experiencia de usuario de cron más allá de las correcciones de campo necesarias.
Hallazgos (brechas actuales)
Sección titulada «Hallazgos (brechas actuales)»CronPayloadSchemaen la pasarela excluyesignal+imessage, mientras que los tipos de TS los incluyen.- CronStatus de la interfaz de usuario de Control espera
jobCount, pero la pasarela devuelvejobs. - El esquema de la herramienta de cron del agente permite objetos
jobarbitrarios, lo que permite entradas malformadas. - La pasarela valida estrictamente
cron.addsin normalización, por lo que las cargas útiles envueltas fallan.
Qué cambió
Sección titulada «Qué cambió»cron.addycron.updateahora normalizan formas comunes de envoltorios e infieren camposkindfaltantes.- El esquema de la herramienta de cron del agente coincide con el esquema de la puerta de enlace, lo que reduce las cargas útiles no válidas.
- Los enums del proveedor están alineados en la puerta de enlace, la CLI, la interfaz de usuario y el selector de macOS.
- La interfaz de usuario de Control utiliza el campo de recuento
jobsde la puerta de enlace para el estado.
Comportamiento actual
Sección titulada «Comportamiento actual»- Normalización: las cargas útiles envueltas
data/jobse desenvuelven;schedule.kindypayload.kindse infieren cuando es seguro. - Valores predeterminados: se aplican valores predeterminados seguros para
wakeModeysessionTargetcuando faltan. - Proveedores: Discord/Slack/Signal/iMessage ahora se muestran de manera consistente en la CLI/interfaz de usuario.
Consulte Cron jobs para obtener la forma normalizada y ejemplos.
Verificación
Sección titulada «Verificación»- Observe los registros de la puerta de enlace para ver si hay reducidos errores
cron.addINVALID_REQUEST. - Confirme que el estado de cron de la interfaz de usuario de Control muestra el recuento de trabajos después de actualizar.
Seguimientos opcionales
Sección titulada «Seguimientos opcionales»- Prueba de humo manual de la interfaz de usuario de Control: agregue un trabajo de cron por proveedor + verifique el recuento de trabajos de estado.
Preguntas abiertas
Sección titulada «Preguntas abiertas»- ¿Debe
cron.addaceptarstateexplícitos de los clientes (actualmente no permitido por el esquema)? - ¿Debemos permitir
webchatcomo proveedor de entrega explícito (actualmente filtrado en la resolución de entrega)?