@memberjunction/server 6.2.0-edge.2 → 6.2.0-edge.4

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 (435) hide show
  1. package/README.md +30 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/agentSessions/BridgeHostInstance.d.ts +25 -0
  4. package/dist/agentSessions/BridgeHostInstance.d.ts.map +1 -0
  5. package/dist/agentSessions/BridgeHostInstance.js +30 -0
  6. package/dist/agentSessions/BridgeHostInstance.js.map +1 -0
  7. package/dist/agentSessions/HostInstance.d.ts +75 -11
  8. package/dist/agentSessions/HostInstance.d.ts.map +1 -1
  9. package/dist/agentSessions/HostInstance.js +99 -28
  10. package/dist/agentSessions/HostInstance.js.map +1 -1
  11. package/dist/agentSessions/ReturningVisitorRecap.d.ts.map +1 -1
  12. package/dist/agentSessions/ReturningVisitorRecap.js +7 -3
  13. package/dist/agentSessions/ReturningVisitorRecap.js.map +1 -1
  14. package/dist/agentSessions/SessionJanitor.d.ts +173 -25
  15. package/dist/agentSessions/SessionJanitor.d.ts.map +1 -1
  16. package/dist/agentSessions/SessionJanitor.js +452 -54
  17. package/dist/agentSessions/SessionJanitor.js.map +1 -1
  18. package/dist/agentSessions/SessionManager.d.ts +43 -2
  19. package/dist/agentSessions/SessionManager.d.ts.map +1 -1
  20. package/dist/agentSessions/SessionManager.js +99 -8
  21. package/dist/agentSessions/SessionManager.js.map +1 -1
  22. package/dist/agentSessions/SessionRunIDVerifier.d.ts +63 -0
  23. package/dist/agentSessions/SessionRunIDVerifier.d.ts.map +1 -0
  24. package/dist/agentSessions/SessionRunIDVerifier.js +129 -0
  25. package/dist/agentSessions/SessionRunIDVerifier.js.map +1 -0
  26. package/dist/agentSessions/index.d.ts +2 -0
  27. package/dist/agentSessions/index.d.ts.map +1 -1
  28. package/dist/agentSessions/index.js +10 -3
  29. package/dist/agentSessions/index.js.map +1 -1
  30. package/dist/auth/actionAuthorization.d.ts +40 -0
  31. package/dist/auth/actionAuthorization.d.ts.map +1 -0
  32. package/dist/auth/actionAuthorization.js +94 -0
  33. package/dist/auth/actionAuthorization.js.map +1 -0
  34. package/dist/auth/index.d.ts.map +1 -1
  35. package/dist/auth/index.js +3 -10
  36. package/dist/auth/index.js.map +1 -1
  37. package/dist/auth/magicLink/MagicLinkService.d.ts.map +1 -1
  38. package/dist/auth/magicLink/MagicLinkService.js +6 -3
  39. package/dist/auth/magicLink/MagicLinkService.js.map +1 -1
  40. package/dist/auth/newUsers.d.ts +10 -0
  41. package/dist/auth/newUsers.d.ts.map +1 -1
  42. package/dist/auth/newUsers.js +80 -11
  43. package/dist/auth/newUsers.js.map +1 -1
  44. package/dist/config.d.ts +4567 -71
  45. package/dist/config.d.ts.map +1 -1
  46. package/dist/config.js +246 -3
  47. package/dist/config.js.map +1 -1
  48. package/dist/context.d.ts +8 -0
  49. package/dist/context.d.ts.map +1 -1
  50. package/dist/context.js +25 -34
  51. package/dist/context.js.map +1 -1
  52. package/dist/generated/graphql-schemas/__mj.d.ts +1073 -10
  53. package/dist/generated/graphql-schemas/__mj.d.ts.map +1 -1
  54. package/dist/generated/graphql-schemas/__mj.js +9188 -3649
  55. package/dist/generated/graphql-schemas/__mj.js.map +1 -1
  56. package/dist/generic/OrphanedConversationDetailReconciler.js +3 -3
  57. package/dist/generic/OrphanedConversationDetailReconciler.js.map +1 -1
  58. package/dist/generic/ResolverBase.d.ts +62 -6
  59. package/dist/generic/ResolverBase.d.ts.map +1 -1
  60. package/dist/generic/ResolverBase.js +179 -35
  61. package/dist/generic/ResolverBase.js.map +1 -1
  62. package/dist/generic/RunViewResolver.d.ts +4 -0
  63. package/dist/generic/RunViewResolver.d.ts.map +1 -1
  64. package/dist/generic/RunViewResolver.js +37 -1
  65. package/dist/generic/RunViewResolver.js.map +1 -1
  66. package/dist/index.d.ts +7 -0
  67. package/dist/index.d.ts.map +1 -1
  68. package/dist/index.js +214 -159
  69. package/dist/index.js.map +1 -1
  70. package/dist/isolatedProvider.d.ts +20 -0
  71. package/dist/isolatedProvider.d.ts.map +1 -0
  72. package/dist/isolatedProvider.js +22 -0
  73. package/dist/isolatedProvider.js.map +1 -0
  74. package/dist/postgresqlCompat.d.ts +8 -0
  75. package/dist/postgresqlCompat.d.ts.map +1 -0
  76. package/dist/postgresqlCompat.js +19 -0
  77. package/dist/postgresqlCompat.js.map +1 -0
  78. package/dist/postgresqlPoolSettings.d.ts +108 -0
  79. package/dist/postgresqlPoolSettings.d.ts.map +1 -0
  80. package/dist/postgresqlPoolSettings.js +134 -0
  81. package/dist/postgresqlPoolSettings.js.map +1 -0
  82. package/dist/realtimeProxy/RealtimeProxyServer.d.ts +44 -4
  83. package/dist/realtimeProxy/RealtimeProxyServer.d.ts.map +1 -1
  84. package/dist/realtimeProxy/RealtimeProxyServer.js +121 -16
  85. package/dist/realtimeProxy/RealtimeProxyServer.js.map +1 -1
  86. package/dist/realtimeProxy/RealtimeRelayTunnel.d.ts +171 -0
  87. package/dist/realtimeProxy/RealtimeRelayTunnel.d.ts.map +1 -0
  88. package/dist/realtimeProxy/RealtimeRelayTunnel.js +532 -0
  89. package/dist/realtimeProxy/RealtimeRelayTunnel.js.map +1 -0
  90. package/dist/realtimeSessions/RealtimeSessionEventService.d.ts +148 -0
  91. package/dist/realtimeSessions/RealtimeSessionEventService.d.ts.map +1 -0
  92. package/dist/realtimeSessions/RealtimeSessionEventService.js +191 -0
  93. package/dist/realtimeSessions/RealtimeSessionEventService.js.map +1 -0
  94. package/dist/realtimeSessions/RealtimeSessionVerificationService.d.ts +66 -0
  95. package/dist/realtimeSessions/RealtimeSessionVerificationService.d.ts.map +1 -0
  96. package/dist/realtimeSessions/RealtimeSessionVerificationService.js +138 -0
  97. package/dist/realtimeSessions/RealtimeSessionVerificationService.js.map +1 -0
  98. package/dist/realtimeSessions/RealtimeVerifyRouter.d.ts +38 -0
  99. package/dist/realtimeSessions/RealtimeVerifyRouter.d.ts.map +1 -0
  100. package/dist/realtimeSessions/RealtimeVerifyRouter.js +98 -0
  101. package/dist/realtimeSessions/RealtimeVerifyRouter.js.map +1 -0
  102. package/dist/realtimeSessions/SessionVerificationPortsBase.d.ts +61 -0
  103. package/dist/realtimeSessions/SessionVerificationPortsBase.d.ts.map +1 -0
  104. package/dist/realtimeSessions/SessionVerificationPortsBase.js +149 -0
  105. package/dist/realtimeSessions/SessionVerificationPortsBase.js.map +1 -0
  106. package/dist/realtimeSessions/SlidingWindowRateLimiter.d.ts +57 -0
  107. package/dist/realtimeSessions/SlidingWindowRateLimiter.d.ts.map +1 -0
  108. package/dist/realtimeSessions/SlidingWindowRateLimiter.js +69 -0
  109. package/dist/realtimeSessions/SlidingWindowRateLimiter.js.map +1 -0
  110. package/dist/realtimeSessions/index.d.ts +17 -0
  111. package/dist/realtimeSessions/index.d.ts.map +1 -0
  112. package/dist/realtimeSessions/index.js +17 -0
  113. package/dist/realtimeSessions/index.js.map +1 -0
  114. package/dist/realtimeSessions/sessionAccess.d.ts +86 -0
  115. package/dist/realtimeSessions/sessionAccess.d.ts.map +1 -0
  116. package/dist/realtimeSessions/sessionAccess.js +90 -0
  117. package/dist/realtimeSessions/sessionAccess.js.map +1 -0
  118. package/dist/realtimeSessions/sessionConfigStamps.d.ts +70 -0
  119. package/dist/realtimeSessions/sessionConfigStamps.d.ts.map +1 -0
  120. package/dist/realtimeSessions/sessionConfigStamps.js +93 -0
  121. package/dist/realtimeSessions/sessionConfigStamps.js.map +1 -0
  122. package/dist/realtimeSessions/subscriptionAuthorization.d.ts +65 -0
  123. package/dist/realtimeSessions/subscriptionAuthorization.d.ts.map +1 -0
  124. package/dist/realtimeSessions/subscriptionAuthorization.js +71 -0
  125. package/dist/realtimeSessions/subscriptionAuthorization.js.map +1 -0
  126. package/dist/realtimeSessions/verificationCore.d.ts +243 -0
  127. package/dist/realtimeSessions/verificationCore.d.ts.map +1 -0
  128. package/dist/realtimeSessions/verificationCore.js +356 -0
  129. package/dist/realtimeSessions/verificationCore.js.map +1 -0
  130. package/dist/realtimeSessions/verificationPages.d.ts +66 -0
  131. package/dist/realtimeSessions/verificationPages.d.ts.map +1 -0
  132. package/dist/realtimeSessions/verificationPages.js +110 -0
  133. package/dist/realtimeSessions/verificationPages.js.map +1 -0
  134. package/dist/realtimeSessions/verificationPolicy.d.ts +147 -0
  135. package/dist/realtimeSessions/verificationPolicy.d.ts.map +1 -0
  136. package/dist/realtimeSessions/verificationPolicy.js +249 -0
  137. package/dist/realtimeSessions/verificationPolicy.js.map +1 -0
  138. package/dist/realtimeSessions/verificationWorkflow.d.ts +263 -0
  139. package/dist/realtimeSessions/verificationWorkflow.d.ts.map +1 -0
  140. package/dist/realtimeSessions/verificationWorkflow.js +435 -0
  141. package/dist/realtimeSessions/verificationWorkflow.js.map +1 -0
  142. package/dist/realtimeWidget/widgetGuestElevation.d.ts +20 -2
  143. package/dist/realtimeWidget/widgetGuestElevation.d.ts.map +1 -1
  144. package/dist/realtimeWidget/widgetGuestElevation.js +31 -2
  145. package/dist/realtimeWidget/widgetGuestElevation.js.map +1 -1
  146. package/dist/resolvers/ActionResolver.d.ts +31 -5
  147. package/dist/resolvers/ActionResolver.d.ts.map +1 -1
  148. package/dist/resolvers/ActionResolver.js +75 -14
  149. package/dist/resolvers/ActionResolver.js.map +1 -1
  150. package/dist/resolvers/AdhocQueryResolver.d.ts +35 -17
  151. package/dist/resolvers/AdhocQueryResolver.d.ts.map +1 -1
  152. package/dist/resolvers/AdhocQueryResolver.js +92 -166
  153. package/dist/resolvers/AdhocQueryResolver.js.map +1 -1
  154. package/dist/resolvers/CacheStatsResolver.d.ts +27 -0
  155. package/dist/resolvers/CacheStatsResolver.d.ts.map +1 -1
  156. package/dist/resolvers/CacheStatsResolver.js +113 -2
  157. package/dist/resolvers/CacheStatsResolver.js.map +1 -1
  158. package/dist/resolvers/ClientToolRequestResolver.d.ts +4 -2
  159. package/dist/resolvers/ClientToolRequestResolver.d.ts.map +1 -1
  160. package/dist/resolvers/ClientToolRequestResolver.js +28 -10
  161. package/dist/resolvers/ClientToolRequestResolver.js.map +1 -1
  162. package/dist/resolvers/EntityRecordNameResolver.d.ts +7 -23
  163. package/dist/resolvers/EntityRecordNameResolver.d.ts.map +1 -1
  164. package/dist/resolvers/EntityRecordNameResolver.js +9 -47
  165. package/dist/resolvers/EntityRecordNameResolver.js.map +1 -1
  166. package/dist/resolvers/FetchEntityVectorsResolver.d.ts +12 -1
  167. package/dist/resolvers/FetchEntityVectorsResolver.d.ts.map +1 -1
  168. package/dist/resolvers/FetchEntityVectorsResolver.js +83 -2
  169. package/dist/resolvers/FetchEntityVectorsResolver.js.map +1 -1
  170. package/dist/resolvers/GetDataResolver.d.ts.map +1 -1
  171. package/dist/resolvers/GetDataResolver.js +9 -0
  172. package/dist/resolvers/GetDataResolver.js.map +1 -1
  173. package/dist/resolvers/HumanHandoffResolver.d.ts +107 -0
  174. package/dist/resolvers/HumanHandoffResolver.d.ts.map +1 -0
  175. package/dist/resolvers/HumanHandoffResolver.js +330 -0
  176. package/dist/resolvers/HumanHandoffResolver.js.map +1 -0
  177. package/dist/resolvers/MCPResolver.d.ts.map +1 -1
  178. package/dist/resolvers/MCPResolver.js +9 -4
  179. package/dist/resolvers/MCPResolver.js.map +1 -1
  180. package/dist/resolvers/MeetingResolver.d.ts +69 -0
  181. package/dist/resolvers/MeetingResolver.d.ts.map +1 -0
  182. package/dist/resolvers/MeetingResolver.js +381 -0
  183. package/dist/resolvers/MeetingResolver.js.map +1 -0
  184. package/dist/resolvers/RealtimeBridgeResolver.d.ts +88 -3
  185. package/dist/resolvers/RealtimeBridgeResolver.d.ts.map +1 -1
  186. package/dist/resolvers/RealtimeBridgeResolver.js +352 -12
  187. package/dist/resolvers/RealtimeBridgeResolver.js.map +1 -1
  188. package/dist/resolvers/RealtimeClientSessionResolver.d.ts +156 -108
  189. package/dist/resolvers/RealtimeClientSessionResolver.d.ts.map +1 -1
  190. package/dist/resolvers/RealtimeClientSessionResolver.js +395 -293
  191. package/dist/resolvers/RealtimeClientSessionResolver.js.map +1 -1
  192. package/dist/resolvers/RealtimeSessionEventsResolver.d.ts +61 -0
  193. package/dist/resolvers/RealtimeSessionEventsResolver.d.ts.map +1 -0
  194. package/dist/resolvers/RealtimeSessionEventsResolver.js +130 -0
  195. package/dist/resolvers/RealtimeSessionEventsResolver.js.map +1 -0
  196. package/dist/resolvers/RealtimeSessionVerificationResolver.d.ts +85 -0
  197. package/dist/resolvers/RealtimeSessionVerificationResolver.d.ts.map +1 -0
  198. package/dist/resolvers/RealtimeSessionVerificationResolver.js +188 -0
  199. package/dist/resolvers/RealtimeSessionVerificationResolver.js.map +1 -0
  200. package/dist/resolvers/RemoteBrowserActionResolver.d.ts +2 -0
  201. package/dist/resolvers/RemoteBrowserActionResolver.d.ts.map +1 -1
  202. package/dist/resolvers/RemoteBrowserActionResolver.js +5 -1
  203. package/dist/resolvers/RemoteBrowserActionResolver.js.map +1 -1
  204. package/dist/resolvers/RunAIAgentResolver.d.ts +10 -0
  205. package/dist/resolvers/RunAIAgentResolver.d.ts.map +1 -1
  206. package/dist/resolvers/RunAIAgentResolver.js +68 -11
  207. package/dist/resolvers/RunAIAgentResolver.js.map +1 -1
  208. package/dist/resolvers/RunTemplateResolver.d.ts.map +1 -1
  209. package/dist/resolvers/RunTemplateResolver.js +12 -11
  210. package/dist/resolvers/RunTemplateResolver.js.map +1 -1
  211. package/dist/resolvers/SyncDataResolver.d.ts.map +1 -1
  212. package/dist/resolvers/SyncDataResolver.js +6 -2
  213. package/dist/resolvers/SyncDataResolver.js.map +1 -1
  214. package/dist/resolvers/SyncRolesUsersResolver.d.ts +2 -0
  215. package/dist/resolvers/SyncRolesUsersResolver.d.ts.map +1 -1
  216. package/dist/resolvers/SyncRolesUsersResolver.js +23 -6
  217. package/dist/resolvers/SyncRolesUsersResolver.js.map +1 -1
  218. package/dist/resolvers/UserAvatarResolver.d.ts +16 -0
  219. package/dist/resolvers/UserAvatarResolver.d.ts.map +1 -0
  220. package/dist/resolvers/UserAvatarResolver.js +124 -0
  221. package/dist/resolvers/UserAvatarResolver.js.map +1 -0
  222. package/dist/resolvers/UserResolver.d.ts.map +1 -1
  223. package/dist/resolvers/UserResolver.js +2 -17
  224. package/dist/resolvers/UserResolver.js.map +1 -1
  225. package/dist/resolvers/adhocTimeout.d.ts +7 -0
  226. package/dist/resolvers/adhocTimeout.d.ts.map +1 -0
  227. package/dist/resolvers/adhocTimeout.js +12 -0
  228. package/dist/resolvers/adhocTimeout.js.map +1 -0
  229. package/dist/resolvers/agentVisionConsentAudit.d.ts +37 -0
  230. package/dist/resolvers/agentVisionConsentAudit.d.ts.map +1 -0
  231. package/dist/resolvers/agentVisionConsentAudit.js +63 -0
  232. package/dist/resolvers/agentVisionConsentAudit.js.map +1 -0
  233. package/dist/resolvers/avatarInputValidation.d.ts +40 -0
  234. package/dist/resolvers/avatarInputValidation.d.ts.map +1 -0
  235. package/dist/resolvers/avatarInputValidation.js +97 -0
  236. package/dist/resolvers/avatarInputValidation.js.map +1 -0
  237. package/dist/resolvers/currentUserRoles.d.ts +29 -0
  238. package/dist/resolvers/currentUserRoles.d.ts.map +1 -1
  239. package/dist/resolvers/currentUserRoles.js +30 -0
  240. package/dist/resolvers/currentUserRoles.js.map +1 -1
  241. package/dist/resolvers/meetings/index.d.ts +5 -0
  242. package/dist/resolvers/meetings/index.d.ts.map +1 -0
  243. package/dist/resolvers/meetings/index.js +5 -0
  244. package/dist/resolvers/meetings/index.js.map +1 -0
  245. package/dist/resolvers/meetings/meetingHelpers.d.ts +17 -0
  246. package/dist/resolvers/meetings/meetingHelpers.d.ts.map +1 -0
  247. package/dist/resolvers/meetings/meetingHelpers.js +212 -0
  248. package/dist/resolvers/meetings/meetingHelpers.js.map +1 -0
  249. package/dist/resolvers/meetings/meetingMutations.d.ts +18 -0
  250. package/dist/resolvers/meetings/meetingMutations.d.ts.map +1 -0
  251. package/dist/resolvers/meetings/meetingMutations.js +439 -0
  252. package/dist/resolvers/meetings/meetingMutations.js.map +1 -0
  253. package/dist/resolvers/meetings/meetingQueries.d.ts +7 -0
  254. package/dist/resolvers/meetings/meetingQueries.d.ts.map +1 -0
  255. package/dist/resolvers/meetings/meetingQueries.js +113 -0
  256. package/dist/resolvers/meetings/meetingQueries.js.map +1 -0
  257. package/dist/resolvers/meetings/meetingTypes.d.ts +89 -0
  258. package/dist/resolvers/meetings/meetingTypes.d.ts.map +1 -0
  259. package/dist/resolvers/meetings/meetingTypes.js +345 -0
  260. package/dist/resolvers/meetings/meetingTypes.js.map +1 -0
  261. package/dist/rest/ViewOperationsHandler.d.ts.map +1 -1
  262. package/dist/rest/ViewOperationsHandler.js +8 -5
  263. package/dist/rest/ViewOperationsHandler.js.map +1 -1
  264. package/dist/services/TaskGraphActionRunner.d.ts +8 -0
  265. package/dist/services/TaskGraphActionRunner.d.ts.map +1 -1
  266. package/dist/services/TaskGraphActionRunner.js +27 -1
  267. package/dist/services/TaskGraphActionRunner.js.map +1 -1
  268. package/dist/services/TaskGraphContinuationDeliverer.d.ts +4 -3
  269. package/dist/services/TaskGraphContinuationDeliverer.d.ts.map +1 -1
  270. package/dist/services/TaskGraphContinuationDeliverer.js +13 -7
  271. package/dist/services/TaskGraphContinuationDeliverer.js.map +1 -1
  272. package/dist/services/WorkQueueHostService.d.ts +36 -0
  273. package/dist/services/WorkQueueHostService.d.ts.map +1 -0
  274. package/dist/services/WorkQueueHostService.js +97 -0
  275. package/dist/services/WorkQueueHostService.js.map +1 -0
  276. package/dist/services/workQueueConfig.d.ts +103 -0
  277. package/dist/services/workQueueConfig.d.ts.map +1 -0
  278. package/dist/services/workQueueConfig.js +48 -0
  279. package/dist/services/workQueueConfig.js.map +1 -0
  280. package/dist/sharedCache.d.ts +105 -0
  281. package/dist/sharedCache.d.ts.map +1 -0
  282. package/dist/sharedCache.js +276 -0
  283. package/dist/sharedCache.js.map +1 -0
  284. package/dist/types.d.ts +11 -0
  285. package/dist/types.d.ts.map +1 -1
  286. package/dist/types.js.map +1 -1
  287. package/package.json +97 -94
  288. package/src/__tests__/ActionResolver.authorization.test.ts +353 -0
  289. package/src/__tests__/AdhocQueryResolver.bugs.test.ts +14 -35
  290. package/src/__tests__/AdhocQueryResolver.pagination.test.ts +6 -2
  291. package/src/__tests__/AdhocQueryResolver.scopeGuard.test.ts +3 -3
  292. package/src/__tests__/AdhocQueryResolver.sqlAuthorizer.test.ts +104 -0
  293. package/src/__tests__/BridgeHostInstance.test.ts +232 -0
  294. package/src/__tests__/ClientToolRequestResolver.test.ts +116 -0
  295. package/src/__tests__/EntityRecordNameResolver.fieldSecurity.test.ts +27 -72
  296. package/src/__tests__/FetchEntityVectorsResolver.test.ts +285 -0
  297. package/src/__tests__/HostInstance.test.ts +84 -0
  298. package/src/__tests__/HumanHandoffResolver.test.ts +250 -0
  299. package/src/__tests__/MeetingResolver.test.ts +448 -0
  300. package/src/__tests__/RealtimeBridgeResolver.test.ts +651 -4
  301. package/src/__tests__/RealtimeClientSessionResolver.configTamper.test.ts +383 -0
  302. package/src/__tests__/RealtimeClientSessionResolver.test.ts +682 -58
  303. package/src/__tests__/RealtimeProxyServer.test.ts +16 -1
  304. package/src/__tests__/RealtimeRelay.test.ts +876 -0
  305. package/src/__tests__/RemoteBrowserActionResolver.goalRunLink.test.ts +129 -0
  306. package/src/__tests__/ResolverBase.adhocReadScope.test.ts +96 -0
  307. package/src/__tests__/ResolverBase.aggregateScreen.test.ts +174 -0
  308. package/src/__tests__/ResolverBase.clientOldValues.test.ts +6 -3
  309. package/src/__tests__/ResolverBase.filterEscaping.test.ts +21 -2
  310. package/src/__tests__/ResolverBase.includeBinaryFields.test.ts +291 -0
  311. package/src/__tests__/ReturningVisitorRecap.test.ts +115 -0
  312. package/src/__tests__/RunAIAgentResolver.branch.test.ts +169 -0
  313. package/src/__tests__/RunAIAgentResolver.historyFrom.test.ts +4 -4
  314. package/src/__tests__/RunAIAgentResolver.stoppedPredecessor.test.ts +166 -0
  315. package/src/__tests__/RunTemplateResolver.test.ts +132 -0
  316. package/src/__tests__/RunViewResolver.cacheCheckForwarding.test.ts +63 -0
  317. package/src/__tests__/SessionJanitor.test.ts +845 -18
  318. package/src/__tests__/SessionManager.test.ts +213 -17
  319. package/src/__tests__/SessionRunIDVerifier.test.ts +251 -0
  320. package/src/__tests__/SyncRolesUsersResolver.userRoles.test.ts +97 -0
  321. package/src/__tests__/TaskGraphActionRunner.durablePayload.test.ts +41 -0
  322. package/src/__tests__/TaskGraphContinuationDeliverer.test.ts +50 -3
  323. package/src/__tests__/UserAvatarResolver.test.ts +255 -0
  324. package/src/__tests__/UserResolver.currentUser.test.ts +16 -1
  325. package/src/__tests__/WorkQueueHostService.test.ts +133 -0
  326. package/src/__tests__/actionAuthorization.test.ts +130 -0
  327. package/src/__tests__/adhocTimeoutClamp.test.ts +26 -0
  328. package/src/__tests__/agentVisionConsentAudit.test.ts +118 -0
  329. package/src/__tests__/avatarInputValidation.test.ts +160 -0
  330. package/src/__tests__/isolatedProviderTransactions.test.ts +169 -0
  331. package/src/__tests__/magicLinkService.consume.test.ts +6 -0
  332. package/src/__tests__/magicLinkService.provisionLog.test.ts +5 -0
  333. package/src/__tests__/newUsers.template.test.ts +151 -0
  334. package/src/__tests__/newUsers.test.ts +74 -5
  335. package/src/__tests__/orphanedConversationDetailReconciler.test.ts +17 -2
  336. package/src/__tests__/postgresqlPoolSettings.test.ts +131 -0
  337. package/src/__tests__/realtimeSessions/RealtimeSessionEventService.test.ts +201 -0
  338. package/src/__tests__/realtimeSessions/RealtimeSessionEventsResolver.test.ts +215 -0
  339. package/src/__tests__/realtimeSessions/RealtimeSessionVerificationResolver.test.ts +102 -0
  340. package/src/__tests__/realtimeSessions/RealtimeSessionVerificationService.test.ts +349 -0
  341. package/src/__tests__/realtimeSessions/RealtimeVerifyRouter.test.ts +131 -0
  342. package/src/__tests__/realtimeSessions/SlidingWindowRateLimiter.test.ts +56 -0
  343. package/src/__tests__/realtimeSessions/helpers.ts +4 -0
  344. package/src/__tests__/realtimeSessions/sessionAccess.test.ts +129 -0
  345. package/src/__tests__/realtimeSessions/sessionConfigStamps.test.ts +124 -0
  346. package/src/__tests__/realtimeSessions/verificationCore.test.ts +355 -0
  347. package/src/__tests__/realtimeSessions/verificationPages.test.ts +84 -0
  348. package/src/__tests__/realtimeSessions/verificationPolicy.test.ts +226 -0
  349. package/src/__tests__/realtimeSessions/verificationWorkflow.test.ts +633 -0
  350. package/src/__tests__/resolverBase.fls.test.ts +87 -4
  351. package/src/__tests__/serverExtensionReservedRoots.test.ts +2 -0
  352. package/src/__tests__/sharedCache.test.ts +310 -0
  353. package/src/__tests__/translateBracketsToPG.test.ts +20 -0
  354. package/src/__tests__/widgetGuestElevation.test.ts +44 -0
  355. package/src/agentSessions/BridgeHostInstance.ts +32 -0
  356. package/src/agentSessions/HostInstance.ts +124 -28
  357. package/src/agentSessions/ReturningVisitorRecap.ts +7 -3
  358. package/src/agentSessions/SessionJanitor.ts +543 -57
  359. package/src/agentSessions/SessionManager.ts +125 -25
  360. package/src/agentSessions/SessionRunIDVerifier.ts +171 -0
  361. package/src/agentSessions/index.ts +10 -3
  362. package/src/auth/actionAuthorization.ts +116 -0
  363. package/src/auth/index.ts +3 -8
  364. package/src/auth/magicLink/MagicLinkService.ts +6 -3
  365. package/src/auth/newUsers.ts +99 -11
  366. package/src/config.ts +255 -3
  367. package/src/context.ts +26 -34
  368. package/src/generated/graphql-schemas/__mj.ts +22701 -18838
  369. package/src/generic/OrphanedConversationDetailReconciler.ts +3 -3
  370. package/src/generic/ResolverBase.ts +210 -36
  371. package/src/generic/RunViewResolver.ts +37 -2
  372. package/src/index.ts +236 -170
  373. package/src/isolatedProvider.ts +22 -0
  374. package/src/postgresqlCompat.ts +21 -0
  375. package/src/postgresqlPoolSettings.ts +213 -0
  376. package/src/realtimeProxy/RealtimeProxyServer.ts +148 -16
  377. package/src/realtimeProxy/RealtimeRelayTunnel.ts +645 -0
  378. package/src/realtimeSessions/README.md +179 -0
  379. package/src/realtimeSessions/RealtimeSessionEventService.ts +274 -0
  380. package/src/realtimeSessions/RealtimeSessionVerificationService.ts +167 -0
  381. package/src/realtimeSessions/RealtimeVerifyRouter.ts +108 -0
  382. package/src/realtimeSessions/SessionVerificationPortsBase.ts +189 -0
  383. package/src/realtimeSessions/SlidingWindowRateLimiter.ts +92 -0
  384. package/src/realtimeSessions/index.ts +16 -0
  385. package/src/realtimeSessions/sessionAccess.ts +141 -0
  386. package/src/realtimeSessions/sessionConfigStamps.ts +123 -0
  387. package/src/realtimeSessions/subscriptionAuthorization.ts +116 -0
  388. package/src/realtimeSessions/verificationCore.ts +502 -0
  389. package/src/realtimeSessions/verificationPages.ts +149 -0
  390. package/src/realtimeSessions/verificationPolicy.ts +321 -0
  391. package/src/realtimeSessions/verificationWorkflow.ts +702 -0
  392. package/src/realtimeWidget/widgetGuestElevation.ts +34 -2
  393. package/src/resolvers/ActionResolver.ts +84 -21
  394. package/src/resolvers/AdhocQueryResolver.ts +105 -187
  395. package/src/resolvers/CacheStatsResolver.ts +89 -2
  396. package/src/resolvers/ClientToolRequestResolver.ts +25 -7
  397. package/src/resolvers/EntityRecordNameResolver.ts +9 -51
  398. package/src/resolvers/FetchEntityVectorsResolver.ts +97 -2
  399. package/src/resolvers/GetDataResolver.ts +10 -0
  400. package/src/resolvers/HumanHandoffResolver.ts +312 -0
  401. package/src/resolvers/MCPResolver.ts +8 -5
  402. package/src/resolvers/MeetingResolver.ts +438 -0
  403. package/src/resolvers/RealtimeBridgeResolver.ts +385 -19
  404. package/src/resolvers/RealtimeClientSessionResolver.ts +503 -344
  405. package/src/resolvers/RealtimeSessionEventsResolver.ts +133 -0
  406. package/src/resolvers/RealtimeSessionVerificationResolver.ts +174 -0
  407. package/src/resolvers/RemoteBrowserActionResolver.ts +11 -1
  408. package/src/resolvers/RunAIAgentResolver.ts +78 -11
  409. package/src/resolvers/RunTemplateResolver.ts +13 -12
  410. package/src/resolvers/SyncDataResolver.ts +6 -2
  411. package/src/resolvers/SyncRolesUsersResolver.ts +24 -6
  412. package/src/resolvers/UserAvatarResolver.ts +111 -0
  413. package/src/resolvers/UserResolver.ts +2 -16
  414. package/src/resolvers/adhocTimeout.ts +12 -0
  415. package/src/resolvers/agentVisionConsentAudit.ts +82 -0
  416. package/src/resolvers/avatarInputValidation.ts +123 -0
  417. package/src/resolvers/currentUserRoles.ts +32 -1
  418. package/src/resolvers/meetings/index.ts +4 -0
  419. package/src/resolvers/meetings/meetingHelpers.ts +307 -0
  420. package/src/resolvers/meetings/meetingMutations.ts +556 -0
  421. package/src/resolvers/meetings/meetingQueries.ts +172 -0
  422. package/src/resolvers/meetings/meetingTypes.ts +238 -0
  423. package/src/rest/ViewOperationsHandler.ts +8 -5
  424. package/src/services/TaskGraphActionRunner.ts +29 -1
  425. package/src/services/TaskGraphContinuationDeliverer.ts +13 -7
  426. package/src/services/WorkQueueHostService.ts +129 -0
  427. package/src/services/workQueueConfig.ts +52 -0
  428. package/src/sharedCache.ts +302 -0
  429. package/src/types.ts +12 -0
  430. package/dist/resolvers/adhoc-query-helpers.d.ts +0 -33
  431. package/dist/resolvers/adhoc-query-helpers.d.ts.map +0 -1
  432. package/dist/resolvers/adhoc-query-helpers.js +0 -50
  433. package/dist/resolvers/adhoc-query-helpers.js.map +0 -1
  434. package/src/__tests__/adhoc-query-helpers.test.ts +0 -50
  435. package/src/resolvers/adhoc-query-helpers.ts +0 -67
@@ -12,15 +12,18 @@ 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, LiveKitParticipantService, 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 { WriteAgentVisionConsentAudit } from './agentVisionConsentAudit.js';
26
+ import { RoomAuthorizationService } from '@memberjunction/livekit-room-server';
24
27
  /**
25
28
  * Binds the agent realtime-session factory onto the LiveKit room coordinator's model-session creation seam.
26
29
  * Module-load side effect — it runs when MJServer builds its GraphQL schema (which imports this resolver),
@@ -30,6 +33,34 @@ import { RegisterMeetingRecordingFile, CorrelateRecordingStart } from './meeting
30
33
  * other. Idempotent (latest-wins).
31
34
  */
32
35
  LiveKitAgentRoomCoordinator.Instance.SetSessionFactory(CreateBridgeRealtimeSession);
36
+ /**
37
+ * Binds the turn-taking tool handler seam (same module-load rationale as the factory above). A full-duplex model
38
+ * in a shared room calls `i_am_addressed` / `yield_turn`; the bridge engine owns what those mean, and this installs
39
+ * the engine's handler as the model session runtime's local tool handler (`@memberjunction/ai-agents`).
40
+ */
41
+ LiveKitAgentRoomCoordinator.Instance.SetTurnToolBinder((session, handler) => {
42
+ const runtime = GetBridgeRealtimeRuntime(session);
43
+ if (!runtime) {
44
+ LogError('[RealtimeBridge] the model session has no bridge runtime; i_am_addressed / yield_turn will not execute for it.');
45
+ return;
46
+ }
47
+ runtime.SetLocalToolHandler(handler);
48
+ });
49
+ /**
50
+ * Binds whether an agent watches meetings (same module-load rationale as the factory above). The coordinator asks per
51
+ * model session; the answer is the agent's `realtime.video.watchMeetings` setting, which the session runtime read from
52
+ * its effective configuration (`@memberjunction/ai-agents`). The coordinator also requires a model that takes video.
53
+ */
54
+ LiveKitAgentRoomCoordinator.Instance.SetAgentVisionResolver((session) => GetBridgeRealtimeRuntime(session)?.WatchesMeetingVideo === true);
55
+ /**
56
+ * Binds how a failed agent start is recorded on the agent's co-agent run (same module-load rationale as the factory
57
+ * above). The coordinator closes the model session of a start that fails before the bridge engine takes it; that close
58
+ * alone finalizes the run as Completed, so the coordinator first has the session's runtime finalize it as Failed, with the
59
+ * start's error.
60
+ */
61
+ LiveKitAgentRoomCoordinator.Instance.SetFailedStartRecorder(async (session, error) => {
62
+ await GetBridgeRealtimeRuntime(session)?.Finalize(false, error);
63
+ });
33
64
  /**
34
65
  * Binds the co-agent run finalizer onto the bridge engine (same module-load rationale as the factory above).
35
66
  * Lets the engine finalize a session's dangling co-agent observability run when it reaps a bridge WITHOUT a
@@ -151,10 +182,37 @@ __decorate([
151
182
  Field(() => String, { nullable: true }),
152
183
  __metadata("design:type", String)
153
184
  ], StartLiveKitAgentRoomSessionInput.prototype, "TurnMode", void 0);
185
+ __decorate([
186
+ Field(() => Boolean, { nullable: true }),
187
+ __metadata("design:type", Boolean)
188
+ ], StartLiveKitAgentRoomSessionInput.prototype, "EnableHandoff", void 0);
189
+ __decorate([
190
+ Field(() => String, { nullable: true }),
191
+ __metadata("design:type", String)
192
+ ], StartLiveKitAgentRoomSessionInput.prototype, "TurnAddressing", void 0);
154
193
  StartLiveKitAgentRoomSessionInput = __decorate([
155
194
  InputType()
156
195
  ], StartLiveKitAgentRoomSessionInput);
157
196
  export { StartLiveKitAgentRoomSessionInput };
197
+ /** The live turn-taking state of a room (floor holder, human speaking, hand-off, loop cap, recent events, seated agents). */
198
+ let LiveKitRoomTurnStateResult = class LiveKitRoomTurnStateResult {
199
+ };
200
+ __decorate([
201
+ Field(() => Boolean),
202
+ __metadata("design:type", Boolean)
203
+ ], LiveKitRoomTurnStateResult.prototype, "Success", void 0);
204
+ __decorate([
205
+ Field(() => String, { nullable: true }),
206
+ __metadata("design:type", String)
207
+ ], LiveKitRoomTurnStateResult.prototype, "ErrorMessage", void 0);
208
+ __decorate([
209
+ Field(() => String, { nullable: true }),
210
+ __metadata("design:type", String)
211
+ ], LiveKitRoomTurnStateResult.prototype, "StateJSON", void 0);
212
+ LiveKitRoomTurnStateResult = __decorate([
213
+ ObjectType()
214
+ ], LiveKitRoomTurnStateResult);
215
+ export { LiveKitRoomTurnStateResult };
158
216
  let LiveKitAgentRoomSessionResult = class LiveKitAgentRoomSessionResult {
159
217
  };
160
218
  __decorate([
@@ -229,7 +287,39 @@ LiveKitRecordingResult = __decorate([
229
287
  ObjectType()
230
288
  ], LiveKitRecordingResult);
231
289
  export { LiveKitRecordingResult };
232
- /** A selectable provider-native voice for the dev voice picker. */
290
+ /** A person's choice of whether agents may see their camera and shared screen in a room. */
291
+ let SetLiveKitAgentVisionInput = class SetLiveKitAgentVisionInput {
292
+ };
293
+ __decorate([
294
+ Field(() => String),
295
+ __metadata("design:type", String)
296
+ ], SetLiveKitAgentVisionInput.prototype, "RoomName", void 0);
297
+ __decorate([
298
+ Field(() => Boolean),
299
+ __metadata("design:type", Boolean)
300
+ ], SetLiveKitAgentVisionInput.prototype, "Allow", void 0);
301
+ SetLiveKitAgentVisionInput = __decorate([
302
+ InputType()
303
+ ], SetLiveKitAgentVisionInput);
304
+ export { SetLiveKitAgentVisionInput };
305
+ let LiveKitAgentVisionResult = class LiveKitAgentVisionResult {
306
+ };
307
+ __decorate([
308
+ Field(() => Boolean),
309
+ __metadata("design:type", Boolean)
310
+ ], LiveKitAgentVisionResult.prototype, "Success", void 0);
311
+ __decorate([
312
+ Field(() => String, { nullable: true }),
313
+ __metadata("design:type", String)
314
+ ], LiveKitAgentVisionResult.prototype, "ErrorMessage", void 0);
315
+ LiveKitAgentVisionResult = __decorate([
316
+ ObjectType()
317
+ ], LiveKitAgentVisionResult);
318
+ export { LiveKitAgentVisionResult };
319
+ /**
320
+ * A selectable provider-native voice for the dev voice picker: one per persona, or one per voice only the driver declares.
321
+ * Two personas can share an `ID` (a voice, and the same voice with a face); `PersonaID` tells them apart.
322
+ */
233
323
  let RealtimeVoiceOptionResult = class RealtimeVoiceOptionResult {
234
324
  };
235
325
  __decorate([
@@ -240,6 +330,18 @@ __decorate([
240
330
  Field(() => String),
241
331
  __metadata("design:type", String)
242
332
  ], RealtimeVoiceOptionResult.prototype, "Name", void 0);
333
+ __decorate([
334
+ Field(() => String, { nullable: true }),
335
+ __metadata("design:type", String)
336
+ ], RealtimeVoiceOptionResult.prototype, "PersonaID", void 0);
337
+ __decorate([
338
+ Field(() => String, { nullable: true }),
339
+ __metadata("design:type", String)
340
+ ], RealtimeVoiceOptionResult.prototype, "AvatarID", void 0);
341
+ __decorate([
342
+ Field(() => String, { nullable: true }),
343
+ __metadata("design:type", String)
344
+ ], RealtimeVoiceOptionResult.prototype, "PreviewImageURL", void 0);
243
345
  RealtimeVoiceOptionResult = __decorate([
244
346
  ObjectType()
245
347
  ], RealtimeVoiceOptionResult);
@@ -287,6 +389,11 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
287
389
  if (!user) {
288
390
  return failure('Unable to determine current user.');
289
391
  }
392
+ const provider = GetReadWriteProvider(context.providers);
393
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(input.RoomName, user, provider);
394
+ if (!auth.Authorized) {
395
+ return failure(auth.Reason ?? 'Unauthorized room access.');
396
+ }
290
397
  const tokenService = new LiveKitTokenService();
291
398
  const minted = await tokenService.MintClientToken(input.RoomName, this.participantIdentity(user), input.DisplayName ?? user.Name ?? user.Email);
292
399
  return { Success: true, ...minted };
@@ -299,7 +406,9 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
299
406
  }
300
407
  /**
301
408
  * Starts (or reuses) an agent's presence in a LiveKit room and returns a client token so the calling
302
- * user can immediately join the same room.
409
+ * user can immediately join the same room. The token is minted before anything starts, so a start that can't give the
410
+ * user one fails with nothing started. When no `AgentSessionID` is passed, an agent session is created for the
411
+ * agent; if the agent then fails to start, that session is closed (`Error`) before the failure is returned.
303
412
  */
304
413
  async StartLiveKitAgentRoomSession(input, context = {}) {
305
414
  const failure = (msg, roomName = '') => ({
@@ -318,19 +427,47 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
318
427
  }
319
428
  const provider = GetReadWriteProvider(context.providers);
320
429
  const roomName = input.RoomName?.trim() || `mj-${randomUUID()}`;
430
+ if (input.RoomName?.trim()) {
431
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(roomName, user, provider);
432
+ if (!auth.Authorized) {
433
+ return failure(auth.Reason ?? 'Unauthorized room access.', roomName);
434
+ }
435
+ }
436
+ // The user's token first: a start that can't let the user into the room fails before anything starts there. Minted
437
+ // after the agent joined, a failure left the agent in a room the user couldn't enter and gave the UI no bridge id to
438
+ // stop it by.
439
+ const clientToken = await new LiveKitTokenService().MintClientToken(roomName, this.participantIdentity(user), user.Name ?? user.Email);
440
+ // Opt-in: an agent that can bring a person, a number or another agent into this room (the same room, so a visitor
441
+ // is escalated without leaving it). Falls through to the standard start when the server cannot do handoffs.
442
+ const handoffSessionBridgeID = await this.startWithHandoff(input, roomName, user, provider);
443
+ if (handoffSessionBridgeID) {
444
+ return {
445
+ Success: true,
446
+ SessionBridgeID: handoffSessionBridgeID,
447
+ RoomName: roomName,
448
+ ServerUrl: clientToken.ServerUrl,
449
+ ClientToken: clientToken.Token,
450
+ Identity: clientToken.Identity,
451
+ };
452
+ }
321
453
  // Resolve the AIAgentSession the bridge will reference. The bridge row FK-references
322
454
  // AIAgentSession(ID), so we must use an EXISTING session — either one the caller supplied, or a
323
455
  // freshly-created one. Previously this minted a bare random UUID with no backing row, so the
324
456
  // bridge INSERT failed the FK_AIAgentSessionBridge_Session constraint.
325
457
  let agentSessionID = input.AgentSessionID?.trim();
458
+ // A session created here exists for this agent's time in the room alone, so it closes when the agent leaves, however
459
+ // it leaves, or at once if the agent fails to start (see startAgentInRoom). A session the caller supplied is the
460
+ // caller's to close.
461
+ let createdSessionID;
326
462
  if (!agentSessionID) {
327
463
  if (!input.AgentID?.trim()) {
328
464
  return failure('An AgentID is required to start an agent room session.', roomName);
329
465
  }
330
466
  const createdSession = await this.sessionManager.CreateSession({ agentID: input.AgentID.trim(), userID: user.ID }, user, provider);
331
467
  agentSessionID = createdSession.ID;
468
+ createdSessionID = createdSession.ID;
332
469
  }
333
- const session = await LiveKitAgentRoomCoordinator.Instance.StartAgentRoomSession({
470
+ const session = await this.startAgentInRoom(createdSessionID, user, provider, {
334
471
  AgentSessionID: agentSessionID,
335
472
  RoomName: roomName,
336
473
  AgentID: input.AgentID,
@@ -339,11 +476,10 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
339
476
  RealtimeModelID: input.RealtimeModelID,
340
477
  RealtimeVoice: input.RealtimeVoice,
341
478
  TurnMode: this.normalizeTurnMode(input.TurnMode),
479
+ TurnAddressing: this.normalizeTurnAddressing(input.TurnAddressing),
342
480
  ContextUser: user,
343
481
  MetadataProvider: provider,
344
482
  });
345
- const tokenService = new LiveKitTokenService();
346
- const clientToken = await tokenService.MintClientToken(roomName, this.participantIdentity(user), user.Name ?? user.Email);
347
483
  return {
348
484
  Success: true,
349
485
  SessionBridgeID: session.SessionBridgeID,
@@ -363,6 +499,7 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
363
499
  * Stops one agent's presence in a room (the bot leaves) — the remove half of in-room agent management.
364
500
  * Identified by the `SessionBridgeID` returned from {@link StartLiveKitAgentRoomSession}. Returns `true`
365
501
  * when the bridge was stopped. Best-effort: a missing/already-stopped bridge or any error resolves `false`.
502
+ * The agent session the start created for the agent is closed (`Explicit`) before this returns.
366
503
  *
367
504
  * @param sessionBridgeID The `MJ: AI Agent Session Bridges` row id of the agent to remove.
368
505
  */
@@ -373,6 +510,14 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
373
510
  return false;
374
511
  }
375
512
  const provider = GetReadWriteProvider(context.providers);
513
+ const roomName = LiveKitAgentRoomCoordinator.Instance.GetRoomForBridge(sessionBridgeID);
514
+ if (roomName) {
515
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(roomName, user, provider);
516
+ if (!auth.Authorized) {
517
+ LogError(`StopLiveKitAgentRoomSession unauthorized: user ${user.ID} cannot access room ${roomName} (${auth.Reason})`);
518
+ return false;
519
+ }
520
+ }
376
521
  return await LiveKitAgentRoomCoordinator.Instance.StopAgentRoomSession(sessionBridgeID, 'Explicit', user, provider);
377
522
  }
378
523
  catch (error) {
@@ -385,6 +530,7 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
385
530
  * coordinator's server-side roster). This is the "End meeting" half of the Zoom-style leave control —
386
531
  * usable by any participant, including one who only *joined* the room and never tracked the bridge ids.
387
532
  * Returns `true` when the teardown ran (even if the room held zero agents). Best-effort: any error → `false`.
533
+ * The agent sessions the starts created for the agents are closed (`Explicit`) as each agent leaves.
388
534
  *
389
535
  * @param roomName The LiveKit room to end.
390
536
  */
@@ -395,6 +541,11 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
395
541
  return false;
396
542
  }
397
543
  const provider = GetReadWriteProvider(context.providers);
544
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(roomName, user, provider);
545
+ if (!auth.Authorized) {
546
+ LogError(`EndLiveKitRoom unauthorized: user ${user.ID} cannot access room ${roomName} (${auth.Reason})`);
547
+ return false;
548
+ }
398
549
  await LiveKitAgentRoomCoordinator.Instance.StopAllAgentsInRoom(roomName, 'Explicit', user, provider);
399
550
  return true;
400
551
  }
@@ -403,6 +554,33 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
403
554
  return false;
404
555
  }
405
556
  }
557
+ /**
558
+ * A room's live turn-taking state — who holds the floor, whether a person is speaking, any pending hand-off,
559
+ * the agent-to-agent loop-cap progress, the most recent floor/backchannel/yield events, and who is seated. The
560
+ * agent test bed polls it. Read-only. `StateJSON` is `null` when no agent is in the room.
561
+ *
562
+ * @param roomName The LiveKit room.
563
+ */
564
+ async GetLiveKitRoomTurnState(roomName, context = {}) {
565
+ try {
566
+ const user = this.GetUserFromPayload(context.userPayload);
567
+ if (!user) {
568
+ return { Success: false, ErrorMessage: 'Unable to determine current user.' };
569
+ }
570
+ const provider = GetReadWriteProvider(context.providers);
571
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(roomName, user, provider);
572
+ if (!auth.Authorized) {
573
+ return { Success: false, ErrorMessage: auth.Reason ?? 'Unauthorized room access.' };
574
+ }
575
+ const snapshot = LiveKitAgentRoomCoordinator.Instance.GetRoomTurnState(roomName);
576
+ return { Success: true, StateJSON: snapshot ? JSON.stringify(snapshot) : undefined };
577
+ }
578
+ catch (error) {
579
+ const msg = error instanceof Error ? error.message : String(error);
580
+ LogError(`GetLiveKitRoomTurnState failed: ${msg}`);
581
+ return { Success: false, ErrorMessage: msg };
582
+ }
583
+ }
406
584
  /**
407
585
  * Lists active Realtime models with the voices each driver supports — the source for the dev model/voice
408
586
  * picker (gated client-side by the `Realtime: Advanced Session Controls` authorization). Read-only; returns
@@ -440,6 +618,11 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
440
618
  return false;
441
619
  }
442
620
  const provider = GetReadWriteProvider(context.providers);
621
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(roomName, user, provider);
622
+ if (!auth.Authorized) {
623
+ LogError(`InviteUsersToLiveKitRoom unauthorized: user ${user.ID} cannot access room ${roomName} (${auth.Reason})`);
624
+ return false;
625
+ }
443
626
  await NotificationEngine.Instance.Config(false, user, provider);
444
627
  const inviter = user.Name?.trim() || user.Email || 'Someone';
445
628
  let anyDelivered = false;
@@ -473,10 +656,14 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
473
656
  if (!user) {
474
657
  return { Success: false, ErrorMessage: 'Unable to determine current user.', EgressID: '', Status: '' };
475
658
  }
659
+ const provider = GetReadWriteProvider(context.providers);
660
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(input.RoomName, user, provider);
661
+ if (!auth.Authorized) {
662
+ return { Success: false, ErrorMessage: auth.Reason ?? 'Unauthorized room access.', EgressID: '', Status: '' };
663
+ }
476
664
  const info = await new LiveKitEgressService().StartRoomRecording({ RoomName: input.RoomName, Layout: input.Layout });
477
665
  // Best-effort: correlate the live recording with the room's Meeting-Room Conversation (if it exists
478
666
  // yet) by stamping its EgressID. Never fail the start on this — the stop-flow resolves/creates it.
479
- const provider = GetReadWriteProvider(context.providers);
480
667
  void CorrelateRecordingStart(input.RoomName, info.EgressID, user, provider);
481
668
  return { Success: true, EgressID: info.EgressID, Status: info.Status };
482
669
  }
@@ -498,8 +685,39 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
498
685
  if (!user) {
499
686
  return { Success: false, ErrorMessage: 'Unable to determine current user.', EgressID: egressID, Status: '' };
500
687
  }
501
- const info = await new LiveKitEgressService().StopRecording(egressID);
502
688
  const provider = GetReadWriteProvider(context.providers);
689
+ // Map egress ID to room name: check LiveKit egress service first, fallback to Conversation if available.
690
+ const egressService = new LiveKitEgressService();
691
+ let roomName = await egressService.GetRoomForEgress(egressID);
692
+ if (!roomName && provider) {
693
+ try {
694
+ const rv = RunView.FromMetadataProvider(provider);
695
+ const convResult = await rv.RunView({
696
+ EntityName: 'MJ: Conversations',
697
+ ExtraFilter: `EgressID='${EscapeSQLString(egressID)}' AND (IsArchived IS NULL OR IsArchived=0)`,
698
+ Fields: ['ExternalID'],
699
+ OrderBy: '__mj_CreatedAt DESC',
700
+ MaxRows: 1,
701
+ ResultType: 'simple',
702
+ }, user);
703
+ if (convResult.Success && convResult.Results.length > 0 && convResult.Results[0].ExternalID) {
704
+ roomName = convResult.Results[0].ExternalID;
705
+ }
706
+ }
707
+ catch (err) {
708
+ LogError(`StopLiveKitRecording: error looking up Conversation for egress ID '${egressID}'`, undefined, err);
709
+ }
710
+ }
711
+ if (roomName) {
712
+ const auth = await RoomAuthorizationService.Instance.AuthorizeRoomAccess(roomName, user, provider);
713
+ if (!auth.Authorized) {
714
+ return { Success: false, ErrorMessage: auth.Reason ?? 'Unauthorized room access.', EgressID: egressID, Status: '' };
715
+ }
716
+ }
717
+ else {
718
+ return { Success: false, ErrorMessage: `Unable to determine room for egress ID '${egressID}'.`, EgressID: egressID, Status: '' };
719
+ }
720
+ const info = await egressService.StopRecording(egressID);
503
721
  // Register the completed egress MP4 as a Files row on the Meeting-Room Conversation. Best-effort:
504
722
  // any failure (e.g. storage provider not configured) leaves RecordingFileID unset but still
505
723
  // returns the successful stop result.
@@ -515,9 +733,115 @@ let RealtimeBridgeResolver = class RealtimeBridgeResolver extends ResolverBase {
515
733
  return { Success: false, ErrorMessage: msg, EgressID: egressID, Status: '' };
516
734
  }
517
735
  }
518
- /** Builds a stable, lowercased participant identity from the authenticated user. */
736
+ /**
737
+ * Records whether the current user lets agents see their camera and shared screen in a room. The participant is
738
+ * worked out from the authenticated user, never sent by the client, so a person can only answer for themselves. To
739
+ * allow, the room must be one they may enter ({@link RoomAuthorizationService}, as for every room mutation). A
740
+ * withdrawal skips that check: a cancelled meeting or a failed lookup must not keep an agent watching someone who is
741
+ * still in the room, and the identity is always the caller's own. LiveKit refuses either way when they are not in it. The choice is set as their `mj.agentCanSee` attribute through LiveKit's server SDK (a
742
+ * participant's token can't change its own attributes) and audited, applied or not.
743
+ */
744
+ async SetLiveKitAgentVision(input, context = {}) {
745
+ try {
746
+ const user = this.GetUserFromPayload(context.userPayload);
747
+ if (!user) {
748
+ return { Success: false, ErrorMessage: 'Unable to determine current user.' };
749
+ }
750
+ const provider = GetReadWriteProvider(context.providers);
751
+ const auth = input.Allow
752
+ ? await RoomAuthorizationService.Instance.AuthorizeRoomAccess(input.RoomName, user, provider)
753
+ : { Authorized: true };
754
+ const result = auth.Authorized
755
+ ? await new LiveKitParticipantService().SetAgentVision(input.RoomName, this.participantIdentity(user), input.Allow)
756
+ : { Success: false, ErrorMessage: auth.Reason ?? 'Unauthorized room access.' };
757
+ await WriteAgentVisionConsentAudit({ User: user, RoomName: input.RoomName, Allow: input.Allow, Applied: result.Success, ErrorMessage: result.ErrorMessage }, provider);
758
+ if (result.Success) {
759
+ return { Success: true };
760
+ }
761
+ return { Success: false, ErrorMessage: result.NotInRoom ? 'You are not in this room.' : result.ErrorMessage };
762
+ }
763
+ catch (error) {
764
+ const msg = error instanceof Error ? error.message : String(error);
765
+ LogError(`SetLiveKitAgentVision failed: ${msg}`);
766
+ return { Success: false, ErrorMessage: msg };
767
+ }
768
+ }
769
+ /**
770
+ * Starts the agent through the handoff-capable room starter when the caller asked for it and the server can do it.
771
+ * Returns the bridge id, or `undefined` to mean "use the standard start" (not requested, no starter, no agent named).
772
+ */
773
+ async startWithHandoff(input, roomName, user, provider) {
774
+ if (!input.EnableHandoff) {
775
+ return undefined;
776
+ }
777
+ const starter = RoomHandoffEngine.Instance.Deps.AgentStarter;
778
+ const agentID = input.TargetAgentID?.trim() || input.AgentID?.trim();
779
+ if (!starter || !agentID) {
780
+ LogError('StartLiveKitAgentRoomSession: handoff was requested but this server has no handoff-capable agent starter; starting the agent without it.');
781
+ return undefined;
782
+ }
783
+ const started = await starter({
784
+ RoomName: roomName,
785
+ AgentID: agentID,
786
+ AgentName: input.AgentName?.trim() ?? '',
787
+ CallerLabel: user.Name?.trim() || user.Email || 'Web visitor',
788
+ ContextUser: user,
789
+ Provider: provider,
790
+ RealtimeModelID: input.RealtimeModelID,
791
+ RealtimeVoice: input.RealtimeVoice,
792
+ });
793
+ return started.SessionBridgeID;
794
+ }
795
+ /**
796
+ * Starts the agent in the room through the coordinator. An agent session created for this agent's time in the room
797
+ * (`createdSessionID`) is this start's to close: once the agent has joined, through the end-of-session hook from
798
+ * {@link closeSessionWhenAgentLeaves}; when the start fails, at once, as `Error`, through
799
+ * {@link SessionManager.CloseSessionForFailedStart}, before the error propagates, since the agent never joined and that
800
+ * hook never runs (#5308). By then the coordinator has closed any model session the start opened, its co-agent run
801
+ * finalized as failed. A session the caller supplied gets neither: it is the caller's.
802
+ */
803
+ async startAgentInRoom(createdSessionID, user, provider, params) {
804
+ const coordinator = LiveKitAgentRoomCoordinator.Instance;
805
+ if (!createdSessionID) {
806
+ return coordinator.StartAgentRoomSession(params);
807
+ }
808
+ try {
809
+ return await coordinator.StartAgentRoomSession({ ...params, Host: this.closeSessionWhenAgentLeaves(createdSessionID, user, provider) });
810
+ }
811
+ catch (error) {
812
+ await this.sessionManager.CloseSessionForFailedStart(createdSessionID, user, provider);
813
+ throw error;
814
+ }
815
+ }
816
+ /**
817
+ * What the coordinator is given for an agent session created for one agent's time in a room: its end-of-session hook
818
+ * closes the session once the agent's bridge has ended, whatever ended it (the agent stopped, the meeting ended, everyone
819
+ * left, the model session lost), through {@link SessionManager.CloseSessionForEndedBridge}. The close runs as the user
820
+ * who started the agent, whoever stops it: the session is theirs.
821
+ */
822
+ closeSessionWhenAgentLeaves(agentSessionID, user, provider) {
823
+ return {
824
+ OnSessionEnded: async (reason) => {
825
+ await this.sessionManager.CloseSessionForEndedBridge(agentSessionID, reason, user, provider);
826
+ },
827
+ };
828
+ }
829
+ /** Builds a stable, lowercased participant identity from the authenticated user (shared with the handoff engine, which watches for it). */
519
830
  participantIdentity(user) {
520
- return `user-${user.ID}`.toLowerCase();
831
+ return LiveKitUserIdentity(user.ID);
832
+ }
833
+ /** Normalizes an addressing-mode string; unknown/absent leaves the coordinator's default (`Auto`). */
834
+ normalizeTurnAddressing(mode) {
835
+ switch ((mode ?? '').trim().toLowerCase()) {
836
+ case 'auto':
837
+ return 'Auto';
838
+ case 'modelside':
839
+ return 'ModelSide';
840
+ case 'regex':
841
+ return 'Regex';
842
+ default:
843
+ return undefined;
844
+ }
521
845
  }
522
846
  /** Normalizes a turn-mode string to the bridge's accepted values. */
523
847
  normalizeTurnMode(mode) {
@@ -565,6 +889,14 @@ __decorate([
565
889
  __metadata("design:paramtypes", [String, Object]),
566
890
  __metadata("design:returntype", Promise)
567
891
  ], RealtimeBridgeResolver.prototype, "EndLiveKitRoom", null);
892
+ __decorate([
893
+ Query(() => LiveKitRoomTurnStateResult),
894
+ __param(0, Arg('roomName', () => String)),
895
+ __param(1, Ctx()),
896
+ __metadata("design:type", Function),
897
+ __metadata("design:paramtypes", [String, Object]),
898
+ __metadata("design:returntype", Promise)
899
+ ], RealtimeBridgeResolver.prototype, "GetLiveKitRoomTurnState", null);
568
900
  __decorate([
569
901
  Query(() => [RealtimeModelVoicesResult]),
570
902
  __param(0, Ctx()),
@@ -597,6 +929,14 @@ __decorate([
597
929
  __metadata("design:paramtypes", [String, Object]),
598
930
  __metadata("design:returntype", Promise)
599
931
  ], RealtimeBridgeResolver.prototype, "StopLiveKitRecording", null);
932
+ __decorate([
933
+ Mutation(() => LiveKitAgentVisionResult),
934
+ __param(0, Arg('input', () => SetLiveKitAgentVisionInput)),
935
+ __param(1, Ctx()),
936
+ __metadata("design:type", Function),
937
+ __metadata("design:paramtypes", [SetLiveKitAgentVisionInput, Object]),
938
+ __metadata("design:returntype", Promise)
939
+ ], RealtimeBridgeResolver.prototype, "SetLiveKitAgentVision", null);
600
940
  RealtimeBridgeResolver = __decorate([
601
941
  Resolver()
602
942
  ], RealtimeBridgeResolver);
@@ -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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"}