diff --git a/bioflow_service/app/services/bioflow/delivery.py b/bioflow_service/app/services/bioflow/delivery.py index 470565d..c32e0ba 100644 --- a/bioflow_service/app/services/bioflow/delivery.py +++ b/bioflow_service/app/services/bioflow/delivery.py @@ -130,7 +130,10 @@ def check_download_budget(size_bytes: int, budget_bytes: int) -> dict[str, Any]: def check_disk_available(dest_dir: str | Path, needed_bytes: int) -> dict[str, Any]: """G23:磁盘门禁——剩余空间不足阻断并返回结构化错误。""" - ok, free = check_disk_space(dest_dir, needed_bytes) + try: + ok, free = check_disk_space(dest_dir, needed_bytes) + except OSError as exc: + return error_result("PATH_NOT_EXIST", f"目标目录不可用:{exc}") if not ok: return error_result( "DISK_FULL", f"磁盘空间不足:需 {needed_bytes} 字节,剩余 {free} 字节",