@mastra/server 1.75.0-alpha.4 → 1.75.0-alpha.6
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/{agent-versions-RvvNdlZk.cjs → agent-versions-CivkX9fT.cjs} +2 -2
- package/dist/{agent-versions-RvvNdlZk.cjs.map → agent-versions-CivkX9fT.cjs.map} +1 -1
- package/dist/{agent-versions-CTAEDQuT.js → agent-versions-oCebJ7rc.js} +2 -2
- package/dist/{agent-versions-CTAEDQuT.js.map → agent-versions-oCebJ7rc.js.map} +1 -1
- package/dist/{api-schema-manifest-BmNlBOvP.cjs → api-schema-manifest-BKsEMyEs.cjs} +2 -2
- package/dist/{api-schema-manifest-BmNlBOvP.cjs.map → api-schema-manifest-BKsEMyEs.cjs.map} +1 -1
- package/dist/{api-schema-manifest-Bsnp8kpD.js → api-schema-manifest-KsETdHDS.js} +2 -2
- package/dist/{api-schema-manifest-Bsnp8kpD.js.map → api-schema-manifest-KsETdHDS.js.map} +1 -1
- package/dist/{channels-DJkXEpTr.cjs → channels-DUdpygCQ.cjs} +39 -1
- package/dist/channels-DUdpygCQ.cjs.map +1 -0
- package/dist/{channels-DzaCNtXe.js → channels-T1KaEfZX.js} +34 -2
- package/dist/channels-T1KaEfZX.js.map +1 -0
- package/dist/{dist-BFUX7iPi.js → dist-D6XjxNT7.js} +83 -23
- package/dist/dist-D6XjxNT7.js.map +1 -0
- package/dist/{dist-DgDFoIF5.cjs → dist-Dz_c-SsY.cjs} +83 -23
- package/dist/dist-Dz_c-SsY.cjs.map +1 -0
- package/dist/docs/SKILL.md +1 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/{routes--Al6ya95.js → routes-B_ehFjzs.js} +3 -2
- package/dist/routes-B_ehFjzs.js.map +1 -0
- package/dist/{routes-CeYKJ-Re.cjs → routes-Op7uJGai.cjs} +3 -2
- package/dist/routes-Op7uJGai.cjs.map +1 -0
- package/dist/{scorer-versions-BfGNw7Wp.cjs → scorer-versions-B8q9-oF2.cjs} +2 -2
- package/dist/{scorer-versions-BfGNw7Wp.cjs.map → scorer-versions-B8q9-oF2.cjs.map} +1 -1
- package/dist/{scorer-versions-gXsdWw0V.js → scorer-versions-DGLHODqM.js} +2 -2
- package/dist/{scorer-versions-gXsdWw0V.js.map → scorer-versions-DGLHODqM.js.map} +1 -1
- package/dist/server/handlers/agent-builder.cjs +1 -1
- package/dist/server/handlers/agent-builder.js +1 -1
- package/dist/server/handlers/agent-versions.cjs +1 -1
- package/dist/server/handlers/agent-versions.d.ts +368 -0
- package/dist/server/handlers/agent-versions.d.ts.map +1 -1
- package/dist/server/handlers/agent-versions.js +1 -1
- package/dist/server/handlers/agents.cjs +1 -1
- package/dist/server/handlers/agents.d.ts +92 -0
- package/dist/server/handlers/agents.d.ts.map +1 -1
- package/dist/server/handlers/agents.js +1 -1
- package/dist/server/handlers/channels.cjs +2 -1
- package/dist/server/handlers/channels.d.ts +53 -0
- package/dist/server/handlers/channels.d.ts.map +1 -1
- package/dist/server/handlers/channels.js +2 -2
- package/dist/server/handlers/scorer-versions.cjs +1 -1
- package/dist/server/handlers/scorer-versions.js +1 -1
- package/dist/server/handlers/stored-agent-favorites.cjs +1 -1
- package/dist/server/handlers/stored-agent-favorites.js +1 -1
- package/dist/server/handlers/stored-agents.cjs +1 -1
- package/dist/server/handlers/stored-agents.d.ts +460 -0
- package/dist/server/handlers/stored-agents.d.ts.map +1 -1
- package/dist/server/handlers/stored-agents.js +1 -1
- package/dist/server/handlers/stored-scorers.cjs +1 -1
- package/dist/server/handlers/stored-scorers.js +1 -1
- package/dist/server/handlers/system.cjs +1 -1
- package/dist/server/handlers/system.js +1 -1
- package/dist/server/handlers/tool-providers.cjs +2 -1
- package/dist/server/handlers/tool-providers.cjs.map +1 -1
- package/dist/server/handlers/tool-providers.d.ts.map +1 -1
- package/dist/server/handlers/tool-providers.js +2 -1
- package/dist/server/handlers/tool-providers.js.map +1 -1
- package/dist/server/schemas/agent-versions.d.ts +350 -0
- package/dist/server/schemas/agent-versions.d.ts.map +1 -1
- package/dist/server/schemas/channels.d.ts +11 -0
- package/dist/server/schemas/channels.d.ts.map +1 -1
- package/dist/server/schemas/index.cjs +4 -4
- package/dist/server/schemas/index.js +4 -4
- package/dist/server/schemas/stored-agents.d.ts +989 -149
- package/dist/server/schemas/stored-agents.d.ts.map +1 -1
- package/dist/server/server-adapter/index.cjs +1 -1
- package/dist/server/server-adapter/index.js +1 -1
- package/dist/server/server-adapter/routes/channels.d.ts +43 -0
- package/dist/server/server-adapter/routes/channels.d.ts.map +1 -1
- package/dist/{stored-agents-ts0bWw8l.js → stored-agents-BzIvRgtz.js} +3 -2
- package/dist/stored-agents-BzIvRgtz.js.map +1 -0
- package/dist/{stored-agents-Dmsel7ey.cjs → stored-agents-DpY3ssfx.cjs} +3 -2
- package/dist/stored-agents-DpY3ssfx.cjs.map +1 -0
- package/dist/{stored-scorers-DySg7-qS.js → stored-scorers-CAt8hFj2.js} +2 -2
- package/dist/{stored-scorers-DySg7-qS.js.map → stored-scorers-CAt8hFj2.js.map} +1 -1
- package/dist/{stored-scorers-DoW6lYh8.cjs → stored-scorers-DyeqU2Rj.cjs} +2 -2
- package/dist/{stored-scorers-DoW6lYh8.cjs.map → stored-scorers-DyeqU2Rj.cjs.map} +1 -1
- package/package.json +6 -6
- package/dist/channels-DJkXEpTr.cjs.map +0 -1
- package/dist/channels-DzaCNtXe.js.map +0 -1
- package/dist/dist-BFUX7iPi.js.map +0 -1
- package/dist/dist-DgDFoIF5.cjs.map +0 -1
- package/dist/routes--Al6ya95.js.map +0 -1
- package/dist/routes-CeYKJ-Re.cjs.map +0 -1
- package/dist/stored-agents-Dmsel7ey.cjs.map +0 -1
- package/dist/stored-agents-ts0bWw8l.js.map +0 -1
|
@@ -4637,7 +4637,7 @@ function splitLines(text) {
|
|
|
4637
4637
|
return result;
|
|
4638
4638
|
}
|
|
4639
4639
|
//#endregion
|
|
4640
|
-
//#region ../memory/dist/src-
|
|
4640
|
+
//#region ../memory/dist/src-BPHEGTkT.js
|
|
4641
4641
|
var __defProp$3 = Object.defineProperty;
|
|
4642
4642
|
var __exportAll = (all, no_symbols) => {
|
|
4643
4643
|
let target = {};
|
|
@@ -23310,8 +23310,38 @@ const TRANSIENT_MESSAGE_SUBSTRINGS = [
|
|
|
23310
23310
|
"request timed out",
|
|
23311
23311
|
"request timeout",
|
|
23312
23312
|
"connection reset",
|
|
23313
|
-
"connection closed"
|
|
23313
|
+
"connection closed",
|
|
23314
|
+
"finished with finishreason \"other\""
|
|
23314
23315
|
];
|
|
23316
|
+
const INCOMPLETE_FINISH_REASONS = /* @__PURE__ */ new Set(["other", "unknown"]);
|
|
23317
|
+
/**
|
|
23318
|
+
* A model reply that ended before the model finished. Carries the AI SDK's
|
|
23319
|
+
* `isRetryable` flag, which `isTransientLLMError` and core's error processors
|
|
23320
|
+
* already recognize.
|
|
23321
|
+
*
|
|
23322
|
+
* @internal
|
|
23323
|
+
*/
|
|
23324
|
+
var OmIncompleteResponseError = class extends Error {
|
|
23325
|
+
finishReason;
|
|
23326
|
+
isRetryable = true;
|
|
23327
|
+
constructor(label, finishReason) {
|
|
23328
|
+
super(`${label} response ended early (finishReason: ${finishReason})`);
|
|
23329
|
+
this.finishReason = finishReason;
|
|
23330
|
+
this.name = "OmIncompleteResponseError";
|
|
23331
|
+
}
|
|
23332
|
+
};
|
|
23333
|
+
/**
|
|
23334
|
+
* OM calls are single-step (`maxSteps: 1`). A step that ends with `other` or
|
|
23335
|
+
* `unknown` means the stream closed before the model finished, so its text is
|
|
23336
|
+
* partial. Throw a retryable error so `withRetry` re-runs the whole call
|
|
23337
|
+
* instead of saving it.
|
|
23338
|
+
*
|
|
23339
|
+
* @internal
|
|
23340
|
+
*/
|
|
23341
|
+
function assertCompleteModelResponse(output, label) {
|
|
23342
|
+
if (output.finishReason && INCOMPLETE_FINISH_REASONS.has(output.finishReason)) throw new OmIncompleteResponseError(label, output.finishReason);
|
|
23343
|
+
return output;
|
|
23344
|
+
}
|
|
23315
23345
|
function isRecord$5(value) {
|
|
23316
23346
|
return typeof value === "object" && value !== null;
|
|
23317
23347
|
}
|
|
@@ -25310,6 +25340,25 @@ function getObserverMessageLabel(msg) {
|
|
|
25310
25340
|
if (isSystemReminderMessage(msg)) return "system-reminder";
|
|
25311
25341
|
return msg.role.charAt(0).toUpperCase() + msg.role.slice(1);
|
|
25312
25342
|
}
|
|
25343
|
+
/**
|
|
25344
|
+
* Attachment URLs the agent already found undownloadable. Core records them on the user
|
|
25345
|
+
* message (`metadata.mastra.unavailableAttachments`) so they are not fetched again.
|
|
25346
|
+
*/
|
|
25347
|
+
function getUnavailableAttachmentUrls(msg) {
|
|
25348
|
+
const mastra = msg.content?.metadata?.mastra;
|
|
25349
|
+
const urls = isRecord$2(mastra) ? mastra.unavailableAttachments : void 0;
|
|
25350
|
+
return new Set(Array.isArray(urls) ? urls.filter((url) => typeof url === "string") : []);
|
|
25351
|
+
}
|
|
25352
|
+
function getObserverAttachmentUrl(part) {
|
|
25353
|
+
const asset = part.type === "image" ? part.image : part.data ?? part.url;
|
|
25354
|
+
if (asset instanceof URL) return asset.toString();
|
|
25355
|
+
if (typeof asset !== "string") return void 0;
|
|
25356
|
+
try {
|
|
25357
|
+
return new URL(asset).toString();
|
|
25358
|
+
} catch {
|
|
25359
|
+
return;
|
|
25360
|
+
}
|
|
25361
|
+
}
|
|
25313
25362
|
function formatObserverMessage(msg, counter, toolFormatting, options) {
|
|
25314
25363
|
const maxLen = options?.maxPartLength;
|
|
25315
25364
|
const maxToolResultTokens = options?.maxToolResultTokens ?? 5e3;
|
|
@@ -25318,6 +25367,7 @@ function formatObserverMessage(msg, counter, toolFormatting, options) {
|
|
|
25318
25367
|
const role = getObserverMessageLabel(msg);
|
|
25319
25368
|
const attachments = [];
|
|
25320
25369
|
const messageCreatedAt = normalizeObserverCreatedAt(msg.createdAt);
|
|
25370
|
+
const unavailableUrls = getUnavailableAttachmentUrls(msg);
|
|
25321
25371
|
let lines = [];
|
|
25322
25372
|
const temporalGapText = isTemporalGapMarker(msg) ? getTemporalGapMarkerText(msg) : void 0;
|
|
25323
25373
|
const pushLine = (title, body, createdAt) => {
|
|
@@ -25376,7 +25426,8 @@ function formatObserverMessage(msg, counter, toolFormatting, options) {
|
|
|
25376
25426
|
}
|
|
25377
25427
|
if (partType === "image" || partType === "file") {
|
|
25378
25428
|
const attachment = part;
|
|
25379
|
-
|
|
25429
|
+
const attachmentUrl = unavailableUrls.size > 0 ? getObserverAttachmentUrl(attachment) : void 0;
|
|
25430
|
+
if (!(attachmentUrl !== void 0 && unavailableUrls.has(attachmentUrl)) && shouldIncludeObserverAttachment(attachment, attachmentFilter)) {
|
|
25380
25431
|
const inputAttachment = toObserverInputAttachmentPart(attachment);
|
|
25381
25432
|
if (inputAttachment) attachments.push(inputAttachment);
|
|
25382
25433
|
}
|
|
@@ -25879,20 +25930,20 @@ function optimizeObservationsForContext(observations) {
|
|
|
25879
25930
|
return optimized.trim();
|
|
25880
25931
|
}
|
|
25881
25932
|
function createTemporaryOmMemoryContext(prefix) {
|
|
25882
|
-
const
|
|
25883
|
-
|
|
25884
|
-
|
|
25885
|
-
options: {
|
|
25886
|
-
lastMessages: 10,
|
|
25887
|
-
generateTitle: false
|
|
25888
|
-
}
|
|
25933
|
+
const memoryOptions = {
|
|
25934
|
+
lastMessages: 10,
|
|
25935
|
+
generateTitle: false
|
|
25889
25936
|
};
|
|
25890
25937
|
return {
|
|
25891
25938
|
memory: new Memory({
|
|
25892
25939
|
storage: new InMemoryStore(),
|
|
25893
|
-
options:
|
|
25940
|
+
options: memoryOptions
|
|
25894
25941
|
}),
|
|
25895
|
-
|
|
25942
|
+
newThread: () => ({
|
|
25943
|
+
thread: `${prefix}-${globalThis.crypto.randomUUID()}`,
|
|
25944
|
+
resource: prefix,
|
|
25945
|
+
options: memoryOptions
|
|
25946
|
+
})
|
|
25896
25947
|
};
|
|
25897
25948
|
}
|
|
25898
25949
|
const PHASE_CONFIG = {
|
|
@@ -26031,6 +26082,7 @@ var ObserverRunner = class {
|
|
|
26031
26082
|
id: isMultiThread ? "multi-thread-observer" : "observational-memory-observer",
|
|
26032
26083
|
name: isMultiThread ? "multi-thread-observer" : "Observer",
|
|
26033
26084
|
maxRetries: 0,
|
|
26085
|
+
errorProcessorDefaults: false,
|
|
26034
26086
|
instructions: buildObserverSystemPrompt(isMultiThread, this.observationConfig.instruction, this.observationConfig.threadTitle, extractors),
|
|
26035
26087
|
model: agentModel,
|
|
26036
26088
|
...memory ? { memory } : {},
|
|
@@ -26119,6 +26171,7 @@ var ObserverRunner = class {
|
|
|
26119
26171
|
const temporaryMemory = activeExtractors.filter((extractor) => extractor.mode === "structured").length > 0 ? await createTemporaryOmMemoryContext("structured-observer") : void 0;
|
|
26120
26172
|
const agent = temporaryMemory ? this.createAgent(resolvedModel.model, false, temporaryMemory.memory, activeExtractors) : this.createAgent(resolvedModel.model, false, void 0, activeExtractors);
|
|
26121
26173
|
const internalRequestContext = withOmInternalThreadId(options?.requestContext, agent.id);
|
|
26174
|
+
let attemptMemory;
|
|
26122
26175
|
const attachmentFilter = this.resolveAttachmentFilter(resolvedModel.model, options?.requestContext);
|
|
26123
26176
|
const observerMessages = [buildObserverRequestMessage(existingObservations, messagesToObserve, {
|
|
26124
26177
|
...options,
|
|
@@ -26146,14 +26199,16 @@ var ObserverRunner = class {
|
|
|
26146
26199
|
},
|
|
26147
26200
|
callback: (childObservabilityContext) => this.withAbortCheck(async () => {
|
|
26148
26201
|
try {
|
|
26149
|
-
|
|
26202
|
+
attemptMemory = temporaryMemory?.newThread();
|
|
26203
|
+
return assertCompleteModelResponse(await (await agent.stream(observerMessages, {
|
|
26204
|
+
maxSteps: 1,
|
|
26150
26205
|
modelSettings: { ...this.observationConfig.modelSettings },
|
|
26151
26206
|
providerOptions: this.observationConfig.providerOptions,
|
|
26152
|
-
...
|
|
26207
|
+
...attemptMemory ? { memory: attemptMemory } : {},
|
|
26153
26208
|
...abortSignal ? { abortSignal } : {},
|
|
26154
26209
|
...internalRequestContext ? { requestContext: internalRequestContext } : {},
|
|
26155
26210
|
...childObservabilityContext
|
|
26156
|
-
})).getFullOutput();
|
|
26211
|
+
})).getFullOutput(), "OM observer");
|
|
26157
26212
|
} catch (error) {
|
|
26158
26213
|
this.mastra?.getLogger?.().error("OM observer provider call failed", {
|
|
26159
26214
|
diagnostic: formatOmError(error),
|
|
@@ -26192,7 +26247,7 @@ var ObserverRunner = class {
|
|
|
26192
26247
|
agent,
|
|
26193
26248
|
source: "observer",
|
|
26194
26249
|
extractors: activeExtractors,
|
|
26195
|
-
memory:
|
|
26250
|
+
memory: attemptMemory,
|
|
26196
26251
|
priorExtractedValues: options?.priorExtractedValues,
|
|
26197
26252
|
requestContext: internalRequestContext,
|
|
26198
26253
|
observabilityContext: options?.observabilityContext,
|
|
@@ -26352,13 +26407,14 @@ var ObserverRunner = class {
|
|
|
26352
26407
|
},
|
|
26353
26408
|
callback: (childObservabilityContext) => this.withAbortCheck(async () => {
|
|
26354
26409
|
try {
|
|
26355
|
-
return await (await agent.stream(observerMessages, {
|
|
26410
|
+
return assertCompleteModelResponse(await (await agent.stream(observerMessages, {
|
|
26411
|
+
maxSteps: 1,
|
|
26356
26412
|
modelSettings: { ...this.observationConfig.modelSettings },
|
|
26357
26413
|
providerOptions: this.observationConfig.providerOptions,
|
|
26358
26414
|
...abortSignal ? { abortSignal } : {},
|
|
26359
26415
|
...internalRequestContext ? { requestContext: internalRequestContext } : {},
|
|
26360
26416
|
...childObservabilityContext
|
|
26361
|
-
})).getFullOutput();
|
|
26417
|
+
})).getFullOutput(), "OM multi-thread observer");
|
|
26362
26418
|
} catch (error) {
|
|
26363
26419
|
this.mastra?.getLogger?.().error("OM multi-thread observer provider call failed", {
|
|
26364
26420
|
diagnostic: formatOmError(error),
|
|
@@ -33302,6 +33358,7 @@ var ReflectorRunner = class {
|
|
|
33302
33358
|
instructions: buildReflectorSystemPrompt(this.reflectionConfig.instruction, extractors),
|
|
33303
33359
|
model: agentModel,
|
|
33304
33360
|
maxRetries: 0,
|
|
33361
|
+
errorProcessorDefaults: false,
|
|
33305
33362
|
...memory ? { memory } : {},
|
|
33306
33363
|
...this.mastra ? { mastra: this.mastra } : {}
|
|
33307
33364
|
});
|
|
@@ -33342,6 +33399,7 @@ var ReflectorRunner = class {
|
|
|
33342
33399
|
const temporaryMemory = activeExtractors.filter((extractor) => extractor.mode === "structured").length > 0 ? await createTemporaryOmMemoryContext("structured-reflector") : void 0;
|
|
33343
33400
|
const agent = temporaryMemory ? this.createAgent(resolvedModel.model, temporaryMemory.memory, activeExtractors) : this.createAgent(resolvedModel.model, void 0, activeExtractors);
|
|
33344
33401
|
const internalRequestContext = withOmInternalThreadId(requestContext, agent.id);
|
|
33402
|
+
let attemptMemory;
|
|
33345
33403
|
const targetThreshold = observationTokensThreshold ?? getMaxThreshold(this.reflectionConfig.observationTokens);
|
|
33346
33404
|
let totalUsage = {
|
|
33347
33405
|
inputTokens: 0,
|
|
@@ -33384,10 +33442,12 @@ var ReflectorRunner = class {
|
|
|
33384
33442
|
callback: (childObservabilityContext) => withAbortCheck(async () => {
|
|
33385
33443
|
chunkCount = 0;
|
|
33386
33444
|
try {
|
|
33387
|
-
|
|
33445
|
+
attemptMemory = temporaryMemory?.newThread();
|
|
33446
|
+
return assertCompleteModelResponse(await (await agent.stream(prompt, {
|
|
33447
|
+
maxSteps: 1,
|
|
33388
33448
|
modelSettings: { ...this.reflectionConfig.modelSettings },
|
|
33389
33449
|
providerOptions: this.reflectionConfig.providerOptions,
|
|
33390
|
-
...
|
|
33450
|
+
...attemptMemory ? { memory: attemptMemory } : {},
|
|
33391
33451
|
...abortSignal ? { abortSignal } : {},
|
|
33392
33452
|
...internalRequestContext ? { requestContext: internalRequestContext } : {},
|
|
33393
33453
|
...childObservabilityContext,
|
|
@@ -33409,7 +33469,7 @@ var ReflectorRunner = class {
|
|
|
33409
33469
|
omError(`[OM:callReflector] onError after ${chunkCount} chunks`, error);
|
|
33410
33470
|
}
|
|
33411
33471
|
} : {}
|
|
33412
|
-
})).getFullOutput();
|
|
33472
|
+
})).getFullOutput(), "OM reflector");
|
|
33413
33473
|
} catch (error) {
|
|
33414
33474
|
if (abortSignal?.aborted || !isOmModelExecutionFailure(error)) throw error;
|
|
33415
33475
|
throw new OmModelExecutionError("reflector-model", error);
|
|
@@ -33483,7 +33543,7 @@ var ReflectorRunner = class {
|
|
|
33483
33543
|
agent,
|
|
33484
33544
|
source: "reflector",
|
|
33485
33545
|
extractors: activeExtractors,
|
|
33486
|
-
memory:
|
|
33546
|
+
memory: attemptMemory,
|
|
33487
33547
|
priorExtractedValues,
|
|
33488
33548
|
requestContext: internalRequestContext,
|
|
33489
33549
|
observabilityContext,
|
|
@@ -50463,4 +50523,4 @@ const agentBuilderWorkflows = {
|
|
|
50463
50523
|
//#endregion
|
|
50464
50524
|
export { agentBuilderWorkflows };
|
|
50465
50525
|
|
|
50466
|
-
//# sourceMappingURL=dist-
|
|
50526
|
+
//# sourceMappingURL=dist-D6XjxNT7.js.map
|