From 54a5fdab2e4913829e4c6d4790924bea20e53d63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=A0=95=EC=8B=9C=EC=9B=90?= Date: Thu, 7 May 2026 16:50:33 +0900 Subject: [PATCH] Add --wandb-notes flag for run purpose description Exposes wandb.init's notes field through the CLI so each run can carry a short description of its purpose, visible on the W&B run page alongside tags and config. Co-Authored-By: Claude Opus 4.7 (1M context) --- src/coolrl_lost_cities/games/classic/deep_cfr/cli.py | 5 +++++ src/coolrl_lost_cities/games/classic/deep_cfr/tracking.py | 2 ++ 2 files changed, 7 insertions(+) diff --git a/src/coolrl_lost_cities/games/classic/deep_cfr/cli.py b/src/coolrl_lost_cities/games/classic/deep_cfr/cli.py index 0002837..67fe68f 100644 --- a/src/coolrl_lost_cities/games/classic/deep_cfr/cli.py +++ b/src/coolrl_lost_cities/games/classic/deep_cfr/cli.py @@ -106,6 +106,7 @@ def train_command(args: argparse.Namespace) -> None: config=config.to_dict(), run_dir=str(run_dir), tags=list(args.wandb_tag) if args.wandb_tag else None, + notes=args.wandb_notes, ) ) trainer = DeepCFRTrainer( @@ -251,6 +252,10 @@ def main(argv: list[str] | None = None) -> None: default=[], help="Tag to attach to the W&B run (repeatable).", ) + train.add_argument( + "--wandb-notes", + help="Free-form note describing this run's purpose (shown on the W&B run page).", + ) train.set_defaults(func=train_command) evaluate = subparsers.add_parser("eval") diff --git a/src/coolrl_lost_cities/games/classic/deep_cfr/tracking.py b/src/coolrl_lost_cities/games/classic/deep_cfr/tracking.py index 95727ef..cd3ad86 100644 --- a/src/coolrl_lost_cities/games/classic/deep_cfr/tracking.py +++ b/src/coolrl_lost_cities/games/classic/deep_cfr/tracking.py @@ -71,6 +71,7 @@ class WandbRunTracker: mode: str | None = None, config: dict[str, Any] | None = None, tags: list[str] | None = None, + notes: str | None = None, ): try: import wandb @@ -88,6 +89,7 @@ class WandbRunTracker: config=config or {}, dir=str(run_dir_path), tags=tags, + notes=notes, reinit=True, )