Skip to content

feat: slow job detection + CSS link improvements#37

Merged
eclectic-coding merged 6 commits into
mainfrom
feat/slow-job-detection
May 20, 2026
Merged

feat: slow job detection + CSS link improvements#37
eclectic-coding merged 6 commits into
mainfrom
feat/slow-job-detection

Conversation

@eclectic-coding
Copy link
Copy Markdown
Owner

Summary

  • Adds SolidQueueWeb.slow_job_threshold config option (default nil = disabled); when set to a duration (e.g. 5.minutes), claimed jobs running longer than the threshold are flagged visually
  • Running tab gains a "Running For" column showing elapsed time for each claimed job; slow jobs get an orange row background and a "slow" badge
  • Dashboard shows a "Slow Jobs" warning card (alongside Failed/Blocked cards) when threshold is set and count > 0
  • Removes underline from all job class links across jobs, failed jobs, history, queue jobs, and search views via a new sqd-table-link class; link color uses var(--primary) so it correctly follows the dark mode theme instead of the bright browser-default blue

Test plan

  • Run bundle exec rake — 173 examples, 0 failures, 100% coverage, rubocop clean
  • bundle exec rake dev:reset then cd spec/dummy && bin/rails server
  • Visit /jobs?status=claimed — confirm "Running For" column present; jobs seeded at 8m/20m/45m show orange row + "slow" badge with 5-minute threshold configured in dummy initializer
  • Visit /jobs (dashboard) — confirm "Slow Jobs" card appears with count and link
  • Toggle dark mode — confirm job class link color is the softer #58a6ff blue, not bright browser blue
  • Hover over job class links — confirm no underline appears

🤖 Generated with Claude Code

eclectic-coding and others added 6 commits May 20, 2026 18:07
…hreshold

Adds `SolidQueueWeb.slow_job_threshold` (default nil = disabled). When set,
claimed jobs running longer than the threshold are highlighted with a warning
row and "slow" badge on the Running tab. A "Slow Jobs" card appears on the
dashboard when any jobs exceed the threshold.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Seeds 3 extra claimed jobs running 8m, 20m, and 45m to demonstrate slow job
highlighting; dummy app initializer sets slow_job_threshold to 5 minutes.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…olor

Adds sqd-table-link class to all job class links across jobs, failed jobs,
history, queue jobs, and search views; sets text-decoration none and
color: var(--primary) so the link color follows the dark mode theme
instead of using the browser default bright blue.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The slow_job_threshold config was being set in the test environment,
causing the "no threshold configured" spec to fail on CI.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@eclectic-coding eclectic-coding merged commit 5620a9d into main May 20, 2026
5 checks passed
@eclectic-coding eclectic-coding deleted the feat/slow-job-detection branch May 20, 2026 22:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant