diff --git a/loop.py b/loop.py index 659bc3e..db783d8 100644 --- a/loop.py +++ b/loop.py @@ -84,6 +84,10 @@ def run_train() -> "tuple[float | None, float, str]": t0 = time.time() env = dict(os.environ) env["METRICS_OUT"] = str(METRICS_JSON.resolve()) + # train.py is copied into the run dir, so sys.path[0] is that run dir — which + # has no scripts/. Put the project root (where loop.py + scripts/ live) on + # PYTHONPATH so train.py's `from scripts.var_breach import ...` resolves. + env["PYTHONPATH"] = str(Path(__file__).resolve().parent) + os.pathsep + env.get("PYTHONPATH", "") try: r = subprocess.run( [sys.executable, str(TRAIN_PY.resolve())],