Enhance run explorations - #874
Merged
Merged
Conversation
There was a problem hiding this comment.
Pull request overview
This PR enhances the experiment exploration workflow by extending YAML sweep semantics (default to omit parameters; null to preserve None/omit CLI flags) and improving the run_exploration_monitor.py TUI with new hotkeys and better column-setting behavior during reordering.
Changes:
- Added
default/nullsweep handling inrun_experiments.py, including CLI construction behavior forNone. - Improved the exploration monitor UI with: a hotkey to view the associated exploration YAML, a hotkey to clear all column colour-maps, and remapped colour/sort settings when columns are reordered.
- Added new unit tests covering sweep behavior and the new monitor UI behaviors.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
optimization_and_search/run_experiments.py |
Implements default/null sweep semantics and updates CLI building to omit None flags. |
run_exploration_monitor.py |
Adds YAML viewer screen + new hotkeys and preserves colour/sort settings during column reordering. |
explorations/default.yaml |
Updates default exploration spec to demonstrate/enable the new default/null sweep behavior. |
tests/test_run_experiments.py |
Adds tests validating default omission and null/None CLI handling. |
tests/test_run_exploration_monitor.py |
Adds tests for YAML viewer hotkey and column setting remapping logic. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+144
to
+147
| if self.config_file.exists(): | ||
| contents = self.config_file.read_text() | ||
| else: | ||
| contents = "Associated exploration YAML file was not found." |
gkielian
approved these changes
Aug 1, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces several improvements to the experiment configuration system and the exploration monitor UI, focusing on more flexible parameter sweeps and enhanced usability. The main changes include support for
defaultandnullsweep values in YAML configurations, improved handling of command-line arguments, new UI features in the monitor, and comprehensive tests for the new behaviors.Experiment configuration and sweep improvements:
Added support for
defaultandnullvalues in sweep configurations. Thedefaultsentinel omits a parameter from the generated config, whilenullpreserves PythonNone(and omits the CLI flag). This is handled in both the YAML schema (explorations/default.yaml) and the sweep logic (run_experiments.py). [1] [2] [3] [4] [5] [6]Added tests to ensure correct handling of
defaultandnullin configuration generation and command building (tests/test_run_experiments.py).Exploration monitor UI and usability enhancements:
Added a new hotkey (
I) to view the associated exploration YAML file for a run, with a dedicated read-only screen (ExplorationConfigScreen). [1] [2] [3] [4] [5]Added a new hotkey (
D) to remove all colour-maps from columns in the monitor UI. [1] [2] [3]Improved column reordering: colour and sort settings now follow columns when reordered, preserving user preferences (
MonitorApp._remap_indexed_column_settings). [1] [2] [3]Testing and code quality:
tests/test_run_exploration_monitor.py).These changes make experiment configuration more expressive and robust, and significantly improve the usability and reliability of the exploration monitoring tool.