现象
_ensure_syspath 有 7 处重复定义,核心逻辑高度一致(将 repo root 与 src/ prepend 到 sys.path)。
重复位置:
apps/tool/selfcheck/refactor_libcst_coverage.py:56
apps/client/ports/cli/agent.py:28
apps/server/service/server.py:17
apps/server/service/llm/server.py:11
apps/server/service/llm/app.py:38
apps/server/service/app.py:70
apps/server/daemon/workspace.py:20
建议
- 抽取到共享模块(如
src/cobnet/shared/path.py)
- 统一参数形态(统一使用
repo_root: Path 或由调用方确定 root)
- 统一
src 是否必须存在时的行为(仅当存在才添加)
价值
- 避免服务入口反复复刻同一启动逻辑
- 统一路径注入行为降低启动不一致风险
与已存在 issue 的关系
open issue 列表 #8-15 未覆盖 _ensure_syspath。
现象
_ensure_syspath有 7 处重复定义,核心逻辑高度一致(将 repo root 与src/prepend 到sys.path)。重复位置:
apps/tool/selfcheck/refactor_libcst_coverage.py:56apps/client/ports/cli/agent.py:28apps/server/service/server.py:17apps/server/service/llm/server.py:11apps/server/service/llm/app.py:38apps/server/service/app.py:70apps/server/daemon/workspace.py:20建议
src/cobnet/shared/path.py)repo_root: Path或由调用方确定 root)src是否必须存在时的行为(仅当存在才添加)价值
与已存在 issue 的关系
open issue 列表 #8-15 未覆盖
_ensure_syspath。