summaryrefslogtreecommitdiff
path: root/.tasks
AgeCommit message (Collapse)Author
2025-11-25task: sync task databaseBen Sima
2025-11-24fix(task): ensure thread safety and isolate testsBen Sima
Re-introduces MVar locking in Task Core to prevent race conditions during Read-Modify-Write cycles (e.g. ID generation). Updates tests to use isolated SQLite databases instead of the production DB or JSONL files. Removes legacy test artifacts. Amp-Thread-ID: https://ampcode.com/threads/T-ac41b9b6-d117-46de-9e4f-842887a22f1d Co-authored-by: Amp <amp@ampcode.com>
2025-11-24feat: implement t-1o2egbj8o0n.2Ben Sima
I have successfully integrated the existing `Omni/Task` functionality into `jr`. The `Omni/Jr.hs` file already had the logic to forward `task` commands to `Omni/Task.main`, but it was failing to compile/run because it was missing a dependency declaration for `sqlite-simple` (which `Omni/Task` relies on). I added the missing dependency to `Omni/Jr.hs`: ```haskell -- : dep sqlite-simple ``` I verified the fix by running: 1. `Omni/Ide/run.sh Omni/Jr.hs task list` - Verified it lists tasks correctly. 2. `Omni/Ide/run.sh Omni/Jr.hs task create "Test Task via Jr"` - Verified it creates tasks. 3. `Omni/Ide/run.sh Omni/Jr.hs task show <id>` - Verified it shows task details. 4. `Omni/Ide/run.sh Omni/Jr.hs task -h` - Verified it shows `task` specific help. 5. `Omni/Ide/run.sh Omni/Jr.hs task test` - Verified it runs the `Omni/Task` test suite. 6. `bild --test Omni/Jr.hs` - Verified `Omni/Jr.hs` itself builds and passes its own tests. All `jr task` commands now behave exactly like the `task` command, fulfilling the requirements. The existing `Omni/Task` logic is fully reused.
2025-11-24task: migrate storage from jsonl to sqliteBen Sima
Removes .tasks/tasks.jsonl and replaces it with a local SQLite database (.tasks/tasks.db). Adds --db flag to CLI. Removes sync command. Amp-Thread-ID: https://ampcode.com/threads/T-ac41b9b6-d117-46de-9e4f-842887a22f1d Co-authored-by: Amp <amp@ampcode.com>
2025-11-24task: sync databaseBen Sima
2025-11-24task: sync databaseBen Sima
2025-11-24task: sync databaseBen Sima
2025-11-24feat: implement t-1o2eh11fsj1Ben Sima
2025-11-24task: claim t-1o2eh11fsj1Ben Sima
2025-11-24PlanningBen Sima
2025-11-24feat: implement t-1o2egbj8o0n.1Ben Sima
2025-11-24task: sync databaseBen Sima
2025-11-24task: claim t-1o2egbj8o0n.1Ben Sima
2025-11-24Plan out jrBen Sima
2025-11-24Display credits correctly and don't loop agentBen Sima
2025-11-24task: complete t-1o2cbyi23klBen Sima
Amp-Thread-ID: https://ampcode.com/threads/T-81b7cfa9-30ce-4646-b9ad-f9b2deaaf854 Co-authored-by: Amp <amp@ampcode.com>
2025-11-24Simplify agent commandBen Sima
I think the cd'ing and stuff was messing with the direnv assumptions.
2025-11-24Restore AGENTS.md instructions to workerBen Sima
2025-11-24Update tasksBen Sima
2025-11-22task: sync databaseBen Sima
2025-11-22task: sync databaseBen Sima
2025-11-22task: sync databaseBen Sima
2025-11-22Merge branch 'task/t-1o2cbco62ly' into liveBen Sima
2025-11-22task: sync databaseBen Sima
2025-11-22task: sync databaseBen Sima
2025-11-22task: sync databaseBen Sima
2025-11-22task: sync databaseBen Sima
2025-11-22task: harvest updates from workersBen Sima
2025-11-22feat: implement t-1o2cbco62lyBen Sima
2025-11-22Sync tasksBen Sima
2025-11-22task: sync databaseBen Sima
2025-11-22task: complete t-1o2c9vazf64 (Merge)Ben Sima
Amp-Thread-ID: https://ampcode.com/threads/T-ca3b086b-5a85-422a-b13d-256784c04221 Co-authored-by: Amp <amp@ampcode.com>
2025-11-22task: harvest updates from workersBen Sima
2025-11-22task: sync databaseBen Sima
2025-11-22task: sync databaseBen Sima
2025-11-22chore: remove race test artifactBen Sima
Amp-Thread-ID: https://ampcode.com/threads/T-ca3b086b-5a85-422a-b13d-256784c04221 Co-authored-by: Amp <amp@ampcode.com>
2025-11-22task: sync databaseBen Sima
2025-11-22Merge branch 'review/t-1o2bxd3kezj' into liveBen Sima
2025-11-22task: complete t-1o2bxd11zv9 (Merge)Ben Sima
https: //ampcode.com/threads/T-ca3b086b-5a85-422a-b13d-256784c04221 Co-authored-by: Amp <amp@ampcode.com> Amp-Thread-ID: https://ampcode.com/threads/T-ca3b086b-5a85-422a-b13d-256784c04221
2025-11-22task: sync databaseBen Sima
2025-11-22task: sync databaseBen Sima
2025-11-22task: complete t-1o2bxcq7999.2 (Merge)Ben Sima
Amp-Thread-ID: https://ampcode.com/threads/T-ca3b086b-5a85-422a-b13d-256784c04221 Co-authored-by: Amp <amp@ampcode.com>
2025-11-22feat: implement t-1o2bxd3kezjBen Sima
The task was to update `Omni/Task/Core.hs` to exclude tasks with `taskType == Epic` from the `task ready` command. I have: 1. Analyzed the codebase and located the `getReadyTasks` function in `Omni/Task/Core.hs`. 2. Created a reproduction script to confirm that Epics were appearing in the `ready` list. 3. Modified `Omni/Task/Core.hs` to add `taskType task /= Epic` condition in `getReadyTasks`. 4. Added a unit test in `Omni/Task.hs` to verify that Epics are excluded from ready tasks. 5. Ran tests using `bild --test Omni/Task.hs` and verified they pass. 6. Ran `lint Omni/Task.hs Omni/Task/Core.hs` to ensure code quality. The changes are verified and ready. ```haskell 397: isReady task = 398: taskType task /= Epic 399: && not (isParent (taskId task)) 400: && all (`elem` doneIds) (blockingDepIds task) ``` Added a new test case: ```haskell Test.unit "ready tasks exclude epics" <| do epic <- createTask "Epic task" Epic Nothing Nothing P2 [] Nothing ready <- getReadyTasks (taskId epic `notElem` map taskId ready) Test.@?= True, ```
2025-11-22task: complete t-1o2bxcq7999.1 (Merge)Ben Sima
Amp-Thread-ID: https://ampcode.com/threads/T-ca3b086b-5a85-422a-b13d-256784c04221 Co-authored-by: Amp <amp@ampcode.com>
2025-11-22task: harvest updates from workersBen Sima
2025-11-22task: sync databaseBen Sima
2025-11-22feat: implement t-1o2bxcq7999.2Ben Sima
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.
2025-11-22feat: implement t-1o2bxcq7999.1Ben Sima
2025-11-22task: sync databaseBen Sima
2025-11-22task: sync databaseBen Sima