Просмотр исходного кода

fix(provider): deep merge providerOptions in applyCaching (#10323)

Co-authored-by: Claude <[email protected]>
zerone0x 1 месяц назад
Родитель
Сommit
087d7da14d
1 измененных файлов с 3 добавлено и 9 удалено
  1. 3 9
      packages/opencode/src/provider/transform.ts

+ 3 - 9
packages/opencode/src/provider/transform.ts

@@ -1,5 +1,5 @@
 import type { APICallError, ModelMessage } from "ai"
-import { unique } from "remeda"
+import { mergeDeep, unique } from "remeda"
 import type { JSONSchema } from "zod/v4/core"
 import type { Provider } from "./provider"
 import type { ModelsDev } from "./models"
@@ -186,18 +186,12 @@ export namespace ProviderTransform {
       if (shouldUseContentOptions) {
         const lastContent = msg.content[msg.content.length - 1]
         if (lastContent && typeof lastContent === "object") {
-          lastContent.providerOptions = {
-            ...lastContent.providerOptions,
-            ...providerOptions,
-          }
+          lastContent.providerOptions = mergeDeep(lastContent.providerOptions ?? {}, providerOptions)
           continue
         }
       }
 
-      msg.providerOptions = {
-        ...msg.providerOptions,
-        ...providerOptions,
-      }
+      msg.providerOptions = mergeDeep(msg.providerOptions ?? {}, providerOptions)
     }
 
     return msgs