diff options
| author | Ben Sima <ben@bensima.com> | 2025-11-22 16:20:56 -0500 |
|---|---|---|
| committer | Ben Sima <ben@bensima.com> | 2025-11-22 16:20:56 -0500 |
| commit | 5213e86447768b5a17cae3c8dfba71771ce2a0cb (patch) | |
| tree | b798602496ba0c3b66d7a4de6bcc1362d2569128 /.tasks | |
| parent | 6f4b2c97a24967508f3970b46999052fd1f44e67 (diff) | |
feat: implement t-1o2bxcq7999.2
The task "Add Approved status to Omni/Task" has been implemented.
**Changes made:**
1. **`Omni/Task/Core.hs`**:
* Updated `Status` enum to include `Approved`. * Updated
`TaskStats` record to include `approvedTasks` count. *
Updated `getTaskStats` to count `Approved` tasks. * Updated
`showTaskStats` to display the count. * Updated `printTreeNode'`
and `printTask` to visualize `Approved` status with `[+]` symbol
and green color.
2. **`Omni/Task.hs`**:
* Updated `help` documentation to list `approved` as a valid
status. * Updated `list` command to support filtering by
`--status=approved`. * Updated `update` command to support
setting status to `approved`. * Added unit tests for the new
CLI functionality.
**Verification:** * Ran `bild --test Omni/Task.hs` (with `CODEROOT`
explicitly set to current directory to bypass build caching issue)
and all tests passed. * Manually verified creating a task, updating
it to `approved`, showing it, viewing the tree, and viewing stats
using the compiled binary.
**Note on Build Environment:** * I encountered an issue where `bild`
would not rebuild because `CODEROOT` was pointing to `/home/ben/omni`
instead of the worker workspace `/home/ben/omni-worker-3`. I
temporarily set `export CODEROOT=$(pwd)` to successfully build and
verify the changes.
The `Approved` status is now fully supported in the Task core and CLI,
enabling the review workflow described in the plan.
Diffstat (limited to '.tasks')
| -rw-r--r-- | .tasks/race-test.jsonl | 11 | ||||
| -rw-r--r-- | .tasks/tasks.jsonl | 1 |
2 files changed, 12 insertions, 0 deletions
diff --git a/.tasks/race-test.jsonl b/.tasks/race-test.jsonl new file mode 100644 index 0000000..0b4adb0 --- /dev/null +++ b/.tasks/race-test.jsonl @@ -0,0 +1,11 @@ +{"taskCreatedAt":"2025-11-22T21:20:23.163200464Z","taskDependencies":[],"taskDescription":null,"taskId":"t-rWd2658AK","taskNamespace":null,"taskParent":null,"taskPriority":"P2","taskStatus":"Open","taskTitle":"Parent Epic","taskType":"Epic","taskUpdatedAt":"2025-11-22T21:20:23.163200464Z"} +{"taskCreatedAt":"2025-11-22T21:20:23.163576349Z","taskDependencies":[],"taskDescription":null,"taskId":"t-rWd2658AK.1","taskNamespace":null,"taskParent":"t-rWd2658AK","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 1","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:20:23.163576349Z"} +{"taskCreatedAt":"2025-11-22T21:20:23.163946353Z","taskDependencies":[],"taskDescription":null,"taskId":"t-rWd2658AK.2","taskNamespace":null,"taskParent":"t-rWd2658AK","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 2","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:20:23.163946353Z"} +{"taskCreatedAt":"2025-11-22T21:20:23.164370478Z","taskDependencies":[],"taskDescription":null,"taskId":"t-rWd2658AK.3","taskNamespace":null,"taskParent":"t-rWd2658AK","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 3","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:20:23.164370478Z"} +{"taskCreatedAt":"2025-11-22T21:20:23.164952305Z","taskDependencies":[],"taskDescription":null,"taskId":"t-rWd2658AK.4","taskNamespace":null,"taskParent":"t-rWd2658AK","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 4","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:20:23.164952305Z"} +{"taskCreatedAt":"2025-11-22T21:20:23.165542122Z","taskDependencies":[],"taskDescription":null,"taskId":"t-rWd2658AK.5","taskNamespace":null,"taskParent":"t-rWd2658AK","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 5","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:20:23.165542122Z"} +{"taskCreatedAt":"2025-11-22T21:20:23.16617193Z","taskDependencies":[],"taskDescription":null,"taskId":"t-rWd2658AK.6","taskNamespace":null,"taskParent":"t-rWd2658AK","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 6","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:20:23.16617193Z"} +{"taskCreatedAt":"2025-11-22T21:20:23.166898509Z","taskDependencies":[],"taskDescription":null,"taskId":"t-rWd2658AK.7","taskNamespace":null,"taskParent":"t-rWd2658AK","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 7","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:20:23.166898509Z"} +{"taskCreatedAt":"2025-11-22T21:20:23.168005342Z","taskDependencies":[],"taskDescription":null,"taskId":"t-rWd2658AK.8","taskNamespace":null,"taskParent":"t-rWd2658AK","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 8","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:20:23.168005342Z"} +{"taskCreatedAt":"2025-11-22T21:20:23.168930703Z","taskDependencies":[],"taskDescription":null,"taskId":"t-rWd2658AK.9","taskNamespace":null,"taskParent":"t-rWd2658AK","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 9","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:20:23.168930703Z"} +{"taskCreatedAt":"2025-11-22T21:20:23.169891015Z","taskDependencies":[],"taskDescription":null,"taskId":"t-rWd2658AK.10","taskNamespace":null,"taskParent":"t-rWd2658AK","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 10","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:20:23.169891015Z"} diff --git a/.tasks/tasks.jsonl b/.tasks/tasks.jsonl index d92021c..3c3cf57 100644 --- a/.tasks/tasks.jsonl +++ b/.tasks/tasks.jsonl @@ -170,3 +170,4 @@ {"taskCreatedAt":"2025-11-22T02:26:44.02456019Z","taskDependencies":[],"taskDescription":"Modify Omni/Agent/Git.hs to check for .git/rebase-merge or .git/rebase-apply before running git rebase --abort. This avoids blindly running abort commands.","taskId":"t-rWbPQPLps","taskNamespace":null,"taskParent":null,"taskPriority":"P2","taskStatus":"Done","taskTitle":"Detect in-progress rebase before aborting in Agent","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T02:27:45.377866012Z"} {"taskCreatedAt":"2025-11-22T03:01:36.84628158Z","taskDependencies":[],"taskDescription":"Modify Omni/Agent/Worker.hs to check if the task branch already exists before trying to create it. If it exists, simply checkout the branch. This prevents 'fatal: a branch named ... already exists' errors when restarting the worker.","taskId":"t-rWbS8t1Wv","taskNamespace":"Omni/Agent.hs","taskParent":null,"taskPriority":"P2","taskStatus":"Done","taskTitle":"Handle existing task branch in Worker Agent","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T03:02:31.746506652Z"} {"taskCreatedAt":"2025-11-22T03:09:54.022974779Z","taskDependencies":[],"taskDescription":"Implement the 2-line status UI described in Omni/Agent/DESIGN.md (Section 4.3). It should reserve 2 lines at the bottom for Meta (Task ID, Time) and Activity (current thought/action), allowing history to scroll above. Use ANSI codes for cursor management.","taskId":"t-rWbSG78jq","taskNamespace":"Omni/Agent/Log.hs","taskParent":null,"taskPriority":"P2","taskStatus":"Done","taskTitle":"Implement 2-line Agent Status UI","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T03:21:54.480763142Z"} +{"taskCreatedAt":"2025-11-22T21:19:54.675769476Z","taskDependencies":[],"taskDescription":null,"taskId":"t-rWd249BI3","taskNamespace":"Omni/Task.hs","taskParent":null,"taskPriority":"P2","taskStatus":"Done","taskTitle":"Test Approved Status","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:20:10.652509625Z"} |
