"""Shared loaders and manifest helpers for Hermes CLI-lane contracts.""" from __future__ import annotations import importlib.util import sys from pathlib import Path import yaml ROOT = Path(__file__).parents[2] SCRIPTS = ROOT / "services/hermes/scripts" sys.path.insert(0, str(SCRIPTS)) HERMES = ROOT / "services/hermes" KEYCLOAK = ROOT / "services/keycloak" FLUX_HERMES = ROOT / "clusters/atlas/flux-system/applications/hermes/kustomization.yaml" def _load(name: str): spec = importlib.util.spec_from_file_location(name, SCRIPTS / f"{name}.py") assert spec and spec.loader module = importlib.util.module_from_spec(spec) sys.modules[spec.name] = module spec.loader.exec_module(module) return module lanes = _load("cli_lane_runner") policy = _load("claude_command_policy") migration = _load("migrate_herdr_state") auth_patch = _load("patch_hermes_auth") tui_gateway_patch = _load("patch_tui_gateway") codex_runtime_patch = _load("patch_codex_runtime") ttyd_patch = _load("patch_ttyd_index") client_config = _load("configure_agent_clients") def _agent_deployment() -> dict: return yaml.safe_load((HERMES / "agent-deployment.yaml").read_text()) def _services() -> dict[str, dict]: return { item["metadata"]["name"]: item for item in yaml.safe_load_all((HERMES / "service.yaml").read_text()) if item } def _oauth_deployment(name: str) -> dict: documents = [ item for item in yaml.safe_load_all((HERMES / "oauth2-proxy.yaml").read_text()) if item ] return next( item for item in documents if item["kind"] == "Deployment" and item["metadata"]["name"] == name ) class _SwitchyardResponse: """Minimal context-managed response used by routing contract tests.""" def __init__(self, selected: str, rationale: str = "local classifier vote"): self.headers = { "x-model-router-selected-model": selected, "x-model-router-rationale": rationale, } def __enter__(self): return self def __exit__(self, *_args): return False def read(self): return b"{}"