崩溃数据隐私政策
首次发布 20 October 2026
本政策说明 BiRoot Studio 在发生错误或意外退出时收集哪些诊断信息、这些信息如何被处理与脱敏、发送到哪里,以及你如何控制它。它是我们《隐私政策》的组成部分并随其一同阅读;如两者表述不一致,以《隐私政策》为准。
基本事实
先说结论:
- 默认不上传。只有你在弹窗里点「上报」,这一条记录才会发送;我们每次发送前都会单独询问。
- 发送前会先脱敏:你的用户名、邮箱、API 密钥和令牌、文件路径中的用户目录都会被移除或替换,网址会去掉查询参数。
- 崩溃记录里没有账号标识。我们不随崩溃数据发送用户 ID、设备名、IP 留存字段、面包屑或会话数据;对话内容和文件内容不会出现在错误信息里。
- 原生崩溃的内存快照(minidump)只在你在界面上点「上报」时作为附件发送;服务器解析出堆栈后即丢弃原始文件,不保存。
- 你可以在设置里完全关掉上报。关掉后记录只保存在你这台设备上,仍然可以从通知中心手动逐条上报。
我们收集什么
当 BiRoot Studio 出现未捕获的错误、渲染进程或子进程异常退出、原生崩溃,或其 Roost 组件发生 panic 时,我们会为这次事件生成一条崩溃记录,保存在你设备上的应用数据目录里。记录包含:
- 错误类型和错误信息(截断到有限长度),以及调用堆栈:函数名、文件路径、行号,最多保留离错误最近的若干帧;
- 应用版本、发布渠道、运行环境;
- 操作系统名称与版本、CPU 架构;
- 原生崩溃附带一个内存快照文件(minidump),只落在本机,是否发送由你决定;
- 界面组件栈(仅界面层错误),以及 Roost panic 的代码位置和线程名。
我们不收集什么
以下内容不会进入崩溃记录,也没有任何进入的代码路径:
- 你的对话内容、提示词或 AI 回复;
- 你的文件内容、仓库内容或目录树;
- 你的账号邮箱、用户 ID 或登录凭据;
- 你的 AI 提供商 API 密钥或连接器令牌(密钥形态的字符串会被整体替换为 [redacted]);
- 剪贴板内容、窗口截图或录屏;
- 面包屑、页面请求、用户行为轨迹等任何分析类数据。
发送前如何脱敏
每条记录在写入本地时就已经过脱敏,发送的是脱敏后的版本。脱敏规则是确定性的纯函数,有单元测试覆盖:
- 你的用户主目录被替换为 ~(例如 /Users/你的名字/... 只保留为 ~/...);系统用户名(3 个字符以上)整词替换为 [user];
- 邮箱地址替换为 [email];URL 去掉用户信息与全部查询参数;
- 形如 key=、token=、password= 等敏感键的值替换为 [redacted];已知格式的令牌(sk-、ghp_、xox、AKIA、JWT 等)与足够长的十六进制或 base64 串整体替换;
- 错误信息最长 300 字符,每帧的每个字段最长 200 字符,附加说明最长 1000 字符,超长部分直接截断。
需要说明的一点:原生崩溃的内存快照包含各线程栈上的内存片段,栈上可能残留崩溃瞬间的字符串片段。这正是它默认不发送、只在服务器解析出堆栈后立即丢弃原始文件的原因。你可以只发送不含快照的错误记录,不发送快照本身。
发送到哪里,保留多久
你上报的记录通过 HTTPS 发送到我们自建的崩溃收集服务 report.biroot.com(自托管 Sentry,仅用于错误处理)。我们不用第三方的崩溃收集云服务。收到后:
- 服务端解析堆栈并按问题聚类,用于定位和修复缺陷;
- 服务器不保存原始内存快照文件,解析完成即丢弃;
- 解析后的事件同步进我们自己的数据库作为正本,Sentry 侧保留 90 天后删除;
- 事件在三个系统里共用同一个标识,便于删除请求时一次定位。
保存在你设备上的崩溃记录最多保留 90 天或 200 条(以先到为准),超出的最旧记录连同其内存快照一起被自动删除;上报成功后对应的内存快照也会从你设备上删除。删除 Studio 的应用数据目录会立即移除全部本地记录。
你的选择
第一次遇到问题时,Studio 会询问你是否允许上报;允许之后每次发送前仍会单独问你。如果应用已经崩溃无法询问,会在下次启动时再问。你随时可以:
- 在「设置」里关闭崩溃上报。关闭后没有任何上传路径,记录只留在本机,通知中心里仍可对单条记录手动选择「上报」;
- 在每次询问时选「暂不」跳过这一条;
- 发送前点「查看将发送的内容」逐字查看要发出的完整内容,包括附件的文件名与大小。
我们的承诺
- 我们不会尝试用崩溃数据识别或追踪你,它本身也不含能识别你的信息;
- 我们不出售崩溃数据,也不用于广告或产品分析;
- 崩溃数据只用于修复缺陷,不会用于训练或改进 AI 模型;
- 未经你同意,一个字节都不会离开你的设备;这一点有实现上的保证:崩溃采集器以只落盘模式启动,整条链路只有一个网络出口,且只由你在界面上的点击触发。
开发与测试环境的构建永远只把记录保存在本机,不会上传,无论设置如何。
联系我们
关于崩溃数据的问题、建议或删除请求,写信给 [email protected]。删除请求也适用于已上报的记录:我们可以按事件标识在所有系统里删除对应记录。