fix: use display name in runtime-fallback retry

This commit is contained in:
codivedev
2026-03-27 13:14:23 +01:00
parent 324dbb119c
commit b4d4d30fa8
2 changed files with 4 additions and 2 deletions

View File

@@ -9,6 +9,7 @@ import { SessionCategoryRegistry } from "../../shared/session-category-registry"
import { buildRetryModelPayload } from "./retry-model-payload" import { buildRetryModelPayload } from "./retry-model-payload"
import { getLastUserRetryParts } from "./last-user-retry-parts" import { getLastUserRetryParts } from "./last-user-retry-parts"
import { extractSessionMessages } from "./session-messages" import { extractSessionMessages } from "./session-messages"
import { getAgentDisplayName } from "../../shared/agent-display-names"
const SESSION_TTL_MS = 30 * 60 * 1000 const SESSION_TTL_MS = 30 * 60 * 1000
@@ -126,13 +127,14 @@ export function createAutoRetryHelpers(deps: HookDeps) {
}) })
const retryAgent = resolvedAgent ?? getSessionAgent(sessionID) const retryAgent = resolvedAgent ?? getSessionAgent(sessionID)
const retryAgentDisplayName = retryAgent ? getAgentDisplayName(retryAgent) : undefined
sessionAwaitingFallbackResult.add(sessionID) sessionAwaitingFallbackResult.add(sessionID)
scheduleSessionFallbackTimeout(sessionID, retryAgent) scheduleSessionFallbackTimeout(sessionID, retryAgent)
await ctx.client.session.promptAsync({ await ctx.client.session.promptAsync({
path: { id: sessionID }, path: { id: sessionID },
body: { body: {
...(retryAgent ? { agent: retryAgent } : {}), ...(retryAgentDisplayName ? { agent: retryAgentDisplayName } : {}),
...retryModelPayload, ...retryModelPayload,
parts: retryParts, parts: retryParts,
}, },

View File

@@ -2404,7 +2404,7 @@ describe("runtime-fallback", () => {
expect(promptCalls.length).toBe(1) expect(promptCalls.length).toBe(1)
const callBody = promptCalls[0]?.body as Record<string, unknown> const callBody = promptCalls[0]?.body as Record<string, unknown>
expect(callBody?.agent).toBe("prometheus") expect(callBody?.agent).toBe("Prometheus (Plan Builder)")
expect(callBody?.model).toEqual({ providerID: "github-copilot", modelID: "claude-opus-4.6" }) expect(callBody?.model).toEqual({ providerID: "github-copilot", modelID: "claude-opus-4.6" })
}) })
}) })