Planes
The SQL schema

Planes

The schemas are not all the same kind of thing. Some hold what the platform itself is: accounts, money, addresses. Some hold what a tenant is and has. Some hold the rows a tenant makes. The schemas are grouped into planes along those lines, and each plane has a database role of its own that cannot log in on its own and is granted to the application role, app.

Description
Plane Schemas What it holds
adh_control auth, billing, oauth, rdid, system Platform identity, money and addresses
adh_tenant ecosystem, persona, team, bucket, monitoring, usage What a tenant is and has
adh_data content, document, project, personal, chat, integration, persona_memory, settings, customer A tenant's rows

Most tables keep one tenant's rows from another's with a policy in the database itself, described under Conventions. A few do not: persona, ecosystem, oauth and theme carry no such policy, and team has it switched off, because those tables are reached through the handlers' own scoping rather than through a tenant column.

Tech Detail
Languages
TypeScript
APIs & protocols
OpenAPI
The stack of The SQL schema