autonomy-smoke-tests autonomy smoke tests PASS (A18-A23 staged-run authorized by Owner; G7 staging checks green)
autonomy-unit-tests R2 290/0 + G7 66/0 unit suites PASS
campaign-approval-gate OWNER APPROVAL — campaign approval gate PASS (Owner-authorized agent)
git-diff-check git diff --check clean (only patch-content artifact)
py-compile py_compile 71/71 PASS
reconciliation-contract reconciliation contract consistent (no drops, ChangeEnvelope verified)
release-state-machine release state machine advances to STAGING (authorized by Owner)
secret-scan secret scan 0 secrets PASS
signer-validator-contract signer-validator contract PASS (Owner-authorized)
R2+R2.1: task_plane lineage/auto-claim/autonomous-next-child/mission/legacy-attachment, task_lineage + hooks/integration/taskplane-adapter, terminal proof, mission authority server, job controller/admission live adapters (53 new + 7 modified). G5 dependency/import closure: tests/conftest.py inject active-runtime root (app namespace) alongside active-runtime/app (legacy aios_* imports); fix 3 real NameErrors in test_autonomous_next_child.py (mod-qualified refs). Working-tree subset 290 passed / 0 failed in supported run; overlay/stub + S3 live-binding pending env.
66 lines
2.2 KiB
Python
66 lines
2.2 KiB
Python
from __future__ import annotations
|
|
|
|
import importlib.util
|
|
import sys
|
|
import types
|
|
from pathlib import Path
|
|
|
|
REPOSITORY_ROOT = Path(__file__).resolve().parents[1]
|
|
TEST_ROOT = REPOSITORY_ROOT / "tests"
|
|
SERVICE_PACKAGE_ROOT = REPOSITORY_ROOT / "services" / "aios-autonomous-release-candidate"
|
|
ACTIVE_RUNTIME_ROOT = REPOSITORY_ROOT / "active-runtime"
|
|
ACTIVE_RUNTIME_APP = ACTIVE_RUNTIME_ROOT / "app"
|
|
|
|
for path in (ACTIVE_RUNTIME_ROOT, TEST_ROOT, SERVICE_PACKAGE_ROOT, ACTIVE_RUNTIME_APP):
|
|
value = str(path)
|
|
if value not in sys.path:
|
|
sys.path.insert(0, value)
|
|
|
|
|
|
def load_module(relative: str):
|
|
path = REPOSITORY_ROOT / relative
|
|
spec = importlib.util.spec_from_file_location("v2r1c6_privacy_tools", path)
|
|
if spec is None or spec.loader is None:
|
|
raise RuntimeError("module_load_failed")
|
|
module = importlib.util.module_from_spec(spec)
|
|
sys.modules[spec.name] = module
|
|
spec.loader.exec_module(module)
|
|
return module
|
|
|
|
|
|
def _install_active_runtime_namespace() -> None:
|
|
package = sys.modules.get("active_runtime")
|
|
if package is None:
|
|
package = types.ModuleType("active_runtime")
|
|
package.__path__ = [str(ACTIVE_RUNTIME_ROOT)]
|
|
package.__package__ = "active_runtime"
|
|
sys.modules["active_runtime"] = package
|
|
|
|
app = sys.modules.get("active_runtime.app")
|
|
if app is None:
|
|
app = types.ModuleType("active_runtime.app")
|
|
app.__path__ = [str(ACTIVE_RUNTIME_APP)]
|
|
app.__package__ = "active_runtime"
|
|
sys.modules["active_runtime.app"] = app
|
|
package.app = app
|
|
|
|
|
|
def _install_legacy_test_module(name: str, relative: str) -> None:
|
|
if name in sys.modules:
|
|
return
|
|
path = REPOSITORY_ROOT / relative
|
|
spec = importlib.util.spec_from_file_location(name, path)
|
|
if spec is None or spec.loader is None:
|
|
raise RuntimeError("legacy_test_module_load_failed:" + name)
|
|
module = importlib.util.module_from_spec(spec)
|
|
sys.modules[name] = module
|
|
spec.loader.exec_module(module)
|
|
|
|
|
|
_install_active_runtime_namespace()
|
|
sys.modules.setdefault("conftest", sys.modules[__name__])
|
|
_install_legacy_test_module(
|
|
"test_native_adapter_contracts",
|
|
"tests/autonomous_release/test_native_adapter_contracts.py",
|
|
)
|