Experiment Run Overrides
Partial-override counterpart to ksl.controls.experiments.ExperimentRunDefaults.
Each field is nullable; a null field means "inherit the model's default for this parameter." A non-null field means "override the model's default with this value." This is the run-parameter analogue of how controls and RV parameters override per key, on top of the model's intrinsic defaults.
Used by ksl.app.config.ScenarioSpec (post-reshape) to capture per-scenario run-parameter overrides without forcing the scenarios file to restate every field for every scenario. The final ksl.controls.experiments.ExperimentRunParameters handed to the engine at submit time is computed by the orchestrator as defaults + overrides + runtime-identity assignment; see applyTo.
Validation: when a field is non-null, it must satisfy the same bounds as the corresponding field on ExperimentRunDefaults. The bounds checks live in the init block below; the RunConfigurationValidator re-runs them at the document level to produce FieldErrors for the UI.
Constructors
Properties
if non-null, the override
if non-null, the override
if non-null, the override
if non-null, the override; > 0.0
if non-null, the override; >= 0.0
if non-null, the override
if non-null, the override; >= 1
if non-null, the override; >= 0
if non-null, the override
if non-null, the override
if non-null, the override; >= 1
Functions
Returns a fresh ExperimentRunDefaults equal to defaults with every non-null field of this overrides object overlaid on top. Fields left null here pass through from defaults unchanged.
Runtime variant of applyTo: layers non-null overrides onto a full ExperimentRunParameters while preserving the three runtime-identity fields (experimentName, experimentId, runName) of parameters. Used by the orchestrator to compute the final parameter set handed to the engine, starting from the model's current parameters (which carry KSL-assigned identity) and overlaying the scenario's overrides on top.