"""Load the fixed eval-set manifest (one image filename per line).""" from __future__ import annotations from pathlib import Path from typing import List def load_manifest(manifest_path: Path, image_root: Path) -> List[Path]: paths: List[Path] = [] for raw in manifest_path.read_text(encoding="utf-8").splitlines(): name = raw.strip() if not name or name.startswith("#"): continue image = image_root / name if not image.exists(): raise FileNotFoundError(f"manifest image not found: {name} (looked in {image_root})") paths.append(image) return paths