One crawl, end to end
every step stays in France; the only crossing is the federated queue
01
THEIRS
02
THEIRS
03
04
OURS
Scan requested
Job onto their queue
Federated across
Slots assigned
A user in their UI asks for a crawl; the data service records the job. The request is published to their broker — no HTTP call to us.
The job crosses the mTLS private link to our broker.
crawler-manager claims a slot in Redis and dispatches crawlers.
05
06
07
NET EFFECT
THEIRS
Six passes run
Verdicts published
Stored and shown
Crawlers fetch their public pages and run WCAG, Content, SEO, GEO, Security and Privacy.
Structured results — not rules — federate back to their broker.
Their data services write to MySQL and the object store; the UI updates.
Verdicts move, data doesn't
They hold every byte of customer data; we hold every line of analysis IP.
Why this holds up
If they leave
No shared secrets — the link authenticates with mTLS certificates, not API keys.
They export findings, evidence and remediation tracking from their own data services.
No API exposure — our analysis services answer no HTTP; the queue is the only door.
We stop publishing to their queue and the private link is decommissioned.
Outage resilient — if the link drops, both queues buffer until it recovers.
They keep every finding, screenshot, document and account – no data escrow needed.
Independent audit — both brokers log federation, reviewable on either side.
One exception — ai-facade calls OpenAI and may include page content; their DPO decides.
We retain the full analysis IP; no code was ever disclosed, so none is recovered.