Skip to content

Conversation

@PaulHax
Copy link
Contributor

@PaulHax PaulHax commented Dec 9, 2025

  • Make each probe run directly editable and remove “prompt” sidebar
  • Runtime editable ADM hydra configs
  • Export runs as zip in same format as running experiments via align-system and hydra
  • Exploring the parameters space is hard: added table to browse runs/probes
image image image

related to #60

Update selectors in page object for new layout and fix timing issues
with dropdown selections by waiting for listbox to close.
- Add add_probes_from_experiments method to ProbeRegistry
- Wire up in core.py to populate probes from experiment items
- Skip default probes when --experiments or --scenarios is provided
Extract unique decider configs from experiment results and add them
to the decider dropdown. Configs are deduplicated by hashing the
normalized adm section (with dataset paths stripped to filenames).

Priority order: CLI --deciders > experiments > built-in deciders

Extract experiment's configured LLM and put it first in the available
backbones list, followed by default LLM options.

Consolidate experiment config loading into experiment_config_loader.py.
@PaulHax PaulHax changed the base branch from main to precomputed December 9, 2025 17:37
Move experiment-to-registry conversion logic into experiment_converters.py.
Core orchestrates calling these functions and populating registries.
- Move run_models.py from app/ to adm/ for better layering
- Add run conversion functions to experiment_converters.py
- Add lru_cache to load_experiment_adm_config for performance
- Wire up populate_cache_bulk in core.py on startup
Keep resolved_config pure - only what the decider module needs to
instantiate an ADM. GUI metadata (llm_backbones, max_alignment_attributes)
now stays in decider entries and is accessed via get_decider_options().

Removed model_path_keys entirely (was redundant - injection path is hardcoded).
Editing the config and pressing Choose creates a new run with a new
"edited" decider (named "{original} - edit {n}"). The edited config
bypasses Hydra loading and uses the stored resolved config directly.
- Extract shared caching logic into _execute_with_cache() helper
- Remove unused create_and_execute_run() method
- Fix SearchController/RunsStateAdapter circular dependency with callback
- Delete orphaned prompt_logic.py, move functions to consumers
- Remove unused ui.py functions (serialize_prompt, prep_for_state, etc)
- Convert RunsRegistry namedtuple to Protocol for better type hints
- Rename find_probe_by_base_and_scene to find_probe_by_scenario_and_scene
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants