From 08e11222305d3d553965e9d2b7a1020a39c130f3 Mon Sep 17 00:00:00 2001 From: x01dc Date: Mon, 13 Jul 2026 21:24:52 +0200 Subject: [PATCH] feat(flomni): show the active at_each_angle hook on the status webpage TQ_PARAM_DISPLAY (the queue job detail table) and _CURRENT_PARAM_KEYS (the live 'Current measurement' section) are both hardcoded mirrors of which tomo params to render -- at_each_angle_hook wasn't in either, so a hook-driven job wouldn't crash the page but also wouldn't show that anything non-standard was running. Adds at_each_angle_hook to _CURRENT_PARAM_KEYS (Python side, gates inclusion in the JSON payload on the value actually being set) and a conditional row in buildParamRows() (JS side, only rendered when the value is present -- deliberately left out of TQ_PARAM_DISPLAY so a normal job doesn't grow a "-" row nobody needs). Sim-validated: current_params includes at_each_angle_hook when set and omits it when not. Co-Authored-By: Claude Sonnet 5 --- .../plugins/flomni/flomni_webpage_generator.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/csaxs_bec/bec_ipython_client/plugins/flomni/flomni_webpage_generator.py b/csaxs_bec/bec_ipython_client/plugins/flomni/flomni_webpage_generator.py index 4ab84ad..697cb74 100644 --- a/csaxs_bec/bec_ipython_client/plugins/flomni/flomni_webpage_generator.py +++ b/csaxs_bec/bec_ipython_client/plugins/flomni/flomni_webpage_generator.py @@ -1485,6 +1485,7 @@ class FlomniWebpageGenerator(WebpageGeneratorBase): "frames_per_trigger", "single_point_instead_of_fermat_scan", "ptycho_reconstruct_foldername", + "at_each_angle_hook", ] # label -> dotpath under device_manager.devices @@ -2865,6 +2866,12 @@ function buildParamRows(params){{ if(nproj!=null) rows+='Projections'+nproj+''; }} }}); + // Only shown when actually set -- not in TQ_PARAM_DISPLAY since every + // normal job would otherwise show a "-" row nobody needs to see; this one + // is worth surfacing precisely because it's not the default. + if(params.at_each_angle_hook){{ + rows+='At-each-angle hook'+esc(fmtTqParam('at_each_angle_hook',params.at_each_angle_hook))+''; + }} return rows; }}