隐私与数据边界

本地 AI 日志字段与保留期限测试

验证操作日志的字段、存储位置、清理触发和导出边界,不编造统一保留期限。

审核状态: 内容已校验;中文稿供用户审核 · 2026-10-05 · Fact IDs: PRIVACY-01, PRIVACY-02

直接回答

日志保留应从严格的内容边界开始:普通操作日志说明任务状态和失败类别,不写提示词、转录、图片、模型输出、凭据或私人路径。Android 安全指南提醒日志中的敏感数据会暴露用户,并建议清理生产日志。PRIVACY-01 与 ANDROID-LOG-DISCLOSURE-2026-01 支持减少诊断字段,但不规定统一保留时间,也不能证明某个应用的日志行为。 不要只盘点 Logcat。还要检查应用文件、数据库、崩溃 SDK 缓冲、分析队列、worker 输出、测试报告、截图、支持包和备份。对每个存储位置记录所有者、字段结构、创建触发、访问方、轮转或过期、删除路径以及是否离开设备。平台日志、应用写入文件和发给供应商的记录属于不同数据流,生命周期也可能不同。 定义能回答运维问题的最小诊断结构。可以包括事件类别、应用/构建版本、粗粒度任务阶段、错误类别和必要时间。若自由格式异常文字可能包含提示片段或文件路径,就不要直接记录。也不能假设哈希即匿名;重复哈希可能关联多次事件。注明标识符是否跨任务稳定以及为何需要。生产日志 API 不得接收源内容;真实内容应保留在测试专用夹具。 每个存储位置都要有明确保留规则。短暂内存缓冲、轮转文件、上传队列、服务端崩溃报告和导出的支持包不是同一策略。适用时长取决于用途和实现,本文不编造法律期限。记录何时触发过期、用户重置是否影响该位置、应用备份是否会恢复旧日志。如果供应商控制服务端保留,应链接其公开说明,不要声称本地删除清掉远端副本。 为提示词、转录、邮箱、路径及输出制作合成金丝雀。触发成功、异常、取消、后台重试、进程死亡和存储空间不足。事件后搜索每个本地和导出位置。再通过支持的清理机制或确定性测试时钟验证过期行为。崩溃路径中不要直接字符串化请求对象;异常消息进入报告前先核实是否脱敏。 Debug 与 Release 应分别测试,但构建类型不能代替保留规则。Debug 可能输出更详细信息,同样需要合成数据和有界存储;Release 也可能在缓存里保留日志或上传诊断。退出控制、重置和服务端队列要分开验证。若用户能提交支持包,发送前展示内容并列出其中包括哪些日志。 最终记录应列明日志存储、字段结构、触发条件、保留/过期事件、备份行为、上传目的地、金丝雀结果和已知限制。可以报告标记在受测清理后不在已检查存储中;不能无证据承诺取证层面彻底抹除、第三方服务删除或统一保留时长。更换日志库、崩溃 SDK、分析、备份规则或支持流程后应复核。目标是诊断有用,同时内容和生命周期边界可验证。

推理失败后设备上留下诊断包

测试员触发模型错误,应用提示可生成支持包。团队需要足够状态复现问题,但必须确保提示词金丝雀、私人文件路径或生成结果没有留在临时文件、备份或导出包内。

决策

使用合成标记盘点各日志位置,测试过期和重置,并在用户选择发送前预览实际支持包。

预期结果

报告列出检查过的日志类别和清理结果,不承诺取证级抹除。

需要收集的证据

只有将以下证据与同一模型文件和测试运行关联起来,结论才可复核:

  • PRIVACY-01:本地处理不代表日志没有其他数据路径
  • ANDROID-LOG-DISCLOSURE-2026-01:生产日志应避免敏感内容

隐私声明需要数据清单和流量证据;“本地模型”标签本身不是证明。

实施流程

Record and compare Log field inventory, Retention and deletion test, and Diagnostic export review to support retention work. Use these three items together, noting what each one captures, how they align, and where differences appear, so the comparison stays grounded in what is recorded.

  1. 盘点日志与崩溃存储. 列出 Logcat、文件、数据库、SDK 缓冲、worker 输出、崩溃报告、分析队列、备份和支持包及其所有者。
  2. 定义安全的诊断字段结构. 只保留事件类别和审核过的元数据;排除提示词、转录、图像、输出、凭据、自由格式错误和私有路径。
  3. 在任务路径注入内容金丝雀. 用唯一合成字符串触发成功、失败、取消、进程死亡、重试及存储压力,再搜索每个存储位置。
  4. 验证过期、重置与备份行为. 用确定性时钟或受支持机制运行清理,并测试重置和恢复,查找残留日志或排队副本及清理记录。
  5. 复核导出与目的地. 预览支持包、列出其中日志类别,确认用户明确授权后才传给外部接收方,并记录发送结果。

验收标准

  • 每个日志位置都有所有者、字段结构、保留触发、删除路径及备份/传输状态。
  • 清理后受限存储中不再出现提示词、路径、转录和结果金丝雀。
  • 未单独核实前,不声称取证级抹除或第三方服务副本已删除。

决策对照表

维度选择或证据解读方式
Logcat 与本地文件设备上的操作事件需要字段最小化、轮转、过期和设备重置测试。
崩溃或分析服务发送给供应商的诊断数据需核实目的地和供应商保留;本地删除可能不影响服务端副本。
用户选择的支持包预览后导出指定诊断字段是主动数据传输,需明确字段清单并要求确认。

需要避免的失败模式

  • 只检查 Logcat 忽略文件和崩溃 SDK
  • 记录异常对象导致提示词串入日志
  • 把本地删除说成远端副本也已清除

Extending retention silently and Recording prompts or file paths are pitfalls to rephrase, limiting release wording to the recorded evidence. Refer back to PRIVACY-01 and PRIVACY-02 as the boundary identifiers for these pitfalls, and keep release statements aligned with what the evidence actually shows.

最小复现记录

层级记录内容
设备厂商、型号、芯片、内存档位、操作系统版本
软件应用版本和 Git 提交号
模型系列、变体、版本、格式、文件长度、摘要、量化方式
运行时名称、版本、请求后端及实际后端证据
工作负载样例版本、输入摘要、提示词摘要、输出策略
结果完成、失败、取消、回退及保护隐私的诊断信息

发布检查表

  • ☐ 主要搜索问题已回答,且没有未经支持的数字。
  • ☐ 所有模型文件和运行时版本均已固定。
  • ☐ 代表性任务和失败处理策略均有说明。
  • ☐ 生命周期、取消、清理和回退均已测试。
  • ☐ 用户内容与网络边界均有说明。
  • ☐ 结论只适用于被记录的配置。
  • ☐ 新增测试结果时链接到原始方法或证据。

来源与相关证据

中文部署与排错专题见。奇连 AI 端侧专题。

常见问题

AI 应用的操作日志应保留多久?

本文不规定通用时长。应按每类存储用途定义策略、配置过期并测试;供应商端保留要另行核实,并保留有日期的审核记录。

清除应用数据会删除所有崩溃服务日志吗?

不一定。需识别本地缓冲、待上传队列、备份和远端副本,再用测试数据逐条验证删除路径、服务端回执、测试时间以及服务商侧配置是否适用于该版本。

为了调试,可以把提示词放进错误消息吗?

默认应避免。使用错误类别和合成夹具,并检查异常格式化,防止请求对象或文件路径被序列化进日志或诊断附件;审查导出包和支持流程也要覆盖同一金丝雀。