Tenancy e isolamento de dados
Row-Level Security (RLS) em todas as tabelas de todos os schemas de tenants. As policies de RLS comparam organization_id com a claim do JWT do chamador via current_user_org_id(); nas rotas que rodam sob o papel restrito de banco de dados, leituras e escritas cross-tenant são bloqueadas pelo próprio banco, e toda query no servidor é adicionalmente filtrada por organization_id — verificado por um CI lint de escopo por organização em todos os schemas de tenants. O cliente browser com chave anônima retorna zero linhas de qualquer schema multi-tenant. Novas tabelas exigem RLS na mesma migration (guardrail de CI).
PROVA →RLS com JWT via current_user_org_id() · SELECT anônimo revogado · CI lint de escopo por organização