@zenning/ai 6.0.14 → 6.0.16
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 +17 -0
- package/dist/index.js +40 -26
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +40 -26
- package/dist/index.mjs.map +1 -1
- package/dist/internal/index.js +1 -1
- package/dist/internal/index.mjs +1 -1
- package/package.json +4 -4
package/dist/index.mjs
CHANGED
|
@@ -898,7 +898,7 @@ import {
|
|
|
898
898
|
} from "@zenning/provider-utils";
|
|
899
899
|
|
|
900
900
|
// src/version.ts
|
|
901
|
-
var VERSION = true ? "6.0.
|
|
901
|
+
var VERSION = true ? "6.0.15" : "0.0.0-test";
|
|
902
902
|
|
|
903
903
|
// src/util/download/download.ts
|
|
904
904
|
var download = async ({ url }) => {
|
|
@@ -2284,7 +2284,8 @@ function prepareRetries({
|
|
|
2284
2284
|
|
|
2285
2285
|
// src/generate-text/collect-tool-approvals.ts
|
|
2286
2286
|
function collectToolApprovals({
|
|
2287
|
-
messages
|
|
2287
|
+
messages,
|
|
2288
|
+
skipValidation = false
|
|
2288
2289
|
}) {
|
|
2289
2290
|
const lastMessage = messages.at(-1);
|
|
2290
2291
|
if ((lastMessage == null ? void 0 : lastMessage.role) != "tool") {
|
|
@@ -2329,19 +2330,25 @@ function collectToolApprovals({
|
|
|
2329
2330
|
for (const approvalResponse of approvalResponses) {
|
|
2330
2331
|
const approvalRequest = toolApprovalRequestsByApprovalId[approvalResponse.approvalId];
|
|
2331
2332
|
if (approvalRequest == null) {
|
|
2332
|
-
|
|
2333
|
-
|
|
2334
|
-
|
|
2333
|
+
if (!skipValidation) {
|
|
2334
|
+
throw new InvalidToolApprovalError({
|
|
2335
|
+
approvalId: approvalResponse.approvalId
|
|
2336
|
+
});
|
|
2337
|
+
}
|
|
2338
|
+
continue;
|
|
2335
2339
|
}
|
|
2336
2340
|
if (toolResults[approvalRequest.toolCallId] != null) {
|
|
2337
2341
|
continue;
|
|
2338
2342
|
}
|
|
2339
2343
|
const toolCall = toolCallsByToolCallId[approvalRequest.toolCallId];
|
|
2340
2344
|
if (toolCall == null) {
|
|
2341
|
-
|
|
2342
|
-
|
|
2343
|
-
|
|
2344
|
-
|
|
2345
|
+
if (!skipValidation) {
|
|
2346
|
+
throw new ToolCallNotFoundForApprovalError({
|
|
2347
|
+
toolCallId: approvalRequest.toolCallId,
|
|
2348
|
+
approvalId: approvalRequest.approvalId
|
|
2349
|
+
});
|
|
2350
|
+
}
|
|
2351
|
+
continue;
|
|
2345
2352
|
}
|
|
2346
2353
|
const approval = {
|
|
2347
2354
|
approvalRequest,
|
|
@@ -3583,10 +3590,13 @@ async function generateText({
|
|
|
3583
3590
|
}),
|
|
3584
3591
|
tracer,
|
|
3585
3592
|
fn: async (span) => {
|
|
3586
|
-
var _a16, _b, _c, _d, _e, _f, _g, _h;
|
|
3593
|
+
var _a16, _b, _c, _d, _e, _f, _g, _h, _i;
|
|
3587
3594
|
const initialMessages = initialPrompt.messages;
|
|
3588
3595
|
const responseMessages = [];
|
|
3589
|
-
const { approvedToolApprovals, deniedToolApprovals } = collectToolApprovals({
|
|
3596
|
+
const { approvedToolApprovals, deniedToolApprovals } = collectToolApprovals({
|
|
3597
|
+
messages: initialMessages,
|
|
3598
|
+
skipValidation: ((_a16 = providerOptions == null ? void 0 : providerOptions.openai) == null ? void 0 : _a16.previousResponseId) != null
|
|
3599
|
+
});
|
|
3590
3600
|
const localApprovedToolApprovals = approvedToolApprovals.filter(
|
|
3591
3601
|
(toolApproval) => !toolApproval.toolCall.providerExecuted
|
|
3592
3602
|
);
|
|
@@ -3676,21 +3686,21 @@ async function generateText({
|
|
|
3676
3686
|
experimental_context
|
|
3677
3687
|
}));
|
|
3678
3688
|
const stepModel = resolveLanguageModel(
|
|
3679
|
-
(
|
|
3689
|
+
(_b = prepareStepResult == null ? void 0 : prepareStepResult.model) != null ? _b : model
|
|
3680
3690
|
);
|
|
3681
3691
|
const promptMessages = await convertToLanguageModelPrompt({
|
|
3682
3692
|
prompt: {
|
|
3683
|
-
system: (
|
|
3684
|
-
messages: (
|
|
3693
|
+
system: (_c = prepareStepResult == null ? void 0 : prepareStepResult.system) != null ? _c : initialPrompt.system,
|
|
3694
|
+
messages: (_d = prepareStepResult == null ? void 0 : prepareStepResult.messages) != null ? _d : stepInputMessages
|
|
3685
3695
|
},
|
|
3686
3696
|
supportedUrls: await stepModel.supportedUrls,
|
|
3687
3697
|
download: download2
|
|
3688
3698
|
});
|
|
3689
|
-
experimental_context = (
|
|
3699
|
+
experimental_context = (_e = prepareStepResult == null ? void 0 : prepareStepResult.experimental_context) != null ? _e : experimental_context;
|
|
3690
3700
|
const { toolChoice: stepToolChoice, tools: stepTools } = await prepareToolsAndToolChoice({
|
|
3691
3701
|
tools,
|
|
3692
|
-
toolChoice: (
|
|
3693
|
-
activeTools: (
|
|
3702
|
+
toolChoice: (_f = prepareStepResult == null ? void 0 : prepareStepResult.toolChoice) != null ? _f : toolChoice,
|
|
3703
|
+
activeTools: (_g = prepareStepResult == null ? void 0 : prepareStepResult.activeTools) != null ? _g : activeTools
|
|
3694
3704
|
});
|
|
3695
3705
|
currentModelResponse = await retry(
|
|
3696
3706
|
() => {
|
|
@@ -3910,7 +3920,7 @@ async function generateText({
|
|
|
3910
3920
|
usage: asLanguageModelUsage(currentModelResponse.usage),
|
|
3911
3921
|
warnings: currentModelResponse.warnings,
|
|
3912
3922
|
providerMetadata: currentModelResponse.providerMetadata,
|
|
3913
|
-
request: (
|
|
3923
|
+
request: (_h = currentModelResponse.request) != null ? _h : {},
|
|
3914
3924
|
response: {
|
|
3915
3925
|
...currentModelResponse.response,
|
|
3916
3926
|
// deep clone msgs to avoid mutating past messages in multi-step:
|
|
@@ -3918,7 +3928,7 @@ async function generateText({
|
|
|
3918
3928
|
}
|
|
3919
3929
|
});
|
|
3920
3930
|
logWarnings({
|
|
3921
|
-
warnings: (
|
|
3931
|
+
warnings: (_i = currentModelResponse.warnings) != null ? _i : [],
|
|
3922
3932
|
provider: stepModel.provider,
|
|
3923
3933
|
model: stepModel.modelId
|
|
3924
3934
|
});
|
|
@@ -6092,6 +6102,7 @@ var DefaultStreamTextResult = class {
|
|
|
6092
6102
|
tracer,
|
|
6093
6103
|
endWhenDone: false,
|
|
6094
6104
|
fn: async (rootSpanArg) => {
|
|
6105
|
+
var _a16;
|
|
6095
6106
|
rootSpan = rootSpanArg;
|
|
6096
6107
|
const initialPrompt = await standardizePrompt({
|
|
6097
6108
|
system,
|
|
@@ -6100,7 +6111,10 @@ var DefaultStreamTextResult = class {
|
|
|
6100
6111
|
});
|
|
6101
6112
|
const initialMessages = initialPrompt.messages;
|
|
6102
6113
|
const initialResponseMessages = [];
|
|
6103
|
-
const { approvedToolApprovals, deniedToolApprovals } = collectToolApprovals({
|
|
6114
|
+
const { approvedToolApprovals, deniedToolApprovals } = collectToolApprovals({
|
|
6115
|
+
messages: initialMessages,
|
|
6116
|
+
skipValidation: ((_a16 = providerOptions == null ? void 0 : providerOptions.openai) == null ? void 0 : _a16.previousResponseId) != null
|
|
6117
|
+
});
|
|
6104
6118
|
if (deniedToolApprovals.length > 0 || approvedToolApprovals.length > 0) {
|
|
6105
6119
|
const providerExecutedToolApprovals = [
|
|
6106
6120
|
...approvedToolApprovals,
|
|
@@ -6210,7 +6224,7 @@ var DefaultStreamTextResult = class {
|
|
|
6210
6224
|
responseMessages,
|
|
6211
6225
|
usage
|
|
6212
6226
|
}) {
|
|
6213
|
-
var
|
|
6227
|
+
var _a17, _b, _c, _d, _e, _f;
|
|
6214
6228
|
const includeRawChunks2 = self.includeRawChunks;
|
|
6215
6229
|
stepFinish = new DelayedPromise();
|
|
6216
6230
|
const stepInputMessages = [...initialMessages, ...responseMessages];
|
|
@@ -6222,7 +6236,7 @@ var DefaultStreamTextResult = class {
|
|
|
6222
6236
|
experimental_context
|
|
6223
6237
|
}));
|
|
6224
6238
|
const stepModel = resolveLanguageModel(
|
|
6225
|
-
(
|
|
6239
|
+
(_a17 = prepareStepResult == null ? void 0 : prepareStepResult.model) != null ? _a17 : model
|
|
6226
6240
|
);
|
|
6227
6241
|
const promptMessages = await convertToLanguageModelPrompt({
|
|
6228
6242
|
prompt: {
|
|
@@ -6335,7 +6349,7 @@ var DefaultStreamTextResult = class {
|
|
|
6335
6349
|
streamWithToolResults.pipeThrough(
|
|
6336
6350
|
new TransformStream({
|
|
6337
6351
|
async transform(chunk, controller) {
|
|
6338
|
-
var
|
|
6352
|
+
var _a18, _b2, _c2, _d2, _e2;
|
|
6339
6353
|
if (chunk.type === "stream-start") {
|
|
6340
6354
|
warnings = chunk.warnings;
|
|
6341
6355
|
return;
|
|
@@ -6408,7 +6422,7 @@ var DefaultStreamTextResult = class {
|
|
|
6408
6422
|
}
|
|
6409
6423
|
case "response-metadata": {
|
|
6410
6424
|
stepResponse = {
|
|
6411
|
-
id: (
|
|
6425
|
+
id: (_a18 = chunk.id) != null ? _a18 : stepResponse.id,
|
|
6412
6426
|
timestamp: (_b2 = chunk.timestamp) != null ? _b2 : stepResponse.timestamp,
|
|
6413
6427
|
modelId: (_c2 = chunk.modelId) != null ? _c2 : stepResponse.modelId
|
|
6414
6428
|
};
|
|
@@ -7407,7 +7421,7 @@ async function convertToModelMessages(messages, options) {
|
|
|
7407
7421
|
});
|
|
7408
7422
|
} else if (isToolUIPart(part)) {
|
|
7409
7423
|
const toolName = getToolName(part);
|
|
7410
|
-
if (part.state !== "input-streaming") {
|
|
7424
|
+
if (part.state !== "input-streaming" && part.state !== "approval-responded" && part.state !== "output-denied") {
|
|
7411
7425
|
content.push({
|
|
7412
7426
|
type: "tool-call",
|
|
7413
7427
|
toolCallId: part.toolCallId,
|
|
@@ -7423,7 +7437,7 @@ async function convertToModelMessages(messages, options) {
|
|
|
7423
7437
|
toolCallId: part.toolCallId
|
|
7424
7438
|
});
|
|
7425
7439
|
}
|
|
7426
|
-
if (part.providerExecuted === true &&
|
|
7440
|
+
if (part.providerExecuted === true && (part.state === "output-available" || part.state === "output-error")) {
|
|
7427
7441
|
content.push({
|
|
7428
7442
|
type: "tool-result",
|
|
7429
7443
|
toolCallId: part.toolCallId,
|