Repository navigation
feat(schedule): port scheduled prompts to V2 - #1
Conversation
Create, edit, and delete recurring (daily/weekly/cron) or one-time prompt schedules from the desktop UI and CLI (schedule list/add/remove/enable/disable/run-now). A process-local ticker fires due tasks into delegated sessions in each task's directory. Every create/update/remove publishes a schedule.changed event scoped to the task directory so open panels update live. Docs page added; locale dictionaries ship English placeholders pending translation.
PR ReviewThis PR ports scheduled prompts to V2 Sessions, including per-task IANA timezones and the shared server auto-accept setting. Focused schedule tests pass, but I found correctness issues in one-time schedule recovery, restart status, DST input, and CLI run-now reporting. Findings (highest priority first)
|
PR ReviewAll four findings from the previous review are addressed in commit 99123eb. The focused Core, App, and CLI schedule tests pass, and the full repository check passes. Previous review issues
|
Preserve the server-side global auto-approve (appState.autoApprove + global.auto-approve endpoint + permission.ts hook) that lets scheduled prompts run unattended; reconcile the client to upstream's new settings API (autoApproveDefault/setAutoApproveDefault) in auto-approve.tsx, general.tsx and schedules/panel.tsx. Union the generated Schedule* and PermissionSavedNotFoundError types, and align the mobile timeline test with the merged behavior (agent/model omitted on mobile).
Lift the home schedules panel state into the layout context so the shell titlebar can reach it. The mobile Home dropdown now lists Schedules between Home and Settings, matching the projects dropdown; tapping it from another route opens Home with the panel shown.
PR ReviewThis PR ports scheduled prompts to the V2 Core/Server/Session architecture, adding per-task IANA timezones, a schedule editor, sidebar status, run-now controls, and a Findings (highest priority first)
Previous review issues
|
An empty day list was schema-valid but core read the stored empty string back as Sunday, so an API-created task silently ran weekly on a day nobody asked for. Reject it at the schema boundary and regenerate the OpenAPI specs.
Spawn the CLI with the isolatedEnv fixture (isolated HOME, config, DB, shared transpiler cache) instead of the developer's full environment, and cut the help-output test from 8 spawns to 3. A cold run previously failed 2 of 4 tests under the 5s per-test timeout.
Summary
Validation
Upstream note
upstream/dev has since advanced to 1015cb6, 19 commits beyond the upstream tip included here. A dry-run found seven conflicts in app/settings and session code, so those newer commits are not included in this PR.