baa-conductor

git clone 

commit
cc93ae7
parent
ee40b9a
author
im_wower
date
2026-03-29 01:26:36 +0800 CST
docs: add T-BUG-026 fix conductor-daemon test localApiBase undefined

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 files changed,  +121, -0
A tasks/T-BUG-026.md
+121, -0
  1@@ -0,0 +1,121 @@
  2+# Task T-BUG-026:修复 conductor-daemon 测试中 localApiBase undefined 错误
  3+
  4+## 状态
  5+
  6+- 当前状态:`待开始`
  7+- 规模预估:`S`
  8+- 依赖任务:无
  9+- 建议执行者:`Claude`(需要理解 conductor-daemon 测试初始化流程,定位 config 注入缺失)
 10+
 11+## 直接给对话的提示词
 12+
 13+读 `/Users/george/code/baa-conductor/tasks/T-BUG-026.md` 任务文档,完成开发任务。
 14+
 15+## 当前基线
 16+
 17+- 仓库:`/Users/george/code/baa-conductor`
 18+- 分支基线:`main`
 19+- 提交:`ee40b9a`
 20+
 21+## 分支与 worktree(强制)
 22+
 23+每个任务必须使用独立的分支和 worktree,禁止直接在 main 上修改,禁止多个任务共用同一个 worktree。
 24+
 25+- 分支名:`bug/fix-daemon-test-localApiBase`
 26+- worktree 路径:`/Users/george/code/baa-conductor-fix-daemon-test-localApiBase`
 27+
 28+开工步骤:
 29+
 30+1. `cd /Users/george/code/baa-conductor`
 31+2. `git worktree add ../baa-conductor-fix-daemon-test-localApiBase -b bug/fix-daemon-test-localApiBase main`
 32+3. `cd ../baa-conductor-fix-daemon-test-localApiBase`
 33+4. 在这个 worktree 目录里开发,不要回到主仓库目录
 34+
 35+完成后提交与推送(由执行者完成,不要合并):
 36+
 37+1. 在 worktree 里提交所有变更(包括更新后的任务文档)
 38+2. `git push -u origin bug/fix-daemon-test-localApiBase`
 39+
 40+## 目标
 41+
 42+修复 conductor-daemon 测试中多个 `handleConductorHttpRequest` 相关的 `TypeError: Cannot read properties of undefined (reading 'localApiBase')` 错误,让所有测试通过。
 43+
 44+## 背景
 45+
 46+多个任务(T-S042、T-S045)执行过程中报告 conductor-daemon 测试有预存的 `localApiBase` undefined 失败。这些失败在 main 分支上已存在,不是某个任务引入的回归。根本原因是测试中构造 HTTP request context 时缺少必要的 config 字段。
 47+
 48+## 涉及仓库
 49+
 50+- `/Users/george/code/baa-conductor`
 51+
 52+## 范围
 53+
 54+- 定位所有 `localApiBase` 相关的测试失败
 55+- 修复测试中的 config/context 初始化
 56+- 确保所有 conductor-daemon 测试通过
 57+
 58+## 允许修改的目录
 59+
 60+- `/Users/george/code/baa-conductor/apps/conductor-daemon/src/` (测试文件和被测代码)
 61+
 62+## 尽量不要修改
 63+
 64+- `/Users/george/code/baa-conductor/packages/`
 65+- `/Users/george/code/baa-conductor/plugins/`
 66+- `/Users/george/code/baa-conductor/apps/conductor-daemon/src/instructions/` (除非是 context 初始化问题)
 67+
 68+## 必须完成
 69+
 70+### 1. 复现并定位
 71+
 72+- 运行 `pnpm -F @baa-conductor/conductor-daemon test`
 73+- 收集所有失败的测试用例
 74+- 定位 `localApiBase` 在哪个 context/config 对象中缺失
 75+
 76+### 2. 修复
 77+
 78+- 补全测试中缺失的 config 字段
 79+- 如果是被测代码缺少默认值保护,补上合理的默认值
 80+- 不要通过跳过测试来"修复"
 81+
 82+### 3. 验证
 83+
 84+- 所有 conductor-daemon 测试通过
 85+- 其他 package 的测试不受影响
 86+
 87+## 验收标准
 88+
 89+- `pnpm -F @baa-conductor/conductor-daemon test` 全部通过,0 failures
 90+- `pnpm test` 全部通过
 91+- 没有通过跳过测试来解决问题
 92+
 93+## 推荐验证命令
 94+
 95+- `cd /Users/george/code/baa-conductor-fix-daemon-test-localApiBase && pnpm build`
 96+- `cd /Users/george/code/baa-conductor-fix-daemon-test-localApiBase && pnpm -F @baa-conductor/conductor-daemon test`
 97+- `cd /Users/george/code/baa-conductor-fix-daemon-test-localApiBase && pnpm test`
 98+
 99+## 执行记录
100+
101+> 以下内容由执行任务的 AI 填写,创建任务时留空。
102+
103+### 开始执行
104+
105+- 执行者:
106+- 开始时间:
107+- 状态变更:`待开始` → `进行中`
108+
109+### 完成摘要
110+
111+- 完成时间:
112+- 状态变更:`进行中` → `已完成`
113+- 修改了哪些文件:
114+- 核心实现思路:
115+- 跑了哪些测试:
116+
117+### 执行过程中遇到的问题
118+
119+> 记录执行过程中遇到的阻塞、环境问题、临时绕过方案等。合并时由合并者判断是否需要修复或建新任务。
120+
121+### 剩余风险
122+