diff options
| -rw-r--r-- | .gitattributes | 2 | ||||
| -rw-r--r-- | .tasks/race-test.jsonl | 11 | ||||
| -rwxr-xr-x | Omni/Ide/hooks/post-checkout | 4 | ||||
| -rw-r--r-- | Omni/Task.hs | 2 | ||||
| -rw-r--r-- | base | 0 | ||||
| -rw-r--r-- | ours.lock | 0 |
6 files changed, 18 insertions, 1 deletions
diff --git a/.gitattributes b/.gitattributes index 367cb8a..e18b1c8 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1 +1 @@ -.tasks/tasks.jsonl merge=task-merge +.tasks/tasks.jsonl merge=agent diff --git a/.tasks/race-test.jsonl b/.tasks/race-test.jsonl new file mode 100644 index 0000000..052d40d --- /dev/null +++ b/.tasks/race-test.jsonl @@ -0,0 +1,11 @@ +{"taskCreatedAt":"2025-11-22T21:12:27.088154856Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bybr64ut","taskNamespace":null,"taskParent":null,"taskPriority":"P2","taskStatus":"Open","taskTitle":"Parent Epic","taskType":"Epic","taskUpdatedAt":"2025-11-22T21:12:27.088154856Z"} +{"taskCreatedAt":"2025-11-22T21:12:27.088507191Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bybr64ut.1","taskNamespace":null,"taskParent":"t-1o2bybr64ut","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 1","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:12:27.088507191Z"} +{"taskCreatedAt":"2025-11-22T21:12:27.088878966Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bybr64ut.2","taskNamespace":null,"taskParent":"t-1o2bybr64ut","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 2","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:12:27.088878966Z"} +{"taskCreatedAt":"2025-11-22T21:12:27.089277601Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bybr64ut.3","taskNamespace":null,"taskParent":"t-1o2bybr64ut","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 3","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:12:27.089277601Z"} +{"taskCreatedAt":"2025-11-22T21:12:27.089777528Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bybr64ut.4","taskNamespace":null,"taskParent":"t-1o2bybr64ut","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 4","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:12:27.089777528Z"} +{"taskCreatedAt":"2025-11-22T21:12:27.090364536Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bybr64ut.5","taskNamespace":null,"taskParent":"t-1o2bybr64ut","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 5","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:12:27.090364536Z"} +{"taskCreatedAt":"2025-11-22T21:12:27.091352499Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bybr64ut.6","taskNamespace":null,"taskParent":"t-1o2bybr64ut","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 6","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:12:27.091352499Z"} +{"taskCreatedAt":"2025-11-22T21:12:27.092095679Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bybr64ut.7","taskNamespace":null,"taskParent":"t-1o2bybr64ut","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 7","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:12:27.092095679Z"} +{"taskCreatedAt":"2025-11-22T21:12:27.09288812Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bybr64ut.8","taskNamespace":null,"taskParent":"t-1o2bybr64ut","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 8","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:12:27.09288812Z"} +{"taskCreatedAt":"2025-11-22T21:12:27.093718241Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bybr64ut.9","taskNamespace":null,"taskParent":"t-1o2bybr64ut","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 9","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:12:27.093718241Z"} +{"taskCreatedAt":"2025-11-22T21:12:27.094602133Z","taskDependencies":[],"taskDescription":null,"taskId":"t-1o2bybr64ut.10","taskNamespace":null,"taskParent":"t-1o2bybr64ut","taskPriority":"P2","taskStatus":"Open","taskTitle":"Child 10","taskType":"WorkTask","taskUpdatedAt":"2025-11-22T21:12:27.094602133Z"} diff --git a/Omni/Ide/hooks/post-checkout b/Omni/Ide/hooks/post-checkout index 3fe14b5..7c8bcb9 100755 --- a/Omni/Ide/hooks/post-checkout +++ b/Omni/Ide/hooks/post-checkout @@ -15,6 +15,10 @@ then MakeTags "${changed[@]}" fi +# Configure git merge driver for tasks +git config merge.agent.name "Agent Merge Driver" || true +git config merge.agent.driver "agent merge-driver %A %B" || true + # Task manager: Import tasks after branch switch if [ -f .tasks/tasks.jsonl ]; then task import -i .tasks/tasks.jsonl 2>/dev/null || true diff --git a/Omni/Task.hs b/Omni/Task.hs index 36b318b..8f62e4e 100644 --- a/Omni/Task.hs +++ b/Omni/Task.hs @@ -112,6 +112,8 @@ move args | args `Cli.has` Cli.command "init" = do let quiet = args `Cli.has` Cli.longOption "quiet" initTaskDb + callCommand "git config merge.agent.name 'Agent Merge Driver' || true" + callCommand "git config merge.agent.driver 'agent merge-driver %A %B' || true" unless quiet <| putText "Task database initialized. Use 'task create' to add tasks." | args `Cli.has` Cli.command "create" = do title <- getArgText args "title" diff --git a/ours.lock b/ours.lock new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/ours.lock |
