Todo 或 In Progress。In Progress。Done,补一句完成结果。useDarkAppGrid 偏好迁移、29 语种主题文案、主题 QA 脚本。Docs/Requirements/2026-06-24-app-grid-theme-system-todo.md、Docs/Requirements/2026-06-24-app-grid-theme-system-worklog.md。TabView,不改 QA 脚本。Apptag/PreferencesView.swift;不碰 AppDelegate、OverlayWindowController、窗口层级、quick search、App Grid、数据导入导出逻辑。Tags 页 scanApps()、Data 页 refreshDataState()、语言热切换、toast/confirmation overlay、固定 880x460 布局高度和 accessibility。bash build.sh、codesign --verify --deep --strict、Scripts/window_logic_qa.sh;手工复核 6 个设置页、全屏/Split View 中 Settings 层级、文件面板层级、长文本语言和键盘/辅助功能导航。UsageTipsCloseReminderBubble 排版、版本号/changelog 和专项 QA 断言;不改关闭状态机、不改 29 语种文案。usage_tips_close_reminder_qa.sh、usage_tips_qa.sh、macos14_availability_typecheck_qa.sh、完整构建和 build metadata QA。8.0.4 (20260625.1655)。[2026-06-25] 使用技巧关闭提醒。
skipUsageTipsCloseReminder 偏好、29 语种提醒文案、专项 QA。usage_tips_qa.sh、usage_tips_close_reminder_qa.sh、theme_settings_qa.sh、macos14_availability_typecheck_qa.sh、git diff --check、APP_BUILD=20260625.1615 bash src/build.sh、macos14_build_metadata_qa.sh src/build/TagLauncher.app 通过。8.0.3 (20260625.1615)。Docs/Requirements/2026-06-25-usage-tips-close-reminder-todo.md、Docs/Requirements/2026-06-25-usage-tips-close-reminder-worklog.md。[2026-06-25] App Grid 解除标签碎纸预览动效。
Scripts/macos14_availability_typecheck_qa.sh、APP_BUILD=20260625.1500 bash src/build.sh、Scripts/macos14_build_metadata_qa.sh src/build/TagLauncher.app 和 git diff --check 通过。[2026-06-11] 7.9.0 容器内 App 手动拖拽排序。
containerAppOrder、容器 ID、排序持久化 helper、分类方案 fingerprint、App Grid 同容器插入位置提示和 ContentView 保存回调;跨容器移动、Option 复制、拖空白移除、Apple 内置保护、Quick Search 排名均不改。../docs/7.90/README.md、../docs/7.90/01-容器内App手动排序-TODO.md、../docs/7.90/07-实现与QA记录.md。Scripts/app_ordering_data_qa.sh、macOS 14 typecheck/build metadata、Quick Search 名称回归、SmartStart catalog QA、Scripts/window_logic_qa.sh 通过。7.9.0 (20260611.2212)。[2026-06-09] 多语种 App 显示名通用加固。
AppDisplayNameResolver;App Grid 与 Quick Search 标题优先走当前语种/同语系/系统可见名/英文官方名/基础 bundle 名 fallback,内部 bundle 名和 bundle id 只作为搜索别名;7.8.26 进一步加固 /Wrapper/、/Contents/Helpers/、.app/.../*.app 内部 helper 过滤。AppInfo 增加系统显示名与 bundle 显示名候选;App 扫描层和 Quick Search 文档层都过滤内部 helper;Quick Search 文档使用 resolver 生成别名;版本更新为 7.8.26 (20260609.2004)。APP_BUILD=20260609.2004 bash build.sh、codesign --verify --deep --strict src/build/TagLauncher.app、Scripts/quick_search_app_name_qa.sh、Scripts/quick_search_system_app_qa.sh 通过;构建产物 Info.plist 为 7.8.26 (20260609.2004)。[2026-06-09] 修复首安 Smart Start 提示确认后 App Grid 消失的问题。
ContentView.swift 的 modal interaction 发布状态,不改 Smart Start 分类规则、不改 App Grid 布局、不改窗口层级。APP_BUILD=20260609.1221 bash build.sh、codesign --verify --deep --strict build/TagLauncher.app、版本/build/category 检查、Apple 默认资源 QA、SmartStart catalog QA 通过;首安真实点击路径待最终视觉验收。[2026-06-08] 修复 App Grid 顶部 tag hover 触发自动滚动导致的抖动。
Apptag/ContentView.swift 的 tag hover 处理,不改 App Grid 布局算法、不改拖拽、不改点击导航语义。bash build.sh 和 codesign --verify --deep --strict build/TagLauncher.app 通过;用户使用新版后确认仍有轻微小抖,但效果可接受,本轮不继续扩大修复范围。[2026-06-04] 修复新安装 App 后 App Grid / Quick Search 不能立即检索到的问题。
7.8.13 (20260604.1121) targeted 输入 notch 命中 TheBoringNotch 且无“未找到”;APP_BUILD=20260604.1121 zsh ./build.sh、签名/版本校验、Scripts/window_logic_qa.sh 全部通过。[2026-06-04] 修复 Quick Search 刚打开即被过期 dismiss 事件关闭的 QA 失败。
Fn + Space 仍立即关闭;QA 脚本对合成 Fn + Space 投递增加重试,并把结果点击坐标修正到首条结果行中心。Fn + Space 打开/关闭通过;targeted 点击 Quick Search 结果后窗口数为 0;Scripts/window_logic_qa.sh 全部通过。[2026-05-29] 版本拆分与 7.8.1 默认图标大小调整。
CHANGELOG.md 已补充 7.7.0、7.8.0、7.8.1 三段版本记录;源码版本号更新为 7.8.1;新用户默认 iconSize 从 80 调整为 64。iconSize 偏好设置的新安装用户;已有用户保存过的图标大小不会被覆盖。[2026-05-29] 第二批:AppGrid 滚动流畅性优化。
bash build.sh、codesign --verify --deep --strict、Scripts/window_logic_qa.sh 全部通过;滚动后 Space/Esc 连续循环 QA 保持通过。[2026-05-29] 第一批:未分类拖拽确认记忆 + 滚动后键盘兜底。
skipUncategorizedDropConfirm 持久化;overlay 键盘处理增加 AppKit sendEvent 兜底;AppGrid 滚轮进入时重新声明 key/front,避免滚动后 Space/Esc 偶发丢失。bash build.sh、codesign --verify --deep --strict、Scripts/window_logic_qa.sh 全部通过;新增滚动后 Space/Esc 连续循环 QA;屏幕 smoke 验证滚动后 Space 打开 Quick Search、Esc 关闭 Quick Search、再次 Esc 关闭 AppGrid。[2026-05-29] 设置页和 Smart Start 模块化。
SmartStartNoticeOverlay 已从 ContentView 拆出;设置页“应用系统智能化初始分类”的扫描、Smart Start 应用和 snapshot 组装改由 AppLibraryController 统一处理;窗口 QA 脚本同步适配 OverlayWindowController 的屏幕选择静态检查。bash build.sh、codesign --verify --deep --strict、设置页语言/通用/快捷键/标签/数据/关于六个 tab 屏幕复核、Scripts/window_logic_qa.sh 全部通过。[2026-05-29] AppLibraryController / 数据刷新管线整理。
AppLibraryController 和 AppLibrarySnapshot,把扫描、reconcile、Smart Start、annotate、Quick Search documents、标签颜色和标签顺序组装从 ContentView 的刷新路径中抽离。ContentView 只应用 snapshot 并刷新 UI。bash build.sh、codesign --verify --deep --strict、启动 App Grid 屏幕复核、Quick Search sor 索引复核、上下键复核、Scripts/window_logic_qa.sh 全部通过。[2026-05-29] OverlayWindowController 收口。
OverlayWindowController,将 overlay window 实例、generation、Space 避让、show/focus/hide 编排、panel 创建、屏幕选择、全屏/Split View 判定从 AppDelegate 中收口出去。bash build.sh、codesign --verify --deep --strict、Scripts/window_logic_qa.sh 全部通过,覆盖全屏、Split View、Settings、Force Quit、文件面板、Dock 图标重复和屏幕跟随。[2026-05-29] Quick Search 独立面板化。
NSPanel 并作为 overlay child window 显示;搜索状态、输入框、结果列表、启动逻辑保持原路径。bash build.sh、codesign --verify --deep --strict、Scripts/window_logic_qa.sh 全部通过;屏幕 QA 验证打开、输入 sor、上下键选中和 Esc 关闭均正常。[2026-05-29] Quick Search 结果列表 AppKit 化。
NSScrollView + 自绘 row;输入框、搜索逻辑、快捷键命令、外层 overlay 保持原路径。bash build.sh、codesign --verify --deep --strict、静态确认旧 SwiftUI QuickSearchResultRow 已移除;屏幕 QA 验证默认选中、上下键、滚动跟随、sor 搜到 Shottr、无结果状态、Return 启动选中结果并关闭 Quick Search。[2026-05-29] 修复 App 图标白边并清除旧图标残留。
generate_icon.py 删除旧“两张标签”生成逻辑,并增加 grid/rainbow 图标族校验,防止旧图标被重新生成。.icns、AppIcon.appiconset、Release 1024 图标、Local QA DMG;build.sh 改为优先从 AppIcon.appiconset 生成 bundle AppIcon.icns。python3 generate_icon.py、bash build.sh、codesign --verify --deep --strict、DMG 挂载检查、全项目图片/DMG 旧图标近似匹配扫描均通过;根 .icns、appiconset、Release 1024 图标、bundle/DMG 内 AppIcon 四角 alpha 均为 0。[2026-05-29] 清理或改名 AppGridItem.swift 残留。
AppGridItem.swift 已改名为 AppGridSupport.swift,文件标题改为 App Grid shared support,避免误解为旧 SwiftUI 浏览态 grid。7.6.0 (20260529.0102)、签名、静态 QA、App Grid 屏幕 smoke test 通过。[2026-05-28] 第二批 AppKit 化第 4.2 项:标签拖拽态轻微放大和更强阴影。
1.04x layer transform 做视觉放大,并进一步增强阴影和层级。7.6.0 (20260528.2343)、签名、静态 QA、顶部/左/右三种标签栏拖拽排序、视觉屏幕复核、窗口 8 逻辑 QA 全部通过;QA 后已恢复用户标签顺序和语言自动设置;用户已确认测试通过。[2026-05-28] 第二批 AppKit 化第 4.1 项:标签拖拽态浮起阴影。
7.6.0 (20260528.2312)、签名、静态 QA、顶部/左/右三种标签栏拖拽排序、视觉屏幕复核、窗口 8 逻辑 QA 全部通过;QA 后已恢复用户标签顺序和语言自动设置。[2026-05-28] 第二批 AppKit 化第 4 项:标签栏 AppKit 化第三阶段,拖拽排序。
TagEditor.reorderTags。7.6.0 (20260528.2052)、签名、静态 QA、顶部/左/右三种标签栏拖拽排序、tags.json 持久化、窗口 8 逻辑 QA 全部通过;QA 后已恢复用户标签顺序和语言自动设置。[2026-05-28] 第二批 AppKit 化第 3 项:标签栏 AppKit 化第二阶段,hover 与容器高亮。
9d87dbe[2026-05-28] 第二批 AppKit 化第 2 项:标签栏 AppKit 化第一阶段,只读导航。
b4a1ba5useAppKitTagNavigation=false 可回滚到旧 SwiftUI 标签栏。[2026-05-28] 第二批 AppKit 化第 1 项:清理 ContentView 的 App Grid 交互职责。
561541eContentView 中 App Grid 的 bubble、drag、drop、refresh toast 临时状态已收口到 AppGridInteractionState。bash build.sh、codesign --verify --deep --strict、localization JSON 解析、App Grid targeted QA、Scripts/window_logic_qa.sh 全部通过;用户已确认第 1 项 OK。[2026-05-28] 冻结发布版本并从冻结 tag 拉出新需求分支。
appstore-7.6.0-20260527.0124codex/post-freeze-new-requirement[2026-05-28] 新增“拖出容器空隙只移除来源标签”的确认逻辑。
71bfdd4、da71eb5