Skip to content

gc tasks --scheduled <date>; scheduled_due in gc changes / gc listen - #7

Merged
slue merged 1 commit into
mainfrom
feat/scheduled-tasks
Nov 10, 2026
Merged

slue merged 1 commit into
mainfrom
feat/scheduled-tasks

Conversation

@slue

@slue slue commented Nov 10, 2026

Copy link
Copy Markdown
Contributor

GROUNDCONTROL task 7981bc68 (follow-up of eb1e30bd). Server side: MakersLab-ai/groundcontrol#176 — GET /changes returns a scheduled task once as scheduled_due[] (back to todo) from 06:00 Europe/Vienna on its scheduled_date.

What

  • gc tasks create|update --scheduled <YYYY-MM-DD> → status: scheduled + scheduled_date. --scheduled none (update only) clears the date and leaves the status alone. --scheduled + a different --status is a usage error (exit 2), and so is a date that isn't YYYY-MM-DD.
  • gc changes prints a Scheduled tasks due section (task line + scheduled for <date>, [principal] tag like every other item).
  • gc listen already counted every array; a scheduled_due item now carries its task ref (task <id>) and due_since as its time. scheduled_due joins the OpenClaw worker set (--kinds of gc setup openclaw), so hosts must re-run gc setup openclaw after upgrading to pick it up (it rewrites the plist/marker when it changed).
  • scheduled_without_date warning: printed on stderr through the existing generic warnings path (verified against the real server, see below).
  • gc tasks get shows scheduled for <date> while the task is scheduled. README documents the flag.

Verify

  • go vet ./..., go test ./..., sh scripts/validate-skills.sh — green. New e2e cases (payloads, none, usage errors, warning on stderr, gc changes section) + a unit test for the listen item.
  • End-to-end against the real server (groundcontrol #176 branch, local Supabase stack, next dev): gc tasks create --scheduled 2026-11-10 → gc changes lists it under Scheduled tasks due as todo; a 2099 task and a date-less one stay scheduled (the latter printed the scheduled_without_date warning); gc listen --once --kinds scheduled_due woke on it; the next gc changes from the saved cursor said Nothing new.

After merge

Tag the release (v0.4.0) — only then may the groundcontrol agent guide name --scheduled (follow-up PR in the groundcontrol repo, deploy after this release).

🤖 Generated with Claude Code

https://claude.ai/code/session_01KWPUqfh34ai4z7N3niJvaP

…isten

gc tasks create|update --scheduled <YYYY-MM-DD> sets status scheduled +
scheduled_date (none clears the date on update; a conflicting --status is a
usage error). gc changes prints the server's scheduled_due items (task back as
todo on its date), gc listen carries them with their task ref, and the OpenClaw
worker set wakes on them (re-run gc setup openclaw to pick that up). The
server's scheduled_without_date warning goes to stderr like every warning.

Server side: MakersLab-ai/groundcontrol#176 (task eb1e30bd).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KWPUqfh34ai4z7N3niJvaP
@slue
slue merged commit 2a5eda9 into main Nov 10, 2026
2 checks passed
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