19 puntos por xguru 2025-11-27 | 2 comentarios | Compartir por WhatsApp
  • Framework de workflows durables y reanudables escrito en TypeScript”
  • Proporciona un motor de workflows para automatizar flujos de trabajo complejos conectando diversos servicios y APIs
  • Plataforma open source modular desarrollada para resolver problemas de automatización de workflows e integración
  • Incluso si el servidor cae o hay un despliegue, guarda el estado en Postgres para poder reanudar la ejecución exactamente desde el último paso
  • Como cada step.run({ name }, fn) se ejecuta solo una vez y su resultado se memoiza, al reiniciar tras un crash no vuelve a ejecutar efectos secundarios como cobros con tarjeta o envío de correos, sino que reutiliza el resultado en caché
  • Sin necesidad de un servidor dedicado aparte, usa una arquitectura donde los procesos worker (ow.newWorker({ concurrency })) consultan en la base de datos los runs pendientes y los ejecutan; así, es posible levantar varios workers para lograr alta disponibilidad y escalado horizontal, y un sleep largo como step.sleep("id", "1h") tampoco ocupa un slot del worker
  • Con genéricos para entrada/salida de workflows, el campo de versión (version: "v2"), run().result(), handle.cancel(), etc., está diseñado para manejar a nivel de código definiciones con seguridad de tipos, versionado, consulta de resultados y cancelación
  • Soporta expansión y personalización con sistemas externos mediante una arquitectura de plugins
  • Soporta integración con herramientas SaaS y de desarrollo importantes como OpenAI, Slack, GitHub y Notion
  • Actualmente se enfoca en el backend de PostgreSQL y las funciones básicas del runtime (ejecución concurrente, retries, steps paralelos, sleep, versionado, cancelación)
    • Más adelante, el roadmap incluye CLI, dashboard, idempotency key, funciones de rollback/compensación, señales (signals), OpenTelemetry, backends Redis/SQLite y SDKs para Go/Python

2 comentarios

 
hiyama 2025-11-27

Hace poco habían subido esto: GitHub - earendil-works/absurd: An experiment in durability https://share.google/PCjaLh3j46ayECI9b ... parece un proyecto con el mismo concepto, pero ¿a dónde fue a parar...?

 
click 2025-11-27

Me da una sensación similar a spring batch.