@memberjunction/ai-agents 5.24.0 → 5.26.0
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/README.md +32 -0
- package/dist/AgentRunner.d.ts +58 -3
- package/dist/AgentRunner.d.ts.map +1 -1
- package/dist/AgentRunner.js +245 -8
- package/dist/AgentRunner.js.map +1 -1
- package/dist/base-agent.d.ts +48 -3
- package/dist/base-agent.d.ts.map +1 -1
- package/dist/base-agent.js +153 -20
- package/dist/base-agent.js.map +1 -1
- package/package.json +15 -13
package/README.md
CHANGED
|
@@ -332,6 +332,38 @@ New code should import these directly from `@memberjunction/ai-reranker`.
|
|
|
332
332
|
- `@memberjunction/aiengine` -- AIEngine for metadata and vector search
|
|
333
333
|
- `@memberjunction/ai-core-plus` -- Shared types (ExecuteAgentParams, ExecuteAgentResult)
|
|
334
334
|
- `@memberjunction/ai-engine-base` -- Base metadata cache and permissions
|
|
335
|
+
## Storage Account Resolution
|
|
336
|
+
|
|
337
|
+
When agents create file-based artifacts (PDF, Excel, Word), the system resolves which `FileStorageAccount` to use via a hierarchical chain. The first non-null value wins:
|
|
338
|
+
|
|
339
|
+
| Priority | Source | Field |
|
|
340
|
+
|----------|--------|-------|
|
|
341
|
+
| 1 (highest) | Runtime | `ExecuteAgentParams.override.storageAccountId` |
|
|
342
|
+
| 2 | Agent | `AIAgent.DefaultStorageAccountID` |
|
|
343
|
+
| 3 | Category tree | `AIAgentCategory.DefaultStorageAccountID` (walks up `ParentID`) |
|
|
344
|
+
| 4 (lowest) | Agent Type | `AIAgentType.DefaultStorageAccountID` |
|
|
345
|
+
| Fallback | System | Single active account (if only one exists) |
|
|
346
|
+
|
|
347
|
+
### How it works
|
|
348
|
+
|
|
349
|
+
- `BaseAgent.getStorageAccountID(params)` implements the resolution logic. It is `protected` so subclasses can override it for custom routing.
|
|
350
|
+
- The resolved ID is stored in `ExecuteAgentResult.resolvedStorageAccountId` and passed to `AgentRunner.ProcessFileArtifacts()` for upload routing.
|
|
351
|
+
- `AgentRunner.uploadBase64ToStorage()` uses `FileStorageEngine.Instance.GetAccountWithProvider()` to get the account + provider, then `initializeDriverWithAccountCredentials()` for proper OAuth credential handling.
|
|
352
|
+
|
|
353
|
+
### Startup validation
|
|
354
|
+
|
|
355
|
+
`AIEngine.validateStorageAccountDefaults()` runs at server startup. If 2+ active storage accounts exist but agent types lack a `DefaultStorageAccountID`, it auto-assigns the highest-priority account and logs a prominent warning.
|
|
356
|
+
|
|
357
|
+
### Configuration
|
|
358
|
+
|
|
359
|
+
Set `DefaultStorageAccountID` at any level via the admin UI or metadata sync:
|
|
360
|
+
- **Agent Type** -- broadest default (e.g., all Loop agents → Dropbox)
|
|
361
|
+
- **Agent Category** -- business-domain default (e.g., Marketing → Box, Finance → SharePoint)
|
|
362
|
+
- **Agent** -- per-agent override
|
|
363
|
+
- **Runtime** -- `ExecuteAgentParams.override.storageAccountId` for programmatic callers
|
|
364
|
+
|
|
365
|
+
## Dependencies
|
|
366
|
+
|
|
335
367
|
- `@memberjunction/ai` -- Core AI abstractions
|
|
336
368
|
- `@memberjunction/ai-reranker` -- Two-stage retrieval reranking
|
|
337
369
|
- `@memberjunction/actions` -- Server-side action execution
|
package/dist/AgentRunner.d.ts
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* @since 2.49.0
|
|
11
11
|
*/
|
|
12
12
|
import { UserInfo, IMetadataProvider } from '@memberjunction/core';
|
|
13
|
-
import { ExecuteAgentResult, ExecuteAgentParams, MediaOutput } from '@memberjunction/ai-core-plus';
|
|
13
|
+
import { ExecuteAgentResult, ExecuteAgentParams, MediaOutput, FileOutputRef } from '@memberjunction/ai-core-plus';
|
|
14
14
|
/**
|
|
15
15
|
* AgentRunner provides a thin wrapper for executing AI agents.
|
|
16
16
|
*
|
|
@@ -123,7 +123,7 @@ export declare class AgentRunner {
|
|
|
123
123
|
* const newVersionNumber = maxVersion + 1;
|
|
124
124
|
* ```
|
|
125
125
|
*/
|
|
126
|
-
GetMaxVersionForArtifact(artifactId: string, contextUser: UserInfo): Promise<number>;
|
|
126
|
+
GetMaxVersionForArtifact(artifactId: string, contextUser: UserInfo, provider?: IMetadataProvider): Promise<number>;
|
|
127
127
|
/**
|
|
128
128
|
* Checks whether the serialized content for a new artifact version is identical to the
|
|
129
129
|
* latest existing version of the same artifact, using SHA-256 content hashing.
|
|
@@ -139,7 +139,7 @@ export declare class AgentRunner {
|
|
|
139
139
|
* @param contextUser - User context for the RunView query
|
|
140
140
|
* @returns The existing version's ID if content is identical, or `null` if a new version should be created
|
|
141
141
|
*/
|
|
142
|
-
protected CheckForDuplicateVersion(artifactId: string, candidateContent: string, latestVersionNumber: number, contextUser: UserInfo): Promise<string | null>;
|
|
142
|
+
protected CheckForDuplicateVersion(artifactId: string, candidateContent: string, latestVersionNumber: number, contextUser: UserInfo, provider?: IMetadataProvider): Promise<string | null>;
|
|
143
143
|
/**
|
|
144
144
|
* Creates a `ConversationDetailArtifact` junction record linking an artifact version
|
|
145
145
|
* to a conversation detail, then returns the standard artifact result tuple.
|
|
@@ -280,6 +280,61 @@ export declare class AgentRunner {
|
|
|
280
280
|
* ```
|
|
281
281
|
*/
|
|
282
282
|
CreateConversationMediaAttachments(conversationDetailId: string, mediaOutputs: MediaOutput[], agentRunMediaIds: string[], contextUser: UserInfo, provider?: IMetadataProvider): Promise<string[]>;
|
|
283
|
+
/**
|
|
284
|
+
* Creates MJ: Artifact records for file outputs collected during agent execution.
|
|
285
|
+
* Reads directly from `ExecuteAgentResult.fileOutputs` — no DB query needed.
|
|
286
|
+
*
|
|
287
|
+
* Called automatically by RunAgentInConversation after the agent completes.
|
|
288
|
+
*
|
|
289
|
+
* @param fileOutputs - File outputs collected by BaseAgent during action execution
|
|
290
|
+
* @param conversationDetailId - The conversation detail to link artifacts to
|
|
291
|
+
* @param contextUser - User context for DB operations
|
|
292
|
+
* @param resolvedStorageAccountId - Pre-resolved FileStorageAccount ID from the agent's
|
|
293
|
+
* hierarchical resolution chain (Runtime → Agent → Category → Type → fallback).
|
|
294
|
+
* When provided, uploads use this specific account instead of picking the first active one.
|
|
295
|
+
*/
|
|
296
|
+
ProcessFileArtifacts(fileOutputs: FileOutputRef[], conversationDetailId: string, contextUser: UserInfo, resolvedStorageAccountId?: string, provider?: IMetadataProvider): Promise<void>;
|
|
297
|
+
/**
|
|
298
|
+
* Re-processes file artifacts from a historical agent run by querying its persisted
|
|
299
|
+
* action step OutputData. Use this to recover artifacts for runs that completed before
|
|
300
|
+
* ProcessFileArtifacts was introduced, or for debugging.
|
|
301
|
+
*
|
|
302
|
+
* @param agentRunId - The agent run whose action steps to inspect
|
|
303
|
+
* @param conversationDetailId - The conversation detail to link artifacts to
|
|
304
|
+
* @param contextUser - User context for DB operations
|
|
305
|
+
*/
|
|
306
|
+
ReprocessRunFileArtifacts(agentRunId: string, conversationDetailId: string, contextUser: UserInfo, provider?: IMetadataProvider): Promise<void>;
|
|
307
|
+
/** Loads all completed action steps for a given agent run (read-only, narrow fields). */
|
|
308
|
+
private loadActionStepsForRun;
|
|
309
|
+
/**
|
|
310
|
+
* Parses persisted OutputData JSON from an action step and extracts file output metadata.
|
|
311
|
+
* Detection is shape-based (looks for objects with fileName + mimeType + fileData/fileId),
|
|
312
|
+
* not name-based — works regardless of what the action named its output parameter.
|
|
313
|
+
*
|
|
314
|
+
* Used only by the historical reprocessing path — live runs use BaseAgent's detectFileOutputs.
|
|
315
|
+
*/
|
|
316
|
+
private parseStepFileOutputs;
|
|
317
|
+
/** Uploads or resolves a single file output and creates the artifact records.
|
|
318
|
+
* Falls back to inline base64 artifact if storage is unavailable or upload fails. */
|
|
319
|
+
private processFileOutput;
|
|
320
|
+
/**
|
|
321
|
+
* Uploads base64-encoded file content to MJStorage and creates an MJ: Files record.
|
|
322
|
+
* Returns the new MJ: Files record ID.
|
|
323
|
+
*
|
|
324
|
+
* @param resolvedStorageAccountId - Pre-resolved account from the agent's storage resolution chain.
|
|
325
|
+
* When provided, uploads to this specific account. Otherwise falls back to the first active account.
|
|
326
|
+
*/
|
|
327
|
+
private uploadBase64ToStorage;
|
|
328
|
+
/**
|
|
329
|
+
* Shared logic for creating an artifact + version + conversation detail link in a single
|
|
330
|
+
* transaction. The caller provides a callback to set the version-specific fields (file-backed
|
|
331
|
+
* vs. inline content).
|
|
332
|
+
*/
|
|
333
|
+
private createArtifactWithVersion;
|
|
334
|
+
/** Creates a file-backed artifact (version references a FileID in MJStorage). */
|
|
335
|
+
private createFileArtifact;
|
|
336
|
+
/** Creates an inline artifact (version stores base64 data URL directly, no MJStorage). */
|
|
337
|
+
private createInlineFileArtifact;
|
|
283
338
|
/**
|
|
284
339
|
* Gets file extension from MIME type
|
|
285
340
|
* @private
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentRunner.d.ts","sourceRoot":"","sources":["../src/AgentRunner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAgF,QAAQ,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"AgentRunner.d.ts","sourceRoot":"","sources":["../src/AgentRunner.ts"],"names":[],"mappings":"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"}
|
package/dist/AgentRunner.js
CHANGED
|
@@ -10,10 +10,13 @@
|
|
|
10
10
|
* @since 2.49.0
|
|
11
11
|
*/
|
|
12
12
|
import { createHash } from 'crypto';
|
|
13
|
-
import { LogError, LogStatusEx, IsVerboseLoggingEnabled, LogStatus, Metadata, RunView } from '@memberjunction/core';
|
|
13
|
+
import { LogError, LogStatusEx, IsVerboseLoggingEnabled, LogStatus, Metadata, RunView, ProviderType } from '@memberjunction/core';
|
|
14
14
|
import { MJGlobal, UUIDsEqual } from '@memberjunction/global';
|
|
15
15
|
import { AIEngine } from '@memberjunction/aiengine';
|
|
16
|
+
import { ParseFileOutputRef } from '@memberjunction/ai-core-plus';
|
|
16
17
|
import { BaseAgent } from './base-agent.js';
|
|
18
|
+
import { ArtifactMetadataEngine } from '@memberjunction/core-entities';
|
|
19
|
+
import { FileStorageEngine } from '@memberjunction/storage';
|
|
17
20
|
/**
|
|
18
21
|
* AgentRunner provides a thin wrapper for executing AI agents.
|
|
19
22
|
*
|
|
@@ -335,6 +338,12 @@ export class AgentRunner {
|
|
|
335
338
|
}
|
|
336
339
|
return undefined;
|
|
337
340
|
})();
|
|
341
|
+
// Step 6b: Process file artifacts produced by file-generation actions (async)
|
|
342
|
+
const processFileArtifactsPromise = (async () => {
|
|
343
|
+
if (agentResult.success && agentResponseDetailId && agentResult.fileOutputs?.length) {
|
|
344
|
+
await this.ProcessFileArtifacts(agentResult.fileOutputs, agentResponseDetailId, contextUser, agentResult.resolvedStorageAccountId, md);
|
|
345
|
+
}
|
|
346
|
+
})();
|
|
338
347
|
// Step 7: Save media outputs to AIAgentRunMedia and create conversation attachments (async)
|
|
339
348
|
const saveMediaPromise = (async () => {
|
|
340
349
|
if (agentResult.mediaOutputs && agentResult.mediaOutputs.length > 0) {
|
|
@@ -356,6 +365,7 @@ export class AgentRunner {
|
|
|
356
365
|
const [, artifactInfo] = await Promise.all([
|
|
357
366
|
updateDetailPromise,
|
|
358
367
|
processArtifactsPromise,
|
|
368
|
+
processFileArtifactsPromise,
|
|
359
369
|
saveMediaPromise
|
|
360
370
|
]);
|
|
361
371
|
return {
|
|
@@ -387,9 +397,9 @@ export class AgentRunner {
|
|
|
387
397
|
* const newVersionNumber = maxVersion + 1;
|
|
388
398
|
* ```
|
|
389
399
|
*/
|
|
390
|
-
async GetMaxVersionForArtifact(artifactId, contextUser) {
|
|
400
|
+
async GetMaxVersionForArtifact(artifactId, contextUser, provider) {
|
|
391
401
|
try {
|
|
392
|
-
const rv =
|
|
402
|
+
const rv = RunView.FromMetadataProvider(provider || this._provider);
|
|
393
403
|
const result = await rv.RunView({
|
|
394
404
|
EntityName: 'MJ: Artifact Versions',
|
|
395
405
|
ExtraFilter: `ArtifactID='${artifactId}'`,
|
|
@@ -422,9 +432,9 @@ export class AgentRunner {
|
|
|
422
432
|
* @param contextUser - User context for the RunView query
|
|
423
433
|
* @returns The existing version's ID if content is identical, or `null` if a new version should be created
|
|
424
434
|
*/
|
|
425
|
-
async CheckForDuplicateVersion(artifactId, candidateContent, latestVersionNumber, contextUser) {
|
|
435
|
+
async CheckForDuplicateVersion(artifactId, candidateContent, latestVersionNumber, contextUser, provider) {
|
|
426
436
|
const candidateHash = createHash('sha256').update(candidateContent, 'utf8').digest('hex');
|
|
427
|
-
const rv =
|
|
437
|
+
const rv = RunView.FromMetadataProvider(provider || this._provider);
|
|
428
438
|
const result = await rv.RunView({
|
|
429
439
|
EntityName: 'MJ: Artifact Versions',
|
|
430
440
|
ExtraFilter: `ArtifactID='${artifactId}' AND VersionNumber=${latestVersionNumber}`,
|
|
@@ -482,7 +492,7 @@ export class AgentRunner {
|
|
|
482
492
|
*/
|
|
483
493
|
async FindPreviousArtifactForMessage(conversationDetailId, contextUser, provider) {
|
|
484
494
|
try {
|
|
485
|
-
const rv =
|
|
495
|
+
const rv = RunView.FromMetadataProvider(provider || this._provider);
|
|
486
496
|
const result = await rv.RunView({
|
|
487
497
|
EntityName: 'MJ: Conversation Detail Artifacts',
|
|
488
498
|
ExtraFilter: `ConversationDetailID='${conversationDetailId}' AND Direction='Output'`,
|
|
@@ -568,7 +578,7 @@ export class AgentRunner {
|
|
|
568
578
|
let isNewArtifact = false;
|
|
569
579
|
// Priority 1: Use explicit source artifact if provided
|
|
570
580
|
if (sourceArtifactId) {
|
|
571
|
-
const maxVersion = await this.GetMaxVersionForArtifact(sourceArtifactId, contextUser);
|
|
581
|
+
const maxVersion = await this.GetMaxVersionForArtifact(sourceArtifactId, contextUser, provider);
|
|
572
582
|
artifactId = sourceArtifactId;
|
|
573
583
|
newVersionNumber = maxVersion + 1;
|
|
574
584
|
LogStatus(`Creating version ${newVersionNumber} of source artifact ${artifactId}`);
|
|
@@ -614,7 +624,7 @@ export class AgentRunner {
|
|
|
614
624
|
const serializedContent = JSON.stringify(payload, null, 2);
|
|
615
625
|
// Skip version creation if content is identical to the latest version
|
|
616
626
|
if (!isNewArtifact && newVersionNumber > 1) {
|
|
617
|
-
const existingVersionId = await this.CheckForDuplicateVersion(artifactId, serializedContent, newVersionNumber - 1, contextUser);
|
|
627
|
+
const existingVersionId = await this.CheckForDuplicateVersion(artifactId, serializedContent, newVersionNumber - 1, contextUser, provider);
|
|
618
628
|
if (existingVersionId) {
|
|
619
629
|
console.debug(`Skipping duplicate artifact version — content identical to version ${newVersionNumber - 1}`);
|
|
620
630
|
return undefined;
|
|
@@ -912,6 +922,233 @@ export class AgentRunner {
|
|
|
912
922
|
return attachmentIds;
|
|
913
923
|
}
|
|
914
924
|
}
|
|
925
|
+
// ── File artifact processing ───────────────────────────────────────────────
|
|
926
|
+
/**
|
|
927
|
+
* Creates MJ: Artifact records for file outputs collected during agent execution.
|
|
928
|
+
* Reads directly from `ExecuteAgentResult.fileOutputs` — no DB query needed.
|
|
929
|
+
*
|
|
930
|
+
* Called automatically by RunAgentInConversation after the agent completes.
|
|
931
|
+
*
|
|
932
|
+
* @param fileOutputs - File outputs collected by BaseAgent during action execution
|
|
933
|
+
* @param conversationDetailId - The conversation detail to link artifacts to
|
|
934
|
+
* @param contextUser - User context for DB operations
|
|
935
|
+
* @param resolvedStorageAccountId - Pre-resolved FileStorageAccount ID from the agent's
|
|
936
|
+
* hierarchical resolution chain (Runtime → Agent → Category → Type → fallback).
|
|
937
|
+
* When provided, uploads use this specific account instead of picking the first active one.
|
|
938
|
+
*/
|
|
939
|
+
async ProcessFileArtifacts(fileOutputs, conversationDetailId, contextUser, resolvedStorageAccountId, provider) {
|
|
940
|
+
if (fileOutputs.length === 0)
|
|
941
|
+
return;
|
|
942
|
+
const md = provider || this._provider;
|
|
943
|
+
// Hoist engine configs before parallel processing
|
|
944
|
+
await Promise.all([
|
|
945
|
+
ArtifactMetadataEngine.Instance.Config(false, contextUser),
|
|
946
|
+
FileStorageEngine.Instance.Config(false, contextUser),
|
|
947
|
+
]);
|
|
948
|
+
await Promise.all(fileOutputs.map(fo => this.processFileOutput(fo, conversationDetailId, contextUser, resolvedStorageAccountId, md)));
|
|
949
|
+
}
|
|
950
|
+
/**
|
|
951
|
+
* Re-processes file artifacts from a historical agent run by querying its persisted
|
|
952
|
+
* action step OutputData. Use this to recover artifacts for runs that completed before
|
|
953
|
+
* ProcessFileArtifacts was introduced, or for debugging.
|
|
954
|
+
*
|
|
955
|
+
* @param agentRunId - The agent run whose action steps to inspect
|
|
956
|
+
* @param conversationDetailId - The conversation detail to link artifacts to
|
|
957
|
+
* @param contextUser - User context for DB operations
|
|
958
|
+
*/
|
|
959
|
+
async ReprocessRunFileArtifacts(agentRunId, conversationDetailId, contextUser, provider) {
|
|
960
|
+
const md = provider || this._provider;
|
|
961
|
+
const steps = await this.loadActionStepsForRun(agentRunId, contextUser, md);
|
|
962
|
+
if (steps.length === 0)
|
|
963
|
+
return;
|
|
964
|
+
const fileOutputs = steps.flatMap(step => this.parseStepFileOutputs(step));
|
|
965
|
+
await this.ProcessFileArtifacts(fileOutputs, conversationDetailId, contextUser, undefined, md);
|
|
966
|
+
}
|
|
967
|
+
/** Loads all completed action steps for a given agent run (read-only, narrow fields). */
|
|
968
|
+
async loadActionStepsForRun(agentRunId, contextUser, provider) {
|
|
969
|
+
const rv = RunView.FromMetadataProvider(provider || this._provider);
|
|
970
|
+
const result = await rv.RunView({
|
|
971
|
+
EntityName: 'MJ: AI Agent Run Steps',
|
|
972
|
+
ExtraFilter: `AgentRunID='${agentRunId}' AND StepType='Actions' AND Status='Completed'`,
|
|
973
|
+
Fields: ['ID', 'OutputData'],
|
|
974
|
+
ResultType: 'simple'
|
|
975
|
+
}, contextUser);
|
|
976
|
+
return result.Success ? (result.Results ?? []) : [];
|
|
977
|
+
}
|
|
978
|
+
/**
|
|
979
|
+
* Parses persisted OutputData JSON from an action step and extracts file output metadata.
|
|
980
|
+
* Detection is shape-based (looks for objects with fileName + mimeType + fileData/fileId),
|
|
981
|
+
* not name-based — works regardless of what the action named its output parameter.
|
|
982
|
+
*
|
|
983
|
+
* Used only by the historical reprocessing path — live runs use BaseAgent's detectFileOutputs.
|
|
984
|
+
*/
|
|
985
|
+
parseStepFileOutputs(step) {
|
|
986
|
+
if (!step.OutputData)
|
|
987
|
+
return [];
|
|
988
|
+
let outputData;
|
|
989
|
+
try {
|
|
990
|
+
outputData = JSON.parse(step.OutputData);
|
|
991
|
+
}
|
|
992
|
+
catch {
|
|
993
|
+
return [];
|
|
994
|
+
}
|
|
995
|
+
const params = outputData.actionResult?.parameters;
|
|
996
|
+
if (!params)
|
|
997
|
+
return [];
|
|
998
|
+
const results = [];
|
|
999
|
+
for (const param of params) {
|
|
1000
|
+
if (param.Value == null)
|
|
1001
|
+
continue;
|
|
1002
|
+
const ref = ParseFileOutputRef(param.Value);
|
|
1003
|
+
if (ref)
|
|
1004
|
+
results.push(ref);
|
|
1005
|
+
}
|
|
1006
|
+
return results;
|
|
1007
|
+
}
|
|
1008
|
+
/** Uploads or resolves a single file output and creates the artifact records.
|
|
1009
|
+
* Falls back to inline base64 artifact if storage is unavailable or upload fails. */
|
|
1010
|
+
async processFileOutput(fo, conversationDetailId, contextUser, resolvedStorageAccountId, provider) {
|
|
1011
|
+
try {
|
|
1012
|
+
if (fo.fileId) {
|
|
1013
|
+
// File already in storage — create file-backed artifact
|
|
1014
|
+
await this.createFileArtifact(fo.fileId, fo.mimeType, fo.fileName, fo.sizeBytes, conversationDetailId, contextUser, provider);
|
|
1015
|
+
return;
|
|
1016
|
+
}
|
|
1017
|
+
// Check if any storage accounts are configured
|
|
1018
|
+
const hasStorage = FileStorageEngine.Instance.HasStorageAccounts;
|
|
1019
|
+
if (!hasStorage) {
|
|
1020
|
+
// No storage configured — go straight to inline artifact
|
|
1021
|
+
LogStatus(`ProcessFileArtifacts: no storage accounts configured for "${fo.fileName}", creating inline artifact`);
|
|
1022
|
+
await this.createInlineFileArtifact(fo.fileData, fo.mimeType, fo.fileName, fo.sizeBytes, conversationDetailId, contextUser, provider);
|
|
1023
|
+
return;
|
|
1024
|
+
}
|
|
1025
|
+
// Try to upload to storage
|
|
1026
|
+
try {
|
|
1027
|
+
const fileId = await this.uploadBase64ToStorage(fo.fileData, fo.fileName, fo.mimeType, contextUser, resolvedStorageAccountId, provider);
|
|
1028
|
+
await this.createFileArtifact(fileId, fo.mimeType, fo.fileName, fo.sizeBytes, conversationDetailId, contextUser, provider);
|
|
1029
|
+
}
|
|
1030
|
+
catch (storageError) {
|
|
1031
|
+
// Upload failed — fall back to inline artifact
|
|
1032
|
+
LogStatus(`ProcessFileArtifacts: storage upload failed for "${fo.fileName}", creating inline artifact: ${storageError.message}`);
|
|
1033
|
+
await this.createInlineFileArtifact(fo.fileData, fo.mimeType, fo.fileName, fo.sizeBytes, conversationDetailId, contextUser, provider);
|
|
1034
|
+
}
|
|
1035
|
+
}
|
|
1036
|
+
catch (error) {
|
|
1037
|
+
LogError(`ProcessFileArtifacts: failed for "${fo.fileName}": ${error.message}`);
|
|
1038
|
+
}
|
|
1039
|
+
}
|
|
1040
|
+
/**
|
|
1041
|
+
* Uploads base64-encoded file content to MJStorage and creates an MJ: Files record.
|
|
1042
|
+
* Returns the new MJ: Files record ID.
|
|
1043
|
+
*
|
|
1044
|
+
* @param resolvedStorageAccountId - Pre-resolved account from the agent's storage resolution chain.
|
|
1045
|
+
* When provided, uploads to this specific account. Otherwise falls back to the first active account.
|
|
1046
|
+
*/
|
|
1047
|
+
async uploadBase64ToStorage(base64Data, fileName, mimeType, contextUser, resolvedStorageAccountId, provider) {
|
|
1048
|
+
const result = await FileStorageEngine.Instance.UploadFile({
|
|
1049
|
+
content: Buffer.from(base64Data, 'base64'),
|
|
1050
|
+
fileName,
|
|
1051
|
+
mimeType,
|
|
1052
|
+
contextUser,
|
|
1053
|
+
storageAccountId: resolvedStorageAccountId,
|
|
1054
|
+
provider
|
|
1055
|
+
});
|
|
1056
|
+
return result.FileID;
|
|
1057
|
+
}
|
|
1058
|
+
/**
|
|
1059
|
+
* Shared logic for creating an artifact + version + conversation detail link in a single
|
|
1060
|
+
* transaction. The caller provides a callback to set the version-specific fields (file-backed
|
|
1061
|
+
* vs. inline content).
|
|
1062
|
+
*/
|
|
1063
|
+
async createArtifactWithVersion(params) {
|
|
1064
|
+
const { mimeType, fileName, sizeBytes, conversationDetailId, contextUser, provider, setVersionFields, label } = params;
|
|
1065
|
+
// Resolve the artifact type by MIME type; fall back to the built-in JSON type
|
|
1066
|
+
const JSON_ARTIFACT_TYPE_ID = 'ae674c7e-ea0d-49ea-89e4-0649f5eb20d4';
|
|
1067
|
+
const artifactType = ArtifactMetadataEngine.Instance.GetArtifactTypeByMimeType(mimeType);
|
|
1068
|
+
if (!artifactType) {
|
|
1069
|
+
LogStatus(`ProcessFileArtifacts: no ArtifactType found for MIME ${mimeType}, using JSON fallback`);
|
|
1070
|
+
}
|
|
1071
|
+
const artifactTypeId = artifactType?.ID ?? JSON_ARTIFACT_TYPE_ID;
|
|
1072
|
+
// Use direct provider transaction (BeginTransaction/CommitTransaction) instead of
|
|
1073
|
+
// TransactionGroup. This ensures saves execute immediately within the SQL transaction,
|
|
1074
|
+
// so server-side entity hooks (e.g. ArtifactVersion.ExtractAndSaveAttributes) can
|
|
1075
|
+
// Load() parent records that were saved earlier in the same transaction.
|
|
1076
|
+
const dbProvider = provider;
|
|
1077
|
+
const useTransaction = dbProvider.ProviderType === ProviderType.Database;
|
|
1078
|
+
if (useTransaction) {
|
|
1079
|
+
await dbProvider.BeginTransaction();
|
|
1080
|
+
}
|
|
1081
|
+
try {
|
|
1082
|
+
// Create the artifact header
|
|
1083
|
+
const artifact = await provider.GetEntityObject('MJ: Artifacts', contextUser);
|
|
1084
|
+
artifact.Name = fileName;
|
|
1085
|
+
artifact.TypeID = artifactTypeId;
|
|
1086
|
+
artifact.UserID = contextUser.ID;
|
|
1087
|
+
artifact.Visibility = 'Always';
|
|
1088
|
+
if (!(await artifact.Save())) {
|
|
1089
|
+
throw new Error(`Failed to save artifact for ${label}: ${fileName}`);
|
|
1090
|
+
}
|
|
1091
|
+
// Create the artifact version — shared fields first, then caller-specific fields
|
|
1092
|
+
const version = await provider.GetEntityObject('MJ: Artifact Versions', contextUser);
|
|
1093
|
+
version.ArtifactID = artifact.ID;
|
|
1094
|
+
version.VersionNumber = 1;
|
|
1095
|
+
version.MimeType = mimeType;
|
|
1096
|
+
version.FileName = fileName;
|
|
1097
|
+
version.UserID = contextUser.ID;
|
|
1098
|
+
if (sizeBytes !== undefined) {
|
|
1099
|
+
version.ContentSizeBytes = sizeBytes;
|
|
1100
|
+
}
|
|
1101
|
+
setVersionFields(version);
|
|
1102
|
+
if (!(await version.Save())) {
|
|
1103
|
+
throw new Error(`Failed to save artifact version for ${label}: ${fileName}`);
|
|
1104
|
+
}
|
|
1105
|
+
// Link the artifact version to the conversation detail
|
|
1106
|
+
const junction = await provider.GetEntityObject('MJ: Conversation Detail Artifacts', contextUser);
|
|
1107
|
+
junction.ConversationDetailID = conversationDetailId;
|
|
1108
|
+
junction.ArtifactVersionID = version.ID;
|
|
1109
|
+
junction.Direction = 'Output';
|
|
1110
|
+
if (!(await junction.Save())) {
|
|
1111
|
+
throw new Error(`Failed to link ${label} artifact to conversation detail: ${conversationDetailId}`);
|
|
1112
|
+
}
|
|
1113
|
+
if (useTransaction) {
|
|
1114
|
+
await dbProvider.CommitTransaction();
|
|
1115
|
+
}
|
|
1116
|
+
LogStatus(`Created ${label} artifact: ${fileName} (${mimeType}) → artifact ${artifact.ID}, version ${version.ID}`);
|
|
1117
|
+
}
|
|
1118
|
+
catch (error) {
|
|
1119
|
+
if (useTransaction) {
|
|
1120
|
+
try {
|
|
1121
|
+
await dbProvider.RollbackTransaction();
|
|
1122
|
+
}
|
|
1123
|
+
catch (rollbackError) {
|
|
1124
|
+
LogError(`Failed to rollback ${label} artifact transaction: ${rollbackError}`);
|
|
1125
|
+
}
|
|
1126
|
+
}
|
|
1127
|
+
throw error;
|
|
1128
|
+
}
|
|
1129
|
+
}
|
|
1130
|
+
/** Creates a file-backed artifact (version references a FileID in MJStorage). */
|
|
1131
|
+
async createFileArtifact(fileId, mimeType, fileName, sizeBytes, conversationDetailId, contextUser, provider) {
|
|
1132
|
+
await this.createArtifactWithVersion({
|
|
1133
|
+
mimeType, fileName, sizeBytes, conversationDetailId, contextUser, provider,
|
|
1134
|
+
label: 'file',
|
|
1135
|
+
setVersionFields: (version) => {
|
|
1136
|
+
version.ContentMode = 'File';
|
|
1137
|
+
version.FileID = fileId;
|
|
1138
|
+
}
|
|
1139
|
+
});
|
|
1140
|
+
}
|
|
1141
|
+
/** Creates an inline artifact (version stores base64 data URL directly, no MJStorage). */
|
|
1142
|
+
async createInlineFileArtifact(base64Data, mimeType, fileName, sizeBytes, conversationDetailId, contextUser, provider) {
|
|
1143
|
+
await this.createArtifactWithVersion({
|
|
1144
|
+
mimeType, fileName, sizeBytes, conversationDetailId, contextUser, provider,
|
|
1145
|
+
label: 'inline file',
|
|
1146
|
+
setVersionFields: (version) => {
|
|
1147
|
+
version.ContentMode = 'Text';
|
|
1148
|
+
version.Content = `data:${mimeType};base64,${base64Data}`;
|
|
1149
|
+
}
|
|
1150
|
+
});
|
|
1151
|
+
}
|
|
915
1152
|
/**
|
|
916
1153
|
* Gets file extension from MIME type
|
|
917
1154
|
* @private
|
package/dist/AgentRunner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentRunner.js","sourceRoot":"","sources":["../src/AgentRunner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AgentRunner.js","sourceRoot":"","sources":["../src/AgentRunner.ts"],"names":[],"mappings":"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"}
|