Restate's approval wait: months of suspension, zero compute cost
Giselle van Dongen argues agent frameworks nail the loop but leave teams to rebuild retries, recovery, session isolation and cancellation from scratch. Her open-source server, Restate, sits in front of the agent, journals every event, and can suspend a function for a month across restarts and redeploys without burning serverless execution time.
- Three waves — Van Dongen opens with Andrej Karpathy's framing that LLM interaction moved from website-style Q&A, to downloaded apps with tools, to persistent asynchronous agents running as long-lived infrastructure processes.
- Missing layer — She says agent SDKs and memory tools get lots of innovation but don't handle connecting distributed parts of an organization, leaving teams to write retry logic, recovery logic and extra infrastructure themselves.
- Restate origins — Restate is an open-source durable execution framework whose design draws on Apache Flink, a distributed stream processing engine, and on architects who built Meta's core event infrastructure.
- Four ingredients — Restate provides durable execution for a single agent run, isolation across thousands of concurrent sessions, communication between agents and MCP servers/tools, and control to cancel or kill a stuck execution.
- Architecture — Restate runs as a server in front of the agent service, proxies and pushes requests, and keeps an open connection so the agent streams events into a journal used to recover exactly at the point of failure.
- Slack demo — A deep research agent in Slack runs a planner that proposes subtopics, spins up parallel sub-agents after approval, and recovers automatically when an injected web-search API failure is retried instead of killing the run.
- Durable promise — A human-approval step is modeled as a durable promise that can suspend for weeks or a month across restarts and redeploys, consuming no serverless execution time while it waits.
- Virtual objects — Sessions are modeled as virtual objects with a unique ID and isolated key-value state, guaranteeing only one execution runs at a time per session so concurrent Slack messages can't overwrite each other's state.
- Mid-run signaling — Van Dongen sends a live message telling the running agent to focus on frontier models; an LLM classifier decides it's relevant and injects it into the ongoing loop via a signal rather than restarting.
- Cancellation cascade — Telling the agent to forget a topic triggers a cancellation signal that rewinds down the call stack, stopping sub-agents first and then the controller itself.
- Cost control example — To handle a hypothetical expensive new model called Fabulous, she pulls the LLM call into its own handler with a policy check and flow control, capping one department to 300 concurrent calls to an LLM gateway.
- Internals — Under the hood Restate is an event-driven distributed log with an embedded state store, and unlike most pull-based workflow orchestrators it pushes invocations, achieving p99 latency around 45 milliseconds for a 10-step workflow.
- Availability — Restate ships as a single binary with six SDKs and integrations for popular agent frameworks, offered self-hosted, as a bring-your-own-cloud deployment, or as managed cloud, and the company is hiring in the Bay Area.
In their words
So if it's running on serverless this is not using uh execution uh time on our functions.8:42

So you can use these kind of workflow guarantees in functions around your application and uh have like a latencies of for example 45 milliseconds p99 for like a 10-step workflow.18:19

one of the web searches didn't go through because the API was down and then you see here on the right how it got retrieded and eventually completed successfully.6:30

Disclosure · Van Dongen is a builder at Restate and the talk demos and promotes Restate's open-source framework and commercial cloud/BYOC offerings.
One thing to add — One thing to add — the 45ms p99 latency and the Fabulous cost-overrun scenario are presented as illustrative examples in a vendor demo rather than production benchmarks, so treat them as directional rather than independently verified. The talk is a compelling architecture pitch but offers no comparison numbers against competing workflow orchestrators like Temporal.</note> </invoke>
One thing to try tonight
Clone the Restate GitHub repo, run the single binary locally, and wrap one existing LLM call in your agent code with restate.run to see the event journal populate in the UI as it executes.