diff --git a/evalharness/cli.py b/evalharness/cli.py index 2963f38..a0f50ba 100644 --- a/evalharness/cli.py +++ b/evalharness/cli.py @@ -191,7 +191,9 @@ def _print_run_plan(console, args, model_spec): def _print_phase(console, index, total, name, message): - text = f'[{index}/{total}] {name}: {message}' + # single-benchmark runs: the [1/1] tag is noise, drop it + prefix = f'[{index}/{total}] ' if total > 1 else '' + text = f'{prefix}{name}: {message}' if console is not None: console.print(f'[cyan]{text}[/cyan]') else: @@ -302,11 +304,12 @@ def _cmd_eval_run(args) -> int: # writer during the live bar interleave incorrectly progress_reporter = RichTerminalProgress(console=console) - def status_callback(msg, _idx=i, _name=name, + def status_callback(msg, _idx=i + 1, _name=name, _reporter=progress_reporter, _console=console): if _reporter is not None: - _reporter.log(f'[{_idx}/{total_runs}] {_name}: {msg}') + tag = f'[{_idx}/{total_runs}] ' if total_runs > 1 else '' + _reporter.log(f'{tag}{_name}: {msg}') else: _print_phase(_console, _idx, total_runs, _name, msg) report = asyncio.run(run_eval( diff --git a/evalharness/progress/rich_terminal.py b/evalharness/progress/rich_terminal.py index 813793e..e4f7147 100644 --- a/evalharness/progress/rich_terminal.py +++ b/evalharness/progress/rich_terminal.py @@ -26,10 +26,8 @@ class RichTerminalProgress: BarColumn(complete_style="green", finished_style="bold green"), TaskProgressColumn(), TextColumn("• Completed {task.completed}/{task.total}"), - TextColumn("• In flight {task.fields[inflight]}"), - TextColumn("• Waiting {task.fields[waiting]}"), - TextColumn("• Last {task.fields[last_result]}"), - TextColumn("• {task.fields[rate]} sample/s"), + TextColumn("• in-flight {task.fields[inflight]}"), + TextColumn("• {task.fields[rate]}/s"), TextColumn("•"), TimeElapsedColumn(), TextColumn("•"),