- update_frame() reopens the X-ray eye GUI if the user closed it
(DeletedWidgetError), like flomni
- xrayeye_alignment_start() and the rotation-center apply prompt warn
before erasing an existing X-ray eye fit / fine-alignment correction
- ellipse ROI: angle locked at -76 deg in the extended/smear rotation-
center calibrations; offered with a free angle for the sample clicks
of the 8-angle alignment
- tomo_scan_projection() logs projection timing for direct calls so
scilog_last_ptycho_scans() finds them (port of flomni eef4e84)
- 30 nm FZP holder offset calibrated to 7.955 mm (sample on the
downstream-facing side of the holder)
- user docs: LamNI quick guide with the commands of each step
- tests: fake X-ray eye GUI reports "open" for the update_frame tests;
new ellipse tests
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LJWYXx4SS8NgFWog81xjyf