Política de Privacidade
Este texto descreve como o Train by HAKR trata seus dados hoje. Se algum comportamento do app divergir do que está escrito aqui, o comportamento é que está errado — escreva para support@hakr.me e nós corrigimos.
1. Quem somos
O Train by HAKR é um aplicativo de treino de força para iPhone e Apple Watch. O responsável pelo tratamento dos dados descritos aqui é o desenvolvedor do aplicativo, que pode ser contatado em support@hakr.me.
2. Que dados coletamos
- Conta. Seu e-mail, para autenticação. Se você usar Face ID, uma passkey — cuja chave privada nunca sai do seu aparelho e nunca chega até nós.
- Treino. Planos, rotinas, exercícios, séries, cargas, repetições, RIR e RPE, dor que você registrar, datas e durações.
- Perfil. Data de nascimento, sexo, peso, altura, medidas e limitações que você declarar. Cada um desses campos aparece no app com a razão pela qual é pedido; nenhum é obrigatório para treinar.
- Conversas com o Coach. As perguntas que você faz e as respostas que recebe.
- Memória do Coach. Preferências declaradas, inferências não relacionadas à saúde que precisam de confirmação e classes de sugestões silenciadas, com origem e validade. Você pode corrigir ou apagar esses itens no Perfil; dor não é silenciada. Recibos locais de decisões têm janela de 180 dias/500 itens e cobertura parcial, sem reconstruir o passado.
- Diagnóstico técnico mínimo, para entender falhas e manter o serviço no ar.
- Medição opcional de uso. Nasce desligada e só é ativada em Ajustes, por aparelho. Mede interações como salvar treino/check-in, pular explicitamente o check-in e visualizar/abrir explicações. Inclui apenas identificadores aleatórios, tipo fechado, superfície, horário e, nas interações do Coach, duração limitada a 30 segundos; não inclui respostas de saúde, textos, nomes, mensagens, documentos ou mídia. Sem consentimento não coletamos esses eventos nem localmente.
3. O que não sai do seu aparelho
Esta seção é a parte mais importante do documento.
- Fotos de corpo e vídeos de treino ficam no seu iPhone. Não existe um armazenamento remoto para eles. Se você apagar o app, eles vão junto.
- A leitura da foto do seu plano roda no aparelho, com o reconhecimento de texto do próprio iOS. Quando o texto não é legível localmente, o app pede uma confirmação separada e explícita antes de enviar uma versão reduzida da imagem para processamento.
- A análise de postura em vídeo roda no aparelho. Do vídeo, apenas pontos-chave e ângulos podem ser transmitidos — nunca a imagem.
4. Onde os dados ficam
Seu histórico de treino é gravado primeiro no próprio aparelho, num banco local — é isso que faz o app funcionar sem conexão — e depois sincronizado com nosso servidor, hospedado na Supabase (PostgreSQL). Cada tabela tem segurança em nível de linha por usuário: você lê e escreve apenas as suas linhas, e nenhuma outra conta alcança as suas.
A sincronização de conversas e memória começa desligada e tem ativação própria em Ajustes, em cada aparelho. Você escolhe incluir o histórico local existente ou apenas alterações futuras. Ela pode transmitir texto de treino sensível; não envia fotos, vídeos, eventos de medição nem recibos operacionais de decisões. Conteúdo recebido é histórico legível, não comandos executados novamente. O histórico é transferido em páginas; itens inválidos ficam no aparelho, com indicação de sincronização parcial, sem impedir os demais.
5. Inteligência artificial
O Coach HAKR funciona com modelos de linguagem de terceiros, acessados através de um servidor intermediário nosso e autenticado. Enviamos a esses modelos apenas o contexto necessário para responder à sua pergunta.
Pedidos relevantes ao Coach podem usar até oito preferências ativas declaradas ou confirmadas; inferências não confirmadas não são tratadas como suas preferências. Essa memória não é acrescentada automaticamente à importação de documentos. O consentimento de armazenamento sincronizado é separado do uso de contexto necessário ao pedido que você faz ao Coach.
Não usamos seu histórico, suas conversas, suas fotos ou seus vídeos identificáveis para treinar modelos — nossos ou de terceiros — sem o seu consentimento específico para isso.
Quando o Coach consulta literatura científica, a pergunta enviada ao índice é um tema derivado em inglês, não o seu texto: uma pergunta sobre uma cirurgia na família vira apenas o assunto fisiológico correspondente. Se essa derivação não conseguir remover o conteúdo pessoal, ela não escreve nada.
6. Compartilhamento
Não vendemos seus dados e não os usamos para publicidade. O compartilhamento com um treinador humano é opcional, iniciado por você, privado e revogável a qualquer momento.
Usamos prestadores de serviço para hospedagem, autenticação e inferência de modelos, que tratam os dados apenas para executar essas funções.
7. Seus direitos
Você pode acessar, corrigir, exportar e apagar seus dados. A exclusão da conta é definitiva: ela remove o armazenamento associado, apaga em cascata todos os registros ligados a você e elimina a conta de autenticação. As instruções estão em Excluir conta.
Seu histórico nunca é usado como refém: você não precisa continuar pagando, nem manter uma conta ativa, para conseguir exportá-lo ou apagá-lo.
Em Ajustes, desativar a medição opcional apaga seus eventos e a fila local. A ação separada “Excluir eventos de uso enviados” solicita a exclusão de eventos de todos os aparelhos da conta e pode aguardar conexão para tentar novamente. Filas antigas de outros aparelhos são invalidadas e exigem nova ativação. Eventos têm retenção padrão de 180 dias, configurável no servidor, com limpeza diária; recibos opacos de revogação/exclusão ficam até excluir a conta para impedir reenvios tardios. Esse controle é separado da memória do Coach, do consentimento de mídia e da contabilização necessária de uso de IA.
Pedidos locais de privacidade pendentes mantêm somente o ID da conta original, o tipo de operação e um identificador aleatório após sair ou limpar os dados da conta. Só retomam quando essa conta entra e se conecta. Outra conta não pode vê-los nem enviá-los. Esses registros de tentativa não contêm eventos, respostas ou credenciais e são removidos após confirmação.
O cancelamento pendente de lembretes locais mantém somente os identificadores das notificações no aparelho, mesmo após sair ou limpar os dados da conta, até a confirmação do cancelamento. Esses registros não contêm o texto da notificação nem dados da conta.
Revogar a sincronização de conversas/memória pausa os envios da conta e preserva o conteúdo já enviado. A parada neste aparelho é imediata; sem conexão, a ação remota fica pendente até confirmação. Apagar neste aparelho e apagar na conta são escolhas separadas em Ajustes, preservando treino e auditoria/recuperação do plano. Apagar localmente impede o retorno automático dos dados até uma nova ativação explícita, que pode restaurar conteúdo da conta. Filas e pedidos antigos são protegidos por gerações de consentimento; novos pedidos usam a geração confirmada sem alterar pedidos pendentes. Metadados sem conteúdo de identidade/revisão/exclusão impedem restauração indevida; a exclusão confirmada da conta também remove seus controles pendentes.
8. Crianças
O aplicativo não se destina a menores de 13 anos, ou à idade mínima aplicável no seu país, o que for maior.
9. Mudanças nesta política
Se houver mudança material, atualizamos a data no topo desta página e avisamos dentro do aplicativo.
10. Contato
Dúvidas, correções ou pedidos sobre dados: support@hakr.me.
Privacy Policy
This describes how Train by HAKR handles your data today. If the app ever behaves differently from what is written here, the behaviour is the bug — write to support@hakr.me and we'll fix it.
1. Who we are
Train by HAKR is a strength-training app for iPhone and Apple Watch. The party responsible for the data described here is the app's developer, reachable at support@hakr.me.
2. What we collect
- Account. Your email, for authentication. If you use Face ID, a passkey — whose private key never leaves your device and never reaches us.
- Training. Plans, routines, exercises, sets, loads, reps, RIR and RPE, any pain you log, dates and durations.
- Profile. Date of birth, sex, weight, height, measurements, and limitations you choose to declare. Each of these fields appears in the app alongside the reason it is asked for; none is required in order to train.
- Coach conversations. The questions you ask and the answers you get.
- Coach memory. Declared preferences, non-health inferences requiring confirmation, and silenced suggestion classes, with source and expiry. You can correct or delete these items in Profile; pain is not silenced. Local decision receipts have a 180-day/500-item window and partial coverage, without reconstructing the past.
- Minimal technical diagnostics, to understand failures and keep the service running.
- Optional usage measurement. This starts off and can only be enabled in Settings, per device. It measures interactions such as saving a workout/check-in, explicitly skipping a check-in, and viewing/opening explanations. It includes only random identifiers, a closed event type, surface, timestamp and, for Coach interactions, duration capped at 30 seconds; no health answers, text, names, messages, documents or media. Without consent, these events are not collected, even locally.
3. What never leaves your device
This section is the most important part of this document.
- Body photos and workout videos stay on your iPhone. There is no remote store for them. Delete the app and they go with it.
- Reading your plan photo runs on the device, using iOS's own text recognition. When the text isn't legible locally, the app asks for a separate, explicit confirmation before sending a reduced version of the image for processing.
- Video posture analysis runs on the device. From the video, only keypoints and angles may ever be transmitted — never the footage.
4. Where the data lives
Your training history is written first to the device itself, in a local database — this is what lets the app work with no connection — and then synchronised to our server, hosted on Supabase (PostgreSQL). Every table has per-user row-level security: you read and write only your own rows, and no other account can reach them.
Conversation and memory synchronization starts off and has its own opt-in in Settings, on each device. You choose existing local history or future changes only. It may transmit sensitive training text; it does not send photos, videos, measurement events or operational decision receipts. Received content is readable history, not replayed commands. History transfers in pages; invalid items stay on the device with partial-sync status without blocking other items.
5. Artificial intelligence
Coach HAKR runs on third-party language models, reached through an authenticated server of ours. We send those models only the context needed to answer your question.
Relevant Coach requests may use up to eight active declared or confirmed preferences; unconfirmed inferences are not treated as your preferences. This memory is not automatically attached to document import. Synced-storage consent is separate from the context needed for the request you make to the Coach.
We do not use your identifiable history, conversations, photos, or videos to train models — ours or anyone else's — without your specific consent.
When the Coach consults scientific literature, what is sent to the index is a derived English topic, not your text: a question that mentions surgery in your family becomes only the corresponding physiological subject. If that derivation cannot strip the personal content, it writes nothing at all.
6. Sharing
We do not sell your data and we do not use it for advertising. Sharing with a human coach is optional, initiated by you, private, and revocable at any time.
We use service providers for hosting, authentication, and model inference, which process the data only to perform those functions.
7. Your rights
You can access, correct, export, and delete your data. Deleting your account is permanent: it purges the associated storage, cascades the deletion across every record tied to you, and removes the authentication account. Instructions are at Delete account.
Your history is never held hostage: you do not need to keep paying, or keep an account active, in order to export or delete it.
In Settings, disabling optional measurement deletes local events and their queue. The separate “Delete uploaded usage events” action requests deletion of events from all devices on the account and can wait for connectivity to retry. Older queues on other devices are invalidated and require fresh opt-in. Event retention defaults to 180 days, configurable on the server, with daily cleanup; opaque revocation/deletion receipts remain until account deletion to prevent delayed replays. This control is separate from Coach memory, media consent and necessary AI usage accounting.
Pending local privacy requests keep only the original account ID, operation type and a random request identifier across sign-out or account-data reset. They resume only when that account signs in and connects. Another account cannot view or send them. These retry records contain no event data, answers or credentials and are removed after confirmation.
Pending cancellation of local reminders keeps only notification identifiers on the device, including across sign-out or account-data reset, until cancellation is confirmed. These records contain no notification text or account data.
Revoking conversation/memory synchronization pauses account uploads and preserves uploaded content. This device stops immediately; offline remote action remains pending until confirmation. Device-only and account-wide erasure are separate Settings choices, preserving training and plan audit/recovery. Local erase prevents automatic data restoration until fresh explicit activation, which may restore account content. Consent generations protect against old queues and requests; new requests use confirmed generation knowledge without changing pending requests. Payload-free identity/revision/deletion metadata prevents resurrection; confirmed account deletion also removes its pending controls.
8. Children
The app is not directed to children under 13, or the minimum age applicable in your country, whichever is higher.
9. Changes to this policy
If something material changes, we update the date at the top of this page and tell you inside the app.
10. Contact
Questions, corrections, or data requests: support@hakr.me.
