5efb380da5
* feat: automate yiacad pr review lane * fix: stabilize yiacad review and spec gates * fix: scope kicad exports to repo hardware * fix: ignore kicad block library sources in exports * feat: Add infra VPS monitoring runbook and healthcheck scripts - Created INFRA_VPS_RUNBOOK_2026.md detailing operational procedures for monitoring VPS services. - Added infra_vps_healthcheck.sh script for automated health checks on DNS, TLS, TCP, and HTTP for VPS services. - Introduced infra_vps_security_audit.sh for non-intrusive security checks on external VPS services. - Established JSON schema for infra VPS inventory in infra_vps.schema.json. - Developed integration for runtime status reporting in the Next.js API route. - Implemented Playwright tests for smoke testing the application and ensuring core functionalities. - Updated Makefile for development dependencies and testing commands. - Created various test files for unit and end-to-end testing across different components. * feat(agentics): update mesh agents, gates, prompts, and workflows
39 lines
1.1 KiB
Python
39 lines
1.1 KiB
Python
#!/usr/bin/env python3
|
|
from __future__ import annotations
|
|
|
|
import importlib.util
|
|
import sys
|
|
import unittest
|
|
from pathlib import Path
|
|
|
|
from kill_life.agent_catalog import canonical_agent_ids
|
|
|
|
|
|
REPO_ROOT = Path(__file__).resolve().parents[1]
|
|
SCRIPT_PATH = REPO_ROOT / "tools" / "autonomous_next_lots.py"
|
|
CANONICAL_AGENT_IDS = set(canonical_agent_ids())
|
|
|
|
|
|
def load_module():
|
|
spec = importlib.util.spec_from_file_location("autonomous_next_lots", SCRIPT_PATH)
|
|
module = importlib.util.module_from_spec(spec)
|
|
assert spec is not None and spec.loader is not None
|
|
sys.modules[spec.name] = module
|
|
spec.loader.exec_module(module)
|
|
return module
|
|
|
|
|
|
AUTONOMOUS_NEXT_LOTS = load_module()
|
|
|
|
|
|
class AutonomousNextLotsCatalogTests(unittest.TestCase):
|
|
def test_all_declared_lot_owners_are_canonical(self) -> None:
|
|
self.assertGreaterEqual(len(AUTONOMOUS_NEXT_LOTS.LOTS), 1)
|
|
for lot in AUTONOMOUS_NEXT_LOTS.LOTS:
|
|
with self.subTest(lot=lot.key):
|
|
self.assertIn(lot.owner_agent, CANONICAL_AGENT_IDS)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|