docs(flomni): mark the tomo queue GUI checklist fully validated
Rewrites both status headers (plan doc + GUI test checklist) now that every item (1-55) has been clicked through live and passes. Fixes two remaining stale "not yet click-tested" references in section 1 (items 9/10) left over from before sections 6c/6d were tested. No open checklist items remain; section 7's known limitations are scope cuts, not bugs, and are the documented starting point for future work. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit was merged in pull request #259.
This commit is contained in:
+27
-23
@@ -1,28 +1,32 @@
|
||||
# Plan: Command Jobs in the FlOMNI Tomo Queue
|
||||
|
||||
**Status:** **Step 2 is implemented** in `flomni.py` (schema type-tagging, action
|
||||
registry, `move` + `optimize_idgap` (stub) actions, `tomo_queue_add_command`,
|
||||
`tomo_queue_show`/`tomo_queue_execute` branching, `_run_command_job` resume policy,
|
||||
`tomo_queue_actions` global-var publishing) plus a small additive fix in
|
||||
`flomni_webpage_generator.py` so a command job renders its step summary instead of a
|
||||
blank params table. Sim-tested: `omny_e2e_tests/test_tomo_queue_command_jobs.py`,
|
||||
6/6 passing (see `TOMO_QUEUE_TESTING.md` §4D for what each test covers); real device
|
||||
movement was exercised against `ftray` (sim-testable stand-in), not `mokev`/`idgap`
|
||||
(real front-end only — see §10). A CLI-level `tomo_queue_move(index, new_index)` has
|
||||
since been added alongside `tomo_queue_add`/`_delete`/`_clear`, enforcing the same
|
||||
running-job floor as §6.4. A curated, session-only `at_each_angle_hook` registry
|
||||
(§3.4) has been added, sim-validated (CLI side) and now has a GUI dropdown + webpage
|
||||
display too — see §3.4's "Sim-validated" note and its "GUI widget added"/"Webpage
|
||||
display added" bullets; the GUI/webpage halves are not yet click-tested against a
|
||||
live session. **Step 3 (the `TomoQueueDialog` GUI work) has a first
|
||||
iteration built** — the command-job builder dialog (§6.5), command-job-aware queue
|
||||
rendering, the status-keyed delete/clear guards from §6.3, a "Sort queue…" mode for
|
||||
mid-run reorder of pending/incomplete rows (§6.4 — up/down buttons, not drag-and-drop,
|
||||
see the note under §6.4 for why), and full-detail row tooltips so hovering any cell
|
||||
shows the untruncated label/steps/params. **Not yet validated against a live
|
||||
session** — see `TOMO_QUEUE_GUI_TESTING.md` for the manual test checklist and known
|
||||
first-iteration gaps. Step 1 (executor rework) is implemented and its sim checklist
|
||||
has passed (`TOMO_QUEUE_TESTING.md` §4, sections A–C).
|
||||
**Status: Steps 1–3 are implemented and fully validated**, both by sim and by a
|
||||
live click-through of the entire GUI checklist. **Step 2** (`flomni.py`: schema
|
||||
type-tagging, action registry, `move` + `optimize_idgap` (stub) actions,
|
||||
`tomo_queue_add_command`, `tomo_queue_show`/`tomo_queue_execute` branching,
|
||||
`_run_command_job` resume policy, `tomo_queue_actions` global-var publishing, plus
|
||||
the matching `flomni_webpage_generator.py` fix) is sim-tested:
|
||||
`omny_e2e_tests/test_tomo_queue_command_jobs.py`, 6/6 passing (see
|
||||
`TOMO_QUEUE_TESTING.md` §4D); real device movement exercised against `ftray`
|
||||
(sim-testable stand-in), not `mokev`/`idgap` (real front-end only — see §10). Since
|
||||
then: a CLI-level `tomo_queue_move(index, new_index)` alongside
|
||||
`tomo_queue_add`/`_delete`/`_clear`, enforcing the same running-job floor as §6.4;
|
||||
and a curated, session-only `at_each_angle_hook` registry (§3.4) with a GUI dropdown
|
||||
and webpage display, sim-validated (CLI side) and click-tested (GUI side, both green
|
||||
— see `TOMO_QUEUE_GUI_TESTING.md` sections 6b–6f). **Step 3** (the `TomoQueueDialog`
|
||||
GUI work) — the command-job builder dialog (§6.5), command-job-aware queue
|
||||
rendering, the status-keyed delete/clear guards from §6.3 (since extended with a
|
||||
staleness-aware override, see below), a "Sort queue…" mode for mid-run reorder of
|
||||
pending rows (§6.4 — up/down buttons, not drag-and-drop, see the note under §6.4 for
|
||||
why), full-detail row tooltips, "Load into editor" (§6.8), and the
|
||||
live-vs-unsaved-edit warnings on both "Add to queue" surfaces (§6.1) — **has been
|
||||
fully click-tested against a live session** (`TOMO_QUEUE_GUI_TESTING.md`, items
|
||||
1–55, all passing). Two real incidents were found and fixed along the way: a job
|
||||
stuck at `running` forever with no live process behind it (§6.3's staleness note,
|
||||
§3.4's declined-confirmation note), and the two-window live-vs-unsaved-edit
|
||||
confusion (§6.1). Step 1 (executor rework) is implemented and its sim checklist has
|
||||
passed (`TOMO_QUEUE_TESTING.md` §4, sections A–C). Remaining known gaps (scope cuts,
|
||||
not bugs) are tracked in `TOMO_QUEUE_GUI_TESTING.md` §7.
|
||||
|
||||
**Prerequisite (met):** the checklist in `TOMO_QUEUE_TESTING.md` has passed against
|
||||
the simulated flOMNI. That document is the companion to this one: it covers *what
|
||||
|
||||
@@ -5,19 +5,22 @@
|
||||
building it. Section 8 explains exactly how to hand this off to a new
|
||||
session/chat.
|
||||
|
||||
**Status:** Sections 3 through 6b have now actually been clicked through
|
||||
against a live session by Mirko and pass, including item 4 against the new
|
||||
hard-block Submit behaviour. Real-session testing of 6b surfaced several
|
||||
gaps (all fixed, see section 6c below): a confusing duplicate row-number
|
||||
column, `tomo_parameters()`/the queue table/scilog/the PDF report/the
|
||||
progress-ring label not showing an active hook at all, and a clarification
|
||||
that `unregister_at_each_angle_hook()` doesn't clear `at_each_angle_hook`
|
||||
(confirmed expected, now documented). **Sections 6c, 6d, and 6e have now also
|
||||
been clicked through and pass** (37–52), including the stale-`running`
|
||||
delete override, which fixed an actual stuck job found live at session
|
||||
start. **Section 6f is new and not yet clicked through** — a warning added
|
||||
after 6e's testing surfaced one more mixed-surface confusion (see below).
|
||||
Companion docs:
|
||||
**Status: fully validated.** Every item in sections 3 through 6f (1–55) has
|
||||
been clicked through against a live session by Mirko and passes — the
|
||||
complete GUI checklist for this iteration is green. Along the way, real
|
||||
testing surfaced and got fixed: the old soft-warn Submit (now a hard
|
||||
block, item 4/8); a confusing duplicate row-number column, hook visibility
|
||||
gaps across `tomo_parameters()`/the queue table/scilog/the PDF
|
||||
report/the progress ring (section 6c, items 37–41); a stuck-`running`
|
||||
job with no live process behind it, caused by a declined confirmation
|
||||
that used to silently return instead of raising (fixed at the source,
|
||||
plus a staleness-aware delete/clear override — section 6e, items
|
||||
48–52, confirmed against an actual stuck job found live); and a second
|
||||
live-vs-unsaved-edit confusion reachable from the separate Queue
|
||||
control window, not just the params panel (section 6f, items 53–55).
|
||||
No open items remain from this checklist. If new GUI/queue work starts,
|
||||
extend this document rather than starting a new one — the fixture/setup
|
||||
sections (1, 2, 8) still apply. Companion docs:
|
||||
`TOMO_QUEUE_COMMAND_JOBS_PLAN.md` section 6 (the design this implements),
|
||||
`TOMO_QUEUE_TESTING.md` (Steps 1 & 2, already sim-validated).
|
||||
|
||||
@@ -124,7 +127,7 @@ support on top of it:
|
||||
name, flagged if it isn't currently registered — the scilog entry and
|
||||
PDF report additionally include the hook's actual source code when it
|
||||
is still registered, so what a tomogram did is part of the permanent
|
||||
record. See section 6c below for what's not yet click-tested.
|
||||
record. Click-tested (section 6c, items 37–41) and passing.
|
||||
11. **"Load into editor."** Select a single tomo job in the queue dialog
|
||||
(command jobs are excluded — no `params`) and click **"Load into
|
||||
editor"** to enter edit mode on the params panel populated from that
|
||||
@@ -132,7 +135,7 @@ support on top of it:
|
||||
anything itself — Submit/"Add to queue" from there work exactly as
|
||||
they already do. Confirms before discarding an in-progress edit.
|
||||
Disabled outside a valid single-tomo-job selection and during sort
|
||||
mode. See section 6d below — not yet click-tested.
|
||||
mode. Click-tested (section 6d, items 42–47) and passing.
|
||||
12. **Declined-scan failure + stale "running" recovery.** Two fixes for a
|
||||
real stuck-queue incident: `tomo_scan_projection()` now raises instead
|
||||
of silently returning when the "run a fermat scan anyway?" confirmation
|
||||
@@ -149,8 +152,8 @@ support on top of it:
|
||||
live-vs-unsaved-edit confusion as item 8 could bite, since it's a
|
||||
different window from the panel's own (correct) "Add to queue"
|
||||
button. Now warns and names the correct button before proceeding if
|
||||
the panel is mid-edit; no warning if it isn't. See section 6f below —
|
||||
not yet click-tested.
|
||||
the panel is mid-edit; no warning if it isn't. Click-tested (section
|
||||
6f, items 53–55) and passing.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user