1c93927dbb96dae269a237143c05afe991d674e0
The DAQ validated the samples-spreadsheet WS payload against its own copy of DataCollectionParameters (aare/common/models.py), which had drifted from the contract: transmission was still an int percent while AareDB now sends a 0-1 fraction (aarecommon 0.7.2), and it still carried five fields that never existed at the beamline. A parity check of all 35 classes in aare/common/models.py against aarecommon 0.7.4 found the ONLY semantic differences inside this class, so it is now imported from aarecommon; everything else in the module stays local (follow-up: fold the rest of aare.common into aarecommon the same way). - aarecommon==0.7.4 added as a dependency (PSI index) - aaredb client 0.1.2a5 -> 0.83.1: the old generated client typed transmission as StrictInt and would reject the fraction payload before the updater even ran; the new one carries the fraction + canonical names (all 11 imported symbols and the 4 SamplesRunner/TellsRunner calls verified) - spreadsheetupdater re-validates aaredb_params through the contract explicitly, so the generated client's copy is transport only - manual_sample_panel builds its DataCollectionParameters from the shared class instead of the generated client's - daq.py read getattr(aaredb_params, 'totalrange'), which is always None on the canonical model (renamed to totalangle years ago) -> the requested total angle never prefilled; fixed Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GPer4T34EcvqVJGpeiEJ4Y
AareDAQ (v0.3.1)
AareDAQ is the Data Acquisition system for MX beamlines at PSI.
GUI Controls Cheat Sheet
Sample Camera
Left click: move sample to clicked positionShift + Left click: Z-alignment click behaviourCtrl + Left clickon active raster grid: move to clicked position under the gridLeft dragon active raster grid: move active raster gridRight click: open sample camera context menuRight dragon empty area: draw raster gridRight dragon active raster grid: resize raster gridMouse wheel: rotate omega by 90°Shift + Mouse wheel: rotate omega by 10°Ctrl + Mouse wheel: change sample camera exposure by a large stepAlt + Mouse wheel: change sample camera exposure by a small stepShift + Mouse move: inspect/load raster image under cursor
Video Views
Ctrl + Mouse wheel: zoom in/outF: fit to viewR: reset zoom+or=: zoom in-: zoom out
Sample Queue
Delete: remove selected samplesSpace: run / pause queue automation
Workflow Panel
Delete: remove selected queue itemsSpace: pause / resume workflowCtrl + R: refresh workflow queueCtrl + Delete: clear non-running workflow queue items
Global Shortcuts
F1: open mouse / keyboard controls helpCtrl + Q: quit applicationCtrl + Shift + R: restore default view layoutCtrl + 1: switch to Sample camera tabCtrl + 2: switch to Gonio camera tabCtrl + 3: switch to Beamline view tabCtrl + 4: switch to Beamline combined view tabCtrl + L: raise Sample List panelCtrl + J: raise Automation list panelCtrl + M: go to Sample camera tabCtrl + W: toggle Workflow panelCtrl + Shift + T: toggle Target stability panelCtrl + Shift + P: toggle Prediction Metrics panelCtrl + Shift + S: toggle Smargon trace panel