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

fix(core): scope v2 prompt cache by session (#31036)

Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
opencode-agent[bot] 2 месяцев назад
Родитель
Сommit
7c6adcf60f

+ 1 - 0
packages/core/src/session/runner/llm.ts

@@ -213,6 +213,7 @@ export const layer = Layer.effect(
       const context = entries.map((entry) => entry.message)
       const request = LLM.request({
         model,
+        providerOptions: { openai: { promptCacheKey: session.id } },
         system: [agent.info?.system, system.baseline]
           .filter((part): part is string => part !== undefined && part.length > 0)
           .map(SystemPart.make),

+ 4 - 0
packages/core/test/session-runner.test.ts

@@ -2812,6 +2812,10 @@ describe("SessionRunnerLLM", () => {
       yield* Effect.yieldNow
 
       expect(requests).toHaveLength(2)
+      expect(requests.map((request) => request.providerOptions?.openai?.promptCacheKey)).toEqual([
+        sessionID,
+        otherSessionID,
+      ])
       yield* Deferred.succeed(streamGate, undefined)
       yield* Fiber.join(first)
       yield* Fiber.join(second)