fix: report errors instead of silent catch in subagent-resolver (#1283)

This commit is contained in:
YeonGyu-Kim
2026-02-17 01:26:58 +09:00
parent fcf26d9898
commit d7a53e8a5b
2 changed files with 96 additions and 2 deletions

View File

@@ -6,6 +6,7 @@ import { parseModelString } from "./model-string-parser"
import { AGENT_MODEL_REQUIREMENTS } from "../../shared/model-requirements"
import { getAgentDisplayName, getAgentConfigKey } from "../../shared/agent-display-names"
import { normalizeSDKResponse } from "../../shared"
import { log } from "../../shared/logger"
import { getAvailableModelsForDelegateTask } from "./available-models"
import { resolveModelForDelegateTask } from "./model-selection"
@@ -119,8 +120,19 @@ Create the work plan directly - that's your job as the planning agent.`,
if (!categoryModel && matchedAgent.model) {
categoryModel = matchedAgent.model
}
} catch {
// Proceed anyway - session.prompt will fail with clearer error if agent doesn't exist
} catch (error) {
const errorMessage = error instanceof Error ? error.message : String(error)
log("[delegate-task] Failed to resolve subagent execution", {
requestedAgent: agentToUse,
parentAgent,
error: errorMessage,
})
return {
agentToUse: "",
categoryModel: undefined,
error: `Failed to delegate to agent "${agentToUse}": ${errorMessage}`,
}
}
return { agentToUse, categoryModel }