diff --git a/internal/cmd/tasks_items.go b/internal/cmd/tasks_items.go index bb08ee5..af4ca04 100644 --- a/internal/cmd/tasks_items.go +++ b/internal/cmd/tasks_items.go @@ -491,14 +491,18 @@ func (c *TasksUpdateCmd) Run(ctx context.Context, kctx *kong.Context, flags *Roo changed = true } if flagProvided(kctx, "due") { - if !outfmt.IsJSON(ctx) { - warnTasksDueTime(u, c.Due) - } dueValue, dueErr := normalizeTaskDue(c.Due) if dueErr != nil { return dueErr } - patch.Due = dueValue + if dueValue == "" { + patch.NullFields = append(patch.NullFields, "Due") + } else { + if !outfmt.IsJSON(ctx) { + warnTasksDueTime(u, c.Due) + } + patch.Due = dueValue + } changed = true } if flagProvided(kctx, "status") {