Privacy Policy
Last updated: [SUPPLY: publication date]
This is a draft and is not in force.
It is published here so it can be reviewed. It still contains 8 unresolved points — facts the operator has not supplied, or decisions a lawyer has not settled — and it should not be relied on.
Hearth is a Discord bot and dashboard. This policy explains what it stores, why, how long for, and how to have it removed. It does not cover Discord itself.
Who is responsible
Operator: [SUPPLY: legal name and country]. Privacy contact: [SUPPLY: dedicated address].
[DECISION: controller or processor for in-server data. Drafted on the controller reading, because Hearth sets its own retention windows.]
What Hearth stores
The minimum needed for the features a server has switched on: the server’s ID, name and owner; the configuration you set; and a cached copy of its roles and custom emoji so the dashboard can show them.
About a member, only where a feature needs it — Discord user ID, moderation cases (including the reason a moderator wrote), experience and level, currency balance, event signups, and metadata about message events.
Hearth does not store the content of your messages. Message text is inspected in memory to apply automod rules and award experience, then discarded. It is never written to a database, and Hearth does not build a searchable archive of what members say. This is enforced in the code rather than merely intended: the type used for message event logs cannot carry message text, and the test suite fails if a field capable of holding it is added.
Hearth never stores attachments, voice audio, email addresses, or payment card details. Usernames and avatars are read live from Discord and not retained.
How long it is kept
- Message event logs — 90 days on every plan, then permanently deleted by a scheduled job.
- Server configuration after Hearth is removed — 30 days, then permanently deleted. The window exists so removing and re-inviting the bot does not destroy your settings.
- Subscription records — [SUPPLY: statutory retention period].
Who else processes it
Discord, Supabase (database and login), Stripe (payments), and [SUPPLY: hosting provider]. Nothing is sold or shared for advertising.
Card details never reach Hearth. Payment is handled entirely by Stripe; Hearth stores only a subscription reference and its status.
[DECISION: international transfer mechanism to name for Supabase and Stripe.]
Your rights
You can ask for access, correction, deletion, restriction, objection or portability. Contact [SUPPLY: privacy contact].
One exception, stated plainly. Records forming a server’s own moderation history — cases, tickets, starboard entries — are anonymised rather than erased: your user ID is removed, leaving the record that an action happened without identifying you. A deletion request must not be usable to erase the evidence of a ban. Message event logs naming you are deleted outright.
To remove a whole server’s data, remove Hearth from it; everything is deleted 30 days later.
What Hearth reads from Discord
Two privileged intents, each for named features. Message Content to apply automod rules, match triggers and award experience — inspected in memory, never stored. Server Members to send greetings, apply roles on join and enforce account-age rules.
Hearth deliberately does not request presence, direct messages, or typing indicators.
Security
Access to a server’s data is enforced in the database itself with row-level security: someone who is not a verified manager of a server receives no rows for it, whatever the website asks for. Verification is re-checked against Discord every 15 minutes.
[DECISION: breach notification commitment and period.]