From ae0dc28d0e74655237d3dbdc7605acb05cffeef8 Mon Sep 17 00:00:00 2001 From: jackspiering <46534141+jackspiering@users.noreply.github.com> Date: Sun, 8 Feb 2026 23:14:15 +0100 Subject: [PATCH] Restore repo slug validation helper --- scripts/generate_registry.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/scripts/generate_registry.py b/scripts/generate_registry.py index a3ff253..cd09b5f 100755 --- a/scripts/generate_registry.py +++ b/scripts/generate_registry.py @@ -12,6 +12,7 @@ REPO_ROOT = Path(__file__).resolve().parents[1] SERVICES_DIR = REPO_ROOT / "services" +REPO_SLUG_RE = re.compile(r"^[A-Za-z0-9_.-]+/[A-Za-z0-9_.-]+$") def title_from_id(value: str) -> str: @@ -78,6 +79,12 @@ def read_text(path: Path) -> Optional[str]: return path.read_text(encoding="utf-8") +def validate_repo_slug(repo: str) -> str: + if not REPO_SLUG_RE.match(repo): + raise SystemExit(f"Invalid repo slug '{repo}'; expected owner/name") + return repo + + def infer_repo_slug(repo_arg: Optional[str]) -> Optional[str]: if repo_arg: return validate_repo_slug(repo_arg)