Source: github.com/piercefreeman/waymark
Waymark is a library for building background tasks that survive server restarts, task crashes and long-running jobs. It runs on Postgres with no other infrastructure to deploy. Actions are plain async functions run by worker nodes, while workflows hold the control flow, including loops, conditionals and parallel branches.
Waymark does not replay workflow code the way Temporal and Vercel Workflows do. On the first run or schedule, the Python SDK parses the run() method into an intermediate representation, which is lowered to bytecode for a durable virtual machine written in Rust. The runtime saves the VM state to Postgres as it executes, so a workflow resumes from its last snapshot after a crash without re-running the original code.
Code has to use the patterns the compiler supports. Non-deterministic standard library calls such as time or uuid produce a compile error that asks the developer to move them into an explicit action. Some patterns still get past the compiler and are listed as known issues. The project states that it should not be used in production yet, because the spec is changing and backward compatibility is not guaranteed before 1.0.0.
Why it matters if you build agents
Agent developers who need retryable, long-running async work on Postgres can write workflows as ordinary Python and test them with their usual tools. Workflow bodies should avoid non-deterministic calls, which the compiler will reject, and these calls should be wrapped in actions. Because the project warns against production use before 1.0.0, it is best suited to side projects and evaluation for now.
Get stories like this every weekday
One short email with the day's agent tooling news.