Blog → Architecture

Why most AI knowledge systems fail GDPR.

Most AI knowledge systems store everything they are given. Conversation transcripts, meeting notes, client details, personal data — all ingested into the same vector database with no separation between the content and the identifiers embedded within it. The system treats a project insight and a person's phone number as the same thing: text to be embedded.

This works until a regulator asks a question. "Can you fulfil a Subject Access Request?" "Can you demonstrate where personal data is stored?" "Can you delete every reference to this individual?"

The answer, for most AI knowledge systems, is silence. Not because the organisation is negligent. Because the architecture was never designed to answer those questions. GDPR compliance was treated as a policy layer — something handled by a privacy notice and an annual review — not as a structural constraint that shapes how data enters, lives in, and leaves the system.

ORCA was built the other way around. Privacy is not a feature. It is the architecture.

The three failure modes

There are three ways AI knowledge systems fail GDPR, and most systems exhibit all three simultaneously.

Failure 1: PII embedded in vector embeddings. When text containing personal data is converted into a vector embedding, the personal data becomes inseparable from the meaning of the content. You cannot selectively delete "Sarah Mitchell's name" from a 1536-dimensional vector without destroying the entire embedding. The mathematical representation has fused the identity with the knowledge. To remove the person, you must remove everything the system learned from that entry. This is not a limitation of a specific vendor. It is a mathematical property of how embeddings work.

Failure 2: No separation between content and identity. A typical AI knowledge system stores "Sarah Mitchell raised a concern about data retention during the March workshop" as a single unit. The organisational intelligence — someone raised a concern about data retention — is valuable and should persist. The personal identifier — Sarah Mitchell — should be separable from that intelligence. In most systems, it is not. The knowledge and the person are stored together, retrieved together, and can only be deleted together.

Failure 3: No deterministic deletion path. GDPR Article 17 gives individuals the right to erasure. To fulfil that right, you need to know exactly where every reference to a person exists. In a vector database with thousands of entries, across multiple collections, with embeddings that may or may not contain personal data depending on the source text — there is no deterministic way to find every reference. You cannot grep a vector store. You cannot query embeddings by the names they contain. The data is there, but you cannot locate it, and therefore you cannot delete it.

Each failure mode is serious on its own. Together, they create a system that stores personal data it cannot find, cannot separate, and cannot delete. That is not a compliance gap. That is an architectural one.

ORCA's three-layer defence

ORCA addresses each failure mode with a dedicated architectural layer. The layers operate in sequence on every write — not as optional post-processing, but as the write path itself. Content cannot reach the knowledge base without passing through all three.

Layer 1 — Constitutional minimisation. The AI is instructed to use role descriptors rather than named individuals wherever identity is not operationally necessary. "The project lead raised a concern" rather than a named individual. This is the weakest layer — enforced by prompt, not code — and is never relied upon as a primary control. It reduces the volume of personal data entering the system but cannot guarantee elimination.

Layer 2 — NER tokenisation. Named Entity Recognition scans every piece of content before storage. Emails, phone numbers, employee IDs are detected by regex and replaced with deterministic tokens. Person names are detected by NER and tokenised. Role-organisation combinations are tokenised. The knowledge base never contains raw personal data — only tokens like PERSON-a3f8 that are meaningless without the token store.

Layer 3 — Envelope encryption. All governance and engagement brain content is encrypted with AES-256-GCM using a per-entry data encryption key (DEK). Each DEK is wrapped by an RSA-OAEP key encryption key (KEK) held in Azure Key Vault. Even if storage is breached, content is unreadable without the key hierarchy. The gateway's Managed Identity has wrap and unwrap permissions only — no export.

These layers are not independent options. They are sequential. Content passes through constitutional minimisation, then tokenisation, then encryption, before it reaches persistent storage. The order matters: minimisation reduces PII volume, tokenisation replaces what remains with deterministic references, and encryption protects the tokenised content at rest.

The deterministic token store

The tokenisation layer deserves closer attention, because it is what makes GDPR compliance deterministic rather than aspirational.

When the NER scanner detects a person's name — say, "Sarah Mitchell" — it does not generate a random token. It generates a deterministic UUIDv5 token. The same name always produces the same token. This is a deliberate design choice with three consequences.

First, you can search for every entry that mentions a person. Look up the name in the pii_tokens table in Azure SQL, retrieve the token, and query Qdrant for every entry containing that token. The search is exhaustive and deterministic. There is no ambiguity about whether you found everything.

Second, you can fulfil a Subject Access Request. The token store maps tokens to real identifiers. Query all entries containing a person's tokens, decrypt the content, resolve the tokens back to names, and compile the report. The process is mechanical, repeatable, and auditable.

Third — and this is the critical capability — you can fulfil a right-to-erasure request without destroying the knowledge. Delete the token mapping from the SQL database. Every reference to that person across the entire knowledge base becomes permanently unresolvable. The token PERSON-a3f8 still exists in the stored content, but it no longer maps to anyone. The organisational intelligence — the lesson, the pattern, the decision — survives. The personal identifier does not.

This is the difference between a system that can delete personal data and a system that can only delete entries that contain personal data. The first preserves institutional knowledge. The second forces you to choose between compliance and intelligence.

Separation of concerns

No single system in ORCA's architecture holds enough information to reconstruct personal data without authorisation across multiple services.

Qdrant holds vector embeddings and tokenised text. No raw personal data. No encryption keys. Even with full read access to Qdrant, an attacker sees tokens that map to nothing without the SQL database.

Azure SQL holds the token mappings in the pii_tokens table. It maps deterministic tokens to encrypted personal identifiers. Without access to the Key Vault, the encrypted values cannot be decrypted.

Azure Key Vault holds the KEK — the key that wraps the per-entry data encryption keys. The gateway's Managed Identity can wrap and unwrap but cannot export. The key never leaves the vault.

Azure Blob Storage holds encrypted brain content — ciphertext objects that are unreadable without the corresponding DEK, which is itself wrapped by the KEK in Key Vault.

Compromise any one of these systems and you get nothing useful. Compromise two and you still cannot reconstruct personal data without the third. This is not security by obscurity. It is security by architectural separation — each system holds a necessary but insufficient piece of the puzzle.

GDPR as architecture, not compliance

Most organisations treat GDPR as a compliance exercise. Policies are written. Training is delivered. Annual reviews are conducted. A Data Protection Impact Assessment sits in a SharePoint folder, reviewed once and filed. The technical systems underneath continue to operate exactly as they did before — ingesting personal data, embedding it into vectors, storing it in locations that no one can exhaustively enumerate.

ORCA treats GDPR as an architectural constraint. The difference is enforcement.

A policy says "do not store unnecessary personal data." A constitutional prompt layer reduces the volume. A tokenisation pipeline enforced in code ensures that what remains is replaced before storage. An encryption layer ensures that stored content is unreadable without authorised key access. These are not features that can be disabled by a user, bypassed by an administrator, or forgotten during a busy quarter.

The system cannot store raw PII in the knowledge base. The system can deterministically locate every reference to a person. The system can delete personal data references without destroying the knowledge they were embedded in. The system can generate a Subject Access Report from the token store. These are not policies. They are properties of the architecture.

This distinction matters because regulators do not audit policies. They audit outcomes. "Show me where this person's data is stored." "Demonstrate that you deleted it." "Prove that the deletion was complete." A policy-based approach requires a human to search, verify, and attest. An architecture-based approach produces a deterministic answer from the system itself.

The open governance gates — the DPIA that must be completed before engagement brain writes at scale, the contractual review of Anthropic as a PII processor — are deliberate acknowledgements that architecture alone is not sufficient. But they sit on top of an architectural foundation that makes compliance mechanically achievable, not aspirationally hoped for.

The question to ask your current system

There is a straightforward test for any AI knowledge system. Ask three questions:

Can you show me every entry in the knowledge base that references a specific individual? Not a keyword search — a deterministic, exhaustive enumeration.

Can you delete every reference to that individual without deleting the organisational knowledge those entries contain?

Can you prove, to a regulator, that the deletion was complete?

If the answer to any of these is "not yet" or "we'd need to build that" — the system was not designed for GDPR. It was designed for knowledge storage, and GDPR was assumed to be someone else's problem.

GDPR readiness is not a checkbox. It is an architecture decision. Make it once, enforce it forever.

Privacy by Architecture

Your knowledge base should compound intelligence, not personal data.

No credit card required. No generic AI. Just governed, compounding organisational memory — with GDPR compliance built into every write path.