iris
2bfa5bc1a8
feat(schedules): make schedules pausable
...
Adds pause/resume support for scheduled prompts.
Backend:
- New paused_at_unix column on scheduled_prompts table (added via
ALTER TABLE migration so existing databases are upgraded on first
start). The due-rows index is dropped and recreated to also exclude
paused rows so the worker never fires them while paused.
- Worker's due() query gains AND paused_at_unix IS NULL filter.
- New pause(id) and resume(id) methods on ScheduledPrompts; both are
idempotent and refuse cancelled rows.
- New POST /api/schedules/{id}/pause and /api/schedules/{id}/resume
dashboard endpoints (operator-direct, no approval gate). Both emit
a schedules snapshot on success so the tab updates live.
- WireSchedule gains paused_at_unix: Option<i64> so the frontend can
render the state without an extra fetch.
Frontend:
- Paused rows render with a distinct row class + muted opacity.
- The next-fire cell shows a yellow pause glyph + tooltip with the
paused-since timestamp and the would-have-fired time.
- Actions column: pause/resume toggle button (⏸/▶) beside fire/edit/cancel.
Fire-now is disabled while paused (resume first).
- Sort order: active → paused → cancelled (paused slot keeps schedules
visible without mixing them into the active top section).
- pauseSchedule() / resumeSchedule() async functions POST to the new
endpoints and refresh the table on success.
2026-06-27 20:01:16 +02:00
..
call.js
fix(dashboard): render update_meta_inputs + schedule_prompt approval cards
2026-06-27 13:03:41 +02:00
colors.css
refactor(frontend): base16 theme contract in a swappable colors.css
2026-06-08 21:24:07 +02:00
common.css
fix(dashboard): extract themed-dialog styles into an importable modal.css
2026-06-22 22:24:42 +02:00
common.js
dashboard: stream the running rebuild's build log inline in the queue
2026-06-22 01:55:38 +02:00
core.css
dashboard: stream the running rebuild's build log inline in the queue
2026-06-22 01:48:32 +02:00
core.html
fix(core): add rebuild-live-log class to live-log container div
2026-06-27 13:28:23 +02:00
core.js
dashboard: stream the running rebuild's build log inline in the queue
2026-06-22 01:55:38 +02:00
dashboard.css
feat(schedules): make schedules pausable
2026-06-27 20:01:16 +02:00
dashboard.html
dashboard(html): fix stale P3RM1SS10NS pane comment after the save-all change
2026-06-17 20:14:09 +02:00
flow.css
chore(frontend): scrub pre-existing issue-tag refs from source comments
2026-06-09 00:24:49 +02:00
flow.html
refactor(frontend): extract the page-chrome into @hive/shared ( #1464 step 3)
2026-06-09 09:13:35 +02:00
flow.js
dashboard: point frontend at the /api/* backend routes
2026-06-22 00:45:26 +02:00
home.css
dashboard(home): matrix-rain backdrop on the H0M3 page
2026-06-17 21:46:25 +02:00
home.js
dashboard(home): harden matrix-rain fade-trail colour parsing
2026-06-17 21:59:12 +02:00
index.html
dashboard(home): matrix-rain backdrop on the H0M3 page
2026-06-17 21:46:25 +02:00
logs.css
feat(dashboard): AUD1T — privileged-actions audit trail as a LOGS sub-tab
2026-06-13 15:31:50 +02:00
logs.html
feat(dashboard): AUD1T — privileged-actions audit trail as a LOGS sub-tab
2026-06-13 15:31:50 +02:00
logs.js
dashboard: stream the running rebuild's build log inline in the queue
2026-06-22 01:55:38 +02:00
matrix-accounts.css
dashboard(matrix-accounts): dim live dot when daemon heartbeat stalls
2026-06-22 14:15:19 +02:00
matrix-accounts.html
dashboard: drop matrix-accounts experimental notice; relabel list as provisioned
2026-06-16 10:22:53 +02:00
matrix-accounts.js
dashboard(matrix-accounts): dim live dot when daemon heartbeat stalls
2026-06-22 14:15:19 +02:00
modal.css
fix(dashboard): extract themed-dialog styles into an importable modal.css
2026-06-22 22:24:42 +02:00
modal.js
dashboard: themedPrompt is a textarea — Enter submits, Shift+Enter newline
2026-06-21 23:55:15 +02:00
permissions.js
fix(permissions): propagate I/O errors as 500 from delete_agent_permissions
2026-06-27 13:44:11 +02:00
schedules.js
feat(schedules): make schedules pausable
2026-06-27 20:01:16 +02:00
settings.css
refactor(frontend): extract the page-chrome into @hive/shared ( #1464 step 3)
2026-06-09 09:13:35 +02:00
settings.html
refactor(frontend): extract the page-chrome into @hive/shared ( #1464 step 3)
2026-06-09 09:13:35 +02:00
settings.js
refactor(frontend): move S3TT1NGS to its own /settings.html page ( #1464 step 2)
2026-06-08 23:44:22 +02:00
state.js
dashboard: extract operator-inbox + approvals into call.js ( #1451 )
2026-06-16 10:22:53 +02:00
stats.css
refactor(frontend): extract the page-chrome into @hive/shared ( #1464 step 3)
2026-06-09 09:13:35 +02:00
stats.html
feat(stats): add an 'all' time range to agent + hive stats
2026-06-22 23:47:20 +02:00
stats.js
refactor(frontend): move ST4TS to its own /stats.html page ( #1464 step 2)
2026-06-09 00:11:43 +02:00
stream-worker.js
dashboard: point frontend at the /api/* backend routes
2026-06-22 00:45:26 +02:00
system-sections.css
refactor(dashboard): move SYST3M section CSS into shared system-sections.css
2026-06-15 09:54:55 +02:00
tabs.js
fix(dashboard): drop stale manager destroy-hiding comment + vestigial block
2026-06-23 18:33:45 +02:00
theme.css
refactor(frontend): base16 theme contract in a swappable colors.css
2026-06-08 21:24:07 +02:00
util.js
refactor(frontend): extract shared render/format helpers into util.js ( #1451 )
2026-06-09 14:52:01 +02:00