CI for csaxs_bec / test (push) Successful in 2m14s
Restores the legacy spec behavior of drawing a fresh random offset (uniform in [0, step)) per call and shifting the sampling lattice by it before the FOV crop check -- decorrelates position-tied reconstruction errors that otherwise accumulate into ring artifacts across a ptycho-tomography series. Applied identically to all three generators (get_flomni_fermat_spiral_pos, get_omny_fermat_spiral_pos, get_lamni_fermat_spiral_pos), same scalar offset for x and y, matching the historical spec. New `seed` parameter (default None = fresh randomization) allows deterministic/reproducible calls. The four call sites that predict Fermat point counts ahead of a real scan (flomni.py/lamni.py's _expected_fermat_position_count(), tomo_params.py's _compute_fermat_positions_flomni/_lamni) now pin seed=0 so their own estimates stay reproducible across repeated calls; their docstrings note the real scan's count can differ by a point or two near the threshold due to the randomization. Updated the affected tests to compare against a matching seed=0 instead of an independent random draw. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Lx3KffiFyyDMKT8vvPENUW