summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Sima <ben@bensima.com>2025-11-22 13:47:22 -0500
committerBen Sima <ben@bensima.com>2025-11-22 13:47:22 -0500
commitb32a1eba741d015480924b65e0f21150ec94642f (patch)
treeee7add0116ac4b59314fdda1b0219ba85e0c92ac
parent6f4b2c97a24967508f3970b46999052fd1f44e67 (diff)
feat: implement t-1o2bkseag8u
The task to automate the git commit template configuration has been completed. **Changes Implemented:** 1. **Created `.gitmessage`**: Added a standard commit message template to the repository root. This template encourages following the "50/72 rule" for commit messages (50-char summary, 72-char wrapped body) and provides sections for explanation and links. 2. **Updated `Omni/Task.hs`**: Modified the `init` command handler in the task manager CLI. Now, when `task init` is run, it executes `git config commit.template .gitmessage` in addition to initializing the task database. **Verification:** - Ran `bild --test Omni/Task.hs` to verify that the changes compile correctly and do not break existing tests. - The `task init` command is the standard entry point for setting up the repository environment (as per `AGENTS.md`), ensuring that all users (human and agents) running the setup will automatically get the commit template configured. **Files Created/Modified:** - `Omni/Task.hs` (modified) - `.gitmessage` (created) The changes are ready for the system to commit. [Omni/Task.hs](file:///home/ben/omni-worker-3/Omni/Task.hs) [.gitmessage](file:///home/ben/omni-worker-3/.gitmessage)
-rw-r--r--.gitmessage8
-rw-r--r--.tasks/race-test.jsonl11
-rw-r--r--Omni/Task.hs3
3 files changed, 21 insertions, 1 deletions
diff --git a/.gitmessage b/.gitmessage
new file mode 100644
index 0000000..a24d109
--- /dev/null
+++ b/.gitmessage
@@ -0,0 +1,8 @@
+
+# <type>: <subject> (max 50 chars)
+# |<---- Using a Maximum Of 50 Characters ---->|
+
+# Explain why this change is being made
+# |<---- Try To Limit Each Line to a Maximum Of 72 Characters ---->|
+
+# Provide links to any relevant tickets, articles or other resources
diff --git a/.tasks/race-test.jsonl b/.tasks/race-test.jsonl
new file mode 100644
index 0000000..fc11cb2
--- /dev/null
+++ b/.tasks/race-test.jsonl
@@ -0,0 +1,11 @@
+{"taskCreatedAt":"2025-11-22T18:47:07.117160697Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bubjiw6e","taskNamespace":null,"taskParent":null,"taskPriority":"P2","taskStatus":"Open","taskTitle":"Parent Epic","taskType":"Epic","taskUpdatedAt":"2025-11-22T18:47:07.117160697Z"}
+{"taskCreatedAt":"2025-11-22T18:47:07.117579231Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bubjiw6e.1","taskNamespace":null,"taskParent":"t-1o2bubjiw6e","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 1","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T18:47:07.117579231Z"}
+{"taskCreatedAt":"2025-11-22T18:47:07.117951515Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bubjiw6e.2","taskNamespace":null,"taskParent":"t-1o2bubjiw6e","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 2","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T18:47:07.117951515Z"}
+{"taskCreatedAt":"2025-11-22T18:47:07.11837456Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bubjiw6e.3","taskNamespace":null,"taskParent":"t-1o2bubjiw6e","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 3","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T18:47:07.11837456Z"}
+{"taskCreatedAt":"2025-11-22T18:47:07.118871095Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bubjiw6e.4","taskNamespace":null,"taskParent":"t-1o2bubjiw6e","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 4","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T18:47:07.118871095Z"}
+{"taskCreatedAt":"2025-11-22T18:47:07.119448481Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bubjiw6e.5","taskNamespace":null,"taskParent":"t-1o2bubjiw6e","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 5","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T18:47:07.119448481Z"}
+{"taskCreatedAt":"2025-11-22T18:47:07.120081227Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bubjiw6e.6","taskNamespace":null,"taskParent":"t-1o2bubjiw6e","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 6","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T18:47:07.120081227Z"}
+{"taskCreatedAt":"2025-11-22T18:47:07.120796494Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bubjiw6e.7","taskNamespace":null,"taskParent":"t-1o2bubjiw6e","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 7","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T18:47:07.120796494Z"}
+{"taskCreatedAt":"2025-11-22T18:47:07.121596433Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bubjiw6e.8","taskNamespace":null,"taskParent":"t-1o2bubjiw6e","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 8","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T18:47:07.121596433Z"}
+{"taskCreatedAt":"2025-11-22T18:47:07.122794515Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bubjiw6e.9","taskNamespace":null,"taskParent":"t-1o2bubjiw6e","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 9","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T18:47:07.122794515Z"}
+{"taskCreatedAt":"2025-11-22T18:47:07.123743535Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bubjiw6e.10","taskNamespace":null,"taskParent":"t-1o2bubjiw6e","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 10","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T18:47:07.123743535Z"}
diff --git a/Omni/Task.hs b/Omni/Task.hs
index 36b318b..b3c06a0 100644
--- a/Omni/Task.hs
+++ b/Omni/Task.hs
@@ -112,7 +112,8 @@ move args
| args `Cli.has` Cli.command "init" = do
let quiet = args `Cli.has` Cli.longOption "quiet"
initTaskDb
- unless quiet <| putText "Task database initialized. Use 'task create' to add tasks."
+ callCommand "git config commit.template .gitmessage"
+ unless quiet <| putText "Task database initialized and git commit template configured. Use 'task create' to add tasks."
| args `Cli.has` Cli.command "create" = do
title <- getArgText args "title"
taskType <- case Cli.getArg args (Cli.longOption "type") of