refactor: address PR review feedback — de-privatize helpers and rename modules
test / unit (pull_request) Successful in 33s
test / integration (pull_request) Successful in 43s

- Rename _manifest_util.py → manifest_util.py (module isn't private)
- Rename _as_json_object → as_json_object, _parse_git_upstream → parse_git_upstream,
  _parse_git_gate_config → parse_git_gate_config,
  _validate_unique_git_names → validate_unique_git_names,
  _validate_egress_routes → validate_egress_routes (none are private at
  module boundary — underscore prefix was a carry-over from the old
  monolithic manifest.py where everything lived in one namespace)
- Move _is_ip_literal → util.is_ip_literal (generic, belongs in the
  top-level util module)
- Update all import sites across manifest_*.py, manifest_extends.py,
  manifest_schema.py; existing callers of manifest.py are unaffected

All 867 unit tests pass.
This commit is contained in:
2026-06-03 04:32:25 +00:00
parent 9b81173699
commit 5ac6c8199c
8 changed files with 46 additions and 48 deletions
+4 -4
View File
@@ -6,7 +6,7 @@ from dataclasses import dataclass
from typing import cast
from .agent_provider import PROVIDER_TEMPLATES
from ._manifest_util import ManifestError, _as_json_object
from .manifest_util import ManifestError, as_json_object
from .manifest_git import GitUser
from .manifest_schema import AGENT_MODEL_KEYS
@@ -36,7 +36,7 @@ class AgentProvider:
@classmethod
def from_dict(cls, bottle_name: str, raw: object) -> "AgentProvider":
d = _as_json_object(raw, f"bottle '{bottle_name}' agent_provider")
d = as_json_object(raw, f"bottle '{bottle_name}' agent_provider")
for k in d:
if k not in {"template", "dockerfile", "auth_token", "forward_host_credentials"}:
raise ManifestError(
@@ -103,7 +103,7 @@ class Agent:
@classmethod
def from_dict(cls, name: str, raw: object, bottle_names: set[str]) -> "Agent":
d = _as_json_object(raw, f"agent '{name}'")
d = as_json_object(raw, f"agent '{name}'")
unknown = set(d.keys()) - AGENT_MODEL_KEYS
if unknown:
allowed = ", ".join(sorted(AGENT_MODEL_KEYS))
@@ -151,7 +151,7 @@ class Agent:
git_user = GitUser()
git_raw = d.get("git-gate")
if git_raw is not None:
gd = _as_json_object(git_raw, f"agent '{name}' git-gate")
gd = as_json_object(git_raw, f"agent '{name}' git-gate")
for k in gd.keys():
if k != "user":
raise ManifestError(