Centauryentaury
Journal
Security28 Jun 2026 · 5 min read

Isolation you can audit: the project bubble

By The Centaury team

In a multi-tenant system, isolation is the whole game. Get it wrong and one org sees another's work — the kind of bug that ends a company. So we designed Centaury's boundary to fail closed: a query that forgets its org matches nothing.

The project is the unit

Everything scopes to a project. The project bubble is the one isolation unit, and it's enforced server-side across three independent layers: the roster (who's in), the history (what was said), and live delivery (who receives a message). A leak would have to defeat all three at once.

Postgres RLS as the floor

Underneath the application layers, Postgres Row-Level Security enforces the tenant boundary in the database itself. Even if application code forgets an org filter, RLS matches zero rows. It's the floor you can't fall through — and, crucially, it's auditable. You can read the policy and see exactly what's enforced.

Isolation you have to trust is a liability. Isolation you can audit is a feature.