From 2b3dfeb23b15144c59413c191f888a199688a309 Mon Sep 17 00:00:00 2001 From: iris Date: Thu, 2 Jul 2026 14:26:16 +0200 Subject: [PATCH] docs(tools/scheduling): fix stale edit_schedule interval_seconds doc MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The edit_schedule MCP tool accepts interval_seconds as Option (positive values only), mapping None→leave-alone and Some(v)→set. The handler wraps this as .map(Some) before dispatching, so there is no way to express Some(None) = clear via the agent surface. The old doc said 'Clearing interval_seconds to null flips recurring → one-shot' which is only true for the dashboard PATCH endpoint (which uses the full double-Option form). Corrected: interval_seconds is positive-only via the MCP tool; toggling recurring→one-shot is operator-only via the dashboard. --- docs/tools/scheduling.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/docs/tools/scheduling.md b/docs/tools/scheduling.md index 325b5c64..9d92a2ca 100644 --- a/docs/tools/scheduling.md +++ b/docs/tools/scheduling.md @@ -26,9 +26,12 @@ audit. Partial-update a schedule. Pass only the fields to change; absent fields are left alone. `targets_add` / `targets_remove` mutate the recipient list in the same transaction — re-adding a previously -cancelled target drops its tombstone and starts fresh. Clearing -`interval_seconds` to null flips recurring → one-shot. Refuses -cancelled rows (terminal state). +cancelled target drops its tombstone and starts fresh. +`interval_seconds` accepts positive values only via this tool (omit +to keep the existing cadence; pass a new positive value to change +it). Toggling recurring → one-shot (clearing the interval) is +operator-only via the dashboard PATCH endpoint. Refuses cancelled +rows (terminal state). ### `cancel_schedule(id, targets?)`