2026-06-19 Apple 默认备注本地化修复
用户目标
- 修复切换到 Arabic 等非中文语言后,Apple 自带应用备注仍显示旧中文的问题。
- 执行前完成方案讨论,执行后补 TODO、工作日志、QA 自查和 changelog。
关键结论
- Apple 默认备注资源本身已有多语种;问题发生在旧版本已持久化到
tags.json 的中文默认备注没有 appNoteMetadata。
- 修复不能按“是否包含中文”判断,否则会误伤用户手写中文备注。
- 最终策略:按同 bundle 的 Apple 默认备注集合做 fingerprint 精确匹配;只有匹配默认集合的旧备注才迁移为当前语言。
已完成事项
AppleDefaultAppCatalog.relocalizeDefaultNotesForCurrentLanguage 支持迁移旧的无 metadata Apple 默认备注。
- 迁移旧默认备注前自动备份原 store,reason 为
apple-default-note-migration。
origin == manual 和手动清空备注继续保留,不覆盖。
- 补齐
com.apple.campo / Siri 在 Apple 默认应用 base、translations、29 语种 localizations 和 source csv 中的资源。
- 新增
Scripts/apple_default_note_migration_qa.sh,更新 Scripts/apple_default_note_policy_qa.sh。
- 版本更新为
7.9.3 / 20260619.2142,并更新 CHANGELOG.md。
QA 结论
- Apple 默认备注迁移 fixture:PASS
- Apple 默认备注策略边界:PASS
- Apple 默认应用资源完整性:PASS
- SmartStart 资源边界:PASS
- usage tips 回归:PASS
- macOS 14 typecheck:PASS
- build:PASS,产物
/Users/ar/Projects/Taglauncher/src/build/TagLauncher.app
- macOS 14 build metadata:PASS
- codesign:PASS
未决问题
- 当前仓库仍存在与本轮无关的历史脏文件和删除项,本轮未处理、未回滚。