user-vibeloop

← 返回决策队列

决策详情

人工审批:默认端口 8765 与 WorkBuddy Copilot 冲突:改为系统自动分配端口

已裁决

d-20260713-0d427e · 来源 自动策略 · 指派给 管理员 · 工单 t-20260713-6317d1 · 2026-07-13 07:38:39

工单:默认端口 8765 与 WorkBuddy Copilot 冲突:改为系统自动分配端口(t-20260713-6317d1)

修复摘要:将 server.py 的 --port 默认值从 8765 改为 0(OS 自动分配),并在测试中添加正确的回归断言:通过 patch bind_server 捕获 main([]) 实际传入的 port 参数断言为 0,不再创建独立 ArgumentParser。

改动文件:src/cutpoint_lab/studio/server.py, tests/test_studio_app.py

judge 裁定:verdict=approve,bugReal=true,fixEffective=true,regressionRisk=low,constraintsRespected=true

judge 理由

  • server.py 的 --port default 已从 8765 改为 0,与工单要求一致
  • 新测试第一部分通过 patch.object(server_module, 'bind_server') spy 捕获 port 参数,调用的是真实 server_module.main([]),而非独立 ArgumentParser——正好修复了退回工单指出的核心缺陷
  • spy_bind 签名 (app, *, host, port) 与真实 bind_server 调用形参一致(86 测试全绿可佐证),断言 captured_port[0]==0 真正覆盖了 server 入口行为
  • 第二部分 --help 不含 '8765' 的断言保留,符合退回批注要求
  • Workspace / StudioApplication / ShellAsrRunner 全部 mock,不引入真实 ASR/LLM 调用,满足离线约束
  • unittest.mock 属 Python 标准库,未引入任何 pip 包,零运行时依赖约束不受影响
  • HTTP 接口行为语义未变(仅默认端口配置),向后兼容约束不受影响
  • harness 86/86 通过,无跳过/放宽已有断言

转人工原因

  • 风险等级 medium 的门槛配置为人工审批

AI 对这个决策的四维评估(供判断参考):

  • 有无标准答案:有(偏技术最优解)
  • AI 置信度:高
  • 重要性:中
  • 可回退性:可撤销

在工单详情页可查看完整 diff:/tickets/t-20260713-6317d1

选项已锁定
所选项:「批准合并」 · 裁决人 Michael · 2026-07-13 07:50:11