sheaf-admm-icml2026-executor / scripts /aggregate_attempts.py
Mindcraft's picture
Publish frozen reproduction executor image source
17d5066 verified
Raw
History Blame Contribute Delete
1.38 kB
#!/usr/bin/env python3
"""Accept a complete attempt or verify the complete accepted identity set."""
from __future__ import annotations
import argparse
import json
import sys
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parents[1] / "src"))
from repro_control.aggregation import accept_attempt, load_complete_units
def main() -> int:
parser = argparse.ArgumentParser()
parser.add_argument("--registry", type=Path, required=True)
sub = parser.add_subparsers(dest="action", required=True)
accept = sub.add_parser("accept")
accept.add_argument("--logical-id", required=True)
accept.add_argument("--attempt-id", required=True)
accept.add_argument("--prefix", type=Path, required=True)
verify = sub.add_parser("verify")
verify.add_argument("--required-json", type=Path, required=True)
args = parser.parse_args()
if args.action == "accept":
row = accept_attempt(
args.registry,
logical_id=args.logical_id,
attempt_id=args.attempt_id,
prefix=args.prefix,
)
print(json.dumps(row, sort_keys=True))
else:
required = set(json.loads(args.required_json.read_text()))
print(json.dumps(load_complete_units(args.registry, required), sort_keys=True))
return 0
if __name__ == "__main__":
raise SystemExit(main())