Security

Designed for multi-tenant isolation and safe degradation.

Tenant and workspace isolation

Module tables carry tenant and workspace scope, with PostgreSQL row-level security intended as the data-layer enforcement boundary.

Secrets

Provider keys and identity signing secrets are encrypted at rest and are never returned after their one-time creation response. Production deployment must replace the local application encryption boundary with cloud KMS/HSM integration before GA.

Visitor data

Conversation bodies and lead fields are encrypted. Browser storage holds session references, not transcript bodies.

AI safety

Knowledge is retrieved before model invocation. Provider output is grounded/post-checked before being exposed to the visitor. AI failure falls back to KB mode rather than showing a raw error.

Verified identity

Verified identity is accepted only from short-lived, site-bound, audience-bound server-signed tokens. Anonymous identifiers remain explicitly untrusted.

Operations

MFA, audited support access, kill switches, rollout controls, request metrics, backups and release qualification tooling are included in the application repository. External WAF, KMS, PITR and APM remain deployment responsibilities.