跳到内容
v2.8.1

隐私政策

最后更新:

1. 引言

WorkoutGen 应用程序的发布者 JCODE 非常重视你的个人数据保护。本隐私政策说明我们收集哪些数据、为何收集、如何使用以及你享有的权利。

本政策符合《通用数据保护条例》(GDPR)以及包括 CCPA 和各州隐私法规在内的美国适用隐私法律。

数据控制者:

JCODE

25 rue de Ponthieu, 75008 Paris, France

SIREN: 911 451 615

电子邮件:support@workoutgen.app

2. 收集的数据

2.1 账户信息

当你保存训练计划时,我们会收集:

  • 电子邮件地址:用于登录、通信和密码找回
  • 密码:使用 scrypt 哈希处理,绝不以明文存储
  • 训练计划保存日期

2.2 训练数据

为生成定制训练计划,我们会收集:

  • 健身目标:增肌、燃脂、耐力等
  • 经验水平:初学者、中级、高级
  • 可用器材:健身房、徒手、哑铃等
  • 期望训练频率:每周训练次数
  • 运动偏好:喜欢的运动或要避免的运动
  • 训练历史:已完成的训练、每组记录(重量、次数、休息时间)、个人记录(估算 1RM)、每块肌肉训练量、体重测量、训练反馈

2.3 支付数据

支付专门由 Lemon Squeezy, LLC(我们的 Merchant of Record,即授权经销商)处理。Lemon Squeezy 负责支付处理、税费代征、退款与拒付,以及与支付相关的合规事项,例如 PCI。我们绝不在服务器上存储你的银行卡信息。

Lemon Squeezy收集和处理:

  • 信用卡号、有效期、CVV
  • 账单姓名和地址
  • 交易详情(金额、日期、货币)

为了运营服务,我们会从 Lemon Squeezy 接收有限的账单和订阅元数据,例如订阅状态、套餐、续订或结束日期、Lemon Squeezy 客户和订阅 ID、支付处理方、门户链接以及交易参考信息。为支持、对账和账号恢复,我们也可能保留与订阅关联的账单邮箱。我们绝不会接收或存储完整卡片信息。

2.4 技术数据

我们会收集:

  • 设备类型:网络浏览器或已安装的 PWA(iOS、Android、桌面)
  • 应用版本
  • 操作系统版本
  • 语言偏好
  • 错误日志(用于修复错误)

我们不使用精确地理位置或移动广告标识符(IDFA/AAID)进行跟踪。某些技术标识符(包括 IP)可能会为安全、反欺诈和路由目的进行短暂处理,随后按保留规则最小化或删除。

2.5 身体状况数据

为了生成个性化方案,我们在你明确同意的情况下收集:

  • 体重:用于调整运动强度
  • 身高:用于计算训练参数
  • 年龄:用于调整方案难度
  • 性别:用于定制运动选择
  • 体型:用于优化训练策略
  • 训练目标:用于选择合适的方案

3. 我们如何使用你的数据

3.1 提供服务

  • 保存训练计划并管理你的访问权限
  • 使用 AI 生成定制训练计划
  • 追踪你的进度和训练历史
  • 在你的设备间同步数据

法律依据:履行合同(服务条款)。

3.2 通信

  • 发送交易邮件(账户确认、密码重置)
  • 通知订阅状态(续订提醒、支付失败)
  • 提供客户支持

法律依据:履行合同和合法利益。

3.3 支付处理

  • 通过 Lemon Squeezy 处理订阅支付
  • 生成发票
  • 管理退款

法律依据:履行合同和法律义务(税务记录:10年)。

3.4 改进服务

  • 分析使用数据(通过 PostHog 征得同意,或匿名无需同意)
  • 识别和修复错误
  • 根据用户需求开发新功能

法律依据:可识别分析基于同意。合法利益仅适用于由仅在内存中处理的匿名分析事件和非个人 campaign 参数生成的聚合统计。

4. 第三方服务提供商

我们与以下可信赖合作伙伴共享你的数据,以帮助提供服务:

4.1 基础设施

  • Cloudflare, Inc.(在美国注册成立):在 Cloudflare Workers 上提供完整的应用托管(Smart Placement),主数据库部署在 Cloudflare D1(Cloudflare 网络上的 SQLite),R2 对象存储位于欧盟司法管辖区(动作素材)、KV 缓存、Durable Objects(每用户数据限制在欧盟司法管辖区;分布式锁与账户锁定使用西欧位置提示)、Workers Rate Limit、Cloudflare Pages(落地页)、DNS、DDoS 防护、CDN,以及通过 Cloudflare 网络信号进行的国家识别。
  • Cloudflare Turnstile(CAPTCHA):在注册、密码重置和邮箱 OTP 请求环节提供机器人与滥用防护。仅处理最少量的浏览器信号,不使用 Cookie,也不进行指纹识别。
  • Resend(Plus Five Five, Inc.,美国):交易邮件(账户确认、邮件 OTP、密码重置、保留通知)。数据传输由标准合同条款(Standard Contractual Clauses)覆盖。
  • Bunny.net(BunnyWay d.o.o.,斯洛文尼亚,欧盟):仅为营销落地页提供图像 CDN,不处理任何已认证用户的数据。
  • Strapi(Strapi SAS,法国,欧盟):仅为营销落地页托管博客内容的 headless CMS,不处理任何已认证用户的数据。

JCODE 与 Cloudflare, Inc. 之间已签署数据处理协议(Cloudflare Standard DPA v4.3),日期为 2026-05-10,包含面向不具备充分性认定国家的欧盟标准合同条款(SCCs)。

4.2 支付

  • Lemon Squeezy, LLC:Merchant of Record(授权经销商),负责支付处理、税收征收、开票,符合 PCI-DSS 标准

了解 Lemon Squeezy 如何处理你的数据,请参阅 Lemon Squeezy 隐私政策.

4.3 分析

  • PostHog(eu.posthog.com,欧盟区域):基于同意的可识别分析,或不使用持久 PostHog 存储、仅在内存中运行的匿名聚合统计分析。

国际传输:你的主数据库(Cloudflare D1)和对象存储(Cloudflare R2,欧盟司法管辖区)运行在 Cloudflare 边缘网络上;Cloudflare 区域之间的传输由 Cloudflare 的 Data Processing Addendum 和标准合同条款(SCCs)覆盖。Cloudflare 本身、Lemon Squeezy 和 Resend 均在美国注册成立,可能在欧洲经济区以外处理数据;在所有情况下,我们均依赖 GDPR 的传输保障措施(SCCs 和/或充分性决定)。

5. 数据共享

我们绝不向第三方出售你的个人数据。

我们仅在以下情况下共享数据:

  • 征得你的同意:如果你明确授权
  • 法律义务:法院命令、监管请求
  • 服务提供商:上述第4节中列出
  • 业务转让:在合并、收购或资产出售的情况下(将通知你)

6. 使用数据改进 AI

在你明确同意的情况下,为改善所有用户的生成计划质量,我们可能使用聚合且匿名化的训练数据来优化驱动 AI 功能的规则与启发式算法(例如动作聚类、平台期识别、负重渐进)。AI 教练报告(WorkoutGen Max)由 WorkoutGen 根据聚合的追踪器信号在本地生成,不会向第三方 LLM 提供商共享任何个人数据。

保护措施:

  • 在此 AI 改进流程中不使用直接标识符(姓名、邮箱)。
  • 数据已进行假名化处理(随机标识符)
  • 仅限训练数据(目标、水平、器材、进度)
  • 不处理医疗诊断或治疗数据。
  • 每用户数据和 R2 对象采用欧盟受限存储;全球边缘处理由 Cloudflare DPA 和 SCC 覆盖
  • 你可以通过 support@workoutgen.app 选择退出

法律依据:明确同意(通过设置 > 隐私中启用)。你可以随时撤回同意。

7. 数据保留

  • 活跃账户:账户处于活跃状态时保留数据
  • 已删除账户:30天内删除数据(法律义务除外)
  • 发票:10年(税法要求)。安全审计日志(账户删除、邮箱变更、订阅取消事件,标识符已哈希):3 年。
  • 分析日志:最多12个月
  • 不活跃账户:1年不活跃→电子邮件警告→30天后删除
  • 未验证账户:如果电子邮箱地址未经验证,将在 90 天后自动删除。

8. 数据安全

我们实施行业标准的安全措施:

技术措施

  • 加密:传输中的数据使用HTTPS/TLS,静态数据使用AES-256(通过基础设施提供商)
  • 身份验证:密码使用 scrypt 哈希;邮件 OTP(一次性密码)在存储前哈希;在 15 分钟窗口内 10 次失败尝试后锁定账户。
  • 访问控制:最小权限原则
  • 监控与滥用防护:自动速率限制(Cloudflare Workers Rate Limit 与 Durable Objects),15 分钟内 10 次登录失败后账户锁定,通过 Cloudflare Turnstile 在注册、密码重置和邮箱 OTP 请求环节提供机器人防护,自动入侵检测。

组织措施

  • 定期安全审计
  • 员工数据保护培训
  • 事件响应计划

如发生个人数据泄露,我们将在法定期限内通知主管监管机构(GDPR 第33条)。若该泄露可能对你的权利与自由造成高风险,我们将依法在不无故拖延的情况下通知你(GDPR 第34条)。

9. 你的隐私权利

根据GDPR和美国隐私法(CCPA、州法律),你享有以下权利:

访问权

请求我们持有的关于你的所有个人数据副本。

更正权

直接在应用中更正你的个人数据(设置 > 账户)或联系我们。

删除权

随时删除你的账户(设置 > 删除账户)。所有数据将在30天内删除,法律义务除外(发票:10年)。

反对权

反对将你的数据用于分析或AI训练。

可携权

以结构化格式(JSON 用于完整账户导出、CSV 用于体重追踪历史)下载你的数据以传输到其他地方。

限制权

在争议期间请求临时冻结数据处理。

撤回同意权

当处理基于你的同意时(分析、AI 训练改进),你可以随时在设置 > 隐私中撤回同意。撤回不影响撤回前已进行处理的合法性。

选择退出权(CCPA)

加州居民可以选择退出数据「销售」(我们不出售数据,但你可以请求删除)。

行使你的权利:
电子邮件:support@workoutgen.app
响应时间:最多30天
出于安全考虑可能需要身份验证

提交投诉:
欧盟居民:你所在国家的数据保护机构或CNIL(cnil.fr)
美国居民:州检察长或FTC(ftc.gov)

10. Cookie 和跟踪器

WorkoutGen 尊重你的隐私选择。我们仅为基本功能使用最少的 Cookie:

严格必要的 Cookie(无需同意)

  • 用户会话:保持登录状态(会话 Cookie,绑定到我们数据库中的服务器端会话记录)
  • 界面偏好:暗/亮主题、语言

基于同意的分析

  • PostHog:在你同意的情况下,我们使用分析 Cookie 和本地存储进行可识别使用分析。未同意时,分析保持匿名,并且 PostHog 仅使用内存存储:不会在 Cookie 或 localStorage 中持久保存 PostHog 标识符。事件仅用于聚合统计,按有限期限保存,不用于广告用途。

首次访问时,同意横幅允许你接受或拒绝非必要的分析 Cookie。你的选择会本地存储,可随时在设置 > 隐私中更改。

11. 儿童隐私

WorkoutGen 不面向低于其所在国数字同意年龄的用户:法国为 15 岁(依据法国 GDPR 实施法)、保留 GDPR 默认值的国家为 16 岁、美国(COPPA)和英国为 13 岁。我们不会故意收集低于这些门槛年龄的儿童数据。

如果我们发现在未经父母同意的情况下收集了儿童数据,将立即删除。

15-17 岁用户在保存训练计划前必须获得父母/监护人同意。

12. 「请勿跟踪」信号

某些浏览器提供「请勿跟踪」(DNT)信号。WorkoutGen 目前不响应 DNT 信号,但我们默认最小化跟踪(无广告、无第三方跟踪器)。

13. 政策更新

我们可能会更新本隐私政策以反映法律变更或新功能。我们将通过电子邮件或应用内通知告知你重大变更。

最后修改日期显示在本页顶部。

14. 联系方式和 DPO

有关数据保护的任何问题:

电子邮件:support@workoutgen.app

电话:+33 7 84 07 11 53

邮寄地址:JCODE, 25 rue de Ponthieu, 75008 Paris, France

数据保护官(DPO):Jean-Baptiste Thery(同一电子邮件)

法国数据保护机构(CNIL):

法国数据保护局(CNIL - Commission Nationale de l'Informatique et des Libertés)

3 Place de Fontenoy, TSA 80715, 75334 Paris Cedex 07, France

电话:+33 1 53 73 22 22

网站: www.cnil.fr