Skip to content

feat: scheduled job management — run now, reschedule, run all now#13

Merged
eclectic-coding merged 3 commits into
mainfrom
feat/scheduled-job-management
May 25, 2026
Merged

feat: scheduled job management — run now, reschedule, run all now#13
eclectic-coding merged 3 commits into
mainfrom
feat/scheduled-job-management

Conversation

@eclectic-coding
Copy link
Copy Markdown
Owner

Summary

  • Adds ScheduledJobsController with standard CRUD: update (single job reschedule/run now) and create (bulk run all now via run_all_now collection route)
  • Per-row actions on the scheduled jobs list: "Run Now" (back-dates to 1s ago), "+1h / +24h / +7d" offset buttons; Turbo Stream removes the row on run-now and replaces the scheduled_at cell on offset reschedule
  • "Run All Now (N)" header button back-dates all scheduled executions matching the current period filter in one update_all call
  • 18 request specs covering all offsets, Turbo Stream responses, error paths, period filter preservation, and plural/singular notice copy

Test plan

  • POST /scheduled_jobs/run_all_now — back-dates all executions, updates job records, includes count in notice, pluralises, preserves period, rescue alert
  • PATCH /scheduled_jobs/:id with offset=now — sets past time, turbo stream removes row
  • PATCH /scheduled_jobs/:id with offset=1h/24h/7d — postpones by correct duration, turbo stream replaces cell
  • Invalid offset — redirects with alert, does not mutate record
  • Missing execution — redirects with alert
  • Full suite: 121 examples, 0 failures

🤖 Generated with Claude Code

eclectic-coding and others added 3 commits May 25, 2026 17:56
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@eclectic-coding eclectic-coding merged commit 1f1159f into main May 25, 2026
5 checks passed
@eclectic-coding eclectic-coding deleted the feat/scheduled-job-management branch May 25, 2026 21:59
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