Blog
2026-07-14
Obelisk, Temporal and Restate all let a function
keep making progress after its process disappears. The largest architectural difference is that
Obelisk is a workflow runtime: it loads and runs application components itself. Temporal and Restate
are orchestrators whose application code runs in separately deployed Workers or service endpoints.
That difference shapes which mistakes each system can prevent and what exactly gets deployed.
I implemented the same small workflow with all three. The goal is to compare their Rust APIs,
determinism boundaries, activity isolation, secrets and deployment models.
Read more »
2026-07-13
Obelisk 0.40 tightens two defaults that used to be wide open and improves how workflows see failed
children. The API port now rejects requests without a token, host exec activities have to be enabled
before they will run, and an awaited child failure now tells you whether it was a business error or
a platform failure such as a timeout or cancellation.
Read more »
2026-06-25
Obelisk 0.39 makes deployments easier to inspect, reproduce, and move between environments. The
server now stores the submitted deployment.toml together with deployment-owned source files, can
reconstruct a deployment back to disk, and verifies deployment packages before they are persisted.
Read more »
2026-05-29
Obelisk 0.38 adds native executable activities, step-through execution debugging with the
replay/advance API, and self-contained deployments where JS and shell scripts live directly inside
deployment.toml.
Read more »
2026-05-29
DBOS recently argued that
Postgres
is all you need for durable execution: if you already trust your database, you do not need a
separate orchestration tier. I agree with the direction, and I think the idea can be pushed further.
For a large class of durable systems, SQLite is all you need.
Read more »