[feat]:[FL-205][ATP模型文件存储改造]
- 移除 releases 层级
- 新增 voltage_level(电压等级)和 tower_type(塔型)作为目录层级
- 修改存储路径结构:/atp-library/{voltage_level}/{tower_type}/{asset_code}/r{release_no}
- 更新相关测试用例
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: multica-agent <github@multica.ai>
This commit is contained in:
@@ -64,7 +64,7 @@ VALID_RELEASE_STATUS = {"draft", "released", "archived"}
|
||||
VALID_RUNNER_KIND = {"atp", "egm", "hybrid"}
|
||||
VALID_RUN_STATUS = {"pending", "running", "success", "failed"}
|
||||
LOG_MAX_CHARS = 200_000
|
||||
ATP_ASSET_RELEASES_ROOT = "/atp-library/releases"
|
||||
ATP_ASSET_RELEASES_ROOT = "/atp-library"
|
||||
|
||||
|
||||
@dataclass(slots=True)
|
||||
@@ -349,9 +349,11 @@ def _sanitize_storage_segment(value: str, *, fallback: str) -> str:
|
||||
return normalized or fallback
|
||||
|
||||
|
||||
def _build_release_storage_root(asset_code: str, release_no: int) -> str:
|
||||
def _build_release_storage_root(asset_code: str, release_no: int, voltage_level: str, tower_type: str) -> str:
|
||||
asset_segment = _sanitize_storage_segment(asset_code, fallback="asset")
|
||||
return normalize_virtual_path(f"{ATP_ASSET_RELEASES_ROOT}/{asset_segment}/r{release_no}")
|
||||
voltage_segment = _sanitize_storage_segment(voltage_level, fallback="unknown-voltage")
|
||||
tower_segment = _sanitize_storage_segment(tower_type, fallback="unknown-tower")
|
||||
return normalize_virtual_path(f"{ATP_ASSET_RELEASES_ROOT}/{voltage_segment}/{tower_segment}/{asset_segment}/r{release_no}")
|
||||
|
||||
|
||||
def _write_archive_to_storage(
|
||||
@@ -1045,7 +1047,7 @@ def create_release_from_archive(
|
||||
next_release_no = int(
|
||||
db.scalar(select(func.max(AtpAssetRelease.release_no)).where(AtpAssetRelease.asset_id == asset_id)) or 0
|
||||
) + 1
|
||||
storage_root_path = _build_release_storage_root(asset.code, next_release_no)
|
||||
storage_root_path = _build_release_storage_root(asset.code, next_release_no, voltage_level, tower_type)
|
||||
|
||||
mount = _resolve_mount(db, "main")
|
||||
driver = _build_driver_or_400(mount)
|
||||
|
||||
Reference in New Issue
Block a user