Files
aios/tests/test_task_admission_bootstrap_contract.py
T

47 lines
1.5 KiB
Python

from __future__ import annotations
from pathlib import Path
import sys
ROOT = Path(__file__).resolve().parents[1]
APP = ROOT / "active-runtime" / "app"
if str(APP) not in sys.path:
sys.path.insert(0, str(APP))
from aios_task_admission_bridge_contract import ( # noqa: E402
TASK_ADMISSION_OPERATION_REQUIRED_FIELDS,
TASK_ADMISSION_ROUTES,
)
def test_bootstrap_route_operation_mapping_is_exact():
assert TASK_ADMISSION_ROUTES == {
"/v2/task-admission/envelope": "getTaskAdmissionEnvelope",
"/v2/task-admission/authorize": "submitTaskAdmissionAuthorization",
"/v2/task-admission/status": "getTaskAdmissionStatus",
}
def test_bootstrap_operations_do_not_replace_writer_or_principal_gates():
operations = set(TASK_ADMISSION_OPERATION_REQUIRED_FIELDS)
assert "acquireWriterLease" not in operations
assert "commitFilesGoverned" not in operations
assert "issueTaskPrincipal" not in operations
assert operations == {
"getTaskAdmissionEnvelope",
"submitTaskAdmissionAuthorization",
"getTaskAdmissionStatus",
}
def test_openapi_fragment_matches_runtime_contract():
text = (
ROOT / "docs" / "gitops" / "openapi-task-admission-bootstrap-fragment.yaml"
).read_text(encoding="utf-8")
for route, operation in TASK_ADMISSION_ROUTES.items():
assert f" {route}:" in text
assert f"operationId: {operation}" in text
assert "global write" not in text.lower()
assert "runShell" not in text
assert "force push" not in text.lower()