Latten exists to show you what your AI costs and where your private data flows. That only works if connecting it never puts that data at more risk than it already is. So here is what we touch, what we could break, what a breach of us would expose, and what our downtime costs you — plainly. Every claim on this page is implemented today; nothing is aspirational except where we say so explicitly.
Two feeds, both narrow by design.
Your data is never used to train models, and recommendation generation operates on finding metadata — kind, category, scope — never row values.
We measure blast radius for a living, so we'll state ours: the honest ceiling is whatever the connection you give us can read. We cap it twice, and ask you to cap it a third time.
default_transaction_read_only
on every connection. Latten cannot mutate, delete, or lock your data.
Zero trust applies to us too. Assume our database is stolen — here is the inventory, worst case first:
The audit trail itself is tamper-evident: enforcement events form a SHA-256 hash chain and database triggers reject updates and deletes, so even an attacker with database access cannot quietly rewrite history.
Nothing happens to your systems. Latten is observe-only and sits outside your request path: no query, tool call, or answer waits on us. The SDK reports asynchronously from a bounded buffer and never blocks your code — if we're unreachable, it retries with backoff and, at worst, drops telemetry. The honest cost of a Latten outage is a gap in observation, never an interruption of your systems. We are early and do not yet publish an SLA; we'd rather tell you the failure mode than promise a number we haven't earned.
No single layer above stands alone. Underneath them, independently:
Found something? Tell us first: security@latten.io (machine-readable: /.well-known/security.txt ). We respond within one business day, we won't take legal action against good-faith research, and we credit reporters who want credit.