Draft — confirm with counsel before launch
Data handling
Version 2026-10-18-draft · 18 October 2026. This page describes how the workspace stores information. It is a product description with counsel blanks, not a finished privacy notice. Documentation support only — not legal advice, not a compliance certification.
What is stored
Company name, size, industry, and contacts. User name, email, role, and a hashed password. Tools you enter (names, owners, data types, links, notes, costs, and an optional client or project label). Everyday checks, including a person, due date, or snooze you add. Vendor notes you type. Tool requests. Incident notes. Policy drafts. Export and re-audit logs. Email log rows (the message we would have sent, not a mailbox password). Purchase intent for the plan you select: email, plan name, amount, and status. No card number, expiry, or CVC is stored. Terms-acceptance records (version, time, email, context). The app does not ask for live passwords of your other systems. The public AI risk score stores the answers, the score, industry, company size, and campaign tags from the link, with no name or email, so the result link can be opened again. If someone asks for that report by email, the server also stores their name, work email, company name, and the time they checked the box. That note is written to the dev console. It is not sent to an outside mail service.
Where it sits
Default demo storage is a SQLite file on the machine running the app. Host named for a real deployment: [COUNSEL TO ADOPT] Self-hosted (placeholder — name your host before launch). Move to Postgres by changing the Prisma datasource when you leave the demo. See DEPLOY.md in the project. Do not point a production database at a laptop file.
Subprocessors
Counsel should replace this list. Values come from SUBPROCESSORS, or from the placeholders below.
- [COUNSEL TO ADOPT] Hosting: not named
- [COUNSEL TO ADOPT] Email: not named
- [COUNSEL TO ADOPT] Payments: not named
- Email provider setting: log. Quarterly reminders are logged in the app until a provider is set. No message is sent while the provider is log.
- Payments: Stripe is not configured. This app stores no card numbers.
- AI models on customer data: none in this version. Policy text is filled from templates inside the application. If a future version sends customer text to a model provider, that provider must be named here before it is turned on.
Retention, export, and backups
Data stays until a company admin deletes the company in Settings. Deletion removes the company, its users, tools, flags, policies, logs, and acceptance rows tied to that company. Settings offers a JSON export of the same data, with password hashes left out. That export is the customer's copy. A production host must also keep its own database backups and say how long those backups live. This demo does not ship a backup service.
Breach notice
If a confirmed breach affects personal data in this workspace, the operator notifies the primary contact on the company profile. Window: [COUNSEL TO ADOPT] 72 hours after confirmation (placeholder — counsel must set the real duty). Do not treat a placeholder as a legal deadline.
Contact
Privacy contact: [COUNSEL TO ADOPT] privacy@example.com. Operator: [COUNSEL TO ADOPT] (operator legal name not set). Related: Terms · Refunds.
Documentation support only — not legal advice, not a compliance certification.