Files
workbuddy_skills/session-mechanism/scripts
admin 7a08cd3366 session-mechanism:相对路径补漏两处(用户令「能用相对路径的都要用相对路径」漏网的)
承接 fe22f4c。上一轮清了 4 处盘符硬编码,本轮复核发现还漏 2 处:

① scripts/hooks/wb-result-hook.py 的 CARE_PREFIX
   原写死 "e:/programdata/aiproject/"(盘符 + 用户名进代码)⇒ 换机即全错,
   且**域外过滤会静默走偏**(把自家会话判成"域外"、不读转录)。
   改:从 env/roots.env 的 DSH_AIROOT 推导(新增 _sm_load_roots(),上跳三级到包根)。
   判据=「这个根能不能从『我自己的位置』推出来」—— 推不出 ⇒ 读本包 env/roots.env。
   取不到 ⇒ classify() **如实报错 + 打 stderr 留痕**(⛔ 不静默把全部会话判成域外)。

② scripts/selftest.py:6875 假样本里的 "workspace": "E:/selftest"
   改为 "__selftest_ws__",与同段已改的两处(__selftest_no_such_ws__ / __selftest_ws__)同族。

验收:
· 有 DSH_AIROOT ⇒ 分类逐样本与改前硬编码**完全一致**
  (home / line 客户端线 / line ai1net_ui / other contentm_agent / outside)
· 包不带 env/(拷到别处)⇒ **如实报错 + stderr 留痕**,⛔ 不静默
· selftest 全量 rc=0 · PASS 110 / FAIL 0 · 语法失败 0
2026-10-14 16:49:04 +08:00
..