Privacy policy
This page describes what the code in this repository does with form data on get-archimedes.com. It is a draft for legal review. Bracketed text is a placeholder. It is not a business fact.
Who this is
The public site is Archimedes at get-archimedes.com. Notification email from the forms goes to [email protected]. The product config names Industrial Base Alpha and the site https://industrialbasealpha.com. The legal entity and postal address are not in the code:
[LEGAL ENTITY NAME / ADDRESS]
Questions about this draft: [email protected].
Free AI visibility check
The check at /check/ collects data in two steps. Nothing is stored if the hidden honeypot field named "website" is filled in. That field is for bots. People should leave it blank.
When you leave the first screen, the browser sends company name, website domain, and work email to POST /api/checker/lead. The server stores email and company on the beta_signups row with source checker. An abandoned check still keeps that lead. The domain is sent in the request and is not written on that lead row.
When you submit the check, POST /api/checker/start stores a row in checker_wizard_runs:
- Company name (up to 120 characters) and website domain (up to 253 characters, normalized to a hostname)
- Work email (up to 254 characters)
- What you build or sell (up to 500 characters)
- Buyer types you select (up to 8, each up to 60 characters)
- Goals you select (up to 8, each up to 60 characters)
- Competitors you type, if any (up to 300 characters)
- A SHA-256 hash of the connecting IP address. The code does not write the raw IP.
- The ten buyer questions generated for the run, the job plan, and an estimated API cost
Each engine answer is stored in checker_answers: which engine and model ran, whether the answer named or cited the company, a short snippet, source URLs, the answer text (up to 20,000 characters), and an estimated cost.
When the run finishes, the server stores a summary on the run and writes a product_events row (surface site, event checker_run) whose properties include the domain, the score, the answer count, and the email. It also emails [email protected] through Resend (api.resend.com) with the company, domain, email, what you sell, buyers, goals, score, names the engines used instead, and the estimated cost. The From address in code is the Resend sandbox sender [email protected].
Your email is not sent to the model APIs. These things are:
- Anthropic (Claude): company name, domain, what you sell, buyers, goals, and competitors, so it can write the buyer questions. Later, the answer text plus the company name and what you sell, so it can list who was named instead.
- OpenAI (ChatGPT), Anthropic (Claude), and Google (Gemini): the buyer questions. The question-writing instructions tell the model not to put your company name in those questions. Gemini runs all ten. ChatGPT and Claude run the first three.
A finished result for the same domain can be shown again for 7 days without a new engine run. That is a cache window. The code does not delete the row when the 7 days end.
An earlier version of the check wrote checker_runs. The current check does not write that table. The migration keeps it for history.
Beta application
POST /api/beta from /beta/ stores, when you provide them: full name, role, company, and work email, plus a source. The default source is get-archimedes.com. The same endpoint emails [email protected] through Resend with those fields and the time. A repeat application for the same email updates the stored row. The honeypot field works the same way as on the check: if it is filled, nothing is stored.
Index edition emails
The signup on the US Drone Industry AI Visibility Index sends only an email address, with source index-us-drones. If that email already has a beta application, the subscribe does not overwrite the application. It also emails [email protected] through Resend.
Where the rows live
Rows are written to the Supabase Postgres database configured with SUPABASE_URL, using the service-role key. Row Level Security is on and anonymous and signed-in public access is revoked. This site has no public read API for these tables.
How long it is kept
This repository has no job that deletes beta_signups, checker_wizard_runs, checker_answers, checker_runs, product_events, or the Resend notification. Rows stay until someone with database access deletes them. The 7-day check cache is not a retention limit.
[LEGAL TO CONFIRM RETENTION PERIOD]
Payments, cookies, and analytics
The pages in this repository do not take payment and do not ask for a card number. They also do not set a cookie or load an analytics script. If Cloudflare Web Analytics or a similar beacon is injected for the zone, that setting is in the Cloudflare dashboard, not in this code.
Public index
The index pages and data.json are public benchmarks. They do not list the people who subscribed. The data file is published under CC BY 4.0, as stated on the index page.