From 2ee988ccc04c09ceb6de7cdb75c94114e85d01b9 Mon Sep 17 00:00:00 2001 From: Peter Stone Date: Sat, 14 Mar 2026 00:39:22 +0000 Subject: feat: add agent selector to UI and support direct agent assignment - Added an agent selector (Auto, Claude, Gemini) to the Start Next Task button. - Updated the backend to pass query parameters as environment variables to scripts. - Modified the executor pool to skip classification when a specific agent is requested. - Added --agent flag to claudomator start command. - Updated tests to cover the new functionality. --- internal/api/server_test.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'internal/api/server_test.go') diff --git a/internal/api/server_test.go b/internal/api/server_test.go index c90e3b3..2209a69 100644 --- a/internal/api/server_test.go +++ b/internal/api/server_test.go @@ -384,6 +384,23 @@ func TestRunTask_TimedOutTask_Returns202(t *testing.T) { } } +func TestRunTask_WithAgentParam(t *testing.T) { + srv, store := testServer(t) + createTaskWithState(t, store, "run-agent-param", task.StatePending) + + // Request run with agent=gemini. + req := httptest.NewRequest("POST", "/api/tasks/run-agent-param/run?agent=gemini", nil) + w := httptest.NewRecorder() + srv.Handler().ServeHTTP(w, req) + + if w.Code != http.StatusAccepted { + t.Fatalf("status: want 202, got %d; body: %s", w.Code, w.Body.String()) + } + + // Wait for the task to complete via the mock runner. + pollState(t, store, "run-agent-param", task.StateReady, 2*time.Second) +} + func TestRunTask_CompletedTask_Returns409(t *testing.T) { srv, store := testServer(t) createTaskWithState(t, store, "run-completed", task.StateCompleted) -- cgit v1.2.3