refactor(mention): 重构 _validate_thread_id 为公有函数以防范跨模块访问 protected 成员
This commit is contained in:
parent
27fb208c81
commit
8b7d006cf8
@ -21,7 +21,7 @@ def get_virtual_path_prefix() -> str:
|
||||
return "/" + VIRTUAL_PATH_PREFIX.strip("/")
|
||||
|
||||
|
||||
def _validate_thread_id(thread_id: str) -> str:
|
||||
def validate_thread_id(thread_id: str) -> str:
|
||||
value = str(thread_id or "").strip()
|
||||
if not value:
|
||||
raise ValueError("thread_id is required")
|
||||
@ -31,7 +31,7 @@ def _validate_thread_id(thread_id: str) -> str:
|
||||
|
||||
|
||||
def _thread_root_dir(thread_id: str) -> Path:
|
||||
safe_thread_id = _validate_thread_id(thread_id)
|
||||
safe_thread_id = validate_thread_id(thread_id)
|
||||
return Path(conf.save_dir) / "threads" / safe_thread_id / "user-data"
|
||||
|
||||
|
||||
@ -55,7 +55,7 @@ def sandbox_user_data_dir(thread_id: str) -> Path:
|
||||
|
||||
|
||||
def sandbox_workspace_dir(thread_id: str, user_id: str) -> Path:
|
||||
_validate_thread_id(thread_id)
|
||||
validate_thread_id(thread_id)
|
||||
return _global_user_data_dir(user_id) / WORKSPACE_DIR_NAME
|
||||
|
||||
|
||||
|
||||
@ -43,9 +43,9 @@ async def search_mention_files(
|
||||
# 此时该 thread 专属的 uploads/outputs 目录还没创建或为空,
|
||||
# 用户仅能安全地搜索到自己全局的工作区 (workspace) 文件。
|
||||
try:
|
||||
from yuxi.agents.backends.sandbox.paths import _validate_thread_id
|
||||
from yuxi.agents.backends.sandbox.paths import validate_thread_id
|
||||
|
||||
_validate_thread_id(thread_id)
|
||||
validate_thread_id(thread_id)
|
||||
except ValueError:
|
||||
raise HTTPException(status_code=400, detail="非法的 thread_id 格式")
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user