Skip to content

Verify it yourself

You should not have to take any of this section on trust. This page collects the checks, grouped by what you need to run them.

Check How Expect
Transport and headers on the sign-in page curl -sI https://platform.atlanticagenticlabs.com/ HSTS, nosniff, X-Frame-Options: DENY, a nonce-based CSP that changes on every request
A hostname that is no tenant’s curl -sI https://example-not-a-tenant.atlanticagenticlabs.com/ Stopped at the edge and sent to sign in; no page of LightHouse is served
Your own scanner Point a passive scanner (OWASP ZAP baseline, or your own) at the sign-in page Tell us anything it finds (below)

Use a viewer API key and your tenant’s Access service token, as in Authentication.

Check How Expect
A key works only at its own tenant Call GET /api/v1/health with your key at your host, then at any other host 200, then refused
Revocation is immediate Revoke a key in Settings → API keys, then use it 401
A key cannot act POST /api/v1/approvals/decisions or POST /api/v1/limits with a key 403 person_required
A key cannot administer PUT /api/v1/access with a key 403 role_required
Content needs its role Call the MCP tool knowledge, or GET /api/v1/content/knowledge, with a viewer key Refused, role_required
MCP is read only tools/list on /mcp Every tool is a read
No tenant parameter Add client= or tenant= to any read Ignored, or 400 bad_query
Request size cap Send a 300 KB JSON body to any write route Refused before it is read in full
Idempotency Send one command twice with the same Idempotency-Key The same command_id both times
Your second factor GET /api/v1/me from a person’s session viewer.mfa.source names how it was proved
What Atlantic can see GET /api/v1/access/review?format=csv (a client_admin) Every role holder, every key, every Atlantic staff read
The audit trail Setup and admin → Audit, or GET /api/v1/audit Your test requests’ refusals, sign-ins and changes, each with its actor
Check How Expect
Nothing listens for Atlantic Inspect the security groups or firewall rules the stack creates No inbound rule exists for LightHouse: the reader and the handler connect outbound
Egress is narrow Restrict outbound traffic to your model endpoints and the one Atlantic hostname The engine keeps working
No long-lived keys List the IAM users and access keys the stack created None
What leaves Capture your deployment’s outbound telemetry at your egress proxy Counts, costs, timings and identifiers; no document text, prompt or answer
Who read your content Your content reader’s log One line per read: viewer, signing key, request ID, what and when
Cut-off Stop the content reader, or remove Atlantic’s public key from it LightHouse shows content as unavailable; nothing else changes

Some evidence is sensitive to publish, but is yours to see before you sign. The company site has a mutual NDA ready to sign. Under it, our certified forward-deployed engineers will take you through:

  • the row-level security policies, and the test that fails LightHouse’s build if any tenant table lacks them;
  • the latest point-in-time security review and the CI scan results for the components you will run;
  • the tool policy’s self-test, run against your own agent cards;
  • the infrastructure modules your stack is built from, at the release tag you would apply.

What a red-team suite covers before go-live

Section titled “What a red-team suite covers before go-live”

Octy, the assistant that runs on the engine in your account, has a red-team evaluation suite that must pass before a client’s first pilot. Its cases cover:

  • injection through retrieved documents: text in a source that tries to give the model orders must reach it only inside a fence, and must not change what is done;
  • approval and payment coercion: asking the assistant to approve, pay, change access or raise a limit must be refused;
  • exfiltration: an answer must not carry a planted link or address out;
  • overclaim: an answer must cite the sources it relies on, and be grounded in them.

In CI the suite runs against a stub model that is gullible by design, so it tests the code around the model rather than a model’s good behaviour. A suite passes only if every case passes; the metrics are reported beside the pass, never instead of it. A live run, against your own gateway and models, is started by a person, and you can watch it.

The results reach LightHouse as evaluation records (counts and pass or fail, never the questions or answers): GET /api/v1/evals.

A red-team suite for every agent pack in the library, run before each release: Coming

Email solutions@atlanticagenticlabs.com with “Security” in the subject. Please include what you found, how to reproduce it, and how to reach you. Do not include real client data.

A published security.txt and a coordinated disclosure policy: Coming