odin

odin keeps running when its machines don't.

A durable workflow engine in Python, running live on three nodes. Start an order and watch it finish while scheduled chaos takes nodes down around it, charged exactly once.

Right now

Asking the cluster…

How it stays up

Every step is written down

A workflow's history lives in Postgres. When a worker dies, another replays the history and carries on from the last step that finished, not from the start.

64 shards, each with one writer

Engines hold each shard on a 10-second lease, renewed every 3 s. A node that stops renewing stops writing before its lease can run out, and every write checks the shard's fencing number, so two writers never touch the same run.

Side effects happen once

Each activity carries an idempotency key, and tasks leave through a transactional outbox. Retries and redeliveries happen; double charges don't.

Chaos on a timer

Every ten minutes a scenario kills a node, partitions it, or breaks a dependency. Then a checker reads the history and proves nothing was lost.

The details are in the design write-up, the numbers in benchmarks, and every chaos run with its checks in the chaos log.