How fata handles your data

This describes the v3 architecture in plain language, including processors.

The short version

Your text and email are sent over HTTPS to a Cloudflare Worker. fata is not end-to-end encrypted: the server briefly processes plaintext text and email to create an embedding, match, write a resonance note, and send notifications.

Sensitive fields are encrypted with AES-256-GCM before storage. GitHub Issues contain only minimal metadata. After a successful match notification, both parties’ sensitive KV data is deleted; unmatched data expires after 30 days.

What happens during processing

What fata does and does not know

The Worker processes your text and email during submission, matching and notification. That is the shortest path required for the product. fata has no chat database: your later emails go directly between your mail providers and are not stored by fata.

Where data lives

LocationContent
Cloudflare KVEncrypted email, embedding, optional encrypted snippet, email hash, and rate-limit/ownership/verification records; up to 30 days.
GitHubMatching state and minimal metadata; no text or email.
Your browserLanguage, email, drafts and history in localStorage, sessionStorage or IndexedDB. Clear site data to remove them.
Cloudflare logsIP, request time, errors and rate-limit data; sampled observability for service stability.

Funnel events

To understand cold start and drop-off, the page sends anonymous events to the Worker (page view, typing, submit, match success/failure), including language and your selected awake reason. Events do not include your text, email or email hash.

Retention and deletion

Sensitive KV data for an unmatched submission is retained for at most 30 days. After a successful match notification, both sensitive KV entries are deleted; closed Issues and Match Issue metadata remain on GitHub for troubleshooting. If an unmatched entry is still in your browser history, use Withdraw to remove it.

You can also open an issue at github.com/gsailing19/fata/issues with the issue number to request deletion of remaining metadata.

Unsubscribe

Match notification emails include an unsubscribe link. We store only an email hash—not the email address—and stop future match notifications.

Security and boundaries

Transport uses HTTPS; stored sensitive fields use AES-256-GCM with a server-held key; GitHub metadata is minimized; conversations are not stored. Front-end and architecture documents are public, while the production Worker is deployed from a private operations copy and secrets are not stored in the public repository.