edit | blame | history | raw

26.0702 - Taglauncher / Coder3 - 8.3.5 排序释放

用户目标

  • 基于用户截图中的 8.3.5 需求,只处理一个变更:标签列表中的自定义排序不再作为 Pro 功能限制,免费用户也可以持久保存。
  • 明确不做:自定义快捷键仍然保持 Pro 用户专用,相关逻辑和 UI 不改。
  • 完成后生成 8.3.5 本地 DMG 和 App Store 上传 .pkg,并完成发布冻结。

当前起点

  • 源码根目录:/Users/ar/Projects/Taglauncher/src
  • 分支:codex/pro-custom-hotkeys-8.2.0
  • 需求来源:用户截图标注和后续澄清:
  • 第一项“标签列表的自定义排序”去掉 Pro 限制。
  • 第二项“自定义快捷键”先别动。
  • 最新澄清:自定义快捷键给 Pro 用户这个逻辑不用改。

已完成事项

  • TagEditor.reorderTags(_:) 移除 Pro 权益判断,免费用户拖动标签列表顺序后可持久保存。
  • 主界面标签导航拖动结束时不再走免费用户预览 toast,直接保存标签顺序。
  • Pro 对比表移除“自定义排序:标签在列表中的位置(=容器显示位置)”这一行。
  • 保留“自定义快捷键”为 Pro 功能,未更改相关门禁。
  • 版本递增到 8.3.5 (20260702.1046)
  • 生成本地验收 DMG 和 App Store 上传 .pkg
  • 使用 App Store 完整 entitlements 重新签名 .pkg 内 App,避免 App Store Connect 再报 application identifier 缺失。
  • 创建冻结 tag:v8.3.5-build20260702.1046

核心事实 / 变更快照

  • 变更对象:标签列表排序持久化权益、Pro 对比表权益列表、8.3.5 发布基线。
  • 事实来源:
  • 01bab54 Release 8.3.5 free tag order persistence
  • 2309264 Freeze TagLauncher 8.3.5 release artifacts
  • v8.3.5-build20260702.1046
  • /Users/ar/Projects/Taglauncher/src/Apptag/DataLayer.swift
  • /Users/ar/Projects/Taglauncher/src/Apptag/ContentView.swift
  • /Users/ar/Projects/Taglauncher/src/Apptag/PreferencesView.swift
  • 变更前:
  • 免费用户拖动标签列表顺序只能预览,不持久保存。
  • Pro 对比表包含标签列表排序持久化相关行。
  • 自定义快捷键为 Pro 功能。
  • 变更后:
  • 免费用户和 Pro 用户都可以持久保存标签列表顺序。
  • Pro 对比表不再展示标签列表排序持久化行。
  • 自定义快捷键仍为 Pro 功能,未释放。
  • 容器内部 App 图标排序持久化仍为 Pro 功能。
  • 范围边界:
  • 不迁移历史数据。
  • 不改自定义快捷键、容器内部 App 图标排序、标签颜色、Pro 主题、备注额度、数据导入导出等其他权益。
  • 不改 App Store Connect 网页配置,本轮只完成本地包与上传包准备。
  • 验证证据:
  • bash Scripts/pro_custom_container_quota_qa.sh PASS
  • bash Scripts/pro_feature_gate_qa.sh PASS
  • bash Scripts/pro_localization_qa.sh PASS
  • bash Scripts/app_ordering_data_qa.sh PASS
  • bash Scripts/pro_custom_hotkeys_qa.sh PASS
  • bash Scripts/macos14_availability_typecheck_qa.sh PASS
  • bash Scripts/pro_display_mode_preview_qa.sh PASS
  • bash Scripts/theme_settings_qa.sh PASS
  • APP_BUILD=20260702.1046 bash build.sh PASS
  • bash Scripts/macos14_build_metadata_qa.sh build/TagLauncher.app PASS
  • codesign --verify --deep --strict --verbose=2 build/TagLauncher.app PASS
  • .pkgpkgutil --check-signature、expanded app codesign --verify、版本号/build、entitlements、embedded provisioning profile 预检通过。

文件变更

  • /Users/ar/Projects/Taglauncher/src/Apptag/DataLayer.swift
  • /Users/ar/Projects/Taglauncher/src/Apptag/ContentView.swift
  • /Users/ar/Projects/Taglauncher/src/Apptag/PreferencesView.swift
  • /Users/ar/Projects/Taglauncher/src/Scripts/pro_custom_container_quota_qa.sh
  • /Users/ar/Projects/Taglauncher/src/Docs/Requirements/2026-07-01-pro-custom-container-quota-prd.md
  • /Users/ar/Projects/Taglauncher/CODEGRAPH.md
  • /Users/ar/Projects/Taglauncher/src/CHANGELOG.md
  • /Users/ar/Projects/Taglauncher/src/Apptag/Info.plist
  • /Users/ar/Projects/Taglauncher/src/Release/AppStore-8.3.5-20260702.1046/RELEASE_MANIFEST.md
  • /Users/ar/Projects/Taglauncher/src/Release/AppStore-8.3.5-20260702.1046/PKG_PREFLIGHT_REPORT.md
  • /Users/ar/Projects/Taglauncher/src/Release/AppStore-8.3.5-20260702.1046/SHA256SUMS.txt
  • /Users/ar/Projects/Taglauncher/src/Release/AppStore-8.3.5-20260702.1046/Preflight/TagLauncher-AppStore-full.entitlements

交付产物

  • 本地验收 DMG:
  • /Users/ar/Projects/Taglauncher/src/Release/AppStore-8.3.5-20260702.1046/Archive/TagLauncher-8.3.5-build20260702.1046.dmg
  • SHA256:c378548b9f5186e2e71de08a2b0efc6e33bc84e2785dd98fc62e05903026a729
  • App Store 上传包:
  • /Users/ar/Projects/Taglauncher/src/Release/AppStore-8.3.5-20260702.1046/Upload/TagLauncher-8.3.5-build20260702.1046.pkg
  • SHA256:647b64ba420d60f4df1b72daff50f3174ab4c5da61b513ed0d9dc2d7eee2a417

可复用命令 / Runbook

8.3.5 QA 回归

用途:验证标签列表排序免费持久化、自定义快捷键仍为 Pro、Pro 对比表行集和常规 Pro 门禁没有回退。

前置条件:在源码目录执行。

cd /Users/ar/Projects/Taglauncher/src
bash Scripts/pro_custom_container_quota_qa.sh
bash Scripts/pro_feature_gate_qa.sh
bash Scripts/pro_localization_qa.sh
bash Scripts/app_ordering_data_qa.sh
bash Scripts/pro_custom_hotkeys_qa.sh
bash Scripts/macos14_availability_typecheck_qa.sh
bash Scripts/pro_display_mode_preview_qa.sh
bash Scripts/theme_settings_qa.sh
APP_BUILD=20260702.1046 bash build.sh
bash Scripts/macos14_build_metadata_qa.sh build/TagLauncher.app
codesign --verify --deep --strict --verbose=2 build/TagLauncher.app

搜索关键词:8.3.520260702.1046free tag order persistencepro_custom_container_quota_qapro_custom_hotkeys_qaTagLauncher-8.3.5-build20260702.1046.pkg

8.3.5 发布包路径与预检

用途:找回本轮本地验收 DMG、App Store 上传 .pkg 和预检命令。

cd /Users/ar/Projects/Taglauncher/src
hdiutil verify Release/AppStore-8.3.5-20260702.1046/Archive/TagLauncher-8.3.5-build20260702.1046.dmg
pkgutil --check-signature Release/AppStore-8.3.5-20260702.1046/Upload/TagLauncher-8.3.5-build20260702.1046.pkg
pkgutil --expand-full Release/AppStore-8.3.5-20260702.1046/Upload/TagLauncher-8.3.5-build20260702.1046.pkg Release/AppStore-8.3.5-20260702.1046/Preflight/expanded
codesign --verify --deep --strict --verbose=2 Release/AppStore-8.3.5-20260702.1046/Preflight/expanded/com.taglauncher.app.pkg/Payload/TagLauncher.app
shasum -a 256 Release/AppStore-8.3.5-20260702.1046/Archive/TagLauncher-8.3.5-build20260702.1046.dmg Release/AppStore-8.3.5-20260702.1046/Upload/TagLauncher-8.3.5-build20260702.1046.pkg

未决问题

  • 本轮未执行 App Store Connect / Transporter 上传。
  • 如要提交审核,使用本轮 .pkg 上传后再在 App Store Connect 选择 build。

后续建议

  • 若后续继续调整 Pro 对比表,先明确“免费可用但 Pro 更强”的功能是否应该出现,避免把免费能力误列成 Pro 锁定项。
  • 自定义快捷键仍是 Pro 权益,后续如要开放需重新开需求,不与本轮 8.3.5 排序释放混做。