GDPR Architecture & Specs
A deep dive into the automated erasure cascade, strict data-residency pinning, and the in-place PII redaction routines that enforce Article 17 natively.
Privacy & Execution Metrics
Erasure Cascade Speed
< 60 seconds system-wide
Data Residency Ping
100% EU Server Enforcement
Retention Default
30 Days (for `gdpr-strict` media)
Encryption At-Rest
AES-256-GCM
1. The Right-to-Erasure Cascade (Article 17)
Manual deletion scripts are the leading cause of GDPR violations in SaaS products — someone always forgets a table, a backup, or a webhook log. Aeion OS automates the "Right to be Forgotten" via a deterministic, schema-aware erasure cascade that resolves the subject across every registered collection, categorizes each hit, and applies the legally-correct action per category. - Reverse-Link Identification: The cascade does not depend on an engineer remembering which of 45+ modules a person ever touched. A resolver walks a reverse-link index built into the schema engine to find every record referencing the subject, then sorts each into one of three buckets: delete candidates (records the subject owns outright), anonymize candidates (records they touched but don't own — orders, message threads, audit rows), and retain candidates (records under a legal hold, e.g. financial transactions under tax-retention law). - In-Place Redaction vs Deletion: Relational databases break when foreign keys are abruptly dropped. When the cascade hits a record tied to an AI session invocation, it does not delete the row. Instead, it performs in-place redaction: excerpted transcript content is cleared, the identifying user reference is overwritten with a redacted marker, and the row is flagged with the redaction reason. This preserves the aggregate metrics (e.g., token cost) for billing audits while utterly destroying the PII link. - Grace Window Before Execution: Between operator approval and irreversible execution, a configurable grace window (7 days by default) keeps the account suspended but the data intact. This gives the controller a window to verify the request is genuine — satisfying Art. 17(3) "compelling legitimate grounds" — and lets a subject rescind a request or a DPO halt a malicious-cancel attack before anything is destroyed. - Media Destruction: If the system detects that the deleted user was the sole participant in a recording session, it initiates a hard-delete cascade, permanently purging the encrypted media file from cloud storage — honoring provider-side Object Lock where retention hasn't yet expired.
typescript
// Conceptual illustration of the gdpr-strict residency gate.// The kernel runs an equivalent check before any session or AI call executes.function assertGdprResidency(tenantRegion: string, requestedProvider: Provider) { // 1. The tenant's primary server must be in an allowed EU region if (!isAllowedEuRegion(tenantRegion)) { throw new Error("GDPR: session must be pinned to an approved EU region."); }
// 2. Block US data transfers unless an SCC / DPF is on fileif (isUsRegion(requestedProvider.region) && !hasExecutedSCC(tenantRegion)) {throw new Error("GDPR: cross-border transfer blocked — Standard Contractual Clauses (SCC) required.",);}
return true;}2. Data Residency & Sub-Processor Gating
The gdpr-strict profile acts as a physical firewall against unauthorized cross-border data transfers.
- Region Pinning: The OS reads the tenant's active region allowlist and mathematically prevents a session operating under gdpr-strict from spinning up on servers outside of approved regions (e.g., blocking a US region in favor of an EU one).
- Sub-Processor Flow-Down: GDPR Article 28 requires that all downstream processors adhere to the same DPA terms. Each compliance profile declares a fixed allowlist of permitted LLM/TTS/STT providers. When an AI agent is summoned into a session, the kernel checks the agent's configured providers against the session's effective profile allowlist and refuses the summon — logging a compliance audit event — if a provider isn't permitted, preventing undocumented data sharing with unapproved processors.
- SCC / DPF Runtime Gating: For workloads that legitimately need a US-resident provider (e.g. a payment processor), the kernel doesn't just trust configuration — it checks the provider's transfer basis at call time. Providers with an executed Standard Contractual Clauses agreement pass; providers certified under the EU-US Data Privacy Framework pass on that basis; anything else is hard-blocked with a compliance alert rather than silently falling back to an uncovered endpoint.
- Residency Audit Trail: Every cross-region write records its legal basis (SCC, DPF, or derogation) to the residency audit trail, giving the DPO a reviewable ledger of exactly which transfers happened and under what justification — the evidence an Article 44-49 review actually asks for.
While Article 17 demands erasure, Article 7(1) demands that a data controller be able to *prove* they originally had consent to process data. When the erasure cascade reaches a consent record, it does not delete the row — it overwrites the user ID, IP, and user-agent fields with a redaction marker and stamps the row as anonymized. The original timestamp and "granted" flag remain intact, providing auditors proof of original consent without retaining the identifying PII.
A common engineering mistake is deleting the audit logs during a GDPR purge. Aeion OS explicitly protects the immutable audit ledger from the cascade. The audit trail of the deletion is a vital Article 30 obligation. The audit entry's user-identifying field is redacted via the same aggregated user-deleted event, but the cryptographically signed ledger row itself remains immutable.
Frequently Asked Questions
Article 17 requires removing the *link* between the data and an identifiable person — not necessarily destroying the row. Hard-deleting records that other tables reference breaks referential integrity and often violates a separate legal retention obligation (tax, HIPAA). The cascade deletes records the subject owns outright and anonymizes the ones they only touched, so aggregate analytics, financial history, and the consent trail stay structurally intact while the PII link is destroyed.
The profile carries an allowlist of approved regions and permitted sub-processors. Before any session or AI call executes, the kernel checks the tenant's region against the allowlist and the requested provider's region against the permitted set. A provider outside an approved EU region is refused unless an SCC or DPF basis is on file — the block happens at validation time, before data moves, not after.
The signed audit rows are deliberately protected — deleting them would destroy the Article 30 evidence that the erasure itself was processed lawfully. Instead, the cascade redacts the user-identifying field within each row to a deterministic hash. The HMAC-SHA256 signature still verifies (hashing is deterministic), so an auditor can prove "an erasure occurred on this date" without recovering the identity.
The cascade fires parallel erasure requests to registered sub-processors via their APIs, and a verification cron re-checks each provider within 30 days to confirm the subject's data is gone downstream too. If a provider hasn't completed, the DPO is notified rather than the request being marked done prematurely.
The mechanisms — region pinning, consent capture, the erasure cascade, and the signed audit trail — are jurisdiction-agnostic. The same pipeline backs CCPA, LGPD, PIPL, POPIA, and PDPA-style requests; only the mapped legal-basis templates differ per jurisdiction.
See the Erasure Cascade in Practice
Walk through the `gdpr-strict` profile, the region gate, and the signed audit ledger with our platform team.