@zenning/openai 3.0.25 → 3.0.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @ai-sdk/openai
2
2
 
3
+ ## 3.0.26
4
+
5
+ ### Patch Changes
6
+
7
+ - compact threshold
8
+
3
9
  ## 3.0.25
4
10
 
5
11
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -461,6 +461,10 @@ declare const openaiResponsesProviderOptionsSchema: _zenning_provider_utils.Lazy
461
461
  type: "compaction";
462
462
  encrypted_content: string;
463
463
  }[] | undefined;
464
+ contextManagement?: {
465
+ type: "compaction";
466
+ compact_threshold: number;
467
+ }[] | undefined;
464
468
  containsApprovalResponses?: boolean | undefined;
465
469
  approvalToolCallIds?: string[] | undefined;
466
470
  }>;
package/dist/index.d.ts CHANGED
@@ -461,6 +461,10 @@ declare const openaiResponsesProviderOptionsSchema: _zenning_provider_utils.Lazy
461
461
  type: "compaction";
462
462
  encrypted_content: string;
463
463
  }[] | undefined;
464
+ contextManagement?: {
465
+ type: "compaction";
466
+ compact_threshold: number;
467
+ }[] | undefined;
464
468
  containsApprovalResponses?: boolean | undefined;
465
469
  approvalToolCallIds?: string[] | undefined;
466
470
  }>;
package/dist/index.js CHANGED
@@ -2488,23 +2488,10 @@ async function convertToOpenAIResponsesInput({
2488
2488
  const warnings = [];
2489
2489
  const processedApprovalIds = /* @__PURE__ */ new Set();
2490
2490
  const approvalToolCallIds = new Set(approvalToolCallIdsArray || []);
2491
- console.log("CALDEBUG [convertToOpenAIResponsesInput] Starting conversion:", {
2492
- containsApprovalResponses,
2493
- approvalToolCallIdsCount: approvalToolCallIds.size,
2494
- approvalToolCallIds: Array.from(approvalToolCallIds),
2495
- previousResponseId,
2496
- promptLength: prompt.length
2497
- });
2498
2491
  if (compactionInput && compactionInput.length > 0) {
2499
2492
  input.push(...compactionInput);
2500
2493
  }
2501
2494
  for (const { role, content } of prompt) {
2502
- console.log("CALDEBUG [convertToOpenAIResponsesInput] Processing message:", {
2503
- role,
2504
- isString: typeof content === "string",
2505
- partsCount: typeof content === "string" ? 0 : content.length,
2506
- partTypes: typeof content === "string" ? [] : content.map((p) => p.type)
2507
- });
2508
2495
  switch (role) {
2509
2496
  case "system": {
2510
2497
  switch (systemMessageMode) {
@@ -2735,10 +2722,6 @@ async function convertToOpenAIResponsesInput({
2735
2722
  break;
2736
2723
  }
2737
2724
  case "tool": {
2738
- console.log("CALDEBUG [convertToOpenAIResponsesInput] Processing tool role message:", {
2739
- partsCount: content.length,
2740
- partTypes: content.map((p) => p.type)
2741
- });
2742
2725
  for (const part of content) {
2743
2726
  if (part.type === "tool-approval-response") {
2744
2727
  const approvalResponse = part;
@@ -2762,14 +2745,7 @@ async function convertToOpenAIResponsesInput({
2762
2745
  const output = part.output;
2763
2746
  if (output.type === "execution-denied") {
2764
2747
  const approvalId = (_l = (_k = output.providerOptions) == null ? void 0 : _k.openai) == null ? void 0 : _l.approvalId;
2765
- console.log("CALDEBUG [convertToOpenAIResponsesInput] Found execution-denied:", {
2766
- toolCallId: part.toolCallId,
2767
- toolName: part.toolName,
2768
- hasApprovalId: !!approvalId,
2769
- approvalId,
2770
- willSkip: !!approvalId
2771
- });
2772
- if (approvalId) {
2748
+ if (approvalId && !previousResponseId) {
2773
2749
  continue;
2774
2750
  }
2775
2751
  }
@@ -2878,15 +2854,6 @@ async function convertToOpenAIResponsesInput({
2878
2854
  }
2879
2855
  }
2880
2856
  }
2881
- console.log("CALDEBUG [convertToOpenAIResponsesInput] Final input:", {
2882
- inputLength: input.length,
2883
- inputTypes: input.map((item) => item.type || item.role),
2884
- hasItemReferences: input.some((item) => item.type === "item_reference"),
2885
- itemReferences: input.filter((item) => item.type === "item_reference").map((item) => ({
2886
- type: item.type,
2887
- id: typeof item.id === "string" ? item.id.substring(0, 20) + "..." : item.id
2888
- }))
2889
- });
2890
2857
  return { input, warnings };
2891
2858
  }
2892
2859
  var openaiResponsesReasoningProviderOptionsSchema = import_v418.z.object({
@@ -3834,6 +3801,18 @@ var openaiResponsesProviderOptionsSchema = (0, import_provider_utils25.lazySchem
3834
3801
  encrypted_content: import_v420.z.string()
3835
3802
  })
3836
3803
  ).optional(),
3804
+ /**
3805
+ * Server-side context management configuration.
3806
+ * When enabled with a compaction threshold, the server automatically compacts
3807
+ * the conversation in-stream when the rendered token count crosses the threshold.
3808
+ * @see https://developers.openai.com/api/docs/guides/compaction
3809
+ */
3810
+ contextManagement: import_v420.z.array(
3811
+ import_v420.z.object({
3812
+ type: import_v420.z.literal("compaction"),
3813
+ compact_threshold: import_v420.z.number()
3814
+ })
3815
+ ).optional(),
3837
3816
  /**
3838
3817
  * Whether the request contains tool approval responses.
3839
3818
  * Defaults to `false`.
@@ -4210,6 +4189,7 @@ var OpenAIResponsesLanguageModel = class {
4210
4189
  safety_identifier: openaiOptions == null ? void 0 : openaiOptions.safetyIdentifier,
4211
4190
  top_logprobs: topLogprobs,
4212
4191
  truncation: openaiOptions == null ? void 0 : openaiOptions.truncation,
4192
+ context_management: openaiOptions == null ? void 0 : openaiOptions.contextManagement,
4213
4193
  // model-specific settings:
4214
4194
  ...isReasoningModel && ((openaiOptions == null ? void 0 : openaiOptions.reasoningEffort) != null || (openaiOptions == null ? void 0 : openaiOptions.reasoningSummary) != null) && {
4215
4195
  reasoning: {
@@ -5826,7 +5806,7 @@ var OpenAITranscriptionModel = class {
5826
5806
  };
5827
5807
 
5828
5808
  // src/version.ts
5829
- var VERSION = true ? "3.0.25" : "0.0.0-test";
5809
+ var VERSION = true ? "3.0.27" : "0.0.0-test";
5830
5810
 
5831
5811
  // src/openai-provider.ts
5832
5812
  function createOpenAI(options = {}) {