The bucket is the coordinator â no membership protocol, no failure detector, no consensus. Ownership is a record in your bucket, claimed with one atomic write. celld's built-in replicator continuously ships each cell's SQLite state to that bucket as LTX segments.
Durable Objects is a strong programming model. celld keeps that model while moving placement, state, and operational evidence into infrastructure you choose.
What changes when you run the model yourself.
A cell's identity isn't fused to a machine â ownership is a lease in your bucket, granted by compare-and-swap. Lose a node and another acquires the lease and restores the cell in seconds: your fleet reading your storage, not a vendor restoring a placement you can't see.
Your fleet still depends on its machines, network, and bucket provider. What changes is tenancy: no shared Durable Objects scheduler or placement layer can couple your application to another customer's workload.
When a cell misbehaves the evidence is on your disk â the ownership record, the SQLite and LTX files, and the logs. You answer âwhat happened to my cellâ with sqlite3 and grep, not a status page that declines to say.