refactor(sdlc): 技能 base_dir 改全局 skills/(单一技能树,去掉机构副本路径)
- agent_loop: _build_role_skills_block/_load_skill_by_name 改 get_skills_base() - agent_loop_v2: _resolve_skills_base_dir 改返回 get_skills_base()
This commit is contained in:
parent
6b4acaff13
commit
6dbb574862
@ -1016,10 +1016,8 @@ async def _build_role_skills_block(sor, project_id, role, org_id=""):
|
|||||||
try:
|
try:
|
||||||
pid = await _resolve_pipeline_id(project_id)
|
pid = await _resolve_pipeline_id(project_id)
|
||||||
from pipeline_core.skill_loader import get_skill_loader, SCOPE_PRIORITY, SCOPE_TAG
|
from pipeline_core.skill_loader import get_skill_loader, SCOPE_PRIORITY, SCOPE_TAG
|
||||||
from pipeline_core.skill_pack import ensure_org_skills
|
from pipeline_core.skill_pack import get_skills_base
|
||||||
from .workspace import get_workspace_base
|
skills_dir = get_skills_base()
|
||||||
ws_base = await get_workspace_base(sor)
|
|
||||||
skills_dir = ensure_org_skills(ws_base, org_id or '0')
|
|
||||||
loader = get_skill_loader(skills_dir)
|
loader = get_skill_loader(skills_dir)
|
||||||
merged = loader.get_merged(pipeline_id=pid, role=role,
|
merged = loader.get_merged(pipeline_id=pid, role=role,
|
||||||
project_id=project_id, org_id=org_id or '0')
|
project_id=project_id, org_id=org_id or '0')
|
||||||
@ -1050,10 +1048,8 @@ async def _load_skill_by_name(sor, project_id, role, org_id, name, file_path=Non
|
|||||||
try:
|
try:
|
||||||
pid = await _resolve_pipeline_id(project_id)
|
pid = await _resolve_pipeline_id(project_id)
|
||||||
from pipeline_core.skill_loader import get_skill_loader
|
from pipeline_core.skill_loader import get_skill_loader
|
||||||
from pipeline_core.skill_pack import ensure_org_skills
|
from pipeline_core.skill_pack import get_skills_base
|
||||||
from .workspace import get_workspace_base
|
skills_dir = get_skills_base()
|
||||||
ws_base = await get_workspace_base(sor)
|
|
||||||
skills_dir = ensure_org_skills(ws_base, org_id or '0')
|
|
||||||
loader = get_skill_loader(skills_dir)
|
loader = get_skill_loader(skills_dir)
|
||||||
merged = loader.get_merged(pipeline_id=pid, role=role,
|
merged = loader.get_merged(pipeline_id=pid, role=role,
|
||||||
project_id=project_id, org_id=org_id or '0')
|
project_id=project_id, org_id=org_id or '0')
|
||||||
|
|||||||
@ -410,16 +410,10 @@ class AgentExecutor:
|
|||||||
self.space = GENERAL_SPACE if self.generic else (self.pipeline_id or GENERAL_SPACE)
|
self.space = GENERAL_SPACE if self.generic else (self.pipeline_id or GENERAL_SPACE)
|
||||||
|
|
||||||
async def _resolve_skills_base_dir(self):
|
async def _resolve_skills_base_dir(self):
|
||||||
"""技能根目录 = 机构工作目录/skills/(多租户隔离,不在全局应用目录)。"""
|
"""技能根目录 = 全局 skills/(单一技能树,所有机构共享读,2026-08-21 重构)。"""
|
||||||
try:
|
try:
|
||||||
from sqlor.dbpools import DBPools
|
from pipeline_core.skill_pack import get_skills_base
|
||||||
from pipeline_service.workspace import get_workspace_base
|
return get_skills_base()
|
||||||
from pipeline_core.skill_pack import ensure_org_skills
|
|
||||||
db = DBPools()
|
|
||||||
async with db.sqlorContext("pipeline") as sor:
|
|
||||||
ws_base = await get_workspace_base(sor)
|
|
||||||
org_id = self.org_id or '0'
|
|
||||||
return ensure_org_skills(ws_base, org_id)
|
|
||||||
except Exception:
|
except Exception:
|
||||||
return self.config.skills.base_dir
|
return self.config.skills.base_dir
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user