Skip to content

[shared] 抽取 _ensure_syspath 模块路径注入 helper #18

@beachspainc

Description

@beachspainc

现象

_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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions