Add builder generation trace metadata
This commit is contained in:
@@ -216,3 +216,24 @@ def axis_rng(seed_config: dict[str, int], axis: str, base_seed: int, row_number:
|
||||
if configured is None:
|
||||
return random.Random(row_seed(base_seed, row_number, salt))
|
||||
return random.Random(row_seed(configured, row_number, salt))
|
||||
|
||||
|
||||
def axis_seed_trace(
|
||||
seed_config: str | dict[str, Any] | None,
|
||||
base_seed: int,
|
||||
row_number: int,
|
||||
axes: Iterable[str] = SEED_LOCK_AXES,
|
||||
) -> dict[str, dict[str, int | str]]:
|
||||
parsed = parse_seed_config(seed_config)
|
||||
trace: dict[str, dict[str, int | str]] = {}
|
||||
for axis in axes:
|
||||
configured = configured_axis_seed(parsed, axis)
|
||||
seed_value = int(configured) if configured is not None else int(base_seed)
|
||||
source = "configured" if configured is not None else "main"
|
||||
salt = SEED_AXIS_SALTS.get(axis, 0)
|
||||
trace[axis] = {
|
||||
"source": source,
|
||||
"seed": seed_value,
|
||||
"rng_seed": row_seed(seed_value, row_number, salt),
|
||||
}
|
||||
return trace
|
||||
|
||||
Reference in New Issue
Block a user