on main help sign in
fix(errors): surface errors in subagents
commit11eabdfc6e35a1baa8a764184c5b4afe106f4d66 authorKieran Klukas <kieran@dunkirk.sh> dateWed 6 May 2026, 12:48 (5 months ago) parentae1c95a
2 files changed+3−3
internal/agent/coordinator.go+1−1 internal/agent/coordinator_test.go+2−2
internal/agent/coordinator.go+1−1
@@ -1075,7 +1075,7 @@ func (c *coordinator) runSubAgent(ctx context.Context, params subAgentParams) (f
10751075 NonInteractive: true,
10761076 })
10771077 if err != nil {
1078− return fantasy.NewTextErrorResponse("error generating response"), nil
1078+ return fantasy.NewTextErrorResponse(fmt.Sprintf("Failed to generate response: %s", err)), nil
10791079 }
10801080
10811081 // Update parent session cost
internal/agent/coordinator_test.go+2−2
@@ -196,7 +196,7 @@ func TestRunSubAgent(t *testing.T) {
196196 require.NoError(t, err)
197197
198198 agent := newMockAgent(providerID, 4096, func(_ context.Context, _ SessionAgentCall) (*fantasy.AgentResult, error) {
199− return nil, errors.New("agent exploded")
199+ return nil, errors.New("provider request failed")
200200 })
201201
202202 resp, err := coord.runSubAgent(t.Context(), subAgentParams{
@@ -210,7 +210,7 @@ func TestRunSubAgent(t *testing.T) {
210210 // runSubAgent returns (errorResponse, nil) when agent.Run fails — not a Go error.
211211 require.NoError(t, err)
212212 assert.True(t, resp.IsError)
213− assert.Equal(t, "error generating response", resp.Content)
213+ assert.Equal(t, "Failed to generate response: provider request failed", resp.Content)
214214 })
215215
216216 t.Run("session setup callback is invoked", func(t *testing.T) {