release: freeze Nexus One AI 1.0.0-rc1
This commit is contained in:
1 parent
63acefd890
commit
4f1419ca93
152 files changed
+9445
-828
No files matched your search
@@ -0,0 +1,91 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Orchestrate verified profile selection through durable checkpoint readiness only."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import argparse
|
||||
import importlib.util
|
||||
import json
|
||||
from pathlib import Path
|
||||
|
||||
|
||||
HERE = Path(__file__).resolve().parent
|
||||
|
||||
|
||||
def load_module(name: str, filename: str):
|
||||
spec = importlib.util.spec_from_file_location(name, HERE / filename)
|
||||
module = importlib.util.module_from_spec(spec)
|
||||
assert spec.loader
|
||||
spec.loader.exec_module(module)
|
||||
return module
|
||||
|
||||
|
||||
planner = load_module("profile_planner", "plan-python-runtime-profile.py")
|
||||
journal_api = load_module("profile_journal", "atomic-profile-journal.py")
|
||||
checkpoint_api = load_module("profile_checkpoint", "python-environment-checkpoint.py")
|
||||
profile_api = load_module("profile_validator", "validate-python-runtime-profile.py")
|
||||
|
||||
|
||||
def prepare(probe: dict, receipt: dict, requested: str, operation_id: str, journal_path: Path,
|
||||
target: Path, checkpoint: Path, contract: dict, wheel_dir: Path,
|
||||
allow_test_receipt: bool = False) -> dict:
|
||||
current = journal_api.read_verified(journal_path)
|
||||
planned = planner.plan(probe, receipt, requested, operation_id, current, allow_test_receipt)
|
||||
selected = planned["selected_profile"]
|
||||
errors = profile_api.validate(contract, selected, wheel_dir)
|
||||
if errors:
|
||||
raise ValueError("PROFILE_PAYLOAD_INVALID:" + "|".join(errors))
|
||||
|
||||
if current is None:
|
||||
current = journal_api.update(
|
||||
journal_path, expected_generation=0, operation_id=operation_id, profile=selected,
|
||||
manifest_sha256=receipt["manifest_sha256"], state="profile_selected", checkpoint_id=None,
|
||||
)
|
||||
if current["state"] == "profile_selected":
|
||||
if checkpoint.exists():
|
||||
checkpoint_manifest = checkpoint_api.verify(checkpoint, target)
|
||||
else:
|
||||
checkpoint_manifest = checkpoint_api.create(target, checkpoint, operation_id)
|
||||
current = journal_api.update(
|
||||
journal_path, expected_generation=current["generation"], operation_id=operation_id,
|
||||
profile=selected, manifest_sha256=receipt["manifest_sha256"], state="checkpoint_ready",
|
||||
checkpoint_id=checkpoint_manifest["inventory_sha256"],
|
||||
)
|
||||
if current["state"] != "checkpoint_ready":
|
||||
raise ValueError(f"OPERATION_NOT_PREPARABLE:{current['state']}")
|
||||
return {"ready": True, "selected_profile": selected, "generation": current["generation"],
|
||||
"checkpoint_id": current["checkpoint_id"], "mutation_performed": False}
|
||||
|
||||
|
||||
def read(path: Path) -> dict:
|
||||
return json.loads(path.read_text(encoding="utf-8"))
|
||||
|
||||
|
||||
def main() -> int:
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("--probe", type=Path, required=True)
|
||||
parser.add_argument("--receipt", type=Path, required=True)
|
||||
parser.add_argument("--requested", choices=("auto", "cpu-only", "nvidia-cu128"), default="auto")
|
||||
parser.add_argument("--operation-id", required=True)
|
||||
parser.add_argument("--journal", type=Path, required=True)
|
||||
parser.add_argument("--target", type=Path, required=True)
|
||||
parser.add_argument("--checkpoint", type=Path, required=True)
|
||||
parser.add_argument("--profile-contract", type=Path, required=True)
|
||||
parser.add_argument("--wheel-dir", type=Path, required=True)
|
||||
parser.add_argument("--allow-test-receipt", action="store_true")
|
||||
args = parser.parse_args()
|
||||
try:
|
||||
result = prepare(
|
||||
read(args.probe), read(args.receipt), args.requested, args.operation_id, args.journal,
|
||||
args.target, args.checkpoint, read(args.profile_contract), args.wheel_dir,
|
||||
args.allow_test_receipt,
|
||||
)
|
||||
except Exception as error:
|
||||
print(json.dumps({"ready": False, "code": str(error)}, sort_keys=True))
|
||||
return 1
|
||||
print(json.dumps(result, sort_keys=True))
|
||||
return 0
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
raise SystemExit(main())
|
||||
Reference in new issue
Block a user