Learn how agents scale beyond a single machine and master identity, coordination, and recovery
Build a recursive, distributed Deep Research Agent with @resonatehqio.bsky.social + OpenAI—in under 120 lines
Chapter 3 is live
Get into formal methods
Not to prove your system correct but to prove your thinking correct
Get into formal methods
Not to prove your system correct but to prove your thinking correct
Think Kafka retention: a request is idempotent only as long as the system remembers the request
Think Kafka retention: a request is idempotent only as long as the system remembers the request
If action a was applied at step i, then replaying a at any future step j is a no-op
Idempotence is a property of traces
If action a was applied at step i, then replaying a at any future step j is a no-op
Idempotence is a property of traces
Not this
Applying a request n times has no effect beyond the first application
But that
Applying a request n times, regardless of how the state has evolved in between applications, has no effect beyond the first application
Not this
Applying a request n times has no effect beyond the first application
But that
Applying a request n times, regardless of how the state has evolved in between applications, has no effect beyond the first application
Haskell's type system is a great vehicle for formalizing
@resonatehqio.bsky.social 's core execution model, execute_until_blocked
The shape of the conversation between User Program, Worker, and Server just fell out of the type system
Haskell's type system is a great vehicle for formalizing
@resonatehqio.bsky.social 's core execution model, execute_until_blocked
The shape of the conversation between User Program, Worker, and Server just fell out of the type system
First you defend the invariants your system has. Then you design the invariants your system should have
Invariants become aspirational, not just defensive
First you defend the invariants your system has. Then you design the invariants your system should have
Invariants become aspirational, not just defensive
I've looked. I've found nothing
Please drop papers
I've looked. I've found nothing
Please drop papers
Platform
Property P is certain. All valid programs have P
Think memory-safe Rust program
Application
Property P is possible. Some valid programs have P
Think memory-safe C program
Platform
Property P is certain. All valid programs have P
Think memory-safe Rust program
Application
Property P is possible. Some valid programs have P
Think memory-safe C program
LLMs are great at writing code, but just like their human counterparts, they miss edge cases
DST doesn't
DST is the fitness function your coding agent needs to maximize
LLMs are great at writing code, but just like their human counterparts, they miss edge cases
DST doesn't
DST is the fitness function your coding agent needs to maximize
• Coordination (incl scheduling)
• Supervision (incl recovery)
That is, the server is responsible for scheduling a distributed execution onto a distributed system and reschedule parts of the execution when parts of the system fail
• Coordination (incl scheduling)
• Supervision (incl recovery)
That is, the server is responsible for scheduling a distributed execution onto a distributed system and reschedule parts of the execution when parts of the system fail
A crash? An interruption.
A sleep? An interruption.
Same suspension. Same resumption. Same solution.
The full definition: 12 words.
The minimal implementation: 50 lines.
journal.resonatehq.io/p/durable-ex...
A crash? An interruption.
A sleep? An interruption.
Same suspension. Same resumption. Same solution.
The full definition: 12 words.
The minimal implementation: 50 lines.
journal.resonatehq.io/p/durable-ex...
Join Matklad and me for an evening of systems engineering
luma.com/7d47f4et
Join Matklad and me for an evening of systems engineering
luma.com/7d47f4et
Every durable execution framework: write normal code, get fault tolerance. Yet nobody defines what normal code or fault tolerance are
The alternative: a rigorous definition, grounded in first principles, and a minimal implementation
Dropping today
Every durable execution framework: write normal code, get fault tolerance. Yet nobody defines what normal code or fault tolerance are
The alternative: a rigorous definition, grounded in first principles, and a minimal implementation
Dropping today
Even in consensus, you never know the current value, you only know the value at an offset in the log
Every decision is made on a stale understanding of the world
Even in consensus, you never know the current value, you only know the value at an offset in the log
Every decision is made on a stale understanding of the world
Resonate makes promises durable. That's it.
skip-when-done
- Checkpoint before the function starts
- Checkpoint after the function returns
- On restart, skip what's done
Everything else follows from there
Dead simple
Resonate makes promises durable. That's it.
skip-when-done
- Checkpoint before the function starts
- Checkpoint after the function returns
- On restart, skip what's done
Everything else follows from there
Dead simple
skip-when-done
- Checkpoint before the function starts
- Checkpoint after the function returns
- On restart, skip what's done
Everything else follows from there
Dead simple
I will talk about Write Last, Read First: How to keep systems consistent without transactions
bsky.app/profile/tige...
I will talk about Write Last, Read First: How to keep systems consistent without transactions
bsky.app/profile/tige...
The unbridled use of goto statements makes it terribly hard to find a meaningful set of coordinates in which to describe the process progress
Unconstrained Event-Driven Architecture is distributed goto
(Read first. Yell later)
The unbridled use of goto statements makes it terribly hard to find a meaningful set of coordinates in which to describe the process progress
Unconstrained Event-Driven Architecture is distributed goto
(Read first. Yell later)
(Read first. Yell later)
Assertions seem extreme: they don't throw exceptions, they crash the process. Yet continuing after a violation is worse than crashing.
Shut it down. Enable assertions in production
dtornow.substack.com/p/assert-in-...
Assertions seem extreme: they don't throw exceptions, they crash the process. Yet continuing after a violation is worse than crashing.
Shut it down. Enable assertions in production
dtornow.substack.com/p/assert-in-...
Exploring the fundamentals of DE, based on a minimal engine built from scratch, using #SQLite as an execution log, and modern #Java (👋 virtual threads).
👉https://www.morling.dev/blog/building-durable-execution-engine-with-sqlite/
Execute until Blocked
Make progress by taking one incremental step
Send
Communicate by sending one message
Enabling any durability model on any transport
Execute until Blocked
Make progress by taking one incremental step
Send
Communicate by sending one message
Enabling any durability model on any transport
What happens when your agent crashes while the LLM is streaming tokens to the user?!
Chapter 4: Lifetime Management in Agentic Systems
Systems Engineering for Agentic Applications
A guide for turning AI-powered prototypes into production-ready agentic applications
Released monthly, chapter by chapter.
If 100 people sign up, we are doing this
agenticapplications.substack.com/about
What happens when your agent crashes while the LLM is streaming tokens to the user?!
Chapter 4: Lifetime Management in Agentic Systems
A good starting point to understand continuations and programming with continuations is
Control structures in programming languages: from goto to algebraic effects
by Xavier Leroy
A good starting point to understand continuations and programming with continuations is
Control structures in programming languages: from goto to algebraic effects
by Xavier Leroy
Forget the clumsy analogies
Orchestration
The platform manages the continuation
Choreography
The application manages the continuation
Everything else is noise
Forget the clumsy analogies
Orchestration
The platform manages the continuation
Choreography
The application manages the continuation
Everything else is noise