Two independent changes to the dewar sample list, one commit each:
feat: show spreadsheet params in sample list
New columns after Rotation count: Oscillation (deg), Exposure (s),
Total range (deg), Transmission (%).
Read from SampleShortInfo.aaredb_params, which spreadsheetupdater
already fills from the AareDB message. No server or DB change.
Transmission is shown as percent like the user spreadsheet
(model holds a 0-1 fraction).
Header sort key is now None-safe: blanks sort last instead of
raising on None < float.
feat: highlight whole mounted row in sample list
Mounted sample paints the full row in the existing blue
(SAMPLE_ROW_QUEUED_BG) instead of only the frozen "#" cell.
Mounted row keeps the theme's own text color; the dark-ink override
stays only on the pastel status tints in the "#" column.
Mount/unmount repaints the whole row span.
Test plan
tests/unit/gui/test_models.py: 2 new tests (param columns + None-safe
sort, whole-row blue without foreground override)
ruff check (incl. isort gate), ruff format --check
diff-cover 100%, diff-quality basedpyright 100%
Full unit suite: only the known-flaky test_main_window QSettings
tests failed in-suite, both pass in isolation
Visual check on the RHEL9/noVNC sandbox
Generated with Claude Code
## Summary
Two independent changes to the dewar sample list, one commit each:
1. feat: show spreadsheet params in sample list
- New columns after Rotation count: Oscillation (deg), Exposure (s),
Total range (deg), Transmission (%).
- Read from SampleShortInfo.aaredb_params, which spreadsheetupdater
already fills from the AareDB message. No server or DB change.
- Transmission is shown as percent like the user spreadsheet
(model holds a 0-1 fraction).
- Header sort key is now None-safe: blanks sort last instead of
raising on None < float.
2. feat: highlight whole mounted row in sample list
- Mounted sample paints the full row in the existing blue
(SAMPLE_ROW_QUEUED_BG) instead of only the frozen "#" cell.
- Mounted row keeps the theme's own text color; the dark-ink override
stays only on the pastel status tints in the "#" column.
- Mount/unmount repaints the whole row span.
## Test plan
- [x] tests/unit/gui/test_models.py: 2 new tests (param columns + None-safe
sort, whole-row blue without foreground override)
- [x] ruff check (incl. isort gate), ruff format --check
- [x] diff-cover 100%, diff-quality basedpyright 100%
- [x] Full unit suite: only the known-flaky test_main_window QSettings
tests failed in-suite, both pass in isolation
- [ ] Visual check on the RHEL9/noVNC sandbox
Generated with Claude Code
Add Oscillation, Exposure, Total range and Transmission columns to the
dewar sample table, read from SampleShortInfo.aaredb_params (already
filled by spreadsheetupdater from AareDB, so no server change).
Transmission is shown as percent like the user spreadsheet.
The new columns are nullable, so the header sort key now puts None last
instead of raising on None < float.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The mounted sample used to tint only the frozen "#" cell. Paint the full
row in the same blue so it is findable at a glance, and keep the theme's
own text color on it (the mid-tone blue reads fine without the dark ink
that the pastel status tints need). Repaint the whole row span on
mount/unmount, not just column 0.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Two independent changes to the dewar sample list, one commit each:
feat: show spreadsheet params in sample list
Total range (deg), Transmission (%).
already fills from the AareDB message. No server or DB change.
(model holds a 0-1 fraction).
raising on None < float.
feat: highlight whole mounted row in sample list
(SAMPLE_ROW_QUEUED_BG) instead of only the frozen "#" cell.
stays only on the pastel status tints in the "#" column.
Test plan
sort, whole-row blue without foreground override)
tests failed in-suite, both pass in isolation
Generated with Claude Code
Coverage report (automated)
Total line + branch coverage: 51%
Diff coverage vs main: 100% (minimum 80%)
Full report: coverage artifact on this run.
22bb3b2e46to22228c0868