+5
-0
@@ -126,2 +126,7 @@ /** @deprecated Use provider prefix strings instead, e.g. `"anthropic:claude-sonnet-4-5"` */ | ||
| * encrypted payloads that providers validate on round-trip. | ||
| * | ||
| * Safe to echo regardless of which provider serves the next call: each | ||
| * serializer keeps only its own provider's block shapes (Anthropic keeps | ||
| * `thinking`/`redacted_thinking`; OpenAI-compat keeps `reasoning.*`), so a | ||
| * cross-provider fallback drops foreign blocks instead of 400ing. | ||
| */ | ||
@@ -128,0 +133,0 @@ reasoningDetails?: any; |
+5
-0
@@ -126,2 +126,7 @@ /** @deprecated Use provider prefix strings instead, e.g. `"anthropic:claude-sonnet-4-5"` */ | ||
| * encrypted payloads that providers validate on round-trip. | ||
| * | ||
| * Safe to echo regardless of which provider serves the next call: each | ||
| * serializer keeps only its own provider's block shapes (Anthropic keeps | ||
| * `thinking`/`redacted_thinking`; OpenAI-compat keeps `reasoning.*`), so a | ||
| * cross-provider fallback drops foreign blocks instead of 400ing. | ||
| */ | ||
@@ -128,0 +133,0 @@ reasoningDetails?: any; |
+21
-5
@@ -323,2 +323,10 @@ "use strict"; | ||
| } | ||
| function filterOpenAICompatReasoningDetails(details) { | ||
| if (!Array.isArray(details)) | ||
| return details || void 0; | ||
| const blocks = details.filter( | ||
| (block) => typeof (block == null ? void 0 : block.type) === "string" && block.type.startsWith("reasoning.") | ||
| ); | ||
| return blocks.length ? blocks : void 0; | ||
| } | ||
| async function prepareOpenAIPayload(identifier, payload) { | ||
@@ -391,4 +399,7 @@ var _a, _b; | ||
| outMessage.reasoning = message.reasoning; | ||
| if (message.reasoningDetails) | ||
| outMessage.reasoning_details = message.reasoningDetails; | ||
| const reasoningDetails = filterOpenAICompatReasoningDetails( | ||
| message.reasoningDetails | ||
| ); | ||
| if (reasoningDetails) | ||
| outMessage.reasoning_details = reasoningDetails; | ||
| preparedPayload.messages.push(outMessage); | ||
@@ -733,3 +744,5 @@ } | ||
| } | ||
| const leadingBlocks = message.role === "assistant" && Array.isArray(message.reasoningDetails) ? message.reasoningDetails : []; | ||
| const leadingBlocks = message.role === "assistant" && Array.isArray(message.reasoningDetails) ? message.reasoningDetails.filter( | ||
| (block) => (block == null ? void 0 : block.type) === "thinking" || (block == null ? void 0 : block.type) === "redacted_thinking" | ||
| ) : []; | ||
| const toolUseBlocks = (message.functionCalls || []).map((fc, i) => { | ||
@@ -1233,4 +1246,7 @@ var _a; | ||
| outMessage.reasoning = message.reasoning; | ||
| if (message.reasoningDetails) | ||
| outMessage.reasoning_details = message.reasoningDetails; | ||
| const reasoningDetails = filterOpenAICompatReasoningDetails( | ||
| message.reasoningDetails | ||
| ); | ||
| if (reasoningDetails) | ||
| outMessage.reasoning_details = reasoningDetails; | ||
| out.push(outMessage); | ||
@@ -1237,0 +1253,0 @@ } |
+21
-5
@@ -292,2 +292,10 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, { | ||
| } | ||
| function filterOpenAICompatReasoningDetails(details) { | ||
| if (!Array.isArray(details)) | ||
| return details || void 0; | ||
| const blocks = details.filter( | ||
| (block) => typeof (block == null ? void 0 : block.type) === "string" && block.type.startsWith("reasoning.") | ||
| ); | ||
| return blocks.length ? blocks : void 0; | ||
| } | ||
| async function prepareOpenAIPayload(identifier, payload) { | ||
@@ -360,4 +368,7 @@ var _a, _b; | ||
| outMessage.reasoning = message.reasoning; | ||
| if (message.reasoningDetails) | ||
| outMessage.reasoning_details = message.reasoningDetails; | ||
| const reasoningDetails = filterOpenAICompatReasoningDetails( | ||
| message.reasoningDetails | ||
| ); | ||
| if (reasoningDetails) | ||
| outMessage.reasoning_details = reasoningDetails; | ||
| preparedPayload.messages.push(outMessage); | ||
@@ -702,3 +713,5 @@ } | ||
| } | ||
| const leadingBlocks = message.role === "assistant" && Array.isArray(message.reasoningDetails) ? message.reasoningDetails : []; | ||
| const leadingBlocks = message.role === "assistant" && Array.isArray(message.reasoningDetails) ? message.reasoningDetails.filter( | ||
| (block) => (block == null ? void 0 : block.type) === "thinking" || (block == null ? void 0 : block.type) === "redacted_thinking" | ||
| ) : []; | ||
| const toolUseBlocks = (message.functionCalls || []).map((fc, i) => { | ||
@@ -1202,4 +1215,7 @@ var _a; | ||
| outMessage.reasoning = message.reasoning; | ||
| if (message.reasoningDetails) | ||
| outMessage.reasoning_details = message.reasoningDetails; | ||
| const reasoningDetails = filterOpenAICompatReasoningDetails( | ||
| message.reasoningDetails | ||
| ); | ||
| if (reasoningDetails) | ||
| outMessage.reasoning_details = reasoningDetails; | ||
| out.push(outMessage); | ||
@@ -1206,0 +1222,0 @@ } |
+1
-1
| { | ||
| "name": "190proof", | ||
| "version": "1.0.102", | ||
| "version": "1.0.104", | ||
| "description": "", | ||
@@ -5,0 +5,0 @@ "main": "./dist/index.js", |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
393925
1.43%3431
1.09%