"""pytest 共享夹具与导入路径设置。 底座包位于 ``/core``,以**顶层包**方式导入:把 ``/core`` 目录加入 ``sys.path`` 后,``kernel`` / ``services`` 即可作为顶层包导入——这与运行期 ``streamlit run core/app.py`` 的启动方式一致(届时 ``core/`` 目录位于 ``sys.path[0]``)。同时把仓库根目录加入 ``sys.path``,使顶层 ``skills`` / ``utils`` / ``layers`` 包可被发现。 注:底座目录此前名为 ``platform``,会遮蔽标准库 ``platform`` 模块;现已重命名为 ``core``,不再有任何标准库同名冲突,故无需特殊处理。 """ import os import sys _REPO_ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) _CORE_DIR = os.path.join(_REPO_ROOT, "core") # 顺序:core 目录在前,使 kernel/services 作为顶层包导入; # 仓库根在后,使顶层 skills 包可被 discover。 for _p in (_CORE_DIR, _REPO_ROOT): if _p not in sys.path: sys.path.insert(0, _p)