diff --git a/csaxs_bec/bec_ipython_client/plugins/LamNI/AI_docs/HW_COMMISSIONING_SESSION_2026-07.md b/csaxs_bec/bec_ipython_client/plugins/LamNI/AI_docs/HW_COMMISSIONING_SESSION_2026-07.md index 3e159fd..1e44f44 100644 --- a/csaxs_bec/bec_ipython_client/plugins/LamNI/AI_docs/HW_COMMISSIONING_SESSION_2026-07.md +++ b/csaxs_bec/bec_ipython_client/plugins/LamNI/AI_docs/HW_COMMISSIONING_SESSION_2026-07.md @@ -1,6 +1,6 @@ # flomni/lamni parity fixes — 2026-07 session summary -Branch `fixes/lamni_hw_commissioning`, commits `6c3d603..8a7a350`. Very brief +Branch `fixes/lamni_hw_commissioning`, commits `6c3d603..c3877ec`. Very brief by design — `git show ` on any commit below has the full reasoning and diff; that's the source of truth if something needs revisiting. @@ -28,13 +28,24 @@ diff; that's the source of truth if something needs revisiting. `LamNIFermatScan`'s position math to pure `@staticmethod`s (same algorithm, no behavior change — verified against their existing exact-position tests). +7. **`c3877ec`** — new `zero_deg_reference_at_each_subtomo` for lamni's + tomo_type 1 (8 equally spaced sub-tomograms): an extra 0-deg reference + projection before every sub-tomogram where the rotation naturally passes + back through 0 (every **odd** sub-tomogram — `subtomo_number % 2`, + confirmed against lamni's actual hardware behavior, *not* flomni's + 360-mode `% 4 == 1`, which doesn't apply to lamni's tomo_type 1 shape), + plus one final shot once the tomogram completes. tomo_type 2/3 already + had the equivalent (`golden_projections_at_0_deg_for_damage_estimation`) + before this session — confirmed identical to flomni's, nothing changed + there. GUI needed no new UI code, just flipping lamni's + `has_zero_deg_reference` profile flag to `True`. **Parked, not done:** `DataDrivenLamNI`'s broken `_start_beam_check()` calls (missing mixin) — deferred on request, separate task if ever needed. ## What to test to confirm everything's still healthy -**Automated** — should show `412 passed, 15 skipped`: +**Automated** — should show `423 passed, 15 skipped`: ``` /opt/bec_deployments/production/bec_venv/bin/python -m pytest tests/ -q ``` @@ -57,3 +68,8 @@ beamline:** - A real `lamni_fermat_scan` with too few points should still hit its `ScanAbortion` safety net unchanged (the warning above is advisory, not a replacement for it). +- `lamni.zero_deg_reference_at_each_subtomo = True` (or the GUI's "0° + reference each sub-tomo" checkbox, type 1 only), run a short type-1 + `tomo_scan()`, and confirm the extra 0-deg shots land right before + sub-tomograms 1/3/5/7 plus one final shot after sub-tomogram 8, in the + console output / `tomography_scannumbers.txt`.