cmdUpdate dispatches `flow update task|project`. The command is the canonical lane for in-place field edits — including legacy field setters (priority, due-date, waiting) that used to have their own top-level mini-commands.
(args []string)
| 15 | // setters (priority, due-date, waiting) that used to have their own |
| 16 | // top-level mini-commands. |
| 17 | func cmdUpdate(args []string) int { |
| 18 | if len(args) == 0 { |
| 19 | fmt.Fprintln(os.Stderr, "error: update requires 'task' or 'project' and a ref") |
| 20 | return 2 |
| 21 | } |
| 22 | switch args[0] { |
| 23 | case "task": |
| 24 | return cmdUpdateTask(args[1:]) |
| 25 | case "project": |
| 26 | return cmdUpdateProject(args[1:]) |
| 27 | } |
| 28 | fmt.Fprintf(os.Stderr, "error: unknown update target %q (expected 'task' or 'project')\n", args[0]) |
| 29 | return 2 |
| 30 | } |
| 31 | |
| 32 | // cmdUpdateTask implements `flow update task <ref> [--work-dir <path>] |
| 33 | // [--mkdir] [--status <s>] [--assignee <name>] [--due-date <date>] |