Skip to content

DEoptim dashboard: status filter, errored status, sortable table, responsive cards - #54

Merged
eliotmcintire merged 2 commits into
developmentfrom
dashboard-which-errored-dt
Oct 16, 2026
Merged

eliotmcintire merged 2 commits into
developmentfrom
dashboard-which-errored-dt

Conversation

@eliotmcintire

@eliotmcintire eliotmcintire commented Oct 16, 2026 •

Copy link
Copy Markdown
Contributor

The DEoptim dashboard can now show only some fits (for example just the running ones), shows fits that crashed as errored instead of stopped, and its summary table sorts by any column. The fit cards fill the window (up to 6 across) and follow the table's order, the "parameters by generation" section has a visible arrow, and the plots start at generation 5 (initialIteration) so a very poor first generation no longer flattens them.

Affects: the DEoptim progress dashboard only; existing calls show the same fits as before.

Technical details
  • R/DEoptimProgress.R: which = c("running","stopped","finished","errored") (any case, default all) on DEoptimProgress(), DEoptimDashboard() and DEoptimDashboardApp(); gens and params are cut to the same fits. Status precedence FINISHED, ERRORED, RUNNING, STOPPED.
  • R/DEoptim.R: the generation loop of DEoptimIterative() runs under a withCallingHandlers(error = ) that appends an ERRORED marker row (same writer and file as FINISHED, via .progressAppend(marker =)). A killed process writes nothing and stays STOPPED. The condition message is not stored: the csv columns are numeric.
  • Top table is DT::DTOutput/renderDT (DT added to Suggests, with a requireNamespace message); POSIXct and numeric columns are passed as such so they sort as such. A refresh uses replaceData(resetPaging = FALSE), which keeps sort, page and search; checked in headless Chromium (sort desc, search, refresh: unchanged).
  • Cards: CSS grid, 300 px minimum and 6 across at most (3 at 1100 px, 1 at 400 px; checked in Chromium); parameter plot margins tightened so 150 px panels still read. Cards follow input$fits_rows_all (sort and search; search hides cards); a click re-renders the cards and their plots, which was simplest and fast. The arrow is CSS ::before on summary (closed and open), checked to flip in Chromium while the plot still draws on open.
  • DEoptimProgress() listed a fit twice when a folder of symlinks to fits sat under path (list.files follows links, labels came from the real path); it now de-duplicates on the real path.
  • Tests: new tests fail on development (7 failures, 6 errors in the two test files) and pass on the branch. Full suite: development 1187 passed, 0 failed; branch 1243 passed, 0 failed. R CMD check --no-manual in a scratch library: 0 errors, 0 warnings, 3 existing notes.

🤖 Generated with Claude Code

https://claude.ai/code/session_014G18Mik3fH4z5M5CyMSUS6

…esponsive cards ordered as the table, visible disclosure arrow; list a fit once through symlinks

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014G18Mik3fH4z5M5CyMSUS6
@eliotmcintire eliotmcintire added enhancement New feature or request backwards compatible Existing code and results keep working unchanged labels Oct 16, 2026
@codecov

codecov Bot commented Oct 16, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 93.61702% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 74.53%. Comparing base (f6f2328) to head (6fd6c95).

Files with missing lines Patch % Lines
R/DEoptimProgress.R 93.02% 3 Missing ⚠️
Additional details and impacted files
@@               Coverage Diff               @@
##           development      #54      +/-   ##
===============================================
+ Coverage        74.09%   74.53%   +0.44%     
===============================================
  Files               22       22              
  Lines             2061     2101      +40     
===============================================
+ Hits              1527     1566      +39     
- Misses             534      535       +1     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Very poor first generations flattened the objective and parameter plots. A fit with no generation that late still shows all of them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014G18Mik3fH4z5M5CyMSUS6
@eliotmcintire
eliotmcintire merged commit da26083 into development Oct 16, 2026
14 checks passed
@eliotmcintire
eliotmcintire deleted the dashboard-which-errored-dt branch October 16, 2026 19:10
eliotmcintire added a commit that referenced this pull request Oct 16, 2026
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014G18Mik3fH4z5M5CyMSUS6
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backwards compatible Existing code and results keep working unchanged enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant