Skip to content

compliance

Why our compliance gate is closed for Mexico

By Nitentia · · 3 min read

Our advertising-rules gate was written for Brazil. Given Spanish copy it matches nothing and reports green having checked nothing — so we set it to closed.

This note describes a defect in our own software and the decision we made about it. We are publishing it because it is the kind of defect nobody finds from the outside: everything looks fine, and that is precisely the failure.

A gate that approves without reading

The clinic-site generator runs a gate over the content before publishing and refuses whatever dental advertising rules do not permit. That gate was written for Brazil, and its list of forbidden terms is in Portuguese.

Hand it a page in Spanish and the worst available thing happens: nothing matches, no violation is found, and it reports success. No error appears anywhere. The team sees a green tick and concludes the page was checked. It was not — the gate read and understood nothing.

A gate that reads nothing and reports green is worse than no gate at all, because it is believed.

Nitentia

The rule we applied: fail closed

A system that cannot evaluate something has two possible behaviours: let it through, or stop it. Failing open and failing closed are not a matter of taste. Which one is correct depends entirely on who pays for the mistake.

Here the two mistakes are not alike. Applying Brazil's rules to Mexico is over-restrictive: we lose a few sentences that would be legal there. Cheap, reversible, ours to absorb. Letting the page through is under-restrictive: we publish a possible violation under a practice's own name, and in dental advertising the penalty falls on the registered professional, not on the software vendor. They answer for it, not us.

With that asymmetry the decision becomes arithmetic. Mexico's country pack carries the gate as an explicit null — the closed state — and that null is not an unfilled field somebody forgot. It is written as a deliberate value so nobody mistakes it for an oversight.

What still works in the meantime

  • The site is generated and published normally.
  • The professional registration stays mandatory in the schema: without it, the config does not build.
  • The generator still offers no price hooks, discounts or before-and-after galleries — a restriction inherited from Brazil and applied here out of caution, not because of a local rule we verified.
  • The local-rules review is done by a person, and we say so rather than letting a green screen imply otherwise.

What it would take to open it

Not a better language model and not a more careful translation of the Brazilian term list. It takes the Mexican rule read at its own source, with its number and its date, or the judgement of counsel in Mexico — and then those rules written into the engine as their own country pack, with their own terms and their own required fields.

The day that exists, this note changes and cites the rule. Until then it prefers the uncomfortable truth: there is a gate switched off here, we know why, and we know what it would take to switch it on.

This note is about our Mexican country pack and about a decision in our own product. There is no Portuguese version because the Brazilian gate is verified and has its own note, written from the Brazilian dental code of ethics.