diff options
| author | Claudomator Agent <agent@claudomator> | 2026-03-08 22:11:53 +0000 |
|---|---|---|
| committer | Claudomator Agent <agent@claudomator> | 2026-03-08 22:11:53 +0000 |
| commit | fab59cf8e669fe9ec34b30586f07b7478e897c31 (patch) | |
| tree | 108003b71e72974660e4c75ce9931f4555ee4dfa /internal/task | |
| parent | dfa232540afdd4caaaaa5a835f205c34802c4e04 (diff) | |
task: add BLOCKED→READY to ValidTransition
Diffstat (limited to 'internal/task')
| -rw-r--r-- | internal/task/task.go | 2 | ||||
| -rw-r--r-- | internal/task/task_test.go | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/internal/task/task.go b/internal/task/task.go index 6b240dd..8bb3214 100644 --- a/internal/task/task.go +++ b/internal/task/task.go @@ -123,7 +123,7 @@ func ValidTransition(from, to State) bool { StateFailed: {StateQueued}, // retry StateTimedOut: {StateQueued}, // retry StateCancelled: {StateQueued}, // restart - StateBlocked: {StateQueued}, // answer received → re-queue as resume execution + StateBlocked: {StateQueued, StateReady}, // answer received → re-queue as resume execution } for _, allowed := range transitions[from] { if allowed == to { diff --git a/internal/task/task_test.go b/internal/task/task_test.go index 5d997ac..5cb12d0 100644 --- a/internal/task/task_test.go +++ b/internal/task/task_test.go @@ -24,6 +24,7 @@ func TestValidTransition_AllowedTransitions(t *testing.T) { {"timed out to queued (retry)", StateTimedOut, StateQueued}, {"running to blocked (question)", StateRunning, StateBlocked}, {"blocked to queued (answer resume)", StateBlocked, StateQueued}, + {"blocked to ready (parent unblocked by subtasks)", StateBlocked, StateReady}, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { |
