bAIbel
/compliance

Regulatory surface

This page answers the due-diligence question in one place: what is enforced by the software, what is configured by somebody and honoured by the software, what is governed by a written decision and nothing more, and what is not in place at all.

We have tried to make it precise rather than reassuring. Where a control is real we say what it refuses. Where it is a setting we say who sets it. Where there is a boundary we say where it is, including the three or four places where the honest answer is less than a reader might assume.

For the material being translated, bAIbel Technologies Limited is a data processor on behalf of the organisations that use bAIbel TMS. In bAIbel AV it is not involved at all: AV runs on the translator's own machine, holds their own keys and sends their text only to the providers they chose.

For our own customers' data, we are the controller. That covers the licence record behind bAIbel AV (the key, the owner's email address, when the licence terms were accepted, and a one-way hash identifying each machine it is activated on), the licence and update checks the application makes to our servers, the accounts behind bAIbel TMS, and anything you send us.

Chapter 1

Three words, and why they differ

Enforced means the software refuses the alternative. Somebody who wants to switch it off and has every permission the system grants cannot.

Configured means somebody sets it and the software honours what is set. The control is real; the setting is the operator's responsibility, and so is getting it wrong.

Documented means a written decision governs it and nothing in the software checks. It is a statement of policy. It is worth exactly as much as the organisation behind it, which is the correct amount for some things and not enough for others.

We separate these because the distinction is what a security review is actually for. A control that survives a careless administrator and a control that depends on one are not the same control, and a vendor who presents them in one list has made the review harder rather than easier.

Everything below carries one of the three, or says that it is not in place.

Chapter 2

Data protection

This section is about bAIbel TMS. bAIbel AV keeps client material on the translator's own machine; see the opening of this page.

The implementation

A GDPR implementation is built and merged against a written specification — eight numbered increments, the whole of it in the product rather than in a policy document. Enforced.

An Article 30 processing record is part of it. Enforced.

What the processing record can actually tell you

A delivery record does not merely say that a document was delivered. It says what kind of party received it: filed in storage where only the operator can reach it, collected by a person who signed in, or taken away by a third party's software. Those three are kept distinct in the data model specifically so that the Article 30 export can answer the question, because a record that could not tell a person from an agent would be unable to answer the one question anybody asks it. Enforced.

A run that was only ever going to produce findings — a check, not a translation — still writes a delivery record saying it delivered nothing, on purpose. We produced nothing and we lost your document are not the same sentence, and an absent record cannot tell them apart. Enforced.

Erasure, and the thing that usually undoes it

Erasure is performed by the running service against the live system. The difficult case is not the erasure; it is the restore six weeks later, which silently reinstates everything that was erased in between.

For example: on 3 March someone asks to be erased, and is. On 14 April an upgrade goes wrong and the deployment is rolled back to the backup taken on 1 March. That backup still holds them, exactly as they were before they asked. Nothing reports it, because to the restore it is simply data.

That case is handled explicitly. The erasure ledger is captured before the restore and replayed afterwards, so the 3 March erasure is carried out again before anyone can start work on the restored system. The replay claims the work; the running service performs it; and the deployment will not reopen to new work while claims are outstanding. Enforced, and proved by drill rather than asserted.

a request to erase six weeks pass a restore THE CASE EVERYONE GETS WRONG The service erases it against the live system — which is the easy half, and the half everyone does The backup puts it all back Silently. The restore does not know an erasure happened, so six weeks of them are reinstated at once. WHAT ACTUALLY HAPPENS — FOUR ACTS, IN THIS ORDER STEP 1 Capture the erasure ledger is written out before the drop STEP 2 Restore the database comes back, erasures and all STEP 3 Replay the ledger claims the work, it does not perform it STEP 4 Erase again the running service performs it, as it did the first time AND UNTIL THE CLAIMS ARE DISCHARGED The deployment will not reopen to new work while claims are outstanding. Which is what makes the replay a mechanism rather than an intention. Enforced, and proved by drill rather than asserted. The replay claims. The running service erases. Two acts, never one — because a system that could erase from a ledger could also erase from anything that looked like one.
Erasure, and the restore that silently undoes it

Two boundaries we would rather you heard from us

There is no user delete, and there must not be. The user identifier is a foreign key throughout the system — on every segment confirmed, every task assigned, every ledger row. Removing the row would either break those references or silently rewrite history. Offboarding therefore disables, and erasure anonymises and keeps the row. This is the right design, and it is not what "delete my account" usually means to the person asking.

Neither disabling nor anonymising ends an already-issued access token. A token issued before the act remains valid until it expires. This is a real boundary, a diligence reader will find it, and we would rather it were in the body of this page than discovered in a test.

Chapter 3

Where a client's material may go

This section is about bAIbel TMS.

Four facts, and only four

When the system decides whether a given model provider may receive a given client's material, it enforces exactly four facts about that provider:

Enforced. Everything else a data processing agreement says is invisible to the code, and that is deliberate rather than incomplete. The rule the codebase applies to itself is that every field it enforces must be traceable to a clause somebody read. A field enforced confidently on a basis nobody can produce is worse than no field, because it converts an unexamined assumption into a green tick. Four fields that are all real is the design.

How policies combine

A client's own policy and the deployment's floor are folded together, and the stricter wins. A residency conflict resolves to the floor. Enforced, both.

A lapsed agreement stops permitting anything — expired entries drop out of the allow-list rather than remaining as history. Enforced.

Null means "not stated", never "everything." A field nobody filled in does not silently widen permission. Enforced.

In-house providers are not exempt. An AI model the operator runs themselves is a sub-processor decision like any other and goes through the same allow-list. Enforced. This is the exemption most systems grant without thinking, and granting it is how a self-hosted endpoint becomes the one route nothing checks.

Custody and legal basis are two axes, never one score. Where the material physically sits and what makes it lawful for it to sit there are different questions, and collapsing them into a single rating loses whichever one was inconvenient. Documented — it is a ruling that shapes the data model, not a runtime check.

TWO POLICIES, FOLDED A client's own policy what this client requires The deployment's floor what the operator requires of every run Fold — the stricter wins a residency conflict resolves to the floor One effective policy ALSO ENFORCED A lapsed agreement permits nothing — expired entries drop out Null means "not stated" never "everything" FOUR FACTS, ENFORCED 1Its trust tier 2Its registered region 3An unexpired allow-list entry 4Whether the instrument reaches raw content — the agreement contemplates the provider seeing the material, not metadata about it A third-party provider someone else's API An in-house model your own hardware The same gate. An in-house model is a sub-processor decision like any other — granting it is how a self-hosted endpoint becomes the one route nothing checks. may receive refused DOCUMENTED — A RULING, NOT A RUNTIME CHECK Custody and legal basis are two axes, never one score. Where the material sits and what makes it lawful to sit there are different questions; one score loses whichever was inconvenient.
The four facts, and the four rules that fold two policies into one

The assessment behind it

The method that ties each enforced field to a clause somebody read is itself written down, and it is what we would give a reviewer first. Documented.

Chapter 4

The AI model boundary

Substitution rather than redaction

Confidential material is replaced with stand-ins before transmission, not blanked — what the GDPR calls pseudonymisation — so that the AI model receives text it can work with: heavily redacted text, or placeholder after placeholder, loses the sense of the original. How it is replaced depends on where the system learned about it:

Pseudonymised data is still personal data: stand-ins reduce what a provider can see, and they do not replace a lawful basis, a processing agreement or a decision about where the data may go.

NOT REDACTION [REDACTED] reported that [REDACTED] had acquired [REDACTED] A structure with holes in it. The AI model fills them, so this is worse than giving it nothing at all. WHERE THE SYSTEM LEARNED ABOUT IT WHAT REPLACES IT AND THEN Declared a client's profile declared it Discovered the run's own scan found it An inflected stand-in grammatical in the target language A placeholder honest about being one One protected text sent in place of the client's own STILL WORKS ON IT A translation-memory lookup A terminology check A consistency pass Composed, not one instead of the other. A discovered surface is a string nobody has declared a grammar for, and a stand-in you cannot inflect or match is worse than a placeholder. The first design replaced one engine with the other, and had to be changed. ON THE DESKTOP, TWO MORE KINDS Figures scaled to believable stand-ins; contact details swapped for placeholders by rule. Percentages are given placeholders, not scaled, because scaling a percentage changes what it means. ONE FACTOR PRESERVES EVERY RATIO A reader who knows one real figure can recover the rest. It is a disguise, not encryption, and it is offered as one.
Stand-ins, not redaction — two kinds of confidential material, two transforms, composed

An unreadable reply stops the call

A check that cannot read the AI model's reply refuses the call. It does not read an unparseable answer as "found nothing". Enforced — and it is a deliberate refusal to improve the parser, because a tolerant parser and a fail-closed control (one that, when it cannot do its job, refuses the request rather than sending it) cannot coexist: the moment the parser salvages a malformed reply, a confidentiality check becomes a silent all-clear.

A truncated reply is detected rather than treated as a clean result. Every live probe checks the completion reason before reading the content. Enforced.

An empty confidentiality snapshot is an inactive snapshot, not the absence of one. Enforced.

Both products refuse the send

bAIbel TMS inspects the outgoing call and refuses it if a confidential term is still in it. The refusal propagates: the run is recorded as refused, with its reason. Enforced.

bAIbel AV audits every AI request for leaked names on every pathway that sends, finding each one with its position — and refusing the send. A protected name still in the AI request stops the send, and a named profile that will not load refuses rather than sending without stand-ins. Enforced.

Both products fail closed. On the desktop that includes the quiet cases: a profile that loads but protects nothing in the document, and a pattern or number profile the project names and cannot find, refuse the send as well. Sending without stand-ins is a decision taken in the project's settings, never the result of a profile going missing.

The part nobody expects

On bAIbel TMS, the operator's own prose about the client's document gets stand-ins too. The document summary, the project description, the additional material, the cultural directives — all of it is client-derived, all of it travels with its stand-ins, behind a marker, and none of it is spliced into the instructions in the clear. The gateway refuses a call in which a marker was never placed. Enforced.

This is unusual. Most systems treat the operator's own notes as trusted material, which is how a client's name ends up in an AI model request inside a sentence somebody wrote about the client.

Numbered invariants

The confidentiality pipeline has fourteen numbered, testable invariants, written before the implementation and carried through it. Documented, and available to a reviewer.

Chapter 5

HIPAA and qualification

This section is about bAIbel TMS.

A HIPAA overlay is built. Eight numbered increments. Configured — it is engaged for a client, not assumed.

Regimes compose as a union, not as exclusive modes. A deployment can be under GDPR and HIPAA and the EU AI Act at once; they are flags, not a mode selector. Enforced. A system with a "HIPAA mode" has usually made the other regimes someone else's problem while it is on.

Who is qualified to do the work

Qualifications are recorded against a registry of instruments — a data processing agreement, a business associate agreement, standard contractual clauses, a training course — and a new instrument can be registered without a deployment. Enforced. The design is deliberately between an enumeration and free text: it is the name this deployment registered, not a list we decided on your behalf.

An instrument covers only the regimes it was explicitly registered as covering. "None" covers nothing rather than everything. Enforced, and it is the same discipline as §3: an unfilled field does not widen anything.

The candidate list for a task is filtered by language capability for that task type and by qualification standing against the client's engaged regimes, then ordered by capability and by measured workload. A disabled or erased account leaves the list. Enforced.

Chapter 6

EU AI Act, Article 50

This section is about bAIbel TMS.

Machine translation of a document is exempt from Article 50(2) marking. Recompose is in scope, and is marked.

Most of what the system does is translation: it renders existing material in another language and produces no new content. Recompose is different in kind. It decomposes a document into what it says, weights that for a named audience, and generates fresh prose — which is synthetic content within the meaning of the Article, and is marked as such.

The distinction is documented as a written decision and enforced in an unusual way: the stage itself declares that it generates disclosable content. It is the first stage in the system to declare it, and that property is what drives the marking. The marking is not a policy bolted onto the outside of the pipeline; it is a fact a stage states about itself, which is why a new stage cannot quietly avoid it.

Recompose is also switched off on arrival. It is registered and visible, and it is gated at the point of use on every installation until an administrator opens it deliberately. That is not licensing — it is a capability that changes what your deployment produces, and it should be a decision somebody took rather than a default somebody inherited. Enforced.

Chapter 7

Operational surface

This section is about bAIbel TMS.

Support diagnostics carry no configuration value — including a configuration value that was copied into a row somewhere. The diagnostic output is built from an allow-list, not from a list of things to redact. Enforced. The difference is the whole thing: a deny-list is a list of the secrets somebody thought of.

Object keys are not content-free. They end in client-supplied filenames, and are treated as client-derived data accordingly. Documented.

On-premise, nothing reaches us. No telemetry, no usage reporting, no check-in. The matching half of the same boundary: we prescribe, provide and verify nothing about the operator's backups. Documented, as a published scope — anything in the software that phoned home would contradict a promise rather than merely surprise somebody.

Backups are a ledger that records failures too, and a restore is proved by drill rather than asserted — including reading the number of errors the restore ignored, because restore tooling exits successfully having skipped things. Enforced.

Chapter 8

What is not in place

This section is about bAIbel TMS. The desktop's limits are stated on its own pages.

Single sign-onNot built. Staff join by invitation; multi-factor authentication is built and mandated for administrators. SSO waits for the customer who needs it
Per-run confidentiality attestationNot built. Attestation is a statement made when a workflow is defined, not a record written per run. "Every run is attested" is a sentence you will not find on this site
A qualification gate on assignmentNot built. See §5 — the list informs, the manager decides
Geography below profile granularityThe place-name cut is a property of the profile applied to a project, not a decision taken per occurrence. Configured, with that limitation
An executed data processing agreement, as a published artefactA draft exists and goes to a prospective client for review.
A published, versioned API contractThe API surface is deliberately unversioned and releases in lockstep with the front ends. For an integration partner this is a genuine gap

Chapter 9

What we will give a reviewer

Under a confidentiality agreement, and without needing a commercial conversation first:

What is actually built