Type-tags queue jobs with a "kind" field (back-compat: missing kind defaults to "tomo"), and adds "command" jobs that reconfigure the beamline (currently: absolute moves on an allow-listed device, plus an optimize_idgap stub) between tomograms instead of running a scan. Command jobs are added via tomo_queue_add_command() against a curated named-action registry (_TOMO_QUEUE_ACTIONS) - not arbitrary code - so every queued action is auditable and safe to persist across a kernel restart. Validation is two-layer: schema checks at add time, and each action re-checks its own arguments against live hardware at execution time, which is the actual safety boundary. Crash-resume for a command job re-runs the whole step sequence from the top if every step is idempotent, or prompts the operator otherwise. flomni_webpage_generator.py is guarded against command jobs, which have no "params" key. See AI_docs/TOMO_QUEUE_COMMAND_JOBS_PLAN.md for the full design.
9 lines
296 B
Python
9 lines
296 B
Python
"""Smoke test for the flomni_sim fixture -- construct it, touch no scan."""
|
|
|
|
|
|
def test_flomni_sim_constructs_and_reads_params(flomni_sim):
|
|
flomni = flomni_sim
|
|
print("sample_name:", flomni.sample_name)
|
|
print("tomo_countingtime:", flomni.tomo_countingtime)
|
|
flomni.tomo_queue_show()
|