"""Config step of eval_<arm>.ipynb as a script, so every step can run under ``kveritas run``.

    python cookbooks/kveritas_arm.py <sft|dpo|apo|grpo> <workdir>
"""

import subprocess
import sys
from pathlib import Path

import yaml

from beni.utils import config as sebeni_cfg

arm, workdir = sys.argv[1], Path(sys.argv[2]).resolve()
subprocess.run(["sebeni", "init", "--lang", "multi13", "-w", str(workdir)], check=True)

cfg = yaml.safe_load((workdir / "config.yaml").read_text()) or {}
cfg["algorithm"] = arm
cfg.setdefault("data", {})["source"] = str((sebeni_cfg.DATA_DIR / "raw" / "dataset_300_samples.jsonl").resolve())
cfg["data"]["eval_ratio"] = 0.1
cfg.setdefault("experiment", {})["kveritas"] = True

text = yaml.dump(cfg, default_flow_style=False)
(workdir / "config.yaml").write_text(text)
kept = Path(__file__).parent / "kveritas" / f"{arm}.yaml"
kept.parent.mkdir(exist_ok=True)
kept.write_text(text)
print(f"Configured {kept} for {arm}")
