@theokit/sdk 4.18.0 → 4.18.1
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/dist/cron.cjs +47 -5
- package/dist/cron.cjs.map +1 -1
- package/dist/cron.js +47 -5
- package/dist/cron.js.map +1 -1
- package/dist/eval.cjs +47 -5
- package/dist/eval.cjs.map +1 -1
- package/dist/eval.js +47 -5
- package/dist/eval.js.map +1 -1
- package/dist/index.cjs +47 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +47 -5
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/cron.cjs
CHANGED
|
@@ -6275,16 +6275,38 @@ async function* runUntilImpl(agent, goal, options, deps) {
|
|
|
6275
6275
|
while (turn < maxTurns) {
|
|
6276
6276
|
if (isAborted()) {
|
|
6277
6277
|
yield { type: "status_change", status: "paused", reason: "aborted via AbortSignal" };
|
|
6278
|
-
return {
|
|
6278
|
+
return {
|
|
6279
|
+
status: "paused",
|
|
6280
|
+
turnsUsed: turn,
|
|
6281
|
+
tokensUsed,
|
|
6282
|
+
finalResponse: lastResponse || void 0
|
|
6283
|
+
};
|
|
6279
6284
|
}
|
|
6280
6285
|
turn += 1;
|
|
6281
6286
|
yield { type: "turn_start", turn, goal };
|
|
6282
6287
|
const continuationPrompt = turn === 1 ? goal : composeContinuation(goal, lastResponse);
|
|
6283
6288
|
const run = await agent.send(continuationPrompt);
|
|
6289
|
+
const cancelOnAbort = () => {
|
|
6290
|
+
void run.cancel?.();
|
|
6291
|
+
};
|
|
6292
|
+
if (signal !== void 0) {
|
|
6293
|
+
if (signal.aborted) cancelOnAbort();
|
|
6294
|
+
else signal.addEventListener("abort", cancelOnAbort, { once: true });
|
|
6295
|
+
}
|
|
6284
6296
|
const result = await run.wait();
|
|
6297
|
+
if (signal !== void 0) signal.removeEventListener("abort", cancelOnAbort);
|
|
6285
6298
|
lastResponse = result.result ?? "";
|
|
6286
6299
|
const turnTokens = result.usage?.totalTokens;
|
|
6287
6300
|
if (typeof turnTokens === "number") tokensUsed += turnTokens;
|
|
6301
|
+
if (isAborted()) {
|
|
6302
|
+
yield { type: "status_change", status: "paused", reason: "aborted via AbortSignal" };
|
|
6303
|
+
return {
|
|
6304
|
+
status: "paused",
|
|
6305
|
+
turnsUsed: turn,
|
|
6306
|
+
tokensUsed,
|
|
6307
|
+
finalResponse: lastResponse || void 0
|
|
6308
|
+
};
|
|
6309
|
+
}
|
|
6288
6310
|
yield { type: "agent_response", turn, content: lastResponse };
|
|
6289
6311
|
const judgeOpts = {};
|
|
6290
6312
|
if (options?.judgeModel !== void 0) judgeOpts.judgeModel = options.judgeModel;
|
|
@@ -6319,7 +6341,12 @@ async function* runUntilImpl(agent, goal, options, deps) {
|
|
|
6319
6341
|
}
|
|
6320
6342
|
if (judgment.verdict === "done") {
|
|
6321
6343
|
yield { type: "status_change", status: "completed", reason: judgment.reason };
|
|
6322
|
-
return {
|
|
6344
|
+
return {
|
|
6345
|
+
status: "completed",
|
|
6346
|
+
turnsUsed: turn,
|
|
6347
|
+
tokensUsed,
|
|
6348
|
+
finalResponse: lastResponse || void 0
|
|
6349
|
+
};
|
|
6323
6350
|
}
|
|
6324
6351
|
if (judgment.verdict === "skipped") {
|
|
6325
6352
|
yield {
|
|
@@ -6327,7 +6354,12 @@ async function* runUntilImpl(agent, goal, options, deps) {
|
|
|
6327
6354
|
status: "completed",
|
|
6328
6355
|
reason: `skipped: ${judgment.reason}`
|
|
6329
6356
|
};
|
|
6330
|
-
return {
|
|
6357
|
+
return {
|
|
6358
|
+
status: "completed",
|
|
6359
|
+
turnsUsed: turn,
|
|
6360
|
+
tokensUsed,
|
|
6361
|
+
finalResponse: lastResponse || void 0
|
|
6362
|
+
};
|
|
6331
6363
|
}
|
|
6332
6364
|
if (tokenBudget !== void 0 && tokensUsed >= tokenBudget) {
|
|
6333
6365
|
yield {
|
|
@@ -6335,7 +6367,12 @@ async function* runUntilImpl(agent, goal, options, deps) {
|
|
|
6335
6367
|
status: "budget_limited",
|
|
6336
6368
|
reason: `token budget (${tokenBudget}) reached: ${tokensUsed} used`
|
|
6337
6369
|
};
|
|
6338
|
-
return {
|
|
6370
|
+
return {
|
|
6371
|
+
status: "budget_limited",
|
|
6372
|
+
turnsUsed: turn,
|
|
6373
|
+
tokensUsed,
|
|
6374
|
+
finalResponse: lastResponse || void 0
|
|
6375
|
+
};
|
|
6339
6376
|
}
|
|
6340
6377
|
yield { type: "continuation", turn, prompt: continuationPrompt };
|
|
6341
6378
|
}
|
|
@@ -6344,7 +6381,12 @@ async function* runUntilImpl(agent, goal, options, deps) {
|
|
|
6344
6381
|
status: "failed",
|
|
6345
6382
|
reason: `max turns (${maxTurns}) exhausted`
|
|
6346
6383
|
};
|
|
6347
|
-
return {
|
|
6384
|
+
return {
|
|
6385
|
+
status: "failed",
|
|
6386
|
+
turnsUsed: turn,
|
|
6387
|
+
tokensUsed,
|
|
6388
|
+
finalResponse: lastResponse || void 0
|
|
6389
|
+
};
|
|
6348
6390
|
}
|
|
6349
6391
|
function composeContinuation(goal, lastResponse) {
|
|
6350
6392
|
return [
|