Commit ae749694 authored by BO ZHANG's avatar BO ZHANG 🏀
Browse files

refactor: 将data_model.toml的models键改为data_models并同步更新读取逻辑

parent 498f397d
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
# 该文件是 data_model 的“存储层级注册表”:
# - 用于声明某个 data_model 实际写入 level0 / level1 / level2 的归属
# - 供通用 data.find() / get_storage_level() 等逻辑按存储层级分流
# - 供通用 data.find() / get_storage_level() / Portal submission dataset 加载按存储层级分流
# - 不用于决定 Brick DAG 的 unique healpix 搜索后端
#   当前 FileBrickDAG / CatalogBrickDAG 查询 unique healpix 时均固定访问 level2

[level0]
models = ["raw"]
data_models = ["raw"]

[level1]
models = [
data_models = [
  # MSC
  "csst-msc-l1-ast",
  "csst-msc-l1-ast-astrometry",
@@ -38,7 +38,7 @@ models = [
]

[level2]
models = [
data_models = [
  "csst-msc-l2-mbi-cat",
  "csst-msc-l2-mbi-catmix",
  "csst-msc-l2-mbi-xcat",
+4 −4
Original line number Diff line number Diff line
@@ -20,14 +20,14 @@ def _iter_models(raw_cfg: dict[str, object], level: str) -> Iterable[str]:
    if not isinstance(section, dict):
        raise ValueError(f"data_model.toml 中的 [{level}] 必须为表。")

    models = section.get("models") or []
    models = section.get("data_models") or []
    if not isinstance(models, list):
        raise ValueError(f"data_model.toml 中的 [{level}].models 必须为数组。")
        raise ValueError(f"data_model.toml 中的 [{level}].data_models 必须为数组。")

    for item in models:
        model = _normalize_model(item)
        if not model:
            raise ValueError(f"data_model.toml 中的 [{level}].models 不能包含空值。")
            raise ValueError(f"data_model.toml 中的 [{level}].data_models 不能包含空值。")
        yield model


@@ -54,7 +54,7 @@ def load_data_model_registry() -> Dict[str, str]:

    level0_models = {model for model, level in registry.items() if level == "level0"}
    if level0_models != {"raw"}:
        raise ValueError("data_model.toml 约定 `[level0].models` 只能且必须包含 `raw`。")
        raise ValueError("data_model.toml 约定 `[level0].data_models` 只能且必须包含 `raw`。")

    return registry