@memberjunction/server 6.2.0-edge.1 → 6.2.0-edge.3

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 (220) hide show
  1. package/README.md +30 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/config.d.ts +2189 -71
  4. package/dist/config.d.ts.map +1 -1
  5. package/dist/config.js +123 -3
  6. package/dist/config.js.map +1 -1
  7. package/dist/context.d.ts.map +1 -1
  8. package/dist/context.js +11 -23
  9. package/dist/context.js.map +1 -1
  10. package/dist/generated/graphql-schemas/__mj.d.ts +2143 -205
  11. package/dist/generated/graphql-schemas/__mj.d.ts.map +1 -1
  12. package/dist/generated/graphql-schemas/__mj.js +24441 -14433
  13. package/dist/generated/graphql-schemas/__mj.js.map +1 -1
  14. package/dist/generic/FireAndForgetHeartbeat.d.ts +15 -1
  15. package/dist/generic/FireAndForgetHeartbeat.d.ts.map +1 -1
  16. package/dist/generic/FireAndForgetHeartbeat.js +16 -2
  17. package/dist/generic/FireAndForgetHeartbeat.js.map +1 -1
  18. package/dist/generic/OrphanedConversationDetailReconciler.d.ts +31 -0
  19. package/dist/generic/OrphanedConversationDetailReconciler.d.ts.map +1 -0
  20. package/dist/generic/OrphanedConversationDetailReconciler.js +215 -0
  21. package/dist/generic/OrphanedConversationDetailReconciler.js.map +1 -0
  22. package/dist/generic/PushStatusResolver.d.ts +38 -0
  23. package/dist/generic/PushStatusResolver.d.ts.map +1 -1
  24. package/dist/generic/PushStatusResolver.js +84 -1
  25. package/dist/generic/PushStatusResolver.js.map +1 -1
  26. package/dist/generic/ResolverBase.d.ts +56 -4
  27. package/dist/generic/ResolverBase.d.ts.map +1 -1
  28. package/dist/generic/ResolverBase.js +191 -74
  29. package/dist/generic/ResolverBase.js.map +1 -1
  30. package/dist/generic/RunViewResolver.d.ts +4 -0
  31. package/dist/generic/RunViewResolver.d.ts.map +1 -1
  32. package/dist/generic/RunViewResolver.js +33 -1
  33. package/dist/generic/RunViewResolver.js.map +1 -1
  34. package/dist/index.d.ts +4 -0
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +204 -50
  37. package/dist/index.js.map +1 -1
  38. package/dist/postgresqlCompat.d.ts +8 -0
  39. package/dist/postgresqlCompat.d.ts.map +1 -0
  40. package/dist/postgresqlCompat.js +19 -0
  41. package/dist/postgresqlCompat.js.map +1 -0
  42. package/dist/postgresqlPoolSettings.d.ts +108 -0
  43. package/dist/postgresqlPoolSettings.d.ts.map +1 -0
  44. package/dist/postgresqlPoolSettings.js +134 -0
  45. package/dist/postgresqlPoolSettings.js.map +1 -0
  46. package/dist/resolvers/AdhocQueryResolver.d.ts +23 -18
  47. package/dist/resolvers/AdhocQueryResolver.d.ts.map +1 -1
  48. package/dist/resolvers/AdhocQueryResolver.js +77 -167
  49. package/dist/resolvers/AdhocQueryResolver.js.map +1 -1
  50. package/dist/resolvers/AgentRunStatusPublisher.d.ts +55 -0
  51. package/dist/resolvers/AgentRunStatusPublisher.d.ts.map +1 -0
  52. package/dist/resolvers/AgentRunStatusPublisher.js +141 -0
  53. package/dist/resolvers/AgentRunStatusPublisher.js.map +1 -0
  54. package/dist/resolvers/ConversationRunEventsResolver.d.ts +90 -0
  55. package/dist/resolvers/ConversationRunEventsResolver.d.ts.map +1 -0
  56. package/dist/resolvers/ConversationRunEventsResolver.js +283 -0
  57. package/dist/resolvers/ConversationRunEventsResolver.js.map +1 -0
  58. package/dist/resolvers/DuplicateEntryCheckResolver.d.ts +98 -0
  59. package/dist/resolvers/DuplicateEntryCheckResolver.d.ts.map +1 -0
  60. package/dist/resolvers/DuplicateEntryCheckResolver.js +227 -0
  61. package/dist/resolvers/DuplicateEntryCheckResolver.js.map +1 -0
  62. package/dist/resolvers/EntityRecordNameResolver.d.ts +7 -23
  63. package/dist/resolvers/EntityRecordNameResolver.d.ts.map +1 -1
  64. package/dist/resolvers/EntityRecordNameResolver.js +9 -47
  65. package/dist/resolvers/EntityRecordNameResolver.js.map +1 -1
  66. package/dist/resolvers/FetchEntityVectorsResolver.d.ts.map +1 -1
  67. package/dist/resolvers/FetchEntityVectorsResolver.js +2 -1
  68. package/dist/resolvers/FetchEntityVectorsResolver.js.map +1 -1
  69. package/dist/resolvers/GetDataResolver.d.ts.map +1 -1
  70. package/dist/resolvers/GetDataResolver.js +9 -0
  71. package/dist/resolvers/GetDataResolver.js.map +1 -1
  72. package/dist/resolvers/HumanHandoffResolver.d.ts +107 -0
  73. package/dist/resolvers/HumanHandoffResolver.d.ts.map +1 -0
  74. package/dist/resolvers/HumanHandoffResolver.js +324 -0
  75. package/dist/resolvers/HumanHandoffResolver.js.map +1 -0
  76. package/dist/resolvers/MeetingResolver.d.ts +69 -0
  77. package/dist/resolvers/MeetingResolver.d.ts.map +1 -0
  78. package/dist/resolvers/MeetingResolver.js +381 -0
  79. package/dist/resolvers/MeetingResolver.js.map +1 -0
  80. package/dist/resolvers/MergeRecordsResolver.d.ts +7 -0
  81. package/dist/resolvers/MergeRecordsResolver.d.ts.map +1 -1
  82. package/dist/resolvers/MergeRecordsResolver.js +16 -2
  83. package/dist/resolvers/MergeRecordsResolver.js.map +1 -1
  84. package/dist/resolvers/RealtimeBridgeResolver.d.ts +34 -1
  85. package/dist/resolvers/RealtimeBridgeResolver.d.ts.map +1 -1
  86. package/dist/resolvers/RealtimeBridgeResolver.js +202 -7
  87. package/dist/resolvers/RealtimeBridgeResolver.js.map +1 -1
  88. package/dist/resolvers/RealtimeClientSessionResolver.d.ts +45 -89
  89. package/dist/resolvers/RealtimeClientSessionResolver.d.ts.map +1 -1
  90. package/dist/resolvers/RealtimeClientSessionResolver.js +94 -240
  91. package/dist/resolvers/RealtimeClientSessionResolver.js.map +1 -1
  92. package/dist/resolvers/RunAIAgentResolver.d.ts +0 -16
  93. package/dist/resolvers/RunAIAgentResolver.d.ts.map +1 -1
  94. package/dist/resolvers/RunAIAgentResolver.js +23 -153
  95. package/dist/resolvers/RunAIAgentResolver.js.map +1 -1
  96. package/dist/resolvers/RunDecisionResolver.d.ts +149 -0
  97. package/dist/resolvers/RunDecisionResolver.d.ts.map +1 -0
  98. package/dist/resolvers/RunDecisionResolver.js +396 -0
  99. package/dist/resolvers/RunDecisionResolver.js.map +1 -0
  100. package/dist/resolvers/VectorizeEntityResolver.d.ts +1 -1
  101. package/dist/resolvers/VectorizeEntityResolver.d.ts.map +1 -1
  102. package/dist/resolvers/VectorizeEntityResolver.js +14 -10
  103. package/dist/resolvers/VectorizeEntityResolver.js.map +1 -1
  104. package/dist/resolvers/adhocTimeout.d.ts +7 -0
  105. package/dist/resolvers/adhocTimeout.d.ts.map +1 -0
  106. package/dist/resolvers/adhocTimeout.js +12 -0
  107. package/dist/resolvers/adhocTimeout.js.map +1 -0
  108. package/dist/resolvers/meetings/index.d.ts +5 -0
  109. package/dist/resolvers/meetings/index.d.ts.map +1 -0
  110. package/dist/resolvers/meetings/index.js +5 -0
  111. package/dist/resolvers/meetings/index.js.map +1 -0
  112. package/dist/resolvers/meetings/meetingHelpers.d.ts +17 -0
  113. package/dist/resolvers/meetings/meetingHelpers.d.ts.map +1 -0
  114. package/dist/resolvers/meetings/meetingHelpers.js +212 -0
  115. package/dist/resolvers/meetings/meetingHelpers.js.map +1 -0
  116. package/dist/resolvers/meetings/meetingMutations.d.ts +12 -0
  117. package/dist/resolvers/meetings/meetingMutations.d.ts.map +1 -0
  118. package/dist/resolvers/meetings/meetingMutations.js +418 -0
  119. package/dist/resolvers/meetings/meetingMutations.js.map +1 -0
  120. package/dist/resolvers/meetings/meetingQueries.d.ts +7 -0
  121. package/dist/resolvers/meetings/meetingQueries.d.ts.map +1 -0
  122. package/dist/resolvers/meetings/meetingQueries.js +113 -0
  123. package/dist/resolvers/meetings/meetingQueries.js.map +1 -0
  124. package/dist/resolvers/meetings/meetingTypes.d.ts +89 -0
  125. package/dist/resolvers/meetings/meetingTypes.d.ts.map +1 -0
  126. package/dist/resolvers/meetings/meetingTypes.js +345 -0
  127. package/dist/resolvers/meetings/meetingTypes.js.map +1 -0
  128. package/dist/rest/ViewOperationsHandler.d.ts.map +1 -1
  129. package/dist/rest/ViewOperationsHandler.js +8 -5
  130. package/dist/rest/ViewOperationsHandler.js.map +1 -1
  131. package/dist/services/TaskGraphActionRunner.d.ts +8 -0
  132. package/dist/services/TaskGraphActionRunner.d.ts.map +1 -1
  133. package/dist/services/TaskGraphActionRunner.js +27 -1
  134. package/dist/services/TaskGraphActionRunner.js.map +1 -1
  135. package/dist/services/WorkQueueHostService.d.ts +36 -0
  136. package/dist/services/WorkQueueHostService.d.ts.map +1 -0
  137. package/dist/services/WorkQueueHostService.js +97 -0
  138. package/dist/services/WorkQueueHostService.js.map +1 -0
  139. package/dist/services/workQueueConfig.d.ts +103 -0
  140. package/dist/services/workQueueConfig.d.ts.map +1 -0
  141. package/dist/services/workQueueConfig.js +48 -0
  142. package/dist/services/workQueueConfig.js.map +1 -0
  143. package/dist/types.d.ts +5 -0
  144. package/dist/types.d.ts.map +1 -1
  145. package/dist/types.js.map +1 -1
  146. package/package.json +95 -92
  147. package/src/__tests__/AdhocQueryResolver.bugs.test.ts +14 -35
  148. package/src/__tests__/AdhocQueryResolver.pagination.test.ts +6 -2
  149. package/src/__tests__/AdhocQueryResolver.scopeGuard.test.ts +3 -3
  150. package/src/__tests__/AgentRunStatusPublisher.test.ts +175 -0
  151. package/src/__tests__/DuplicateEntryCheckResolver.test.ts +300 -0
  152. package/src/__tests__/EntityRecordNameResolver.fieldSecurity.test.ts +27 -72
  153. package/src/__tests__/HumanHandoffResolver.test.ts +233 -0
  154. package/src/__tests__/MeetingResolver.test.ts +374 -0
  155. package/src/__tests__/RealtimeBridgeResolver.test.ts +240 -2
  156. package/src/__tests__/RealtimeClientSessionResolver.test.ts +216 -2
  157. package/src/__tests__/RemoteBrowserActionRecovery.test.ts +7 -1
  158. package/src/__tests__/RemoteBrowserAudioStream.test.ts +7 -1
  159. package/src/__tests__/RemoteBrowserSnapshot.test.ts +7 -1
  160. package/src/__tests__/ResolverBase.adhocReadScope.test.ts +96 -0
  161. package/src/__tests__/ResolverBase.clientOldValues.test.ts +52 -0
  162. package/src/__tests__/ResolverBase.filterEscaping.test.ts +21 -2
  163. package/src/__tests__/ResolverBase.includeBinaryFields.test.ts +291 -0
  164. package/src/__tests__/RunAIAgentResolver.historyFrom.test.ts +182 -12
  165. package/src/__tests__/RunAIAgentResolver.streaming.test.ts +18 -27
  166. package/src/__tests__/RunDecisionResolver.test.ts +699 -0
  167. package/src/__tests__/TaskGraphActionRunner.durablePayload.test.ts +43 -0
  168. package/src/__tests__/VectorizeEntityResolver.test.ts +106 -0
  169. package/src/__tests__/WorkQueueHostService.test.ts +133 -0
  170. package/src/__tests__/adhocTimeoutClamp.test.ts +26 -0
  171. package/src/__tests__/conversationRunEvents.test.ts +399 -0
  172. package/src/__tests__/orphanedConversationDetailReconciler.test.ts +283 -0
  173. package/src/__tests__/postgresqlPoolSettings.test.ts +131 -0
  174. package/src/__tests__/pushStatusFanOut.test.ts +206 -0
  175. package/src/__tests__/translateBracketsToPG.test.ts +20 -0
  176. package/src/auth/__tests__/backward-compatibility.test.ts +1 -0
  177. package/src/config.ts +130 -3
  178. package/src/context.ts +11 -24
  179. package/src/generated/graphql-schemas/__mj.ts +24183 -17182
  180. package/src/generic/FireAndForgetHeartbeat.ts +16 -2
  181. package/src/generic/OrphanedConversationDetailReconciler.ts +267 -0
  182. package/src/generic/PushStatusResolver.ts +97 -1
  183. package/src/generic/ResolverBase.ts +220 -76
  184. package/src/generic/RunViewResolver.ts +33 -2
  185. package/src/index.ts +228 -51
  186. package/src/postgresqlCompat.ts +21 -0
  187. package/src/postgresqlPoolSettings.ts +213 -0
  188. package/src/resolvers/AdhocQueryResolver.ts +88 -188
  189. package/src/resolvers/AgentRunStatusPublisher.ts +175 -0
  190. package/src/resolvers/ConversationRunEventsResolver.ts +308 -0
  191. package/src/resolvers/DuplicateEntryCheckResolver.ts +232 -0
  192. package/src/resolvers/EntityRecordNameResolver.ts +9 -51
  193. package/src/resolvers/FetchEntityVectorsResolver.ts +2 -1
  194. package/src/resolvers/GetDataResolver.ts +10 -0
  195. package/src/resolvers/HumanHandoffResolver.ts +304 -0
  196. package/src/resolvers/MeetingResolver.ts +438 -0
  197. package/src/resolvers/MergeRecordsResolver.ts +14 -2
  198. package/src/resolvers/RealtimeBridgeResolver.ts +227 -13
  199. package/src/resolvers/RealtimeClientSessionResolver.ts +99 -287
  200. package/src/resolvers/RunAIAgentResolver.ts +28 -174
  201. package/src/resolvers/RunDecisionResolver.ts +435 -0
  202. package/src/resolvers/VectorizeEntityResolver.ts +16 -11
  203. package/src/resolvers/__tests__/MergeRecordsResolver.test.ts +93 -0
  204. package/src/resolvers/adhocTimeout.ts +12 -0
  205. package/src/resolvers/meetings/index.ts +4 -0
  206. package/src/resolvers/meetings/meetingHelpers.ts +307 -0
  207. package/src/resolvers/meetings/meetingMutations.ts +535 -0
  208. package/src/resolvers/meetings/meetingQueries.ts +172 -0
  209. package/src/resolvers/meetings/meetingTypes.ts +238 -0
  210. package/src/rest/ViewOperationsHandler.ts +8 -5
  211. package/src/services/TaskGraphActionRunner.ts +29 -1
  212. package/src/services/WorkQueueHostService.ts +129 -0
  213. package/src/services/workQueueConfig.ts +52 -0
  214. package/src/types.ts +5 -0
  215. package/dist/resolvers/adhoc-query-helpers.d.ts +0 -33
  216. package/dist/resolvers/adhoc-query-helpers.d.ts.map +0 -1
  217. package/dist/resolvers/adhoc-query-helpers.js +0 -50
  218. package/dist/resolvers/adhoc-query-helpers.js.map +0 -1
  219. package/src/__tests__/adhoc-query-helpers.test.ts +0 -50
  220. package/src/resolvers/adhoc-query-helpers.ts +0 -67
@@ -12,15 +12,17 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
12
  };
13
13
  import { Resolver, Mutation, Query, Arg, Ctx, ObjectType, InputType, Field } from 'type-graphql';
14
14
  import { randomUUID } from 'crypto';
15
- import { LogError, LogStatusEx } from '@memberjunction/core';
16
- import { LiveKitTokenService, LiveKitAgentRoomCoordinator, LiveKitEgressService } from '@memberjunction/livekit-room-server';
15
+ import { LogError, LogStatusEx, RunView } from '@memberjunction/core';
16
+ import { EscapeSQLString } from '@memberjunction/global';
17
+ import { LiveKitTokenService, LiveKitAgentRoomCoordinator, LiveKitEgressService, LiveKitUserIdentity, RoomHandoffEngine, } from '@memberjunction/livekit-room-server';
17
18
  import { ResolverBase } from '../generic/ResolverBase.js';
18
19
  import { GetReadWriteProvider } from '../util.js';
19
- import { CreateBridgeRealtimeSession, FinalizeBridgeCoAgentRuns, GetRealtimeModelVoices, CreateBridgeRoomTranscriptSink, RealtimeTurnModeratorDecision } from '@memberjunction/ai-agents';
20
+ import { CreateBridgeRealtimeSession, FinalizeBridgeCoAgentRuns, GetRealtimeModelVoices, CreateBridgeRoomTranscriptSink, RealtimeTurnModeratorDecision, GetBridgeRealtimeRuntime } from '@memberjunction/ai-agents';
20
21
  import { AIBridgeEngine } from '@memberjunction/ai-bridge-server';
21
22
  import { SessionManager } from '../agentSessions/SessionManager.js';
22
23
  import { NotificationEngine } from '@memberjunction/notifications';
23
24
  import { RegisterMeetingRecordingFile, CorrelateRecordingStart } from './meetingRecordingRegistration.js';
25
+ import { RoomAuthorizationService } from '@memberjunction/livekit-room-server';
24
26
  /**
25
27
  * Binds the agent realtime-session factory onto the LiveKit room coordinator's model-session creation seam.
26
28
  * Module-load side effect — it runs when MJServer builds its GraphQL schema (which imports this resolver),
@@ -30,6 +32,19 @@ import { RegisterMeetingRecordingFile, CorrelateRecordingStart } from './meeting
30
32
  * other. Idempotent (latest-wins).
31
33
  */
32
34
  LiveKitAgentRoomCoordinator.Instance.SetSessionFactory(CreateBridgeRealtimeSession);
35
+ /**
36
+ * Binds the turn-taking tool handler seam (same module-load rationale as the factory above). A full-duplex model
37
+ * in a shared room calls `i_am_addressed` / `yield_turn`; the bridge engine owns what those mean, and this installs
38
+ * the engine's handler as the model session runtime's local tool handler (`@memberjunction/ai-agents`).
39
+ */
40
+ LiveKitAgentRoomCoordinator.Instance.SetTurnToolBinder((session, handler) => {
41
+ const runtime = GetBridgeRealtimeRuntime(session);
42
+ if (!runtime) {
43
+ LogError('[RealtimeBridge] the model session has no bridge runtime; i_am_addressed / yield_turn will not execute for it.');
44
+ return;
45
+ }
46
+ runtime.SetLocalToolHandler(handler);
47
+ });
33
48
  /**
34
49
  * Binds the co-agent run finalizer onto the bridge engine (same module-load rationale as the factory above).
35
50
  * Lets the engine finalize a session's dangling co-agent observability run when it reaps a bridge WITHOUT a
@@ -151,10 +166,37 @@ __decorate([
151
166
  Field(() => String, { nullable: true }),
152
167
  __metadata("design:type", String)
153
168
  ], StartLiveKitAgentRoomSessionInput.prototype, "TurnMode", void 0);
169
+ __decorate([
170
+ Field(() => Boolean, { nullable: true }),
171
+ __metadata("design:type", Boolean)
172
+ ], StartLiveKitAgentRoomSessionInput.prototype, "EnableHandoff", void 0);
173
+ __decorate([
174
+ Field(() => String, { nullable: true }),
175
+ __metadata("design:type", String)
176
+ ], StartLiveKitAgentRoomSessionInput.prototype, "TurnAddressing", void 0);
154
177
  StartLiveKitAgentRoomSessionInput = __decorate([
155
178
  InputType()
156
179
  ], StartLiveKitAgentRoomSessionInput);
157
180
  export { StartLiveKitAgentRoomSessionInput };
181
+ /** The live turn-taking state of a room (floor holder, human speaking, hand-off, loop cap, recent events, seated agents). */
182
+ let LiveKitRoomTurnStateResult = class LiveKitRoomTurnStateResult {
183
+ };
184
+ __decorate([
185
+ Field(() => Boolean),
186
+ __metadata("design:type", Boolean)
187
+ ], LiveKitRoomTurnStateResult.prototype, "Success", void 0);
188
+ __decorate([
189
+ Field(() => String, { nullable: true }),
190
+ __metadata("design:type", String)
191
+ ], LiveKitRoomTurnStateResult.prototype, "ErrorMessage", void 0);
192
+ __decorate([
193
+ Field(() => String, { nullable: true }),
194
+ __metadata("design:type", String)
195
+ ], LiveKitRoomTurnStateResult.prototype, "StateJSON", void 0);
196
+ LiveKitRoomTurnStateResult = __decorate([
197
+ ObjectType()
198
+ ], LiveKitRoomTurnStateResult);
199
+ export { LiveKitRoomTurnStateResult };
158
200
  let LiveKitAgentRoomSessionResult = class LiveKitAgentRoomSessionResult {
159
201
  };
160
202
  __decorate([
@@ -287,6 +329,11 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
287
329
  if (!user) {
288
330
  return failure('Unable to determine current user.');
289
331
  }
332
+ const provider = GetReadWriteProvider(context.providers);
333
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(input.RoomName, user, provider);
334
+ if (!auth.Authorized) {
335
+ return failure(auth.Reason ?? 'Unauthorized room access.');
336
+ }
290
337
  const tokenService = new LiveKitTokenService();
291
338
  const minted = await tokenService.MintClientToken(input.RoomName, this.participantIdentity(user), input.DisplayName ?? user.Name ?? user.Email);
292
339
  return { Success: true, ...minted };
@@ -318,6 +365,26 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
318
365
  }
319
366
  const provider = GetReadWriteProvider(context.providers);
320
367
  const roomName = input.RoomName?.trim() || `mj-${randomUUID()}`;
368
+ if (input.RoomName?.trim()) {
369
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(roomName, user, provider);
370
+ if (!auth.Authorized) {
371
+ return failure(auth.Reason ?? 'Unauthorized room access.', roomName);
372
+ }
373
+ }
374
+ // Opt-in: an agent that can bring a person, a number or another agent into this room (the same room, so a visitor
375
+ // is escalated without leaving it). Falls through to the standard start when the server cannot do handoffs.
376
+ const handoffSessionBridgeID = await this.startWithHandoff(input, roomName, user, provider);
377
+ if (handoffSessionBridgeID) {
378
+ const handoffToken = await new LiveKitTokenService().MintClientToken(roomName, this.participantIdentity(user), user.Name ?? user.Email);
379
+ return {
380
+ Success: true,
381
+ SessionBridgeID: handoffSessionBridgeID,
382
+ RoomName: roomName,
383
+ ServerUrl: handoffToken.ServerUrl,
384
+ ClientToken: handoffToken.Token,
385
+ Identity: handoffToken.Identity,
386
+ };
387
+ }
321
388
  // Resolve the AIAgentSession the bridge will reference. The bridge row FK-references
322
389
  // AIAgentSession(ID), so we must use an EXISTING session — either one the caller supplied, or a
323
390
  // freshly-created one. Previously this minted a bare random UUID with no backing row, so the
@@ -339,6 +406,7 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
339
406
  RealtimeModelID: input.RealtimeModelID,
340
407
  RealtimeVoice: input.RealtimeVoice,
341
408
  TurnMode: this.normalizeTurnMode(input.TurnMode),
409
+ TurnAddressing: this.normalizeTurnAddressing(input.TurnAddressing),
342
410
  ContextUser: user,
343
411
  MetadataProvider: provider,
344
412
  });
@@ -373,6 +441,14 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
373
441
  return false;
374
442
  }
375
443
  const provider = GetReadWriteProvider(context.providers);
444
+ const roomName = LiveKitAgentRoomCoordinator.Instance.GetRoomForBridge(sessionBridgeID);
445
+ if (roomName) {
446
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(roomName, user, provider);
447
+ if (!auth.Authorized) {
448
+ LogError(`StopLiveKitAgentRoomSession unauthorized: user ${user.ID} cannot access room ${roomName} (${auth.Reason})`);
449
+ return false;
450
+ }
451
+ }
376
452
  return await LiveKitAgentRoomCoordinator.Instance.StopAgentRoomSession(sessionBridgeID, 'Explicit', user, provider);
377
453
  }
378
454
  catch (error) {
@@ -395,6 +471,11 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
395
471
  return false;
396
472
  }
397
473
  const provider = GetReadWriteProvider(context.providers);
474
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(roomName, user, provider);
475
+ if (!auth.Authorized) {
476
+ LogError(`EndLiveKitRoom unauthorized: user ${user.ID} cannot access room ${roomName} (${auth.Reason})`);
477
+ return false;
478
+ }
398
479
  await LiveKitAgentRoomCoordinator.Instance.StopAllAgentsInRoom(roomName, 'Explicit', user, provider);
399
480
  return true;
400
481
  }
@@ -403,6 +484,33 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
403
484
  return false;
404
485
  }
405
486
  }
487
+ /**
488
+ * A room's live turn-taking state — who holds the floor, whether a person is speaking, any pending hand-off,
489
+ * the agent-to-agent loop-cap progress, the most recent floor/backchannel/yield events, and who is seated. The
490
+ * agent test bed polls it. Read-only. `StateJSON` is `null` when no agent is in the room.
491
+ *
492
+ * @param roomName The LiveKit room.
493
+ */
494
+ async GetLiveKitRoomTurnState(roomName, context = {}) {
495
+ try {
496
+ const user = this.GetUserFromPayload(context.userPayload);
497
+ if (!user) {
498
+ return { Success: false, ErrorMessage: 'Unable to determine current user.' };
499
+ }
500
+ const provider = GetReadWriteProvider(context.providers);
501
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(roomName, user, provider);
502
+ if (!auth.Authorized) {
503
+ return { Success: false, ErrorMessage: auth.Reason ?? 'Unauthorized room access.' };
504
+ }
505
+ const snapshot = LiveKitAgentRoomCoordinator.Instance.GetRoomTurnState(roomName);
506
+ return { Success: true, StateJSON: snapshot ? JSON.stringify(snapshot) : undefined };
507
+ }
508
+ catch (error) {
509
+ const msg = error instanceof Error ? error.message : String(error);
510
+ LogError(`GetLiveKitRoomTurnState failed: ${msg}`);
511
+ return { Success: false, ErrorMessage: msg };
512
+ }
513
+ }
406
514
  /**
407
515
  * Lists active Realtime models with the voices each driver supports — the source for the dev model/voice
408
516
  * picker (gated client-side by the `Realtime: Advanced Session Controls` authorization). Read-only; returns
@@ -440,6 +548,11 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
440
548
  return false;
441
549
  }
442
550
  const provider = GetReadWriteProvider(context.providers);
551
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(roomName, user, provider);
552
+ if (!auth.Authorized) {
553
+ LogError(`InviteUsersToLiveKitRoom unauthorized: user ${user.ID} cannot access room ${roomName} (${auth.Reason})`);
554
+ return false;
555
+ }
443
556
  await NotificationEngine.Instance.Config(false, user, provider);
444
557
  const inviter = user.Name?.trim() || user.Email || 'Someone';
445
558
  let anyDelivered = false;
@@ -473,10 +586,14 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
473
586
  if (!user) {
474
587
  return { Success: false, ErrorMessage: 'Unable to determine current user.', EgressID: '', Status: '' };
475
588
  }
589
+ const provider = GetReadWriteProvider(context.providers);
590
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(input.RoomName, user, provider);
591
+ if (!auth.Authorized) {
592
+ return { Success: false, ErrorMessage: auth.Reason ?? 'Unauthorized room access.', EgressID: '', Status: '' };
593
+ }
476
594
  const info = await new LiveKitEgressService().StartRoomRecording({ RoomName: input.RoomName, Layout: input.Layout });
477
595
  // Best-effort: correlate the live recording with the room's Meeting-Room Conversation (if it exists
478
596
  // yet) by stamping its EgressID. Never fail the start on this — the stop-flow resolves/creates it.
479
- const provider = GetReadWriteProvider(context.providers);
480
597
  void CorrelateRecordingStart(input.RoomName, info.EgressID, user, provider);
481
598
  return { Success: true, EgressID: info.EgressID, Status: info.Status };
482
599
  }
@@ -498,8 +615,39 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
498
615
  if (!user) {
499
616
  return { Success: false, ErrorMessage: 'Unable to determine current user.', EgressID: egressID, Status: '' };
500
617
  }
501
- const info = await new LiveKitEgressService().StopRecording(egressID);
502
618
  const provider = GetReadWriteProvider(context.providers);
619
+ // Map egress ID to room name: check LiveKit egress service first, fallback to Conversation if available.
620
+ const egressService = new LiveKitEgressService();
621
+ let roomName = await egressService.GetRoomForEgress(egressID);
622
+ if (!roomName && provider) {
623
+ try {
624
+ const rv = RunView.FromMetadataProvider(provider);
625
+ const convResult = await rv.RunView({
626
+ EntityName: 'MJ: Conversations',
627
+ ExtraFilter: `EgressID='${EscapeSQLString(egressID)}' AND (IsArchived IS NULL OR IsArchived=0)`,
628
+ Fields: ['ExternalID'],
629
+ OrderBy: '__mj_CreatedAt DESC',
630
+ MaxRows: 1,
631
+ ResultType: 'simple',
632
+ }, user);
633
+ if (convResult.Success && convResult.Results.length > 0 && convResult.Results[0].ExternalID) {
634
+ roomName = convResult.Results[0].ExternalID;
635
+ }
636
+ }
637
+ catch (err) {
638
+ LogError(`StopLiveKitRecording: error looking up Conversation for egress ID '${egressID}'`, undefined, err);
639
+ }
640
+ }
641
+ if (roomName) {
642
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(roomName, user, provider);
643
+ if (!auth.Authorized) {
644
+ return { Success: false, ErrorMessage: auth.Reason ?? 'Unauthorized room access.', EgressID: egressID, Status: '' };
645
+ }
646
+ }
647
+ else {
648
+ return { Success: false, ErrorMessage: `Unable to determine room for egress ID '${egressID}'.`, EgressID: egressID, Status: '' };
649
+ }
650
+ const info = await egressService.StopRecording(egressID);
503
651
  // Register the completed egress MP4 as a Files row on the Meeting-Room Conversation. Best-effort:
504
652
  // any failure (e.g. storage provider not configured) leaves RecordingFileID unset but still
505
653
  // returns the successful stop result.
@@ -515,9 +663,48 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
515
663
  return { Success: false, ErrorMessage: msg, EgressID: egressID, Status: '' };
516
664
  }
517
665
  }
518
- /** Builds a stable, lowercased participant identity from the authenticated user. */
666
+ /**
667
+ * Starts the agent through the handoff-capable room starter when the caller asked for it and the server can do it.
668
+ * Returns the bridge id, or `undefined` to mean "use the standard start" (not requested, no starter, no agent named).
669
+ */
670
+ async startWithHandoff(input, roomName, user, provider) {
671
+ if (!input.EnableHandoff) {
672
+ return undefined;
673
+ }
674
+ const starter = RoomHandoffEngine.Instance.Deps.AgentStarter;
675
+ const agentID = input.TargetAgentID?.trim() || input.AgentID?.trim();
676
+ if (!starter || !agentID) {
677
+ LogError('StartLiveKitAgentRoomSession: handoff was requested but this server has no handoff-capable agent starter; starting the agent without it.');
678
+ return undefined;
679
+ }
680
+ const started = await starter({
681
+ RoomName: roomName,
682
+ AgentID: agentID,
683
+ AgentName: input.AgentName?.trim() ?? '',
684
+ CallerLabel: user.Name?.trim() || user.Email || 'Web visitor',
685
+ ContextUser: user,
686
+ Provider: provider,
687
+ RealtimeModelID: input.RealtimeModelID,
688
+ RealtimeVoice: input.RealtimeVoice,
689
+ });
690
+ return started.SessionBridgeID;
691
+ }
692
+ /** Builds a stable, lowercased participant identity from the authenticated user (shared with the handoff engine, which watches for it). */
519
693
  participantIdentity(user) {
520
- return `user-${user.ID}`.toLowerCase();
694
+ return LiveKitUserIdentity(user.ID);
695
+ }
696
+ /** Normalizes an addressing-mode string; unknown/absent leaves the coordinator's default (`Auto`). */
697
+ normalizeTurnAddressing(mode) {
698
+ switch ((mode ?? '').trim().toLowerCase()) {
699
+ case 'auto':
700
+ return 'Auto';
701
+ case 'modelside':
702
+ return 'ModelSide';
703
+ case 'regex':
704
+ return 'Regex';
705
+ default:
706
+ return undefined;
707
+ }
521
708
  }
522
709
  /** Normalizes a turn-mode string to the bridge's accepted values. */
523
710
  normalizeTurnMode(mode) {
@@ -565,6 +752,14 @@ __decorate([
565
752
  __metadata("design:paramtypes", [String, Object]),
566
753
  __metadata("design:returntype", Promise)
567
754
  ], RealtimeBridgeResolver.prototype, "EndLiveKitRoom", null);
755
+ __decorate([
756
+ Query(() => LiveKitRoomTurnStateResult),
757
+ __param(0, Arg('roomName', () => String)),
758
+ __param(1, Ctx()),
759
+ __metadata("design:type", Function),
760
+ __metadata("design:paramtypes", [String, Object]),
761
+ __metadata("design:returntype", Promise)
762
+ ], RealtimeBridgeResolver.prototype, "GetLiveKitRoomTurnState", null);
568
763
  __decorate([
569
764
  Query(() => [RealtimeModelVoicesResult]),
570
765
  __param(0, Ctx()),
@@ -1 +1 @@
1
- {"version":3,"file":"RealtimeBridgeResolver.js","sourceRoot":"","sources":["../../src/resolvers/RealtimeBridgeResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RealtimeBridgeResolver.js","sourceRoot":"","sources":["../../src/resolvers/RealtimeBridgeResolver.ts"],"names":[],"mappings":"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"}
@@ -148,6 +148,18 @@ export declare class UploadRealtimeRecordingResult {
148
148
  export declare class RealtimeClientSessionResolver extends ResolverBase {
149
149
  private readonly clientSessionService;
150
150
  private readonly sessionManager;
151
+ /**
152
+ * The reason a `Save()`/`Delete()` returned false, for a log line. `CompleteMessage` renders
153
+ * `Message`, `Error` and every `Errors[]` entry (validation errors included, since `Save()`
154
+ * runs `Validate()` and records its errors there), so there is no separate `Validate()` call.
155
+ * When a subclass refused the write without recording anything, say so explicitly instead of
156
+ * "unknown error", which is what hid MJ#4791.
157
+ *
158
+ * Only a NULL `LatestResult` proves the refusal happened before the provider (nothing was
159
+ * registered at all). A SUCCESS `LatestResult` is an earlier save on the same instance — the
160
+ * refusal registered nothing — so its text must never be reported as this failure's reason.
161
+ */
162
+ private describeSaveFailure;
151
163
  /**
152
164
  * Start a client-direct realtime voice session targeting `targetAgentId`.
153
165
  *
@@ -156,7 +168,7 @@ export declare class RealtimeClientSessionResolver extends ResolverBase {
156
168
  * session is created.
157
169
  * 2. Resolve the co-agent id via the metadata-driven resolution chain (runtime `coAgentId` →
158
170
  * agent's `DefaultCoAgentID` → type-level `AIAgentCoAgent` default row → global Realtime Co-Agent) —
159
- * see {@link RealtimeClientSessionResolver.resolveCoAgentID} for the full contract.
171
+ * see {@link ResolveRealtimeCoAgentID} for the full contract.
160
172
  * 3. Create the durable `AIAgentSession` (run by the co-agent), storing `targetAgentID` in its
161
173
  * config server-side — this is the authoritative target for all later relays.
162
174
  * 4. Mint the {@link import('@memberjunction/ai').ClientRealtimeSessionConfig} via the service.
@@ -405,27 +417,6 @@ export declare class RealtimeClientSessionResolver extends ResolverBase {
405
417
  * caller must be able to run the **target** agent. Denial throws (no session is created).
406
418
  */
407
419
  private assertCanRunTarget;
408
- /**
409
- * Narrows a session's colleague union (`allowedAgents`) to the agents the CALLER may run.
410
- *
411
- * {@link assertCanRunTarget} gates the LEAD target at session start, but the union it travels
412
- * with was never gated at all — a model-named colleague resolves straight to a delegated run.
413
- * That was survivable while the run carried the caller's own identity, because base-agent
414
- * re-checks `CanRun` against `contextUser`. Once the run user is elevated for a scoped anonymous
415
- * caller (issue #3371) that check sees the SYSTEM user, so this is the only remaining place the
416
- * caller's own authority is applied to a colleague. It therefore runs for EVERY caller, elevated
417
- * or not — the authorization identity must never depend on the elevation decision.
418
- *
419
- * `HasPermission` reads AIEngineBase's in-memory caches (no DB round trip) and already fails
420
- * closed on error, so an unresolvable agent drops OUT of the union rather than becoming runnable.
421
- * A filtered-out colleague is not an error: the delegation layer reports it as "not available in
422
- * this session" and lists what remains, which is the same answer the model gets for a typo.
423
- *
424
- * @param allowedAgents The session's persisted colleague union (absent/empty ⇒ single-target).
425
- * @param contextUser The ORIGINAL caller — never the elevated run user.
426
- * @returns The subset the caller may run, preserving order.
427
- */
428
- private filterAllowedAgentsByCanRun;
429
420
  /**
430
421
  * Resolves the AUTHORITATIVE target agent id under the co-agent's PAIRING CONSTRAINTS
431
422
  * (`MJ: AI Agent Co Agents`, ordered by `Sequence`):
@@ -507,67 +498,6 @@ export declare class RealtimeClientSessionResolver extends ResolverBase {
507
498
  * privileged path, and unauthorized callers still get a fully working session without them.
508
499
  */
509
500
  private userHasAdvancedSessionControls;
510
- /**
511
- * Resolves the co-agent (the Realtime-type agent that voices the target agent) for a new
512
- * client-direct session via the metadata-driven **CO-AGENT RESOLUTION CHAIN** — first match
513
- * wins, evaluated in precedence order:
514
- *
515
- * 1. **Runtime parameter** — the mutation's explicit `coAgentId`. A per-call override; an
516
- * invalid candidate (unknown, not Active, or not of the Realtime agent type) **throws**
517
- * (fail loud — the caller asked for something specific, mirroring `preferredModelId`).
518
- * 2. **Per-agent persona** — the target agent's `AIAgent.DefaultCoAgentID`. An invalid
519
- * reference logs a warning and **falls through** to the next step (stale metadata should
520
- * degrade gracefully, never break calls).
521
- * 3. **Per-type default** — an Active `AIAgentCoAgent` row of Type `'CoAgent'` whose
522
- * `TargetAgentTypeID` is the target agent's type and `IsDefault = 1` (lowest `Sequence`
523
- * wins a tie). Same tolerant warn-and-fall-through semantics as step 2.
524
- * 4. **Global default** — the seeded {@link REALTIME_CO_AGENT_NAME} agent, looked up by name
525
- * (with a deprecated fallback to {@link LEGACY_REALTIME_CO_AGENT_NAME}). Throws when absent
526
- * entirely (the realtime feature is unconfigured in this deployment).
527
- *
528
- * Every candidate from steps 1–3 is validated by {@link findValidCoAgent}: it must exist in
529
- * {@link AIEngine}'s cached agents, have Status `Active`, and be of the
530
- * {@link REALTIME_AGENT_TYPE_NAME} agent type. Step 4 keeps its original name-lookup contract.
531
- *
532
- * @param targetAgentId The agent the co-agent will voice on behalf of (drives steps 2–3).
533
- * @param explicitCoAgentId The runtime `coAgentId` mutation argument, when supplied (step 1).
534
- * @returns The resolved co-agent's id (canonical casing from the metadata cache).
535
- */
536
- private resolveCoAgentID;
537
- /**
538
- * Chain step 3 lookup: the TYPE-LEVEL default co-agent for an agent type — the Active
539
- * `AIAgentCoAgent` row of Type `'CoAgent'` whose `TargetAgentTypeID` matches, with
540
- * `IsDefault = 1` preferred and the lowest `Sequence` breaking ties (so a deployment can
541
- * stage multiple type-level candidates deterministically). Reads {@link AIEngineBase}'s
542
- * cached rows — no RunView. Tolerant: a failed cache read logs and returns `undefined`
543
- * (the chain falls through to the global default).
544
- */
545
- private findTypeDefaultCoAgentID;
546
- /**
547
- * Validates one metadata-level co-agent default (chain steps 2/3). Returns the resolved
548
- * co-agent id when the reference is valid; logs a warning and returns `null` (caller falls
549
- * through to the next chain step) when the reference is set but invalid — metadata drift must
550
- * degrade, not break live calls. A `null`/absent reference returns `null` silently.
551
- */
552
- private resolveMetadataDefault;
553
- /**
554
- * Validates a co-agent candidate against {@link AIEngine}'s cached metadata. A valid co-agent
555
- * must (a) exist, (b) have Status `Active`, and (c) be of the {@link REALTIME_AGENT_TYPE_NAME}
556
- * agent type. Returns the cached agent on success, or a human-readable `problem` on failure —
557
- * the CALLER decides whether that's fatal (explicit runtime param) or tolerated (metadata default).
558
- */
559
- private findValidCoAgent;
560
- /**
561
- * Resolves the seeded Realtime Co-Agent's id from {@link AIEngine}'s cached agents — the GLOBAL
562
- * DEFAULT (step 4) of the co-agent resolution chain. The engine is already configured by
563
- * {@link resolveCoAgentID}. Looks up the current {@link REALTIME_CO_AGENT_NAME} first, then
564
- * falls back to the DEPRECATED {@link LEGACY_REALTIME_CO_AGENT_NAME} (pre-rename seed) with a
565
- * deprecation log so un-resynced deployments keep working. Throws a clear error when neither
566
- * name is present in metadata.
567
- */
568
- private resolveGlobalCoAgentID;
569
- /** Case/whitespace-insensitive agent lookup by Name in {@link AIEngine}'s cached agents. */
570
- private findAgentByName;
571
501
  /**
572
502
  * Mints the client session config for a just-created session. On failure, closes the session so
573
503
  * no half-open record leaks, then throws the service's error message.
@@ -749,6 +679,14 @@ export declare class RealtimeClientSessionResolver extends ResolverBase {
749
679
  * queries (which scan junctions across ALL details) still surface the artifact. This is the
750
680
  * least-invasive correct anchor — no fake visible message, no orphaned artifact.
751
681
  *
682
+ * TWO PRINCIPALS, deliberately: the lookup (`findLatestSessionDetailID`) and the junction row
683
+ * itself (`saveDetailArtifactJunction`, `MJ: Conversation Detail Artifacts`) run as `runUser`
684
+ * (elevated for a scoped-anonymous caller) — that junction entity is outside an anonymous
685
+ * caller's relay grants. The hidden ANCHOR `Conversation Detail` this may need to create runs as
686
+ * `callerUser` instead: like every other `MJ: Conversation Details` write, the System user is
687
+ * refused because it is not the conversation's owner (see {@link persistDirectActionTurn},
688
+ * issue #4791) — only the actual caller can create it.
689
+ *
752
690
  * Strictly best-effort: every failure path logs and returns; a relayed tool call NEVER fails
753
691
  * because history linking did.
754
692
  */
@@ -815,12 +753,6 @@ export declare class RealtimeClientSessionResolver extends ResolverBase {
815
753
  * than blocking the start.
816
754
  */
817
755
  private resolveWidgetVoiceCapSeconds;
818
- /**
819
- * Persists a single transcript turn as a `Conversation Detail` stamped with the session's
820
- * conversation, the mapped role, the turn text, the session id, and the owning user.
821
- *
822
- * @returns The boolean save result (logs `CompleteMessage` on failure).
823
- */
824
756
  /**
825
757
  * Stamps `RecordingStartedAt` (the recording `t0` alignment origin) + `RecordingMedia` on a
826
758
  * just-started session when the browser captured WITH consent. Best-effort: a parse/save failure
@@ -831,6 +763,13 @@ export declare class RealtimeClientSessionResolver extends ResolverBase {
831
763
  * @param recordingStartedAt ISO-8601 recording start timestamp from the browser.
832
764
  */
833
765
  private stampRecordingStart;
766
+ /**
767
+ * Persists a single transcript turn as a `Conversation Detail` stamped with the session's
768
+ * conversation, the mapped role, the turn text, the session id, and the owning user.
769
+ *
770
+ * @returns The boolean save result. On failure it logs the session, the write user and the
771
+ * reason from {@link describeSaveFailure}.
772
+ */
834
773
  private persistTranscriptTurn;
835
774
  /**
836
775
  * CORRECTION persistence (the client transcript's `ReplacesPrevious` marker — e.g.
@@ -851,6 +790,23 @@ export declare class RealtimeClientSessionResolver extends ResolverBase {
851
790
  * Stored as stable facts (Role: 'AI', HiddenToUser: true, ExternalID: callId, CompletionTime: durationMs,
852
791
  * Message: JSON-serialized tool facts) so that session review can reconstruct the action card dynamically
853
792
  * on load (Option 1) without polluting user-facing speech chat bubbles.
793
+ *
794
+ * Writes as the CALLER, never the elevated run user (issue #4791). Owning the session
795
+ * (`loadOwnedActiveSession`'s gate has already run on every path here) does NOT imply owning
796
+ * the conversation: the conversation id was client-supplied at session start. What authorizes
797
+ * this write is the save itself, evaluated for the caller — the conversation owner gate in
798
+ * `MJConversationDetailEntityExtended`, plus the caller's own entity permission and Create RLS
799
+ * on `MJ: Conversation Details` (for the magic-link role that RLS scopes by the invite's
800
+ * `ScopeResourceID`, and the role belongs to a downstream app, not MJ core). That is why
801
+ * writing as the caller is safe even though the conversation id originated client-side.
802
+ * Elevating to the System user would bypass RLS entirely, and the owner gate refuses it anyway
803
+ * because the System user is not the conversation owner. Measured on MJ#4791 (before the
804
+ * core-entities fix that now records the denial): `Save()` returned `false` with a NULL `LatestResult` and an empty
805
+ * `ResultHistory` — indistinguishable from any other silent failure. Elevating this write is
806
+ * what silently dropped both hidden tool-execution turns of a real magic-link session; the
807
+ * denial itself still happens today, only its silence was fixed separately.
808
+ * `ResolveScopedAnonymousRunUser` elevates AI-**run**-entity writes only (prompt runs, agent
809
+ * runs, the relayed dispatch itself) — never this one.
854
810
  */
855
811
  private persistDirectActionTurn;
856
812
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RealtimeClientSessionResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/RealtimeClientSessionResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RealtimeClientSessionResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/RealtimeClientSessionResolver.ts"],"names":[],"mappings":"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"}