Feat/lamni webpage #262

Merged
holler merged 2 commits from feat/lamni_webpage into main 2026-07-16 16:26:05 +02:00
2 Commits
Author SHA1 Message Date
x01dcandClaude Sonnet 5 5421c95d26 fix(flomni): unpack sample owner on the status webpage
CI for csaxs_bec / test (pull_request) Successful in 1m31s
Read the Docs Deploy Trigger / trigger-rtd-webhook (push) Successful in 2s
CI for csaxs_bec / test (push) Successful in 1m36s
FlomniWebpageGenerator._collect_setup_data() read the raw
flomni_samples.sample_names.sample0 DESC signal directly, so once
7e8e807 started packing "name | owner" into that same field (there's
no separate PV for owner), the status page showed the raw
delimiter-joined string as the sample name instead of unpacking it --
same gap FlomniSampleStorage.get_sample_name_and_owner()/show_all()
already handle correctly. Now unpacks via sample_desc_codec.unpack_desc()
and appends "(owner: ...)" when set, mirroring show_all()'s own format.

Lamni has no equivalent gap: it has no automatic sample changer or
storage, so its sample_name global var was never given an owner field.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-16 15:40:14 +02:00
x01dcandClaude Sonnet 5 940d1c5d75 feat(lamni,flomni): finish lamni webpage generator, share base via OMNY_shared
Extracts WebpageGeneratorBase, HttpUploader, LocalHttpServer, and
make_webpage_generator() out of flomni_webpage_generator.py into
OMNY_shared/webpage_generator_base.py, mirroring the tomo_queue_mixin
precedent, then finishes LamNI_webpage_generator.py (fixes its broken
import, corrects TOMO_TYPES to match lamni's real 3-mode tomo_scan(),
enables HAS_TOMO_QUEUE now that the queue mixin backs it, adds lamni's
own TQ_PARAM_DISPLAY, implements _collect_setup_data()) and wires it
into LamNI.__init__.

Also fixes a real bug surfaced by running two setups against the same
shared status-page directory: each setup's logo is now copied to its
own filename (e.g. flOMNI.png / LamNI.png) instead of a shared
logo.png, since a fixed filename let a browser serve a stale, cached
logo from the other instrument's prior session.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-16 15:36:39 +02:00