protomotions.utils.config_builder module#

The one home of the build sequence.

build_configs turns an experiment module plus parsed args into a typed ExperimentConfigs; tools and tests reach it through build_experiment(argv).

protomotions.utils.config_builder.load_experiment_module(experiment_path)[source]#

Load the experiment module from a given path.

Parameters:

experiment_path – Path to the experiment Python file

Returns:

Loaded experiment module

protomotions.utils.config_builder.build_configs(
experiment,
args,
overrides=mappingproxy({}),
*,
after_robot_hook=None,
)[source]#

Build the full config bundle from an experiment module and parsed args.

The order is fixed: robot, simulator, the experiment’s configure_robot_and_simulator, the caller’s after_robot_hook (the parity harness injects contact bodies here), then terrain, scene_lib, motion_lib, env and agent, followed by the iteration limit, the CLI overrides and the validations.

protomotions.utils.config_builder.build_experiment(argv, *, after_robot_hook=None)[source]#

Build a config bundle from a training command line.

This is the one door tests, sweeps and the parity harness use: give it the training argv and it returns exactly what training builds.