commit 561b32d451499c98a5decd4063d246831ecbf5be
Author: Coder Agent <coder@agents.omni>
Date: Sat Feb 14 13:18:48 2026
Omni/Task: add Verified status for pipeline
Additive change: new status between Integrating and Done.
Means 'dev committed and bild passed, ready for integration.'
Added to ADT, SQL serialization, CLI parsers, tree display.
Task-Id: t-603.1
diff --git a/Omni/Task.hs b/Omni/Task.hs
index f2af91c3..d3015086 100644
--- a/Omni/Task.hs
+++ b/Omni/Task.hs
@@ -259,6 +259,7 @@ doEdit GlobalOpts {..} tidStr maybeTitle maybeType maybeParent maybePriority may
Just "review-in-progress" -> pure <| Just ReviewInProgress
Just "approved" -> pure <| Just Approved
Just "integrating" -> pure <| Just Integrating
+ Just "verified" -> pure <| Just Verified
Just "done" -> pure <| Just Done
Just "needs-help" -> pure <| Just NeedsHelp
Just other -> panic <| "Invalid status: " <> T.pack other
@@ -376,6 +377,7 @@ doList GlobalOpts {..} maybeType maybeParent maybeStatus maybeNamespace = do
Just "review-in-progress" -> pure <| Just ReviewInProgress
Just "approved" -> pure <| Just Approved
Just "integrating" -> pure <| Just Integrating
+ Just "verified" -> pure <| Just Verified
Just "done" -> pure <| Just Done
Just "needs-help" -> pure <| Just NeedsHelp
Just other -> panic <| "Invalid status: " <> T.pack other
@@ -522,9 +524,10 @@ doUpdate GlobalOpts {..} tidStr statusStr isVerified maybeComplexity maybeDeps m
"review-in-progress" -> ReviewInProgress
"approved" -> Approved
"integrating" -> Integrating
+ "verified" -> Verified
"done" -> Done
"needs-help" -> NeedsHelp
- _ -> panic "Invalid status. Use: draft, open, in-progress, review, review-in-progress, approved, integrating, done, or needs-help"
+ _ -> panic "Invalid status. Use: draft, open, in-progress, review, review-in-progress, approved, integrating, verified, done, or needs-help"
-- Show verification checklist warning when marking Done without --verified
when (newStatus == Done && not isVerified && not globalJson) <| do
@@ -624,6 +627,7 @@ parseStatus "review" = Just Review
parseStatus "review-in-progress" = Just ReviewInProgress
parseStatus "approved" = Just Approved
parseStatus "integrating" = Just Integrating
+parseStatus "verified" = Just Verified
parseStatus "done" = Just Done
parseStatus "needs-help" = Just NeedsHelp
parseStatus _ = Nothing
diff --git a/Omni/Task/Core.hs b/Omni/Task/Core.hs
index a12a1eea..b5a3ef9a 100644
--- a/Omni/Task/Core.hs
+++ b/Omni/Task/Core.hs
@@ -51,7 +51,7 @@ data Task = Task
data TaskType = Epic | WorkTask
deriving (Show, Eq, Read, Generic)
-data Status = Draft | Open | InProgress | Review | ReviewInProgress | Approved | Integrating | Done | NeedsHelp
+data Status = Draft | Open | InProgress | Review | ReviewInProgress | Approved | Integrating | Verified | Done | NeedsHelp
deriving (Show, Eq, Read, Generic)
-- Result of attempting to claim a task
@@ -1100,6 +1100,7 @@ showTaskTree maybeId = do
ReviewInProgress -> "[R]"
Approved -> "[+]"
Integrating -> "[I]"
+ Verified -> "[V]"
Done -> "[✓]"
NeedsHelp -> "[!]"
@@ -1113,6 +1114,7 @@ showTaskTree maybeId = do
ReviewInProgress -> magenta statusStr
Approved -> green statusStr
Integrating -> cyan statusStr
+ Verified -> cyan statusStr
Done -> green statusStr
NeedsHelp -> yellow statusStr
@@ -1174,6 +1176,7 @@ printTask t = do
ReviewInProgress -> magenta s
Approved -> green s
Integrating -> cyan s
+ Verified -> cyan s
Done -> green s
NeedsHelp -> yellow s