build_handoff_ltr_scene() currently hard-codes camera positions, FOVs, the path, and frame count. Parametrize it so the scene is a family, not one fixture — useful for sweeps (how much overlap? how long a blind gap? how many cameras?).
Scope
- Add optional keyword args (with the current values as defaults so the golden/byte-stable behaviour is unchanged when called with no args): number of near cameras, camera FOV, line length / start-end x, num_frames, and the wide camera's placement.
- Keep determinism (no unseeded RNG). Defaults must reproduce the exact current manifest.
Acceptance
build_handoff_ltr_scene() with no args is byte-identical to today (add/extend a determinism test).
- A parametrized variant (e.g. more cameras, wider overlap) builds a valid manifest and its coverage differs as expected (a test).
- Typed, ruff + mypy clean.
Pointers
src/multicam_sim/handoff_ltr.py, tests/test_handoff_ltr.py, src/multicam_sim/mtmc.py (constants-at-top style).
build_handoff_ltr_scene()currently hard-codes camera positions, FOVs, the path, and frame count. Parametrize it so the scene is a family, not one fixture — useful for sweeps (how much overlap? how long a blind gap? how many cameras?).Scope
Acceptance
build_handoff_ltr_scene()with no args is byte-identical to today (add/extend a determinism test).Pointers
src/multicam_sim/handoff_ltr.py,tests/test_handoff_ltr.py,src/multicam_sim/mtmc.py(constants-at-top style).