Ariver
2026-07-02 5dbabdb9df401b30e8c92cfb3fb089a0fe1b4f9b
Update migrated paths for TagLauncher handoff
12 files modified
114 ■■■■ changed files
.codebase-memory/artifact.json 2 ●●● patch | view | raw | blame | history
AGENTS.md 12 ●●●● patch | view | raw | blame | history
C1.source/TODO.md 4 ●●●● patch | view | raw | blame | history
CODEGRAPH.md 4 ●●●● patch | view | raw | blame | history
CODE_GOVERNANCE.md 16 ●●●● patch | view | raw | blame | history
K1.业务知识/成果地图.md 2 ●●● patch | view | raw | blame | history
K2.项目管理/QA与发布入口地图.md 10 ●●●● patch | view | raw | blame | history
K2.项目管理/handoffs/2026-07-02-Taglauncher瘦身迁移.md 4 ●●●● patch | view | raw | blame | history
K2.项目管理/restore-notes.md 16 ●●●●● patch | view | raw | blame | history
K2.项目管理/新窗口接手指南.md 20 ●●●● patch | view | raw | blame | history
K2.项目管理/迁移资产清单.md 14 ●●●● patch | view | raw | blame | history
readme.md 10 ●●●● patch | view | raw | blame | history
.codebase-memory/artifact.json
@@ -2,7 +2,7 @@
    "schema_version": 1,
    "commit": "2309264ee94daca4b9abe3592d84602c98b77690",
    "indexed_at": "2026-07-02T09:00:28Z",
    "project": "Users-ar-Projects-Taglauncher2-03-O",
    "project": "Users-ar-Projects-Taglauncher-03-O",
    "nodes": 16612,
    "edges": 25581,
    "original_size": 16973824,
AGENTS.md
@@ -5,13 +5,13 @@
项目类型:研发项目
主要产物:macOS App / 桌面工具
这是 AI Agent 进入 `/Users/ar/Projects/Taglauncher2/03-O` 后应先读的入口文件。
这是 AI Agent 进入 `/Users/ar/Projects/Taglauncher/03-O` 后应先读的入口文件。
## 代码治理入口
开始任何代码、Git、迁移、构建、发布或 QA 工作前,必须读取并遵守:
`/Users/ar/Projects/Taglauncher2/03-O/CODE_GOVERNANCE.md`
`/Users/ar/Projects/Taglauncher/03-O/CODE_GOVERNANCE.md`
本入口文件只保留高优先级硬约束;完整执行标准以 `CODE_GOVERNANCE.md` 为准。若两者冲突,以更严格、项目本地、更具体的规则为准。
@@ -20,17 +20,17 @@
TagLauncher 的非平凡 UI 改动必须先过 UI Preview Gate,不得直接进入 SwiftUI / AppKit 源码修改。
- 非平凡 UI 改动包括:布局、字体、间距、颜色、主题、material、窗口尺寸、Pro 状态、设置页、AppGrid、Quick Search、tips、hover、拖拽、点击热区、可访问性或任何用户可见视觉变化。
- 开工前必须先产出 UI 合约;推荐使用 `/Users/ar/Projects/Taglauncher2/03-O/K2.项目管理/KM2.项目管理-经验门禁/UI合约模板.md`,也可在当前 PRD / TODO / Round 文档中写入同等字段。
- 开工前必须先产出 UI 合约;推荐使用 `/Users/ar/Projects/Taglauncher/03-O/K2.项目管理/KM2.项目管理-经验门禁/UI合约模板.md`,也可在当前 PRD / TODO / Round 文档中写入同等字段。
- UI 合约必须包含目标界面、影响 surface、不做范围、状态矩阵、主题 / 语言长度矩阵、交互互斥关系、验收截图或录屏要求。
- 非纯调查任务必须先提供高保真预览来源,例如 baoyu-design HTML / 静态 screen、Penpot / Figma frame、用户标注图或等价可审阅截图;用户确认视觉目标后,才允许修改生产 UI 源码。
- 实现后必须提供真实 App 截图、录屏、AX 或真实点击证据;没有真实渲染或真实交互证据,不得写视觉 PASS。
## 源码根目录
唯一源码根目录:`/Users/ar/Projects/Taglauncher2/03-O/C1.source`
唯一源码根目录:`/Users/ar/Projects/Taglauncher/03-O/C1.source`
- App 源码、构建脚本、QA 脚本和 SmartStart/Apple catalog 资料在 `C1.source/` 下维护;发布证据进入 `K3.运营与发布资料/Release/`,当前迁入构建包进入 `C2.builds/`。
- 不允许再创建或继续使用 `/Users/ar/Projects/Taglauncher2/03-O-*source`、`/Users/ar/Projects/Apptag-*` 等外部源码工作目录。
- 不允许再创建或继续使用 `/Users/ar/Projects/Taglauncher/03-O-*source`、`/Users/ar/Projects/Apptag-*` 等外部源码工作目录。
- 如果需要多分支并行工作,必须使用当前仓库的正常 Git branch;如确需 worktree,必须先说明原因、限定生命周期,并在任务结束后用 `git worktree remove` 清理。
- 项目根目录只保留仓库入口文档、公开网站资料和非源码管理说明;不要在根目录新增 App 源码副本。
@@ -48,7 +48,7 @@
本项目需要保存重要会话记忆,但不得为了普通会话记录频繁打断用户审批。会话记录不放在主源码工作区,避免造成脏状态和体积膨胀。
- 首选保存目录:`/Users/ar/Projects/Taglauncher2/.codex-sessionhistory/`。
- 首选保存目录:`/Users/ar/Projects/Taglauncher/.codex-sessionhistory/`。
- 只在发生以下情况时保存会话记录:关键决策、文件修改、发布 / 构建 / QA 结论、重大问题排查、用户明确要求保存、阶段性收尾。
- 纯询问、路径确认、状态查询、简单说明、无实质决策或无文件变更的对话,不强制保存。
- 文件名格式:`YYYY-MM-DD-主题.md`;主题必须概括本轮 session 的核心内容,控制在 20 个字符以内,优先使用中文短语,避免空格、`/`、`:` 等不适合作为文件名的字符。
C1.source/TODO.md
@@ -24,8 +24,8 @@
  - 状态: 仅需求备忘,今天不开发。
  - 目标: 未来通过官方 Raycast Extension,让用户在 Raycast 中搜索 TagLauncher 的 App、标签和备注,并回车启动目标 App。
  - 当前决策: 推荐“TagLauncher 导出本地只读 JSON 索引 + Raycast Extension 读取索引”;不让 Raycast 直接读取 TagLauncher 主数据库。
  - 计划: `/Users/ar/Projects/Taglauncher2/03-O/C1.source/.hermes/plans/2026-07-02-raycast-extension-search-backlog.md`。
  - PRD: `/Users/ar/Projects/Taglauncher2/03-O/C1.source/Docs/Requirements/2026-07-02-raycast-extension-search-prd.md`。
  - 计划: `/Users/ar/Projects/Taglauncher/03-O/C1.source/.hermes/plans/2026-07-02-raycast-extension-search-backlog.md`。
  - PRD: `/Users/ar/Projects/Taglauncher/03-O/C1.source/Docs/Requirements/2026-07-02-raycast-extension-search-prd.md`。
- [发布后独立任务] 设置页 tab 容器 AppKit/自控化评估与实现。
  - 决策: 当前发布前 No-Go;保留 SwiftUI `TabView`,不改 QA 脚本。
CODEGRAPH.md
@@ -6,8 +6,8 @@
## 项目边界
- 仓库根目录:`/Users/ar/Projects/Taglauncher2/03-O`
- 唯一源码根目录:`/Users/ar/Projects/Taglauncher2/03-O/C1.source`
- 仓库根目录:`/Users/ar/Projects/Taglauncher/03-O`
- 唯一源码根目录:`/Users/ar/Projects/Taglauncher/03-O/C1.source`
- macOS App 源码:`C1.source/Apptag/`
- 构建入口:`C1.source/build.sh`
- DMG 打包入口:`C1.source/make_dmg.sh`
CODE_GOVERNANCE.md
@@ -1,14 +1,14 @@
# Taglauncher 代码治理与 Git 规范
本文档是 `/Users/ar/Projects/Taglauncher2/03-O` 的代码管理、Git 使用、交付和 Agent 协作规范。根目录 `AGENTS.md` 是强制入口;本文件是完整执行标准。
本文档是 `/Users/ar/Projects/Taglauncher/03-O` 的代码管理、Git 使用、交付和 Agent 协作规范。根目录 `AGENTS.md` 是强制入口;本文件是完整执行标准。
## 1. 项目边界
- 主仓库工作区固定为 `/Users/ar/Projects/Taglauncher2/03-O`。
- 唯一源码根目录固定为 `/Users/ar/Projects/Taglauncher2/03-O/C1.source`。
- 主仓库工作区固定为 `/Users/ar/Projects/Taglauncher/03-O`。
- 唯一源码根目录固定为 `/Users/ar/Projects/Taglauncher/03-O/C1.source`。
- App 源码、构建脚本、QA 脚本、SmartStart/Apple catalog 资料都必须在 `C1.source/` 下维护;发布证据进入 `K3.运营与发布资料/Release/`,当前迁入构建包进入 `C2.builds/`。
- 项目根目录只保留仓库入口文档、公开网站资料、治理规范和非源码管理说明。
- 不允许再创建或继续使用 `/Users/ar/Projects/Taglauncher2/03-O-*source`、`/Users/ar/Projects/Apptag-*` 等外部源码目录。
- 不允许再创建或继续使用 `/Users/ar/Projects/Taglauncher/03-O-*source`、`/Users/ar/Projects/Apptag-*` 等外部源码目录。
## 2. Git 工作区规则
@@ -86,7 +86,7 @@
  - 对应分支。
  - 预计生命周期。
  - 清理条件。
- worktree 不得放在 `/Users/ar/Projects/Taglauncher2/03-O-*source` 或 `/Users/ar/Projects/Apptag-*` 这类容易被误认为正式源码根目录的位置。
- worktree 不得放在 `/Users/ar/Projects/Taglauncher/03-O-*source` 或 `/Users/ar/Projects/Apptag-*` 这类容易被误认为正式源码根目录的位置。
- 任务完成后必须执行:
```bash
@@ -136,7 +136,7 @@
TagLauncher 的 UI 工作必须先确认视觉目标,再修改生产 SwiftUI / AppKit 源码。经验复盘见:
`/Users/ar/Projects/Taglauncher2/03-O/K2.项目管理/KM2.项目管理-经验门禁/关于TagLauncher所有UI类问题的经验与教训.md`
`/Users/ar/Projects/Taglauncher/03-O/K2.项目管理/KM2.项目管理-经验门禁/关于TagLauncher所有UI类问题的经验与教训.md`
### 10.1 触发范围
@@ -152,7 +152,7 @@
非平凡 UI 改动开工前必须先写 UI 合约。推荐模板:
`/Users/ar/Projects/Taglauncher2/03-O/K2.项目管理/KM2.项目管理-经验门禁/UI合约模板.md`
`/Users/ar/Projects/Taglauncher/03-O/K2.项目管理/KM2.项目管理-经验门禁/UI合约模板.md`
如果当前任务已有 PRD、TODO、Round 文档或 issue,也可以在该文档中写入同等字段,不强制复制模板。UI 合约至少包含:
@@ -218,7 +218,7 @@
从源码根目录运行 QA:
```bash
cd /Users/ar/Projects/Taglauncher2/03-O/C1.source
cd /Users/ar/Projects/Taglauncher/03-O/C1.source
bash Scripts/apple_default_apps_resource_qa.sh 2>&1 | head -c 12000
bash Scripts/apple_default_note_policy_qa.sh 2>&1 | head -c 12000
bash Scripts/smartstart_catalog_resource_qa.sh 2>&1 | head -c 12000
K1.业务知识/成果地图.md
@@ -33,5 +33,5 @@
## 当前缺口
- 已生成自动 `codebase-memory` 图谱:`../.codebase-memory/`,项目名 `Users-ar-Projects-Taglauncher2-03-O`。
- 已生成自动 `codebase-memory` 图谱:`../.codebase-memory/`,项目名 `Users-ar-Projects-Taglauncher-03-O`。
- 迁移后只运行了 macOS 14 availability typecheck;接收验证不等同完整 App 构建或发布 QA。
K2.项目管理/QA与发布入口地图.md
@@ -2,7 +2,7 @@
## 迁移接收验证
- 记录文件:`/Users/ar/Projects/Taglauncher2/02-P/当前阶段/迁移接收验证.md`
- 记录文件:`/Users/ar/Projects/Taglauncher/02-P/当前阶段/迁移接收验证.md`
- 目标:确认迁移包可接手、路径可读、Git 状态可解释、基础静态检查可运行。
## 源码 QA 入口
@@ -10,7 +10,7 @@
从源码根运行:
```bash
cd /Users/ar/Projects/Taglauncher2/03-O/C1.source
cd /Users/ar/Projects/Taglauncher/03-O/C1.source
bash Scripts/macos14_availability_typecheck_qa.sh
bash Scripts/macos14_build_metadata_qa.sh
bash Scripts/pro_custom_container_quota_qa.sh
@@ -25,15 +25,15 @@
## 构建入口
```bash
cd /Users/ar/Projects/Taglauncher2/03-O/C1.source
cd /Users/ar/Projects/Taglauncher/03-O/C1.source
bash build.sh
bash make_dmg.sh
```
## 最新迁入发布证据
- 发布资料:`/Users/ar/Projects/Taglauncher2/03-O/K3.运营与发布资料/Release/AppStore-8.3.5-20260702.1046/`
- 构建包:`/Users/ar/Projects/Taglauncher2/03-O/C2.builds/AppStore-8.3.5-20260702.1046/`
- 发布资料:`/Users/ar/Projects/Taglauncher/03-O/K3.运营与发布资料/Release/AppStore-8.3.5-20260702.1046/`
- 构建包:`/Users/ar/Projects/Taglauncher/03-O/C2.builds/AppStore-8.3.5-20260702.1046/`
## 发布规则
K2.项目管理/handoffs/2026-07-02-Taglauncher瘦身迁移.md
@@ -2,7 +2,7 @@
## 目标
把 `/Users/ar/Projects/Taglauncher` 迁移成 `/Users/ar/Projects/Taglauncher2`,并从 `/Users/ar/Projects/Taglauncher-doc` 选择重要 KM 迁入 K1/K2/K3。
将旧电脑原 TagLauncher 项目整理成可在新电脑 `/Users/ar/Projects/Taglauncher` 继续工作的轻量项目包,并从 `/Users/ar/Projects/Taglauncher-doc` 选择重要 KM 迁入 K1/K2/K3。
## 已完成
@@ -19,7 +19,7 @@
## 不可触碰
- 不修改 `/Users/ar/Projects/Taglauncher`。
- 不修改旧电脑原项目;新电脑接手后,`/Users/ar/Projects/Taglauncher` 是当前轻量项目包。
- 不把迁移接收验证写成正式发布 QA PASS。
- 不从 `.codex-sessionhistory/legacy/` 直接领取当前任务。
K2.项目管理/restore-notes.md
@@ -2,12 +2,12 @@
## 恢复原则
本次迁移没有删除源项目材料。被排除或从目标源码树移除的材料,优先从源项目和体外文档恢复。
本次迁移没有删除旧电脑源项目材料。被排除或从目标源码树移除的材料,优先从旧电脑备份、外接盘、远端仓库或体外文档恢复。
## 源路径
- 源项目:`/Users/ar/Projects/Taglauncher`
- 源源码:`/Users/ar/Projects/Taglauncher/src`
- 当前项目根:`/Users/ar/Projects/Taglauncher`
- 旧项目恢复源:用 `OLD_TAGLAUNCHER_ROOT` 指向旧电脑备份或外接盘中的原项目根。
- 体外文档:`/Users/ar/Projects/Taglauncher-doc`
- 源会话记忆:`/Users/ar/Projects/Taglauncher-doc/chat-history/codex-sessionhistory`
@@ -16,19 +16,23 @@
恢复某个历史 Release:
```bash
rsync -a /Users/ar/Projects/Taglauncher/src/Release/<ReleaseName>/ /Users/ar/Projects/Taglauncher2/03-O/K3.运营与发布资料/Release/<ReleaseName>/
TAGLAUNCHER_HOME=/Users/ar/Projects/Taglauncher
OLD_TAGLAUNCHER_ROOT=/path/to/old/Taglauncher
rsync -a "$OLD_TAGLAUNCHER_ROOT/src/Release/<ReleaseName>/" "$TAGLAUNCHER_HOME/03-O/K3.运营与发布资料/Release/<ReleaseName>/"
```
恢复旧帮助 PDF 副本:
```bash
rsync -a /Users/ar/Projects/Taglauncher/src/Docs/Help/ /Users/ar/Projects/Taglauncher2/03-O/K3.运营与发布资料/Help/
TAGLAUNCHER_HOME=/Users/ar/Projects/Taglauncher
OLD_TAGLAUNCHER_ROOT=/path/to/old/Taglauncher
rsync -a "$OLD_TAGLAUNCHER_ROOT/src/Docs/Help/" "$TAGLAUNCHER_HOME/03-O/K3.运营与发布资料/Help/"
```
恢复旧截图原图:
```bash
rsync -a /Users/ar/Projects/Taglauncher-doc/RepoWorkspace/Docs/X-03Op资料/Screenshots/ /Users/ar/Projects/Taglauncher2/03-O/K3.运营与发布资料/Screenshots/
rsync -a /Users/ar/Projects/Taglauncher-doc/RepoWorkspace/Docs/X-03Op资料/Screenshots/ /Users/ar/Projects/Taglauncher/03-O/K3.运营与发布资料/Screenshots/
```
## 注意
K2.项目管理/新窗口接手指南.md
@@ -2,22 +2,22 @@
## 接手目标
在不读取旧长线程的情况下,从 `Taglauncher2` 文件本身继续 TagLauncher 的开发、QA、发布准备或知识检索。
在不读取旧长线程的情况下,从当前轻量迁移包文件本身继续 TagLauncher 的开发、QA、发布准备或知识检索。
## 必读顺序
1. `/Users/ar/Projects/Taglauncher2/AGENTS.md`
2. `/Users/ar/Projects/Taglauncher2/PROJECT.md`
3. `/Users/ar/Projects/Taglauncher2/INDEX.md`
4. `/Users/ar/Projects/Taglauncher2/02-P/进度地图.md`
5. `/Users/ar/Projects/Taglauncher2/03-O/CODEGRAPH.md`
6. `/Users/ar/Projects/Taglauncher2/03-O/CODE_GOVERNANCE.md`
7. `/Users/ar/Projects/Taglauncher2/.codex-sessionhistory/00-Topics.md`
1. `/Users/ar/Projects/Taglauncher/AGENTS.md`
2. `/Users/ar/Projects/Taglauncher/PROJECT.md`
3. `/Users/ar/Projects/Taglauncher/INDEX.md`
4. `/Users/ar/Projects/Taglauncher/02-P/进度地图.md`
5. `/Users/ar/Projects/Taglauncher/03-O/CODEGRAPH.md`
6. `/Users/ar/Projects/Taglauncher/03-O/CODE_GOVERNANCE.md`
7. `/Users/ar/Projects/Taglauncher/.codex-sessionhistory/00-Topics.md`
## 自检命令
```bash
cd /Users/ar/Projects/Taglauncher2/03-O
cd /Users/ar/Projects/Taglauncher/03-O
git status --short --branch
git log --oneline --decorate --max-count=5
git diff --check
@@ -26,7 +26,7 @@
源码 QA 入口:
```bash
cd /Users/ar/Projects/Taglauncher2/03-O/C1.source
cd /Users/ar/Projects/Taglauncher/03-O/C1.source
bash Scripts/macos14_availability_typecheck_qa.sh
```
K2.项目管理/迁移资产清单.md
@@ -2,9 +2,9 @@
## 基线
- 源项目:`/Users/ar/Projects/Taglauncher`
- 源项目:旧电脑原 `/Users/ar/Projects/Taglauncher`
- 体外文档:`/Users/ar/Projects/Taglauncher-doc`
- 新项目:`/Users/ar/Projects/Taglauncher2`
- 新电脑接手路径:`/Users/ar/Projects/Taglauncher`
- Git 策略:浅克隆当前 clean HEAD 到 `03-O`。
- 源 HEAD:`2309264`
- 源 tag:`v8.3.5-build20260702.1046`
@@ -31,7 +31,7 @@
| `Taglauncher-doc/RepoWorkspace/Docs/X-03Op资料/Screenshots` | `03-O/K3.运营与发布资料/Screenshots` | 只迁截图清单和渲染脚本,不迁原图。 |
| `/Users/ar/Projects/Taglauncher/src/Release/AppStore-8.3.5-20260702.1046` | `03-O/K3.运营与发布资料/Release/AppStore-8.3.5-20260702.1046` | 最新 release 文档和 hash 证据。 |
| 同上 | `03-O/C2.builds/AppStore-8.3.5-20260702.1046` | 最新 `.dmg/.pkg` 迁入包。 |
| `codebase-memory-mcp` 生成 | `03-O/.codebase-memory` | 自动代码图谱共享产物,项目名 `Users-ar-Projects-Taglauncher2-03-O`。 |
| `codebase-memory-mcp` 生成 | `03-O/.codebase-memory` | 自动代码图谱共享产物,项目名 `Users-ar-Projects-Taglauncher-03-O`。 |
## 明确排除
@@ -50,11 +50,11 @@
## 验证记录
- `codebase-memory-mcp cli index_status '{"project":"Users-ar-Projects-Taglauncher2-03-O"}'`:ready,nodes 16612,edges 25581。
- `codebase-memory-mcp cli search_graph '{"project":"Users-ar-Projects-Taglauncher2-03-O","query":"Quick Search ProEntitlement AppGrid","limit":3}'`:返回 Quick Search / AppGrid 相关节点。
- `codebase-memory-mcp cli index_status '{"project":"Users-ar-Projects-Taglauncher-03-O"}'`:ready,nodes 16612,edges 25581。
- `codebase-memory-mcp cli search_graph '{"project":"Users-ar-Projects-Taglauncher-03-O","query":"Quick Search ProEntitlement AppGrid","limit":3}'`:返回 Quick Search / AppGrid 相关节点。
- `git diff --cached --check`:通过。
- `cd /Users/ar/Projects/Taglauncher2/03-O/C1.source && bash Scripts/macos14_availability_typecheck_qa.sh`:PASS macOS 14.0 availability typecheck: arm64。
- `cd /Users/ar/Projects/Taglauncher/03-O/C1.source && bash Scripts/macos14_availability_typecheck_qa.sh`:PASS macOS 14.0 availability typecheck: arm64。
## 后续建议
- 若未来要正式切换到 TagLauncher2,应再做一次构建、签名、DMG、QA、manifest 和 tag 冻结。
- 若未来要正式以该轻量迁移包继续发布,应再做一次构建、签名、DMG、QA、manifest 和 tag 冻结。
readme.md
@@ -8,17 +8,17 @@
- Build from `C1.source/`, for example:
```bash
cd /Users/ar/Projects/Taglauncher2/03-O/C1.source
cd /Users/ar/Projects/Taglauncher/03-O/C1.source
bash build.sh
```
- Do not create sibling source folders such as `/Users/ar/Projects/Taglauncher2/03-O-*-source`.
- Do not create sibling source folders such as `/Users/ar/Projects/Taglauncher/03-O-*-source`.
## Project Knowledge
- Non-source documents, website/archive material, canvases, and Codex session history are kept outside this source worktree under `/Users/ar/Projects/Taglauncher2/`.
- Current repo-adjacent documents moved out of the source worktree are under `/Users/ar/Projects/Taglauncher2/03-O/`.
- Codex session history is under `/Users/ar/Projects/Taglauncher2/.codex-sessionhistory/`.
- Non-source documents, website/archive material, canvases, and Codex session history are kept outside this source worktree under `/Users/ar/Projects/Taglauncher/`.
- Current repo-adjacent documents moved out of the source worktree are under `/Users/ar/Projects/Taglauncher/03-O/`.
- Codex session history is under `/Users/ar/Projects/Taglauncher/.codex-sessionhistory/`.
## Website