@memberjunction/messaging-adapters 6.1.0-edge.4 → 6.1.0-edge.5

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.
Files changed (34) hide show
  1. package/README.md +2 -1
  2. package/dist/base/BaseMessagingAdapter.d.ts +82 -1
  3. package/dist/base/BaseMessagingAdapter.d.ts.map +1 -1
  4. package/dist/base/BaseMessagingAdapter.js +222 -14
  5. package/dist/base/BaseMessagingAdapter.js.map +1 -1
  6. package/dist/base/message-formatter.d.ts +31 -1
  7. package/dist/base/message-formatter.d.ts.map +1 -1
  8. package/dist/base/message-formatter.js +66 -1
  9. package/dist/base/message-formatter.js.map +1 -1
  10. package/dist/base/types.d.ts +14 -0
  11. package/dist/base/types.d.ts.map +1 -1
  12. package/dist/index.d.ts +2 -1
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +1 -1
  15. package/dist/index.js.map +1 -1
  16. package/dist/slack/SlackAdapter.d.ts +60 -4
  17. package/dist/slack/SlackAdapter.d.ts.map +1 -1
  18. package/dist/slack/SlackAdapter.js +141 -8
  19. package/dist/slack/SlackAdapter.js.map +1 -1
  20. package/dist/slack/SlackMessagingExtension.d.ts.map +1 -1
  21. package/dist/slack/SlackMessagingExtension.js +35 -0
  22. package/dist/slack/SlackMessagingExtension.js.map +1 -1
  23. package/dist/slack/slack-block-builder.d.ts.map +1 -1
  24. package/dist/slack/slack-block-builder.js +129 -38
  25. package/dist/slack/slack-block-builder.js.map +1 -1
  26. package/dist/teams/TeamsAdapter.d.ts +7 -0
  27. package/dist/teams/TeamsAdapter.d.ts.map +1 -1
  28. package/dist/teams/TeamsAdapter.js +33 -0
  29. package/dist/teams/TeamsAdapter.js.map +1 -1
  30. package/dist/teams/teams-card-builder.d.ts +9 -1
  31. package/dist/teams/teams-card-builder.d.ts.map +1 -1
  32. package/dist/teams/teams-card-builder.js +41 -28
  33. package/dist/teams/teams-card-builder.js.map +1 -1
  34. package/package.json +11 -11
package/README.md CHANGED
@@ -140,6 +140,7 @@ LoadMessagingAdapters();
140
140
  | `ConnectionMode` | `'http' \| 'socket'` | `'http'` | Slack connection mode |
141
141
  | `MaxThreadMessages` | `number` | `50` | Max thread messages for conversation context |
142
142
  | `ShowTypingIndicator` | `boolean` | `true` | Show typing indicator while processing |
143
+ | `DisableDelegation` | `boolean` | `false` | Turn off delegation detection; set it on a bot pinned to one agent |
143
144
  | `StreamingUpdateIntervalMs` | `number` | `1000` | Min interval between streaming updates (ms) |
144
145
  | `ExplorerBaseURL` | `string` | — | MJ Explorer URL for "View in Explorer" buttons |
145
146
  | `SlashCommands` | `Record<string, string>` | — | Slash command → agent name mapping (Slack only) |
@@ -196,7 +197,7 @@ See `SlackAdapter.ts` and `SlackMessagingExtension.ts` for a complete reference
196
197
  ## Testing
197
198
 
198
199
  ```bash
199
- npm run test # Run all 301 tests
200
+ npm run test # Run the package's unit tests
200
201
  npm run test:watch # Watch mode
201
202
  npm run test:coverage # With coverage report
202
203
  ```
@@ -11,6 +11,22 @@
11
11
  import { ExecuteAgentResult, MJAIAgentEntityExtended } from '@memberjunction/ai-core-plus';
12
12
  import { UserInfo } from '@memberjunction/core';
13
13
  import { MessagingAdapterSettings, IncomingMessage, FormattedResponse, AgentIdentity, AgentResponseMetadata } from './types.js';
14
+ /**
15
+ * A binary output to deliver as a platform file: either a generated `MediaOutput` or a file the
16
+ * agent inlined as a `data:` URI. `fileName`, when present, wins over any derived name.
17
+ *
18
+ * Deliberately not `Pick<MediaOutput, ...>`: `MediaOutput.modality` is `MediaModality`
19
+ * (`'Image' | 'Audio' | 'Video'`), and a file attachment is none of those.
20
+ */
21
+ export interface UploadableFile {
22
+ modality?: string;
23
+ mimeType?: string;
24
+ /** Base64-encoded bytes. */
25
+ data?: string;
26
+ label?: string;
27
+ /** Preferred name; when absent the adapter derives one from `label` and the MIME type. */
28
+ fileName?: string;
29
+ }
14
30
  /**
15
31
  * Abstract base class for messaging platform adapters.
16
32
  *
@@ -54,6 +70,12 @@ import { MessagingAdapterSettings, IncomingMessage, FormattedResponse, AgentIden
54
70
  * Falls back to the configured service account email if no MJ user matches.
55
71
  */
56
72
  export declare abstract class BaseMessagingAdapter {
73
+ /**
74
+ * Optional per-platform file upload. Implemented by adapters whose platform can accept file
75
+ * uploads (see `SlackAdapter.uploadMediaOutputs`); absent elsewhere, in which case binary
76
+ * output is simply not delivered as files.
77
+ */
78
+ protected uploadMediaOutputs?(message: IncomingMessage, files: readonly UploadableFile[]): Promise<void>;
57
79
  /** Extension settings from `mj.config.cjs`. */
58
80
  protected settings: MessagingAdapterSettings;
59
81
  /** Fallback context user (service account) loaded from config email. */
@@ -160,6 +182,44 @@ export declare abstract class BaseMessagingAdapter {
160
182
  * Get the bot's own user ID on this platform (to identify bot messages in thread history).
161
183
  */
162
184
  protected abstract getBotUserId(): string;
185
+ /**
186
+ * Is this artifact meant for the user, rather than internal system state?
187
+ *
188
+ * Fails OPEN: an unreadable artifact keeps its link, since losing a working link on a
189
+ * transient read failure is worse than the rare case of surfacing an internal one.
190
+ */
191
+ protected isUserVisibleArtifact(artifactId: string, contextUser: UserInfo): Promise<boolean>;
192
+ /**
193
+ * Was this message posted by THIS bot?
194
+ *
195
+ * Not a bare `=== getBotUserId()`. A platform may publish more than one identifier for the
196
+ * same bot and return a different one depending on how the message was posted — on Slack a
197
+ * post carrying a `username`/`icon_url` override comes back with a `bot_id` and NO `user`,
198
+ * and this adapter sets that override on every agent reply so the agent answers under its own
199
+ * name. Platforms with that split override this; the default is a single-identifier compare.
200
+ */
201
+ protected isSelf(senderId: string | null | undefined): boolean;
202
+ /**
203
+ * Was this history message written by ANY bot (not just this one)?
204
+ *
205
+ * Thread affinity and conversation context must both ignore other bots' messages: an agent's
206
+ * reply names itself in prose, which the mention matcher would read as a user request, and as
207
+ * a 'user' turn it feeds one agent's self-description into another's context.
208
+ *
209
+ * The default is `false` because the marker is platform-specific — see `SlackAdapter`, which
210
+ * reads the Events API's `bot_id`/`bot_profile`/`bot_message` fields.
211
+ */
212
+ protected isBotAuthored(_message: IncomingMessage): boolean;
213
+ /**
214
+ * May this bot answer a thread reply that did not address it?
215
+ *
216
+ * `false` (the default) enables the multi-bot thread gate in {@link HandleMessage}: with one
217
+ * app per agent, an un-mentioned thread reply would otherwise be answered by every bot in the
218
+ * channel. Platforms that route a message only to its addressee — Teams, where a channel
219
+ * message reaches a bot solely via an @mention — should return `true`, as the gate is both
220
+ * unnecessary and would suppress legitimate replies there.
221
+ */
222
+ protected respondsToUnaddressedThreadReplies(): boolean;
163
223
  /**
164
224
  * Strip the bot @mention from the message text so the agent sees clean input.
165
225
  */
@@ -306,7 +366,7 @@ export declare abstract class BaseMessagingAdapter {
306
366
  /** Cached environment lookup — messaging adapters are long-lived and single-environment. */
307
367
  private cachedEnvironmentID;
308
368
  private resolveEnvironmentID;
309
- private detectDelegation;
369
+ protected detectDelegation(result: ExecuteAgentResult): string | null;
310
370
  /**
311
371
  * Extract `invokeAgent` from the in-memory payload object.
312
372
  */
@@ -344,6 +404,27 @@ export declare abstract class BaseMessagingAdapter {
344
404
  * Extract response text, format it, and send the final message.
345
405
  */
346
406
  private sendAgentResult;
407
+ /**
408
+ * Collect the files an agent produced, from the run's own `fileOutputs`.
409
+ *
410
+ * This is the canonical source — `fileOutputs` is what MJ turns into file artifacts — and it
411
+ * carries the real filename and MIME type rather than leaving them to be guessed. Entries
412
+ * already saved to storage (`fileId`, no `fileData`) are skipped: those have a durable
413
+ * location, and re-uploading their bytes to chat is not this method's job.
414
+ *
415
+ * Preferred over {@link collectInlineFileAttachments}, which depends on the model choosing to
416
+ * emit a `data:` URI — it does so only sometimes, so relying on it meant a generated document
417
+ * reached chat on one run and not the next.
418
+ */
419
+ protected collectFileOutputAttachments(result: ExecuteAgentResult): UploadableFile[];
420
+ /**
421
+ * Harvest files that an agent inlined as `data:` URIs on its actionable commands.
422
+ *
423
+ * MJ's document actions fall back to embedding the generated file itself when no file storage
424
+ * account is configured. That URI cannot be opened from a chat client, so the file is decoded
425
+ * here and handed to the platform's uploader as an ordinary attachment.
426
+ */
427
+ protected collectInlineFileAttachments(result: ExecuteAgentResult): UploadableFile[];
347
428
  /**
348
429
  * Extract the user-facing response text from an `ExecuteAgentResult`.
349
430
  *
@@ -1 +1 @@
1
- {"version":3,"file":"BaseMessagingAdapter.d.ts","sourceRoot":"","sources":["../../src/base/BaseMessagingAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseMessagingAdapter.d.ts","sourceRoot":"","sources":["../../src/base/BaseMessagingAdapter.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,9 @@
9
9
  * platform-specific operations like sending messages and fetching threads.
10
10
  */
11
11
  import { AgentRunner } from '@memberjunction/ai-agents';
12
+ import { parseBase64DataUrl } from '@memberjunction/ai';
12
13
  import { RunView, LogError, LogStatus } from '@memberjunction/core';
14
+ import { EscapeSQLString } from '@memberjunction/global';
13
15
  import { UserCache } from '@memberjunction/generic-database-provider';
14
16
  /**
15
17
  * Abstract base class for messaging platform adapters.
@@ -119,17 +121,35 @@ export class BaseMessagingAdapter {
119
121
  }
120
122
  // 2. Resolve the MJ user for this platform sender
121
123
  const contextUser = await this.resolveContextUser(message);
122
- // 3. Show typing indicator
124
+ // 3. Fetch thread history (needed for the multi-bot gate below, agent resolution, and
125
+ // conversation context). Deliberately BEFORE the typing indicator: the gate may
126
+ // decline silently, and an indicator followed by silence reads as a hung bot.
127
+ const threadHistory = await this.safeGetThreadHistory(message);
128
+ // 4. Multi-bot thread gate. A thread reply needs no mention to reach a bot, so on a
129
+ // platform that broadcasts channel messages to every installed app (Slack), ONE
130
+ // reply reached every bot and each answered — N replies to one message once more
131
+ // than one agent had its own app. A bot may answer an un-mentioned thread reply
132
+ // only when it is already party to that thread (it posted in it).
133
+ if (message.ThreadID && threadHistory.length > 0 && !this.respondsToUnaddressedThreadReplies()) {
134
+ const botUserId = this.getBotUserId();
135
+ const addressed = message.IsBotMention === true
136
+ || (!!botUserId && typeof message.Text === 'string' && message.Text.includes(botUserId));
137
+ const inThread = threadHistory.some((m) => this.isSelf(m.SenderID));
138
+ if (!addressed && !inThread) {
139
+ LogStatus(`${this.PlatformName}: not answering thread ${message.ThreadID} — this bot was not ` +
140
+ `addressed and has not posted in it (multi-bot thread gate)`);
141
+ return;
142
+ }
143
+ }
144
+ // 5. Show typing indicator
123
145
  if (this.settings.ShowTypingIndicator !== false) {
124
146
  await this.safeShowTypingIndicator(message);
125
147
  }
126
- // 4. Fetch thread history (needed for both agent resolution and conversation context)
127
- const threadHistory = await this.safeGetThreadHistory(message);
128
- // 5. Determine which agent to use (uses thread history for agent affinity)
148
+ // 6. Determine which agent to use (uses thread history for agent affinity)
129
149
  const { agent, multiAgentNote } = await this.resolveAgent(message, contextUser, threadHistory);
130
- // 6. Build conversation messages from thread history
150
+ // 7. Build conversation messages from thread history
131
151
  const conversationMessages = this.buildConversationMessages(threadHistory, message);
132
- // 7. Run the agent with streaming
152
+ // 8. Run the agent with streaming
133
153
  await this.executeAgentAndRespond(message, agent, contextUser, conversationMessages, multiAgentNote);
134
154
  }
135
155
  /**
@@ -139,6 +159,71 @@ export class BaseMessagingAdapter {
139
159
  get AvailableAgentNames() {
140
160
  return this.availableAgents.map(a => a.Name ?? '').filter(Boolean);
141
161
  }
162
+ /**
163
+ * Is this artifact meant for the user, rather than internal system state?
164
+ *
165
+ * Fails OPEN: an unreadable artifact keeps its link, since losing a working link on a
166
+ * transient read failure is worse than the rare case of surfacing an internal one.
167
+ */
168
+ async isUserVisibleArtifact(artifactId, contextUser) {
169
+ try {
170
+ const res = await new RunView().RunView({
171
+ EntityName: 'MJ: Artifacts',
172
+ ExtraFilter: `ID = '${EscapeSQLString(artifactId)}'`,
173
+ Fields: ['ID', 'Visibility'],
174
+ ResultType: 'simple',
175
+ MaxRows: 1,
176
+ }, contextUser);
177
+ const visibility = res.Success ? res.Results?.[0]?.Visibility : undefined;
178
+ if (visibility === 'System Only') {
179
+ LogStatus(`Not linking artifact ${artifactId}: it is marked System Only`);
180
+ return false;
181
+ }
182
+ return true;
183
+ }
184
+ catch (error) {
185
+ LogError(`Could not read artifact ${artifactId} visibility; linking it anyway:`, undefined, error);
186
+ return true;
187
+ }
188
+ }
189
+ /**
190
+ * Was this message posted by THIS bot?
191
+ *
192
+ * Not a bare `=== getBotUserId()`. A platform may publish more than one identifier for the
193
+ * same bot and return a different one depending on how the message was posted — on Slack a
194
+ * post carrying a `username`/`icon_url` override comes back with a `bot_id` and NO `user`,
195
+ * and this adapter sets that override on every agent reply so the agent answers under its own
196
+ * name. Platforms with that split override this; the default is a single-identifier compare.
197
+ */
198
+ isSelf(senderId) {
199
+ const botUserId = this.getBotUserId();
200
+ return !!senderId && !!botUserId && senderId === botUserId;
201
+ }
202
+ /**
203
+ * Was this history message written by ANY bot (not just this one)?
204
+ *
205
+ * Thread affinity and conversation context must both ignore other bots' messages: an agent's
206
+ * reply names itself in prose, which the mention matcher would read as a user request, and as
207
+ * a 'user' turn it feeds one agent's self-description into another's context.
208
+ *
209
+ * The default is `false` because the marker is platform-specific — see `SlackAdapter`, which
210
+ * reads the Events API's `bot_id`/`bot_profile`/`bot_message` fields.
211
+ */
212
+ isBotAuthored(_message) {
213
+ return false;
214
+ }
215
+ /**
216
+ * May this bot answer a thread reply that did not address it?
217
+ *
218
+ * `false` (the default) enables the multi-bot thread gate in {@link HandleMessage}: with one
219
+ * app per agent, an un-mentioned thread reply would otherwise be answered by every bot in the
220
+ * channel. Platforms that route a message only to its addressee — Teams, where a channel
221
+ * message reaches a bot solely via an @mention — should return `true`, as the gate is both
222
+ * unnecessary and would suppress legitimate replies there.
223
+ */
224
+ respondsToUnaddressedThreadReplies() {
225
+ return false;
226
+ }
142
227
  // ─── Protected helper methods ─────────────────────────────────────
143
228
  /**
144
229
  * Build an `AgentIdentity` from an agent entity.
@@ -315,7 +400,13 @@ export class BaseMessagingAdapter {
315
400
  }
316
401
  }
317
402
  if (email) {
318
- const userCache = new UserCache();
403
+ // UserCache.Instance, never `new UserCache()`: UserCache extends BaseSingleton, whose
404
+ // constructor RETURNS the existing shared instance — and then the subclass field
405
+ // initializer (`_users = []`) runs against that returned instance. So `new` both
406
+ // EMPTIES the process-wide user cache and reads back an empty list: the lookup below
407
+ // could never succeed, and the whole server lost its user cache until the next
408
+ // auto-refresh tick.
409
+ const userCache = UserCache.Instance;
319
410
  const mjUser = userCache.Users.find((u) => u.Email?.toLowerCase() === email.toLowerCase());
320
411
  if (mjUser) {
321
412
  return mjUser;
@@ -377,11 +468,13 @@ export class BaseMessagingAdapter {
377
468
  resolveThreadAgent(threadHistory) {
378
469
  if (threadHistory.length === 0)
379
470
  return null;
380
- const botUserId = this.getBotUserId();
381
471
  // Walk through thread messages (oldest first) looking for user messages with agent mentions
382
472
  for (const msg of threadHistory) {
383
- // Skip bot messages
384
- if (msg.SenderID === botUserId)
473
+ // Skip bot messages — this bot's own, AND any other bot's. Another agent's reply
474
+ // names that agent in its own prose ("I'm Sage, ..."), which the mention matcher
475
+ // below reads as a user asking for it, letting one bot steal a thread that belongs
476
+ // to another. Only humans establish thread affinity.
477
+ if (this.isSelf(msg.SenderID) || this.isBotAuthored(msg))
385
478
  continue;
386
479
  // Check for agent mentions in this message
387
480
  const mentions = msg.MentionedAgentNames ?? this.matchAgentMentions(msg.Text);
@@ -512,7 +605,17 @@ export class BaseMessagingAdapter {
512
605
  createArtifacts: true,
513
606
  conversationName: `${this.PlatformName}: ${userMessageText.substring(0, 80)}`,
514
607
  });
515
- const artifactId = conversationResult.artifactInfo?.artifactId;
608
+ // Only link an artifact the user is meant to see. MJ marks an artifact
609
+ // `Visibility = 'System Only'` when the agent's ArtifactCreationMode says so — the
610
+ // Explorer UI hides those, but the link we post does not, so a run whose payload was
611
+ // internal state (a loop agent's scratch payload) offered "view the artifact" and
612
+ // opened raw JSON. Checked on the artifact itself rather than the agent's mode,
613
+ // because a System-Only agent can still produce a user-facing FILE artifact.
614
+ const candidateArtifactId = conversationResult.artifactInfo?.artifactId;
615
+ const artifactId = candidateArtifactId
616
+ && (await this.isUserVisibleArtifact(candidateArtifactId, contextUser))
617
+ ? candidateArtifactId
618
+ : undefined;
516
619
  return {
517
620
  result: conversationResult.agentResult,
518
621
  progressMessageId,
@@ -545,6 +648,12 @@ export class BaseMessagingAdapter {
545
648
  return this.cachedEnvironmentID;
546
649
  }
547
650
  detectDelegation(result) {
651
+ // A bot pinned to one agent must not be delegated away from it. Checked before any
652
+ // strategy runs, because Strategy 3 below reads the reply TEXT — so an orchestrator
653
+ // agent describing its own routing role would hand the conversation to whichever agent
654
+ // it happened to name, under this bot's identity and with no attribution.
655
+ if (this.settings.DisableDelegation)
656
+ return null;
548
657
  if (!result.success)
549
658
  return null;
550
659
  // Strategy 1: Check in-memory payload.invokeAgent (primary, matches MJ Explorer)
@@ -718,6 +827,98 @@ export class BaseMessagingAdapter {
718
827
  else {
719
828
  await this.sendFinalMessage(message, formatted);
720
829
  }
830
+ // Deliver binary output as real platform files, AFTER the text reply is posted.
831
+ //
832
+ // Two sources, neither of which the message renderers can show:
833
+ // - `mediaOutputs` — generated images arrive as base64, and the block/card builders can
834
+ // only render media that already has a public https URL, so they were silently dropped.
835
+ // - inlined file data URIs on actionable commands — MJ's document actions embed a whole
836
+ // generated file as `data:<mime>;base64,...` when no file storage account is
837
+ // configured. Unusable as a link (see isOpenableURI), but the bytes are right there.
838
+ //
839
+ // Failures are logged and swallowed: the text reply has already posted, and an upload
840
+ // problem must not turn a delivered answer into an error.
841
+ if (this.uploadMediaOutputs) {
842
+ // De-duplicated by payload, in preference order. A document action puts the file in
843
+ // `fileOutputs` AND the model often repeats the same base64 back as an `open:url`
844
+ // command, so an un-deduped union uploads the identical file twice — and both copies
845
+ // count against the platform's per-reply file cap.
846
+ const attachments = [];
847
+ const seen = new Set();
848
+ for (const file of [
849
+ ...(result.mediaOutputs ?? []),
850
+ ...this.collectFileOutputAttachments(result),
851
+ ...this.collectInlineFileAttachments(result),
852
+ ]) {
853
+ if (file.data && seen.has(file.data))
854
+ continue;
855
+ if (file.data)
856
+ seen.add(file.data);
857
+ attachments.push(file);
858
+ }
859
+ if (attachments.length > 0) {
860
+ try {
861
+ await this.uploadMediaOutputs(message, attachments);
862
+ }
863
+ catch (error) {
864
+ LogError('Failed to upload agent output files (the text reply already posted):', undefined, error);
865
+ }
866
+ }
867
+ }
868
+ }
869
+ /**
870
+ * Collect the files an agent produced, from the run's own `fileOutputs`.
871
+ *
872
+ * This is the canonical source — `fileOutputs` is what MJ turns into file artifacts — and it
873
+ * carries the real filename and MIME type rather than leaving them to be guessed. Entries
874
+ * already saved to storage (`fileId`, no `fileData`) are skipped: those have a durable
875
+ * location, and re-uploading their bytes to chat is not this method's job.
876
+ *
877
+ * Preferred over {@link collectInlineFileAttachments}, which depends on the model choosing to
878
+ * emit a `data:` URI — it does so only sometimes, so relying on it meant a generated document
879
+ * reached chat on one run and not the next.
880
+ */
881
+ collectFileOutputAttachments(result) {
882
+ return (result.fileOutputs ?? [])
883
+ .filter((o) => !!o.fileData)
884
+ .map((o) => ({
885
+ modality: 'file',
886
+ mimeType: o.mimeType,
887
+ data: o.fileData,
888
+ fileName: o.fileName,
889
+ label: o.fileName,
890
+ }));
891
+ }
892
+ /**
893
+ * Harvest files that an agent inlined as `data:` URIs on its actionable commands.
894
+ *
895
+ * MJ's document actions fall back to embedding the generated file itself when no file storage
896
+ * account is configured. That URI cannot be opened from a chat client, so the file is decoded
897
+ * here and handed to the platform's uploader as an ordinary attachment.
898
+ */
899
+ collectInlineFileAttachments(result) {
900
+ const files = [];
901
+ for (const cmd of result.actionableCommands ?? []) {
902
+ if (cmd.type !== 'open:url')
903
+ continue;
904
+ // The scheme is lower-cased first: the guard that DROPS these buttons is
905
+ // case-insensitive, so an upper-case `DATA:` URI would otherwise be suppressed as a
906
+ // link and never collected as a file — the note would promise an attachment that
907
+ // never arrives.
908
+ const parsed = parseBase64DataUrl(cmd.url.trim().replace(/^data:/i, 'data:'));
909
+ if (!parsed)
910
+ continue;
911
+ files.push({
912
+ modality: 'file',
913
+ mimeType: parsed.mediaType,
914
+ data: parsed.data,
915
+ label: cmd.label,
916
+ // No fileName: `OpenURLCommand` does not declare one, nothing in the repo emits
917
+ // one, and the model-facing command contract never mentions the field — so the
918
+ // adapter derives the name from the label and the MIME type instead.
919
+ });
920
+ }
921
+ return files;
721
922
  }
722
923
  /**
723
924
  * Extract the user-facing response text from an `ExecuteAgentResult`.
@@ -830,10 +1031,14 @@ export class BaseMessagingAdapter {
830
1031
  * Bot @mentions are stripped from user messages.
831
1032
  */
832
1033
  buildConversationMessages(history, currentMessage) {
833
- const botUserId = this.getBotUserId();
834
1034
  const messages = [];
835
1035
  for (const msg of history) {
836
- const role = msg.SenderID === botUserId ? 'assistant' : 'user';
1036
+ // Another bot's message is neither this agent's own turn nor anything the user said.
1037
+ // Left as a 'user' turn it fed a different agent's self-description into this
1038
+ // agent's context, and the model imitated it.
1039
+ if (!this.isSelf(msg.SenderID) && this.isBotAuthored(msg))
1040
+ continue;
1041
+ const role = this.isSelf(msg.SenderID) ? 'assistant' : 'user';
837
1042
  const content = role === 'user' ? this.stripBotMention(msg.Text) : msg.Text;
838
1043
  if (content.trim()) {
839
1044
  messages.push({ role, content });
@@ -889,7 +1094,10 @@ export class BaseMessagingAdapter {
889
1094
  * @throws Error if the configured email cannot be found.
890
1095
  */
891
1096
  async loadFallbackContextUser() {
892
- const userCache = new UserCache();
1097
+ // UserCache.Instance, never `new UserCache()` — see resolveContextUser for why `new`
1098
+ // wipes the shared cache. Here it made Initialize fail with "Fallback context user not
1099
+ // found" for EVERY configured email, on every deployment.
1100
+ const userCache = UserCache.Instance;
893
1101
  const user = userCache.Users.find((u) => u.Email?.toLowerCase() === this.settings.ContextUserEmail.toLowerCase());
894
1102
  if (!user) {
895
1103
  throw new Error(`Fallback context user not found: '${this.settings.ContextUserEmail}'. ` +
@@ -1 +1 @@
1
- {"version":3,"file":"BaseMessagingAdapter.js","sourceRoot":"","sources":["../../src/base/BaseMessagingAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseMessagingAdapter.js","sourceRoot":"","sources":["../../src/base/BaseMessagingAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * @module @memberjunction/messaging-adapters
3
- * @description Shared Markdown parsing utilities used by all platform-specific formatters.
3
+ * @description Shared formatting utilities used by all platform-specific formatters.
4
4
  */
5
+ import { OpenResourceCommand } from '@memberjunction/ai-core-plus';
5
6
  import { MarkdownSection } from './types.js';
6
7
  /**
7
8
  * Split Markdown text into typed sections for platform-specific formatting.
@@ -67,4 +68,33 @@ export declare function truncateText(text: string, maxLength: number): string;
67
68
  * @returns Array of text chunks.
68
69
  */
69
70
  export declare function splitTextIntoChunks(text: string, maxLength: number): string[];
71
+ /**
72
+ * Can this URI be opened from a chat client at all?
73
+ *
74
+ * An ALLOW-list of `http:`/`https:`, deliberately, because the answer has to hold for a hostile
75
+ * URL as well as a broken one. Two separate problems:
76
+ *
77
+ * - `data:` (and `blob:`/`file:`) URIs are inert: Slack rejects the whole message and Adaptive
78
+ * Cards silently do nothing, so a button over one is indistinguishable from a broken bot. Agents
79
+ * do emit them — MJ's document actions inline a whole generated file as `data:<mime>;base64,...`
80
+ * whenever no file storage account is configured, which is the normal local-dev state.
81
+ * - `javascript:`, `vbscript:` and OS handler schemes such as `ms-msdt:` are *worse* than inert.
82
+ * Teams desktop hands an unknown scheme to the operating system's URI handler, so a deny-list
83
+ * naming only the inert schemes would turn an agent-authored URL into a local code-execution
84
+ * surface. An allow-list cannot be outflanked by a scheme nobody thought to enumerate.
85
+ *
86
+ * Localhost stays allowed: dev "View in MJ Explorer" links depend on it, and Teams opens it.
87
+ * Whether a platform will additionally refuse an openable URL — Slack rejects non-public http(s)
88
+ * — is a separate screen; see `isButtonSafeURL` in the Slack builder.
89
+ */
90
+ export declare function isOpenableURI(url: unknown): boolean;
91
+ /**
92
+ * Build an MJ Explorer deep link for an `open:resource` command.
93
+ *
94
+ * Returns `null` when there is nothing safe to link to — no configured Explorer base URL, or a
95
+ * resource kind whose identifier is absent. `resourceId` is optional on the shared `UICommand`
96
+ * type (a Record can be addressed by `keys` instead), so every branch checks it rather than
97
+ * emitting a `/resource/dashboard/undefined` URL that 404s on click.
98
+ */
99
+ export declare function buildExplorerDeepLink(cmd: OpenResourceCommand, explorerBaseURL?: string): string | null;
70
100
  //# sourceMappingURL=message-formatter.d.ts.map