im_wower
·
2026-03-28
T-S005.md
1# Task T-S005:收口 `BAA_CONTROL_API_BASE` 兼容入口
2
3> 历史说明:本卡记录的是该任务开工时的状态;当前主线默认入口已是 `http://100.71.210.78:4317` / `https://conductor.makefile.so`,`BAA_CONTROL_API_BASE` 只保留 legacy 兼容语义。
4
5## 直接给对话的提示词
6
7读 `/Users/george/code/baa-conductor/tasks/archive/T-S005.md` 任务文档,完成开发任务。
8
9如需补背景,再读:
10
11- `/Users/george/code/baa-conductor/apps/status-api/src/data-source.ts`
12- `/Users/george/code/baa-conductor/apps/status-api/src/service.ts`
13- `/Users/george/code/baa-conductor/apps/conductor-daemon/src/index.ts`
14- `/Users/george/code/baa-conductor/scripts/runtime/install-launchd.sh`
15- `/Users/george/code/baa-conductor/scripts/runtime/check-launchd.sh`
16- `/Users/george/code/baa-conductor/scripts/runtime/check-node.sh`
17- `/Users/george/code/baa-conductor/ops/launchd/so.makefile.baa-status-api.plist`
18- `/Users/george/code/baa-conductor/docs/runtime/environment.md`
19- `/Users/george/code/baa-conductor/docs/runtime/launchd.md`
20- `/Users/george/code/baa-conductor/docs/api/README.md`
21
22## 当前基线
23
24- 仓库:`/Users/george/code/baa-conductor`
25- 分支:`main`
26- 提交:`1078d2b`
27- 开工要求:不要从其他任务分支切出;如需新分支,从当前 `main` 新切
28
29## 建议分支名
30
31- `chore/retire-control-api-base-compat`
32
33## 目标
34
35把 `BAA_CONTROL_API_BASE` 从“残留但仍到处可见的兼容入口”继续收口到最小范围,并明确最终保留点。
36
37## 背景
38
39- `status-api` 已经默认切到 `BAA_CONDUCTOR_LOCAL_API` / `4317`。
40- 当前剩余风险之一是 `BAA_CONTROL_API_BASE` 仍保留在代码、launchd、检查脚本和文档里,容易继续被误当成 canonical truth source。
41- 现在需要决定它到底保留在哪些点,哪些地方可以彻底去掉。
42
43## 涉及仓库
44
45- `/Users/george/code/baa-conductor`
46
47## 范围
48
49- 盘点并收口 `BAA_CONTROL_API_BASE` 的剩余使用点
50- 去掉不再必要的兼容入口或说明
51- 把仍需保留的入口明确写成“兼容用途”
52
53## 路径约束
54
55- 优先处理 `status-api`、runtime 脚本、launchd 模板和相关文档。
56- 如果 `conductor-daemon` 内部仍需要兼容入口,必须在结果里明确解释原因。
57
58## 推荐实现边界
59
60建议优先做:
61
62- 区分“运行时仍需要”与“只是历史遗留还没删”的 `BAA_CONTROL_API_BASE`
63- 让脚本、plist 和文档口径完全一致
64- 能删的直接删,不能删的缩到最小并写明兼容性质
65
66## 允许修改的目录
67
68- `/Users/george/code/baa-conductor/apps/status-api/`
69- `/Users/george/code/baa-conductor/apps/conductor-daemon/src/index.ts`
70- `/Users/george/code/baa-conductor/apps/conductor-daemon/src/index.test.js`
71- `/Users/george/code/baa-conductor/scripts/runtime/`
72- `/Users/george/code/baa-conductor/ops/launchd/`
73- `/Users/george/code/baa-conductor/docs/runtime/`
74- `/Users/george/code/baa-conductor/docs/api/README.md`
75
76## 尽量不要修改
77
78- `/Users/george/code/baa-conductor/apps/codexd/`
79- `/Users/george/code/baa-conductor/tests/control-api/`
80- `/Users/george/code/baa-conductor/ops/cloudflare/`
81- `/Users/george/code/baa-conductor/bugs/`
82
83## 必须完成
84
85### 1. 盘点并收口兼容入口
86
87- 明确现在还剩哪些 `BAA_CONTROL_API_BASE` 使用点
88- 去掉不再必要的使用点
89
90### 2. 统一运行时口径
91
92- launchd 模板、安装脚本、检查脚本和运行文档必须一致
93- 不再把 `BAA_CONTROL_API_BASE` 写成默认真相源
94
95### 3. 回写最终结论
96
97- 在结果里明确说明:
98 - 哪些使用点被删除
99 - 哪些使用点被保留
100 - 为什么保留
101
102## 需要特别注意
103
104- 不要顺手清历史文档命名,那是另一张任务卡
105- 不要把本任务扩展成 `status-api` 或 `conductor-daemon` 的功能重构
106- 与其它并行任务共享 `docs/runtime/**` 风险较高,避免和文档清理类任务同时落地
107
108## 验收标准
109
110- `BAA_CONTROL_API_BASE` 的剩余使用点明显减少或被明确限定
111- 所有仍保留的文案都明确写成兼容用途
112- 运行脚本、plist 和文档口径一致
113- `git diff --check` 通过
114
115## 推荐验证命令
116
117- `npx --yes pnpm -C /Users/george/code/baa-conductor -F @baa-conductor/status-api build`
118- `npx --yes pnpm -C /Users/george/code/baa-conductor -F @baa-conductor/conductor-daemon test`
119- `git -C /Users/george/code/baa-conductor diff --check`
120
121## 交付要求
122
123完成后请说明:
124
125- 修改了哪些文件
126- 删除了哪些 `BAA_CONTROL_API_BASE` 使用点
127- 还保留了哪些兼容点
128- 跑了哪些测试
129- 为什么这些残留还需要存在