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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (543) hide show
  1. package/README.md +20 -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 +236 -27
  15. package/dist/agentSessions/SessionJanitor.d.ts.map +1 -1
  16. package/dist/agentSessions/SessionJanitor.js +682 -54
  17. package/dist/agentSessions/SessionJanitor.js.map +1 -1
  18. package/dist/agentSessions/SessionManager.d.ts +48 -3
  19. package/dist/agentSessions/SessionManager.d.ts.map +1 -1
  20. package/dist/agentSessions/SessionManager.js +112 -9
  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/apiRoot.d.ts +32 -0
  31. package/dist/apiRoot.d.ts.map +1 -0
  32. package/dist/apiRoot.js +67 -0
  33. package/dist/apiRoot.js.map +1 -0
  34. package/dist/auth/AuthProviderCatalogRouter.d.ts.map +1 -1
  35. package/dist/auth/AuthProviderCatalogRouter.js +25 -0
  36. package/dist/auth/AuthProviderCatalogRouter.js.map +1 -1
  37. package/dist/auth/LoginScreenEngine.d.ts +22 -0
  38. package/dist/auth/LoginScreenEngine.d.ts.map +1 -0
  39. package/dist/auth/LoginScreenEngine.js +57 -0
  40. package/dist/auth/LoginScreenEngine.js.map +1 -0
  41. package/dist/auth/actionAuthorization.d.ts +40 -0
  42. package/dist/auth/actionAuthorization.d.ts.map +1 -0
  43. package/dist/auth/actionAuthorization.js +94 -0
  44. package/dist/auth/actionAuthorization.js.map +1 -0
  45. package/dist/auth/index.d.ts +1 -0
  46. package/dist/auth/index.d.ts.map +1 -1
  47. package/dist/auth/index.js +4 -10
  48. package/dist/auth/index.js.map +1 -1
  49. package/dist/auth/magicLink/MagicLinkRouter.d.ts.map +1 -1
  50. package/dist/auth/magicLink/MagicLinkRouter.js +3 -2
  51. package/dist/auth/magicLink/MagicLinkRouter.js.map +1 -1
  52. package/dist/auth/magicLink/MagicLinkService.d.ts.map +1 -1
  53. package/dist/auth/magicLink/MagicLinkService.js +6 -3
  54. package/dist/auth/magicLink/MagicLinkService.js.map +1 -1
  55. package/dist/auth/newUsers.d.ts +10 -0
  56. package/dist/auth/newUsers.d.ts.map +1 -1
  57. package/dist/auth/newUsers.js +80 -11
  58. package/dist/auth/newUsers.js.map +1 -1
  59. package/dist/config.d.ts +2514 -22
  60. package/dist/config.d.ts.map +1 -1
  61. package/dist/config.js +166 -4
  62. package/dist/config.js.map +1 -1
  63. package/dist/context.d.ts +8 -0
  64. package/dist/context.d.ts.map +1 -1
  65. package/dist/context.js +14 -11
  66. package/dist/context.js.map +1 -1
  67. package/dist/coreRoutes.d.ts +29 -0
  68. package/dist/coreRoutes.d.ts.map +1 -0
  69. package/dist/coreRoutes.js +142 -0
  70. package/dist/coreRoutes.js.map +1 -0
  71. package/dist/generated/graphql-schemas/__mj.d.ts +504 -3
  72. package/dist/generated/graphql-schemas/__mj.d.ts.map +1 -1
  73. package/dist/generated/graphql-schemas/__mj.js +2456 -7
  74. package/dist/generated/graphql-schemas/__mj.js.map +1 -1
  75. package/dist/generic/CacheInvalidationResolver.d.ts +43 -8
  76. package/dist/generic/CacheInvalidationResolver.d.ts.map +1 -1
  77. package/dist/generic/CacheInvalidationResolver.js +59 -19
  78. package/dist/generic/CacheInvalidationResolver.js.map +1 -1
  79. package/dist/generic/OrphanedConversationDetailReconciler.js +3 -3
  80. package/dist/generic/OrphanedConversationDetailReconciler.js.map +1 -1
  81. package/dist/generic/PushStatusResolver.js +1 -1
  82. package/dist/generic/PushStatusResolver.js.map +1 -1
  83. package/dist/generic/ResolverBase.d.ts +123 -48
  84. package/dist/generic/ResolverBase.d.ts.map +1 -1
  85. package/dist/generic/ResolverBase.js +293 -305
  86. package/dist/generic/ResolverBase.js.map +1 -1
  87. package/dist/generic/RunViewResolver.d.ts.map +1 -1
  88. package/dist/generic/RunViewResolver.js +16 -0
  89. package/dist/generic/RunViewResolver.js.map +1 -1
  90. package/dist/globalCors.d.ts +33 -0
  91. package/dist/globalCors.d.ts.map +1 -0
  92. package/dist/globalCors.js +58 -0
  93. package/dist/globalCors.js.map +1 -0
  94. package/dist/index.d.ts +17 -0
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +219 -278
  97. package/dist/index.js.map +1 -1
  98. package/dist/isolatedProvider.d.ts +20 -0
  99. package/dist/isolatedProvider.d.ts.map +1 -0
  100. package/dist/isolatedProvider.js +22 -0
  101. package/dist/isolatedProvider.js.map +1 -0
  102. package/dist/multiTenancy/index.d.ts.map +1 -1
  103. package/dist/multiTenancy/index.js +22 -2
  104. package/dist/multiTenancy/index.js.map +1 -1
  105. package/dist/realtimeProxy/RealtimeProxyServer.d.ts +44 -4
  106. package/dist/realtimeProxy/RealtimeProxyServer.d.ts.map +1 -1
  107. package/dist/realtimeProxy/RealtimeProxyServer.js +121 -16
  108. package/dist/realtimeProxy/RealtimeProxyServer.js.map +1 -1
  109. package/dist/realtimeProxy/RealtimeRelayTunnel.d.ts +171 -0
  110. package/dist/realtimeProxy/RealtimeRelayTunnel.d.ts.map +1 -0
  111. package/dist/realtimeProxy/RealtimeRelayTunnel.js +532 -0
  112. package/dist/realtimeProxy/RealtimeRelayTunnel.js.map +1 -0
  113. package/dist/realtimeSessions/RealtimeSessionEventService.d.ts +148 -0
  114. package/dist/realtimeSessions/RealtimeSessionEventService.d.ts.map +1 -0
  115. package/dist/realtimeSessions/RealtimeSessionEventService.js +191 -0
  116. package/dist/realtimeSessions/RealtimeSessionEventService.js.map +1 -0
  117. package/dist/realtimeSessions/RealtimeSessionVerificationService.d.ts +66 -0
  118. package/dist/realtimeSessions/RealtimeSessionVerificationService.d.ts.map +1 -0
  119. package/dist/realtimeSessions/RealtimeSessionVerificationService.js +139 -0
  120. package/dist/realtimeSessions/RealtimeSessionVerificationService.js.map +1 -0
  121. package/dist/realtimeSessions/RealtimeVerifyRouter.d.ts +38 -0
  122. package/dist/realtimeSessions/RealtimeVerifyRouter.d.ts.map +1 -0
  123. package/dist/realtimeSessions/RealtimeVerifyRouter.js +99 -0
  124. package/dist/realtimeSessions/RealtimeVerifyRouter.js.map +1 -0
  125. package/dist/realtimeSessions/RecordingAssemblyScheduler.d.ts +100 -0
  126. package/dist/realtimeSessions/RecordingAssemblyScheduler.d.ts.map +1 -0
  127. package/dist/realtimeSessions/RecordingAssemblyScheduler.js +173 -0
  128. package/dist/realtimeSessions/RecordingAssemblyScheduler.js.map +1 -0
  129. package/dist/realtimeSessions/SessionVerificationPortsBase.d.ts +61 -0
  130. package/dist/realtimeSessions/SessionVerificationPortsBase.d.ts.map +1 -0
  131. package/dist/realtimeSessions/SessionVerificationPortsBase.js +149 -0
  132. package/dist/realtimeSessions/SessionVerificationPortsBase.js.map +1 -0
  133. package/dist/realtimeSessions/SlidingWindowRateLimiter.d.ts +57 -0
  134. package/dist/realtimeSessions/SlidingWindowRateLimiter.d.ts.map +1 -0
  135. package/dist/realtimeSessions/SlidingWindowRateLimiter.js +69 -0
  136. package/dist/realtimeSessions/SlidingWindowRateLimiter.js.map +1 -0
  137. package/dist/realtimeSessions/index.d.ts +19 -0
  138. package/dist/realtimeSessions/index.d.ts.map +1 -0
  139. package/dist/realtimeSessions/index.js +19 -0
  140. package/dist/realtimeSessions/index.js.map +1 -0
  141. package/dist/realtimeSessions/ownedRealtimeSession.d.ts +30 -0
  142. package/dist/realtimeSessions/ownedRealtimeSession.d.ts.map +1 -0
  143. package/dist/realtimeSessions/ownedRealtimeSession.js +47 -0
  144. package/dist/realtimeSessions/ownedRealtimeSession.js.map +1 -0
  145. package/dist/realtimeSessions/sessionAccess.d.ts +92 -0
  146. package/dist/realtimeSessions/sessionAccess.d.ts.map +1 -0
  147. package/dist/realtimeSessions/sessionAccess.js +94 -0
  148. package/dist/realtimeSessions/sessionAccess.js.map +1 -0
  149. package/dist/realtimeSessions/sessionConfigStamps.d.ts +70 -0
  150. package/dist/realtimeSessions/sessionConfigStamps.d.ts.map +1 -0
  151. package/dist/realtimeSessions/sessionConfigStamps.js +93 -0
  152. package/dist/realtimeSessions/sessionConfigStamps.js.map +1 -0
  153. package/dist/realtimeSessions/subscriptionAuthorization.d.ts +65 -0
  154. package/dist/realtimeSessions/subscriptionAuthorization.d.ts.map +1 -0
  155. package/dist/realtimeSessions/subscriptionAuthorization.js +71 -0
  156. package/dist/realtimeSessions/subscriptionAuthorization.js.map +1 -0
  157. package/dist/realtimeSessions/verificationCore.d.ts +243 -0
  158. package/dist/realtimeSessions/verificationCore.d.ts.map +1 -0
  159. package/dist/realtimeSessions/verificationCore.js +356 -0
  160. package/dist/realtimeSessions/verificationCore.js.map +1 -0
  161. package/dist/realtimeSessions/verificationPages.d.ts +66 -0
  162. package/dist/realtimeSessions/verificationPages.d.ts.map +1 -0
  163. package/dist/realtimeSessions/verificationPages.js +110 -0
  164. package/dist/realtimeSessions/verificationPages.js.map +1 -0
  165. package/dist/realtimeSessions/verificationPolicy.d.ts +147 -0
  166. package/dist/realtimeSessions/verificationPolicy.d.ts.map +1 -0
  167. package/dist/realtimeSessions/verificationPolicy.js +249 -0
  168. package/dist/realtimeSessions/verificationPolicy.js.map +1 -0
  169. package/dist/realtimeSessions/verificationWorkflow.d.ts +263 -0
  170. package/dist/realtimeSessions/verificationWorkflow.d.ts.map +1 -0
  171. package/dist/realtimeSessions/verificationWorkflow.js +435 -0
  172. package/dist/realtimeSessions/verificationWorkflow.js.map +1 -0
  173. package/dist/realtimeWidget/widgetGuestElevation.d.ts +20 -2
  174. package/dist/realtimeWidget/widgetGuestElevation.d.ts.map +1 -1
  175. package/dist/realtimeWidget/widgetGuestElevation.js +31 -2
  176. package/dist/realtimeWidget/widgetGuestElevation.js.map +1 -1
  177. package/dist/resolvers/ActionResolver.d.ts +31 -5
  178. package/dist/resolvers/ActionResolver.d.ts.map +1 -1
  179. package/dist/resolvers/ActionResolver.js +75 -14
  180. package/dist/resolvers/ActionResolver.js.map +1 -1
  181. package/dist/resolvers/AdhocQueryResolver.d.ts +14 -1
  182. package/dist/resolvers/AdhocQueryResolver.d.ts.map +1 -1
  183. package/dist/resolvers/AdhocQueryResolver.js +21 -5
  184. package/dist/resolvers/AdhocQueryResolver.js.map +1 -1
  185. package/dist/resolvers/ArtifactFileResolver.d.ts +5 -1
  186. package/dist/resolvers/ArtifactFileResolver.d.ts.map +1 -1
  187. package/dist/resolvers/ArtifactFileResolver.js +9 -7
  188. package/dist/resolvers/ArtifactFileResolver.js.map +1 -1
  189. package/dist/resolvers/CacheStatsResolver.d.ts +27 -0
  190. package/dist/resolvers/CacheStatsResolver.d.ts.map +1 -1
  191. package/dist/resolvers/CacheStatsResolver.js +113 -2
  192. package/dist/resolvers/CacheStatsResolver.js.map +1 -1
  193. package/dist/resolvers/ClientToolRequestResolver.d.ts +4 -2
  194. package/dist/resolvers/ClientToolRequestResolver.d.ts.map +1 -1
  195. package/dist/resolvers/ClientToolRequestResolver.js +28 -10
  196. package/dist/resolvers/ClientToolRequestResolver.js.map +1 -1
  197. package/dist/resolvers/ConversationRunEventsResolver.d.ts +8 -4
  198. package/dist/resolvers/ConversationRunEventsResolver.d.ts.map +1 -1
  199. package/dist/resolvers/ConversationRunEventsResolver.js +6 -6
  200. package/dist/resolvers/ConversationRunEventsResolver.js.map +1 -1
  201. package/dist/resolvers/DatasetResolver.d.ts +24 -3
  202. package/dist/resolvers/DatasetResolver.d.ts.map +1 -1
  203. package/dist/resolvers/DatasetResolver.js +57 -8
  204. package/dist/resolvers/DatasetResolver.js.map +1 -1
  205. package/dist/resolvers/EntityRecordNameResolver.d.ts +2 -1
  206. package/dist/resolvers/EntityRecordNameResolver.d.ts.map +1 -1
  207. package/dist/resolvers/EntityRecordNameResolver.js +3 -2
  208. package/dist/resolvers/EntityRecordNameResolver.js.map +1 -1
  209. package/dist/resolvers/FetchEntityVectorsResolver.d.ts +27 -1
  210. package/dist/resolvers/FetchEntityVectorsResolver.d.ts.map +1 -1
  211. package/dist/resolvers/FetchEntityVectorsResolver.js +148 -2
  212. package/dist/resolvers/FetchEntityVectorsResolver.js.map +1 -1
  213. package/dist/resolvers/FileResolver.d.ts +82 -11
  214. package/dist/resolvers/FileResolver.d.ts.map +1 -1
  215. package/dist/resolvers/FileResolver.js +279 -101
  216. package/dist/resolvers/FileResolver.js.map +1 -1
  217. package/dist/resolvers/GetDataContextDataResolver.d.ts +33 -7
  218. package/dist/resolvers/GetDataContextDataResolver.d.ts.map +1 -1
  219. package/dist/resolvers/GetDataContextDataResolver.js +117 -38
  220. package/dist/resolvers/GetDataContextDataResolver.js.map +1 -1
  221. package/dist/resolvers/GetDataResolver.d.ts.map +1 -1
  222. package/dist/resolvers/GetDataResolver.js +6 -3
  223. package/dist/resolvers/GetDataResolver.js.map +1 -1
  224. package/dist/resolvers/HumanHandoffResolver.d.ts.map +1 -1
  225. package/dist/resolvers/HumanHandoffResolver.js +7 -1
  226. package/dist/resolvers/HumanHandoffResolver.js.map +1 -1
  227. package/dist/resolvers/IntegrationDiscoveryResolver.d.ts.map +1 -1
  228. package/dist/resolvers/IntegrationDiscoveryResolver.js +4 -2
  229. package/dist/resolvers/IntegrationDiscoveryResolver.js.map +1 -1
  230. package/dist/resolvers/MCPResolver.d.ts.map +1 -1
  231. package/dist/resolvers/MCPResolver.js +9 -4
  232. package/dist/resolvers/MCPResolver.js.map +1 -1
  233. package/dist/resolvers/QueryResolver.d.ts +2 -0
  234. package/dist/resolvers/QueryResolver.d.ts.map +1 -1
  235. package/dist/resolvers/QueryResolver.js +13 -0
  236. package/dist/resolvers/QueryResolver.js.map +1 -1
  237. package/dist/resolvers/RealtimeBridgeResolver.d.ts +54 -2
  238. package/dist/resolvers/RealtimeBridgeResolver.d.ts.map +1 -1
  239. package/dist/resolvers/RealtimeBridgeResolver.js +155 -10
  240. package/dist/resolvers/RealtimeBridgeResolver.js.map +1 -1
  241. package/dist/resolvers/RealtimeClientSessionResolver.d.ts +157 -33
  242. package/dist/resolvers/RealtimeClientSessionResolver.d.ts.map +1 -1
  243. package/dist/resolvers/RealtimeClientSessionResolver.js +404 -116
  244. package/dist/resolvers/RealtimeClientSessionResolver.js.map +1 -1
  245. package/dist/resolvers/RealtimeSessionEventsResolver.d.ts +61 -0
  246. package/dist/resolvers/RealtimeSessionEventsResolver.d.ts.map +1 -0
  247. package/dist/resolvers/RealtimeSessionEventsResolver.js +130 -0
  248. package/dist/resolvers/RealtimeSessionEventsResolver.js.map +1 -0
  249. package/dist/resolvers/RealtimeSessionVerificationResolver.d.ts +85 -0
  250. package/dist/resolvers/RealtimeSessionVerificationResolver.d.ts.map +1 -0
  251. package/dist/resolvers/RealtimeSessionVerificationResolver.js +188 -0
  252. package/dist/resolvers/RealtimeSessionVerificationResolver.js.map +1 -0
  253. package/dist/resolvers/RemoteBrowserActionResolver.d.ts +2 -0
  254. package/dist/resolvers/RemoteBrowserActionResolver.d.ts.map +1 -1
  255. package/dist/resolvers/RemoteBrowserActionResolver.js +5 -1
  256. package/dist/resolvers/RemoteBrowserActionResolver.js.map +1 -1
  257. package/dist/resolvers/RunAIAgentResolver.d.ts +10 -0
  258. package/dist/resolvers/RunAIAgentResolver.d.ts.map +1 -1
  259. package/dist/resolvers/RunAIAgentResolver.js +100 -14
  260. package/dist/resolvers/RunAIAgentResolver.js.map +1 -1
  261. package/dist/resolvers/RunTemplateResolver.d.ts.map +1 -1
  262. package/dist/resolvers/RunTemplateResolver.js +12 -11
  263. package/dist/resolvers/RunTemplateResolver.js.map +1 -1
  264. package/dist/resolvers/SearchKnowledgeStreamResolver.d.ts +12 -1
  265. package/dist/resolvers/SearchKnowledgeStreamResolver.d.ts.map +1 -1
  266. package/dist/resolvers/SearchKnowledgeStreamResolver.js +15 -2
  267. package/dist/resolvers/SearchKnowledgeStreamResolver.js.map +1 -1
  268. package/dist/resolvers/SqlLoggingConfigResolver.d.ts.map +1 -1
  269. package/dist/resolvers/SqlLoggingConfigResolver.js +2 -3
  270. package/dist/resolvers/SqlLoggingConfigResolver.js.map +1 -1
  271. package/dist/resolvers/SyncDataResolver.d.ts.map +1 -1
  272. package/dist/resolvers/SyncDataResolver.js +6 -2
  273. package/dist/resolvers/SyncDataResolver.js.map +1 -1
  274. package/dist/resolvers/SyncRolesUsersResolver.d.ts +2 -0
  275. package/dist/resolvers/SyncRolesUsersResolver.d.ts.map +1 -1
  276. package/dist/resolvers/SyncRolesUsersResolver.js +23 -6
  277. package/dist/resolvers/SyncRolesUsersResolver.js.map +1 -1
  278. package/dist/resolvers/TaskGraphFrameResolver.d.ts +2 -1
  279. package/dist/resolvers/TaskGraphFrameResolver.d.ts.map +1 -1
  280. package/dist/resolvers/TaskGraphFrameResolver.js +28 -1
  281. package/dist/resolvers/TaskGraphFrameResolver.js.map +1 -1
  282. package/dist/resolvers/TestQuerySQLResolver.d.ts +24 -0
  283. package/dist/resolvers/TestQuerySQLResolver.d.ts.map +1 -1
  284. package/dist/resolvers/TestQuerySQLResolver.js +65 -13
  285. package/dist/resolvers/TestQuerySQLResolver.js.map +1 -1
  286. package/dist/resolvers/TransactionGroupResolver.d.ts +19 -2
  287. package/dist/resolvers/TransactionGroupResolver.d.ts.map +1 -1
  288. package/dist/resolvers/TransactionGroupResolver.js +102 -24
  289. package/dist/resolvers/TransactionGroupResolver.js.map +1 -1
  290. package/dist/resolvers/UserAvatarResolver.d.ts +16 -0
  291. package/dist/resolvers/UserAvatarResolver.d.ts.map +1 -0
  292. package/dist/resolvers/UserAvatarResolver.js +124 -0
  293. package/dist/resolvers/UserAvatarResolver.js.map +1 -0
  294. package/dist/resolvers/UserResolver.d.ts.map +1 -1
  295. package/dist/resolvers/UserResolver.js +2 -17
  296. package/dist/resolvers/UserResolver.js.map +1 -1
  297. package/dist/resolvers/agent-run-data-guard.d.ts +31 -0
  298. package/dist/resolvers/agent-run-data-guard.d.ts.map +1 -0
  299. package/dist/resolvers/agent-run-data-guard.js +72 -0
  300. package/dist/resolvers/agent-run-data-guard.js.map +1 -0
  301. package/dist/resolvers/agentVisionConsentAudit.d.ts +37 -0
  302. package/dist/resolvers/agentVisionConsentAudit.d.ts.map +1 -0
  303. package/dist/resolvers/agentVisionConsentAudit.js +63 -0
  304. package/dist/resolvers/agentVisionConsentAudit.js.map +1 -0
  305. package/dist/resolvers/avatarInputValidation.d.ts +40 -0
  306. package/dist/resolvers/avatarInputValidation.d.ts.map +1 -0
  307. package/dist/resolvers/avatarInputValidation.js +97 -0
  308. package/dist/resolvers/avatarInputValidation.js.map +1 -0
  309. package/dist/resolvers/currentUserRoles.d.ts +29 -0
  310. package/dist/resolvers/currentUserRoles.d.ts.map +1 -1
  311. package/dist/resolvers/currentUserRoles.js +30 -0
  312. package/dist/resolvers/currentUserRoles.js.map +1 -1
  313. package/dist/resolvers/meetings/meetingMutations.d.ts +6 -0
  314. package/dist/resolvers/meetings/meetingMutations.d.ts.map +1 -1
  315. package/dist/resolvers/meetings/meetingMutations.js +21 -0
  316. package/dist/resolvers/meetings/meetingMutations.js.map +1 -1
  317. package/dist/rest/RealtimeRecordingHandler.d.ts +49 -0
  318. package/dist/rest/RealtimeRecordingHandler.d.ts.map +1 -0
  319. package/dist/rest/RealtimeRecordingHandler.js +383 -0
  320. package/dist/rest/RealtimeRecordingHandler.js.map +1 -0
  321. package/dist/rest/ViewOperationsHandler.d.ts +3 -1
  322. package/dist/rest/ViewOperationsHandler.d.ts.map +1 -1
  323. package/dist/rest/ViewOperationsHandler.js +21 -12
  324. package/dist/rest/ViewOperationsHandler.js.map +1 -1
  325. package/dist/rest/setupRESTEndpoints.d.ts +6 -0
  326. package/dist/rest/setupRESTEndpoints.d.ts.map +1 -1
  327. package/dist/rest/setupRESTEndpoints.js +6 -0
  328. package/dist/rest/setupRESTEndpoints.js.map +1 -1
  329. package/dist/serverExtensionReservedRoots.d.ts +12 -10
  330. package/dist/serverExtensionReservedRoots.d.ts.map +1 -1
  331. package/dist/serverExtensionReservedRoots.js +14 -17
  332. package/dist/serverExtensionReservedRoots.js.map +1 -1
  333. package/dist/services/MJStorageBlobStore.d.ts +8 -1
  334. package/dist/services/MJStorageBlobStore.d.ts.map +1 -1
  335. package/dist/services/MJStorageBlobStore.js +25 -19
  336. package/dist/services/MJStorageBlobStore.js.map +1 -1
  337. package/dist/services/StartTaskGraphDispatcher.js +2 -2
  338. package/dist/services/StartTaskGraphDispatcher.js.map +1 -1
  339. package/dist/services/TaskGraphActionRunner.d.ts +5 -3
  340. package/dist/services/TaskGraphActionRunner.d.ts.map +1 -1
  341. package/dist/services/TaskGraphActionRunner.js +27 -5
  342. package/dist/services/TaskGraphActionRunner.js.map +1 -1
  343. package/dist/services/TaskGraphAgentRunner.d.ts +14 -2
  344. package/dist/services/TaskGraphAgentRunner.d.ts.map +1 -1
  345. package/dist/services/TaskGraphAgentRunner.js +157 -9
  346. package/dist/services/TaskGraphAgentRunner.js.map +1 -1
  347. package/dist/services/TaskGraphContinuationDeliverer.d.ts +57 -4
  348. package/dist/services/TaskGraphContinuationDeliverer.d.ts.map +1 -1
  349. package/dist/services/TaskGraphContinuationDeliverer.js +607 -18
  350. package/dist/services/TaskGraphContinuationDeliverer.js.map +1 -1
  351. package/dist/sharedCache.d.ts +105 -0
  352. package/dist/sharedCache.d.ts.map +1 -0
  353. package/dist/sharedCache.js +279 -0
  354. package/dist/sharedCache.js.map +1 -0
  355. package/dist/types.d.ts +6 -0
  356. package/dist/types.d.ts.map +1 -1
  357. package/dist/types.js.map +1 -1
  358. package/package.json +99 -96
  359. package/src/__tests__/ActionResolver.authorization.test.ts +353 -0
  360. package/src/__tests__/AdhocQueryResolver.sqlAuthorizer.test.ts +104 -0
  361. package/src/__tests__/BridgeHostInstance.test.ts +232 -0
  362. package/src/__tests__/ClientToolRequestResolver.test.ts +116 -0
  363. package/src/__tests__/DatasetResolver.itemFilters.test.ts +201 -0
  364. package/src/__tests__/EntityRecordNameResolver.rowSecurity.test.ts +152 -0
  365. package/src/__tests__/FetchEntityVectorsResolver.test.ts +433 -0
  366. package/src/__tests__/FileResolver.storageAccess.test.ts +562 -0
  367. package/src/__tests__/GetDataContextDataResolver.sqlItems.test.ts +416 -0
  368. package/src/__tests__/HostInstance.test.ts +84 -0
  369. package/src/__tests__/HumanHandoffResolver.test.ts +17 -0
  370. package/src/__tests__/ListOperationsResolver.adhocScreen.test.ts +137 -0
  371. package/src/__tests__/LoginScreenEngine.test.ts +86 -0
  372. package/src/__tests__/MJStorageBlobStore.storageGate.test.ts +63 -0
  373. package/src/__tests__/MeetingResolver.test.ts +75 -1
  374. package/src/__tests__/RealtimeBridgeResolver.test.ts +415 -6
  375. package/src/__tests__/RealtimeClientSessionResolver.configTamper.test.ts +383 -0
  376. package/src/__tests__/RealtimeClientSessionResolver.test.ts +682 -58
  377. package/src/__tests__/RealtimeProxyServer.test.ts +16 -1
  378. package/src/__tests__/RealtimeRelay.test.ts +876 -0
  379. package/src/__tests__/RecordingAssemblyScheduler.test.ts +178 -0
  380. package/src/__tests__/RemoteBrowserActionResolver.goalRunLink.test.ts +129 -0
  381. package/src/__tests__/ResolverBase.adhocReadScope.test.ts +133 -2
  382. package/src/__tests__/ResolverBase.aggregateScreen.test.ts +174 -0
  383. package/src/__tests__/ResolverBase.balancedClause.test.ts +155 -0
  384. package/src/__tests__/ResolverBase.clauseUnscopedRead.test.ts +127 -0
  385. package/src/__tests__/ResolverBase.clientOldValues.test.ts +212 -6
  386. package/src/__tests__/ResolverBase.filterEscaping.test.ts +5 -2
  387. package/src/__tests__/ReturningVisitorRecap.test.ts +115 -0
  388. package/src/__tests__/RunAIAgentResolver.branch.test.ts +170 -0
  389. package/src/__tests__/RunAIAgentResolver.historyFrom.test.ts +6 -4
  390. package/src/__tests__/RunAIAgentResolver.runDataGuard.test.ts +258 -0
  391. package/src/__tests__/RunAIAgentResolver.stoppedPredecessor.test.ts +166 -0
  392. package/src/__tests__/RunTemplateResolver.test.ts +132 -0
  393. package/src/__tests__/RunViewResolver.cacheCheckForwarding.test.ts +63 -0
  394. package/src/__tests__/RunViewResolver.cacheCheckScreen.test.ts +165 -0
  395. package/src/__tests__/SearchKnowledgeStreamResolver.test.ts +161 -0
  396. package/src/__tests__/SessionJanitor.test.ts +1203 -21
  397. package/src/__tests__/SessionManager.test.ts +240 -17
  398. package/src/__tests__/SessionRunIDVerifier.test.ts +251 -0
  399. package/src/__tests__/SyncRolesUsersResolver.userRoles.test.ts +97 -0
  400. package/src/__tests__/TaskGraphActionRunner.durablePayload.test.ts +25 -0
  401. package/src/__tests__/TaskGraphAgentRunner.test.ts +266 -0
  402. package/src/__tests__/TaskGraphContinuationDeliverer.test.ts +403 -22
  403. package/src/__tests__/TaskGraphFrameResolver.test.ts +22 -0
  404. package/src/__tests__/TestQuerySQLResolver.test.ts +274 -0
  405. package/src/__tests__/TransactionGroupResolver.refusals.test.ts +98 -1
  406. package/src/__tests__/UpdateMJDataContextItem.oldValues.test.ts +220 -0
  407. package/src/__tests__/UserAvatarResolver.test.ts +255 -0
  408. package/src/__tests__/UserResolver.currentUser.test.ts +16 -1
  409. package/src/__tests__/ViewOperationsHandler.clauseScreen.test.ts +157 -0
  410. package/src/__tests__/actionAuthorization.test.ts +130 -0
  411. package/src/__tests__/agent-run-data-guard.test.ts +130 -0
  412. package/src/__tests__/agentVisionConsentAudit.test.ts +118 -0
  413. package/src/__tests__/apiRootBoot.test.ts +202 -0
  414. package/src/__tests__/avatarInputValidation.test.ts +160 -0
  415. package/src/__tests__/cacheInvalidationRecordData.test.ts +64 -0
  416. package/src/__tests__/conversationRunEvents.test.ts +56 -14
  417. package/src/__tests__/globalCors.test.ts +217 -0
  418. package/src/__tests__/isolatedProviderTransactions.test.ts +169 -0
  419. package/src/__tests__/magicLinkService.consume.test.ts +6 -0
  420. package/src/__tests__/magicLinkService.provisionLog.test.ts +5 -0
  421. package/src/__tests__/multiTenancy.postgresRewrite.test.ts +181 -0
  422. package/src/__tests__/multiTenancy.security.test.ts +51 -0
  423. package/src/__tests__/multiTenancy.test.ts +1 -1
  424. package/src/__tests__/newUsers.template.test.ts +151 -0
  425. package/src/__tests__/newUsers.test.ts +74 -5
  426. package/src/__tests__/orphanedConversationDetailReconciler.test.ts +17 -2
  427. package/src/__tests__/ownedRealtimeSession.test.ts +39 -0
  428. package/src/__tests__/pushStatusResolver.filter.test.ts +7 -0
  429. package/src/__tests__/realtimeRecordingHandler.test.ts +652 -0
  430. package/src/__tests__/realtimeSessions/RealtimeSessionEventService.test.ts +201 -0
  431. package/src/__tests__/realtimeSessions/RealtimeSessionEventsResolver.test.ts +215 -0
  432. package/src/__tests__/realtimeSessions/RealtimeSessionVerificationResolver.test.ts +102 -0
  433. package/src/__tests__/realtimeSessions/RealtimeSessionVerificationService.test.ts +349 -0
  434. package/src/__tests__/realtimeSessions/RealtimeVerifyRouter.test.ts +131 -0
  435. package/src/__tests__/realtimeSessions/SlidingWindowRateLimiter.test.ts +56 -0
  436. package/src/__tests__/realtimeSessions/helpers.ts +4 -0
  437. package/src/__tests__/realtimeSessions/sessionAccess.test.ts +129 -0
  438. package/src/__tests__/realtimeSessions/sessionConfigStamps.test.ts +124 -0
  439. package/src/__tests__/realtimeSessions/verificationCore.test.ts +355 -0
  440. package/src/__tests__/realtimeSessions/verificationPages.test.ts +84 -0
  441. package/src/__tests__/realtimeSessions/verificationPolicy.test.ts +226 -0
  442. package/src/__tests__/realtimeSessions/verificationWorkflow.test.ts +633 -0
  443. package/src/__tests__/resolverBase.fls.test.ts +87 -4
  444. package/src/__tests__/serverExtensionHostOverlay.test.ts +66 -0
  445. package/src/__tests__/serverExtensionReservedRoots.test.ts +11 -96
  446. package/src/__tests__/sharedCache.test.ts +312 -0
  447. package/src/__tests__/widgetGuestElevation.test.ts +44 -0
  448. package/src/agentSessions/BridgeHostInstance.ts +32 -0
  449. package/src/agentSessions/HostInstance.ts +124 -28
  450. package/src/agentSessions/ReturningVisitorRecap.ts +7 -3
  451. package/src/agentSessions/SessionJanitor.ts +821 -59
  452. package/src/agentSessions/SessionManager.ts +138 -26
  453. package/src/agentSessions/SessionRunIDVerifier.ts +171 -0
  454. package/src/agentSessions/index.ts +10 -3
  455. package/src/apiRoot.ts +78 -0
  456. package/src/auth/AuthProviderCatalogRouter.ts +26 -0
  457. package/src/auth/LoginScreenEngine.ts +50 -0
  458. package/src/auth/actionAuthorization.ts +116 -0
  459. package/src/auth/index.ts +4 -8
  460. package/src/auth/magicLink/MagicLinkRouter.ts +3 -2
  461. package/src/auth/magicLink/MagicLinkService.ts +6 -3
  462. package/src/auth/newUsers.ts +99 -11
  463. package/src/config.ts +171 -5
  464. package/src/context.ts +15 -10
  465. package/src/coreRoutes.ts +166 -0
  466. package/src/generated/graphql-schemas/__mj.ts +1815 -57
  467. package/src/generic/CacheInvalidationResolver.ts +73 -18
  468. package/src/generic/OrphanedConversationDetailReconciler.ts +3 -3
  469. package/src/generic/PushStatusResolver.ts +1 -1
  470. package/src/generic/ResolverBase.ts +335 -326
  471. package/src/generic/RunViewResolver.ts +21 -0
  472. package/src/globalCors.ts +71 -0
  473. package/src/index.ts +231 -300
  474. package/src/isolatedProvider.ts +22 -0
  475. package/src/multiTenancy/index.ts +24 -2
  476. package/src/realtimeProxy/RealtimeProxyServer.ts +148 -16
  477. package/src/realtimeProxy/RealtimeRelayTunnel.ts +645 -0
  478. package/src/realtimeSessions/README.md +179 -0
  479. package/src/realtimeSessions/RealtimeSessionEventService.ts +274 -0
  480. package/src/realtimeSessions/RealtimeSessionVerificationService.ts +168 -0
  481. package/src/realtimeSessions/RealtimeVerifyRouter.ts +109 -0
  482. package/src/realtimeSessions/RecordingAssemblyScheduler.ts +234 -0
  483. package/src/realtimeSessions/SessionVerificationPortsBase.ts +189 -0
  484. package/src/realtimeSessions/SlidingWindowRateLimiter.ts +92 -0
  485. package/src/realtimeSessions/index.ts +18 -0
  486. package/src/realtimeSessions/ownedRealtimeSession.ts +55 -0
  487. package/src/realtimeSessions/sessionAccess.ts +145 -0
  488. package/src/realtimeSessions/sessionConfigStamps.ts +123 -0
  489. package/src/realtimeSessions/subscriptionAuthorization.ts +116 -0
  490. package/src/realtimeSessions/verificationCore.ts +502 -0
  491. package/src/realtimeSessions/verificationPages.ts +149 -0
  492. package/src/realtimeSessions/verificationPolicy.ts +321 -0
  493. package/src/realtimeSessions/verificationWorkflow.ts +702 -0
  494. package/src/realtimeWidget/widgetGuestElevation.ts +34 -2
  495. package/src/resolvers/ActionResolver.ts +84 -21
  496. package/src/resolvers/AdhocQueryResolver.ts +24 -6
  497. package/src/resolvers/ArtifactFileResolver.ts +9 -8
  498. package/src/resolvers/CacheStatsResolver.ts +89 -2
  499. package/src/resolvers/ClientToolRequestResolver.ts +25 -7
  500. package/src/resolvers/ConversationRunEventsResolver.ts +15 -11
  501. package/src/resolvers/DatasetResolver.ts +70 -10
  502. package/src/resolvers/EntityRecordNameResolver.ts +3 -2
  503. package/src/resolvers/FetchEntityVectorsResolver.ts +179 -2
  504. package/src/resolvers/FileResolver.ts +321 -106
  505. package/src/resolvers/GetDataContextDataResolver.ts +139 -41
  506. package/src/resolvers/GetDataResolver.ts +6 -3
  507. package/src/resolvers/HumanHandoffResolver.ts +8 -0
  508. package/src/resolvers/IntegrationDiscoveryResolver.ts +4 -2
  509. package/src/resolvers/MCPResolver.ts +8 -5
  510. package/src/resolvers/QueryResolver.ts +11 -0
  511. package/src/resolvers/RealtimeBridgeResolver.ts +163 -11
  512. package/src/resolvers/RealtimeClientSessionResolver.ts +511 -129
  513. package/src/resolvers/RealtimeSessionEventsResolver.ts +133 -0
  514. package/src/resolvers/RealtimeSessionVerificationResolver.ts +174 -0
  515. package/src/resolvers/RemoteBrowserActionResolver.ts +11 -1
  516. package/src/resolvers/RunAIAgentResolver.ts +116 -14
  517. package/src/resolvers/RunTemplateResolver.ts +13 -12
  518. package/src/resolvers/SearchKnowledgeStreamResolver.ts +19 -3
  519. package/src/resolvers/SqlLoggingConfigResolver.ts +2 -4
  520. package/src/resolvers/SyncDataResolver.ts +6 -2
  521. package/src/resolvers/SyncRolesUsersResolver.ts +24 -6
  522. package/src/resolvers/TaskGraphFrameResolver.ts +33 -1
  523. package/src/resolvers/TestQuerySQLResolver.ts +68 -13
  524. package/src/resolvers/TransactionGroupResolver.ts +131 -27
  525. package/src/resolvers/UserAvatarResolver.ts +111 -0
  526. package/src/resolvers/UserResolver.ts +2 -16
  527. package/src/resolvers/__tests__/GetDataResolver.validation.test.ts +95 -0
  528. package/src/resolvers/agent-run-data-guard.ts +89 -0
  529. package/src/resolvers/agentVisionConsentAudit.ts +82 -0
  530. package/src/resolvers/avatarInputValidation.ts +123 -0
  531. package/src/resolvers/currentUserRoles.ts +32 -1
  532. package/src/resolvers/meetings/meetingMutations.ts +21 -0
  533. package/src/rest/RealtimeRecordingHandler.ts +464 -0
  534. package/src/rest/ViewOperationsHandler.ts +29 -13
  535. package/src/rest/setupRESTEndpoints.ts +6 -0
  536. package/src/serverExtensionReservedRoots.ts +14 -17
  537. package/src/services/MJStorageBlobStore.ts +31 -30
  538. package/src/services/StartTaskGraphDispatcher.ts +2 -2
  539. package/src/services/TaskGraphActionRunner.ts +25 -5
  540. package/src/services/TaskGraphAgentRunner.ts +188 -11
  541. package/src/services/TaskGraphContinuationDeliverer.ts +713 -17
  542. package/src/sharedCache.ts +305 -0
  543. package/src/types.ts +7 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ActionResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/ActionResolver.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAgB,MAAM,aAAa,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;;GAGG;AACH,qBACa,gBAAgB;IAC3B;;OAEG;IAEH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IAEH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IAEH,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,qBACa,cAAc;IACzB;;OAEG;IAEH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IAEH,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAE5B;;;OAGG;IAEH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;GAGG;AACH,qBACa,iBAAiB;IAC5B;;OAEG;IAEH,aAAa,EAAE,iBAAiB,EAAE,CAAC;CACpC;AAED;;GAEG;AACH,qBACa,iBAAiB;IAC5B;;OAEG;IAEH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IAEH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IAEH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IAEH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IAEH,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAE/B;;;OAGG;IAEH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IAEH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IAEH,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAED;;;GAGG;AACH,qBACa,kBAAkB;IAC7B;;OAEG;IAEH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IAEH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IAEH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IAEH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,qBACa,cAAe,SAAQ,YAAY;IAC9C;;;;;OAKG;IAEG,SAAS,CACC,KAAK,EAAE,cAAc,EAC5B,GAAG,EAAE,UAAU,GACrB,OAAO,CAAC,kBAAkB,CAAC;IAgC9B;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAQtB;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IA2B7B;;;;;;;;OAQG;YACW,aAAa;IAqB3B;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAY1B;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IASzB;;;;;OAKG;IAEG,eAAe,CACL,KAAK,EAAE,iBAAiB,EAC/B,GAAG,EAAE,UAAU,GACrB,OAAO,CAAC,kBAAkB,CAAC;IAsD9B;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAQvB;;;;;;;OAOG;IACH,OAAO,CAAC,gBAAgB;IASxB;;;;;;OAMG;YACW,eAAe;IA4B7B;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAuB1B;;;;;;OAMG;IACH,OAAO,CAAC,wBAAwB;IAUhC;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAiBzB;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IAqB7B;;;;;OAKG;IACH,OAAO,CAAC,WAAW;CAQpB"}
1
+ {"version":3,"file":"ActionResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/ActionResolver.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAgB,MAAM,aAAa,CAAC;AAGvD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAI1D;;;GAGG;AACH,qBACa,gBAAgB;IAC3B;;OAEG;IAEH,IAAI,EAAE,MAAM,CAAC;IAEb;;;OAGG;IAEH,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IAEH,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,qBACa,cAAc;IACzB;;OAEG;IAEH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IAEH,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAE5B;;;OAGG;IAEH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;GAGG;AACH,qBACa,iBAAiB;IAC5B;;OAEG;IAEH,aAAa,EAAE,iBAAiB,EAAE,CAAC;CACpC;AAED;;GAEG;AACH,qBACa,iBAAiB;IAC5B;;OAEG;IAEH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IAEH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IAEH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IAEH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IAEH,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAE/B;;;OAGG;IAEH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IAEH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IAEH,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAED;;;GAGG;AACH,qBACa,kBAAkB;IAC7B;;OAEG;IAEH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IAEH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IAEH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IAEH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,qBACa,cAAe,SAAQ,YAAY;IAC9C;;;;;;;;;;;OAWG;IAEG,SAAS,CACC,KAAK,EAAE,cAAc,EAC5B,GAAG,EAAE,UAAU,GACrB,OAAO,CAAC,kBAAkB,CAAC;IA4B9B;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IAW7B;;;;;;OAMG;YACW,kBAAkB;IAchC;;;;OAIG;YACW,0BAA0B;IAiBxC;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAQtB;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IA2B7B;;;;;;;OAOG;YACW,aAAa;IAoB3B;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAY1B;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IASzB;;;;;OAKG;IAEG,eAAe,CACL,KAAK,EAAE,iBAAiB,EAC/B,GAAG,EAAE,UAAU,GACrB,OAAO,CAAC,kBAAkB,CAAC;IAsD9B;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAQvB;;;;;;;OAOG;IACH,OAAO,CAAC,gBAAgB;IASxB;;;;;;OAMG;YACW,eAAe;IA4B7B;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAuB1B;;;;;;OAMG;IACH,OAAO,CAAC,wBAAwB;IAUhC;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAiBzB;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IAqB7B;;;;;OAKG;IACH,OAAO,CAAC,WAAW;CAQpB"}
@@ -13,12 +13,15 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
13
13
  import { Resolver, Mutation, Arg, Ctx } from "type-graphql";
14
14
  import { ActionEngineServer } from "@memberjunction/actions";
15
15
  import { EntityActionEngineServer } from "@memberjunction/actions";
16
- import { CompositeKey, KeyValuePair, LogError } from "@memberjunction/core";
16
+ import { Metadata, CompositeKey, KeyValuePair, LogError, RunView } from "@memberjunction/core";
17
+ import { UserCache } from "@memberjunction/generic-database-provider";
17
18
  import { Field, InputType, ObjectType } from "type-graphql";
18
19
  import { KeyValuePairInput } from "../generic/KeyValuePairInput.js";
19
- import { CopyScalarsAndArrays, UUIDsEqual } from "@memberjunction/global";
20
+ import { CopyScalarsAndArrays, EscapeSQLString, UUIDsEqual } from "@memberjunction/global";
20
21
  import { GetReadOnlyProvider, GetReadWriteProvider } from "../util.js";
21
22
  import { ResolverBase } from "../generic/ResolverBase.js";
23
+ import { IsScopeLimitedPrincipal } from "../auth/scopeLimitedPrincipal.js";
24
+ import { EvaluateActionRunAuthorization, IsOwner } from "../auth/actionAuthorization.js";
22
25
  /**
23
26
  * Input type for action parameters
24
27
  * Used to pass parameters to actions when invoking them
@@ -149,30 +152,32 @@ export { ActionResultOutput };
149
152
  */
150
153
  let ActionResolver = class ActionResolver extends ResolverBase {
151
154
  /**
152
- * Mutation for running an action
155
+ * Mutation for running an action.
156
+ *
157
+ * Scope-limited sessions are refused. Any other caller must be authorized for the action — see
158
+ * {@link EvaluateActionRunAuthorization}: an Owner may run any action; anyone else needs a role that
159
+ * holds an authorization linked to the action through `MJ: Action Authorizations`, or, when the
160
+ * action has no such link, an action class that authorizes its caller itself. The run is always
161
+ * logged.
153
162
  * @param input The input parameters for running the action
154
163
  * @param ctx The GraphQL context containing user authentication information
155
164
  * @returns The result of running the action
156
165
  */
157
166
  async RunAction(input, ctx) {
158
167
  try {
168
+ const user = this.getRunActionPrincipal(ctx);
159
169
  // Check API key scope authorization for action execution
160
170
  await this.CheckAPIKeyScopeAuthorization('action:execute', input.ActionID, ctx.userPayload);
161
- // Get the user from context
162
- const user = ctx.userPayload.userRecord;
163
- if (!user) {
164
- throw new Error("User is not authenticated");
165
- }
166
171
  // Initialize the action engine
167
172
  await ActionEngineServer.Instance.Config(false, user);
168
- // Get the action by ID
169
173
  const action = this.findActionById(input.ActionID);
174
+ await this.assertCanRunAction(action, user, ctx.providers);
170
175
  // Parse the parameters
171
176
  const params = this.parseActionParameters(input.Params);
172
177
  // Run the action — thread the request-scoped provider so provider-bound
173
178
  // actions (e.g. the semantic find-* / Search Entity actions, which call
174
179
  // params.Provider.SearchEntity) run against the caller's metadata layer.
175
- const result = await this.executeAction(action, user, params, ctx.providers, input.SkipActionLog);
180
+ const result = await this.executeAction(action, user, params, ctx.providers);
176
181
  // Return the result
177
182
  return this.createActionResult(result);
178
183
  }
@@ -180,6 +185,63 @@ let ActionResolver = class ActionResolver extends ResolverBase {
180
185
  return this.handleActionError(e);
181
186
  }
182
187
  }
188
+ /**
189
+ * The authenticated caller of RunAction. A scope-limited session is refused: its confinement exists
190
+ * only as row-level-security filters, and an action can reach data and services those filters never
191
+ * cover.
192
+ * @throws Error when there is no user or the session is scope-limited
193
+ */
194
+ getRunActionPrincipal(ctx) {
195
+ const user = ctx.userPayload?.userRecord;
196
+ if (!user) {
197
+ throw new Error("User is not authenticated");
198
+ }
199
+ if (IsScopeLimitedPrincipal(user)) {
200
+ throw new Error("RunAction is not permitted for scope-limited sessions");
201
+ }
202
+ return user;
203
+ }
204
+ /**
205
+ * Refuses the run unless the caller is authorized for the action — see
206
+ * {@link EvaluateActionRunAuthorization}. The `MJ: Action Authorizations` rows, the authorization
207
+ * tree and the role grants all come from the request's provider, or all from the global provider
208
+ * when the request carries none.
209
+ * @throws Error when the caller may not run the action
210
+ */
211
+ async assertCanRunAction(action, user, providers) {
212
+ if (IsOwner(user)) {
213
+ return; // an Owner may run any action, so nothing needs to be read
214
+ }
215
+ const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
216
+ const actionAuthorizationIDs = await this.loadActionAuthorizationIDs(action.ID, provider);
217
+ const metadata = provider ?? Metadata.Provider; // global-provider-ok: fallback only when the request carries no provider
218
+ const actionAuthorizesCaller = ActionEngineServer.Instance.ActionAuthorizesCaller(action);
219
+ const decision = EvaluateActionRunAuthorization(user, actionAuthorizationIDs, metadata, actionAuthorizesCaller);
220
+ if (!decision.Allowed) {
221
+ throw new Error(`Not authorized to run action ${action.ID}: ${decision.Reason}`);
222
+ }
223
+ }
224
+ /**
225
+ * The AuthorizationID of each `MJ: Action Authorizations` row for the action. Read as the system
226
+ * user: this is the server's own authorization decision, so it must not depend on whether the
227
+ * caller can read that entity.
228
+ */
229
+ async loadActionAuthorizationIDs(actionID, provider) {
230
+ const systemUser = UserCache.Instance.GetSystemUser();
231
+ if (!systemUser) {
232
+ throw new Error("System user not found");
233
+ }
234
+ const result = await new RunView(provider).RunView({
235
+ EntityName: 'MJ: Action Authorizations',
236
+ ExtraFilter: `ActionID='${EscapeSQLString(actionID)}'`,
237
+ Fields: ['AuthorizationID'],
238
+ ResultType: 'simple'
239
+ }, systemUser);
240
+ if (!result.Success) {
241
+ throw new Error(`Could not read the authorizations for action ${actionID}: ${result.ErrorMessage}`);
242
+ }
243
+ return result.Results.map(row => row.AuthorizationID);
244
+ }
183
245
  /**
184
246
  * Finds an action by its ID
185
247
  * @param actionID The ID of the action to find
@@ -225,15 +287,14 @@ let ActionResolver = class ActionResolver extends ResolverBase {
225
287
  });
226
288
  }
227
289
  /**
228
- * Executes an action
290
+ * Executes an action. The run is always logged: a client cannot switch off the action execution log.
229
291
  * @param action The action to execute
230
292
  * @param user The user context
231
293
  * @param params The action parameters
232
- * @param skipActionLog Whether to skip action logging
233
294
  * @returns The action result
234
295
  * @private
235
296
  */
236
- async executeAction(action, user, params, providers, skipActionLog) {
297
+ async executeAction(action, user, params, providers) {
237
298
  // Resolve the request-scoped provider. Prefer read-write (actions may mutate);
238
299
  // fall back to read-only, then to the engine's global-Metadata default when no
239
300
  // request providers are present (preserves prior behavior).
@@ -242,7 +303,7 @@ let ActionResolver = class ActionResolver extends ResolverBase {
242
303
  Action: action,
243
304
  ContextUser: user,
244
305
  Params: params,
245
- SkipActionLog: skipActionLog,
306
+ SkipActionLog: false,
246
307
  Filters: [],
247
308
  Provider: provider
248
309
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ActionResolver.js","sourceRoot":"","sources":["../../src/resolvers/ActionResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ActionResolver.js","sourceRoot":"","sources":["../../src/resolvers/ActionResolver.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import type { DatabaseProviderBase, UserInfo } from '@memberjunction/core';
2
+ import type { AdhocSQLAuthorizer } from '@memberjunction/actions';
1
3
  import { AppContext } from '../types.js';
2
4
  import { ResolverBase } from '../generic/ResolverBase.js';
3
5
  import { RunQueryResultType } from './QueryResolver.js';
@@ -46,11 +48,22 @@ export declare class AdhocQueryResolver extends ResolverBase {
46
48
  * because raw SQL applies neither (see assertFullQueryUsesReadableEntityViews). The provider
47
49
  * renders the same input the same way and only wraps it in server-built paging and a count,
48
50
  * so the rendered SQL is the full set of reads. Returns the refusal message, or null.
51
+ *
52
+ * `provider` is the read-only provider the SQL will run on; it supplies the platform and the
53
+ * entity metadata. {@link CreateAdhocSQLAuthorizer} exposes this check to the action engine.
49
54
  */
50
- private authorizeRenderedSQL;
55
+ AuthorizeRenderedSQL(sqlText: string, provider: DatabaseProviderBase, contextUser: UserInfo | undefined): string | null;
51
56
  /** Maps the provider's result to the GraphQL shape, naming a timeout plainly. */
52
57
  private toResultType;
53
58
  private buildErrorResult;
54
59
  }
60
+ /**
61
+ * The ad-hoc SQL checks MJServer registers with the action engine, so that Run Ad-hoc Query applies
62
+ * the same checks as {@link AdhocQueryResolver.ExecuteAdhocQuery}: the rendered SQL must be one read
63
+ * statement that reads only entity views the caller may read in full, and the timeout is limited by
64
+ * the server's request timeout.
65
+ * @param requestTimeoutMs the server's request timeout in milliseconds; 0 or less means no limit
66
+ */
67
+ export declare function CreateAdhocSQLAuthorizer(requestTimeoutMs: number): AdhocSQLAuthorizer;
55
68
  export {};
56
69
  //# sourceMappingURL=AdhocQueryResolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AdhocQueryResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/AdhocQueryResolver.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAGxD;;;GAGG;AACH,cACM,eAAe;IAEjB,GAAG,EAAE,MAAM,CAAC;IAGZ,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBACa,kBAAmB,SAAQ,YAAY;IAE1C,iBAAiB,CACkB,KAAK,EAAE,eAAe,EACpD,OAAO,EAAE,UAAU,GAC3B,OAAO,CAAC,kBAAkB,CAAC;IAoC9B;;;;;;;;;OASG;IACH,OAAO,CAAC,oBAAoB;IAW5B,iFAAiF;IACjF,OAAO,CAAC,YAAY;IA6BpB,OAAO,CAAC,gBAAgB;CAc3B"}
1
+ {"version":3,"file":"AdhocQueryResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/AdhocQueryResolver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAkB,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAE3F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAGxD;;;GAGG;AACH,cACM,eAAe;IAEjB,GAAG,EAAE,MAAM,CAAC;IAGZ,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBACa,kBAAmB,SAAQ,YAAY;IAE1C,iBAAiB,CACkB,KAAK,EAAE,eAAe,EACpD,OAAO,EAAE,UAAU,GAC3B,OAAO,CAAC,kBAAkB,CAAC;IAoC9B;;;;;;;;;;;;OAYG;IACI,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB,EAAE,WAAW,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI;IAU9H,iFAAiF;IACjF,OAAO,CAAC,YAAY;IA6BpB,OAAO,CAAC,gBAAgB;CAc3B;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,gBAAgB,EAAE,MAAM,GAAG,kBAAkB,CAMrF"}
@@ -83,7 +83,7 @@ let AdhocQueryResolver = class AdhocQueryResolver extends ResolverBase {
83
83
  return this.buildErrorResult('No read-only data source available for ad-hoc query execution');
84
84
  }
85
85
  const contextUser = context.userPayload?.userRecord;
86
- const refusal = this.authorizeRenderedSQL(input.SQL, provider.PlatformKey, context, contextUser);
86
+ const refusal = this.AuthorizeRenderedSQL(input.SQL, provider, contextUser);
87
87
  if (refusal) {
88
88
  return this.buildErrorResult(refusal, Date.now() - startTime);
89
89
  }
@@ -114,12 +114,14 @@ let AdhocQueryResolver = class AdhocQueryResolver extends ResolverBase {
114
114
  * because raw SQL applies neither (see assertFullQueryUsesReadableEntityViews). The provider
115
115
  * renders the same input the same way and only wraps it in server-built paging and a count,
116
116
  * so the rendered SQL is the full set of reads. Returns the refusal message, or null.
117
+ *
118
+ * `provider` is the read-only provider the SQL will run on; it supplies the platform and the
119
+ * entity metadata. {@link CreateAdhocSQLAuthorizer} exposes this check to the action engine.
117
120
  */
118
- authorizeRenderedSQL(sqlText, platform, context, contextUser) {
121
+ AuthorizeRenderedSQL(sqlText, provider, contextUser) {
119
122
  try {
120
- const rendered = RenderPipeline.Run(sqlText, { Platform: platform, ContextUser: contextUser, RequireReadStatement: true });
121
- const mdProvider = GetReadOnlyProvider(context.providers, { allowFallbackToReadWrite: true }) ?? undefined;
122
- this.assertFullQueryUsesReadableEntityViews(rendered.Trace.AfterTemplates, mdProvider, contextUser, 'ad-hoc SQL');
123
+ const rendered = RenderPipeline.Run(sqlText, { Platform: provider.PlatformKey, ContextUser: contextUser, RequireReadStatement: true });
124
+ this.assertFullQueryUsesReadableEntityViews(rendered.Trace.AfterTemplates, provider, contextUser, 'ad-hoc SQL');
123
125
  return null;
124
126
  }
125
127
  catch (err) {
@@ -173,4 +175,18 @@ AdhocQueryResolver = __decorate([
173
175
  Resolver()
174
176
  ], AdhocQueryResolver);
175
177
  export { AdhocQueryResolver };
178
+ /**
179
+ * The ad-hoc SQL checks MJServer registers with the action engine, so that Run Ad-hoc Query applies
180
+ * the same checks as {@link AdhocQueryResolver.ExecuteAdhocQuery}: the rendered SQL must be one read
181
+ * statement that reads only entity views the caller may read in full, and the timeout is limited by
182
+ * the server's request timeout.
183
+ * @param requestTimeoutMs the server's request timeout in milliseconds; 0 or less means no limit
184
+ */
185
+ export function CreateAdhocSQLAuthorizer(requestTimeoutMs) {
186
+ const resolver = new AdhocQueryResolver();
187
+ return {
188
+ Authorize: (sql, provider, contextUser) => resolver.AuthorizeRenderedSQL(sql, provider, contextUser),
189
+ ClampTimeoutSeconds: (requestedSeconds) => ClampAdhocTimeoutSeconds(requestedSeconds, requestTimeoutMs),
190
+ };
191
+ }
176
192
  //# sourceMappingURL=AdhocQueryResolver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AdhocQueryResolver.js","sourceRoot":"","sources":["../../src/resolvers/AdhocQueryResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AdhocQueryResolver.js","sourceRoot":"","sources":["../../src/resolvers/AdhocQueryResolver.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,11 @@ import { AppContext } from '../types.js';
9
9
  */
10
10
  export declare class ArtifactFileResolver extends ResolverBase {
11
11
  ArtifactFileDownloadUrl(artifactVersionId: string, context: AppContext): Promise<string>;
12
- /** Load the File + its storage account/provider and generate a signed URL. */
12
+ /**
13
+ * Load the File (as the caller) and generate a signed URL — after the storage gate: the caller must be able to read
14
+ * the account the file's provider resolves to and every `MJ: Files` row that tracks its object
15
+ * (`FileStorageEngine.ResolveFileObject`), so an artifact cannot sign an object in an account the caller is refused.
16
+ */
13
17
  private buildDownloadUrl;
14
18
  }
15
19
  //# sourceMappingURL=ArtifactFileResolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ArtifactFileResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/ArtifactFileResolver.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC;;;;;;GAMG;AACH,qBACa,oBAAqB,SAAQ,YAAY;IAG5C,uBAAuB,CACe,iBAAiB,EAAE,MAAM,EAC1D,OAAO,EAAE,UAAU,GAC3B,OAAO,CAAC,MAAM,CAAC;IA0BlB,8EAA8E;YAChE,gBAAgB;CAqBjC"}
1
+ {"version":3,"file":"ArtifactFileResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/ArtifactFileResolver.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC;;;;;;GAMG;AACH,qBACa,oBAAqB,SAAQ,YAAY;IAG5C,uBAAuB,CACe,iBAAiB,EAAE,MAAM,EAC1D,OAAO,EAAE,UAAU,GAC3B,OAAO,CAAC,MAAM,CAAC;IA0BlB;;;;OAIG;YACW,gBAAgB;CAkBjC"}
@@ -42,21 +42,23 @@ let ArtifactFileResolver = class ArtifactFileResolver extends ResolverBase {
42
42
  }
43
43
  return this.buildDownloadUrl(artifactVersion.FileID, user, p);
44
44
  }
45
- /** Load the File + its storage account/provider and generate a signed URL. */
45
+ /**
46
+ * Load the File (as the caller) and generate a signed URL — after the storage gate: the caller must be able to read
47
+ * the account the file's provider resolves to and every `MJ: Files` row that tracks its object
48
+ * (`FileStorageEngine.ResolveFileObject`), so an artifact cannot sign an object in an account the caller is refused.
49
+ */
46
50
  async buildDownloadUrl(fileId, user, provider) {
47
51
  const fileEntity = await provider.GetEntityObject('MJ: Files', user);
48
52
  const fileLoaded = await fileEntity.Load(fileId);
49
53
  if (!fileLoaded) {
50
54
  throw new Error(`File record ${fileId} not found`);
51
55
  }
52
- // Find the storage account for this file's provider using cached metadata
53
- await FileStorageEngine.Instance.Config(false, user);
54
- const matchingAccounts = FileStorageEngine.Instance.GetAccountsByProviderID(fileEntity.ProviderID);
55
- if (matchingAccounts.length === 0) {
56
+ // Resolve the storage account for this file's provider, gated for the caller (throws on refusal)
57
+ const resolved = await FileStorageEngine.Instance.ResolveFileObject(fileEntity, user, 'Read', provider);
58
+ if (!resolved) {
56
59
  throw new Error(`No FileStorageAccount found for ProviderID ${fileEntity.ProviderID}. Cannot generate download URL.`);
57
60
  }
58
- const driver = await FileStorageEngine.Instance.GetDriver(matchingAccounts[0].ID, user);
59
- return driver.CreatePreAuthDownloadUrl(fileEntity.ProviderKey ?? fileEntity.Name);
61
+ return resolved.Driver.CreatePreAuthDownloadUrl(resolved.ObjectKey);
60
62
  }
61
63
  };
62
64
  __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"ArtifactFileResolver.js","sourceRoot":"","sources":["../../src/resolvers/ArtifactFileResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ArtifactFileResolver.js","sourceRoot":"","sources":["../../src/resolvers/ArtifactFileResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAGzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAElD;;;;;;GAMG;AAEI,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,YAAY;IAG5C,AAAN,KAAK,CAAC,uBAAuB,CACe,iBAAyB,EAC1D,OAAmB;QAE1B,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,CAAC,GAAG,oBAAoB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAElD,4BAA4B;QAC5B,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,eAAe,CAA0B,uBAAuB,EAAE,IAAI,CAAC,CAAC;QACxG,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,oBAAoB,iBAAiB,YAAY,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,eAAe,CAAC,WAAW,KAAK,MAAM,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,oBAAoB,iBAAiB,wCAAwC,eAAe,CAAC,WAAW,GAAG,CAAC,CAAC;QACjI,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,oBAAoB,iBAAiB,yBAAyB,CAAC,CAAC;QACpF,CAAC;QAED,OAAO,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAClE,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,gBAAgB,CAC1B,MAAc,EACd,IAAoD,EACpD,QAA2B;QAE3B,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAe,WAAW,EAAE,IAAI,CAAC,CAAC;QACnF,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,eAAe,MAAM,YAAY,CAAC,CAAC;QACvD,CAAC;QAED,iGAAiG;QACjG,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,UAAU,EAAE,IAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QACzG,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,8CAA8C,UAAU,CAAC,UAAU,iCAAiC,CAAC,CAAC;QAC1H,CAAC;QACD,OAAO,QAAQ,CAAC,MAAM,CAAC,wBAAwB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACxE,CAAC;CACJ,CAAA;AApDS;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,+FAA+F,EAAE,CAAC;IAEjI,WAAA,GAAG,CAAC,mBAAmB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAA;IACtC,WAAA,GAAG,EAAE,CAAA;;;;mEAyBT;AA9BQ,oBAAoB;IADhC,QAAQ,EAAE;GACE,oBAAoB,CAuDhC"}
@@ -23,9 +23,36 @@ declare class CacheEntityBreakdownGQL {
23
23
  declare class CacheStatsDetailGQL extends CacheStatsGQL {
24
24
  EntityBreakdown: CacheEntityBreakdownGQL[];
25
25
  }
26
+ declare class EnginePropertyCensusGQL {
27
+ PropertyName: string;
28
+ EntityName?: string;
29
+ DatasetName?: string;
30
+ RowCount: number;
31
+ MaxUpdatedAt: string | null;
32
+ IdentityHash: string | null;
33
+ LoadedSuccessfully: boolean;
34
+ PermissionDenied: boolean;
35
+ }
36
+ declare class EngineDerivedCountGQL {
37
+ Name: string;
38
+ Value: number;
39
+ }
40
+ declare class EngineStateCensusGQL {
41
+ EngineClass: string;
42
+ Loaded: boolean;
43
+ PermissionConstrained: boolean;
44
+ Properties: EnginePropertyCensusGQL[];
45
+ Derived: EngineDerivedCountGQL[];
46
+ }
26
47
  export declare class CacheStatsResolver {
27
48
  CacheStats(): CacheStatsGQL;
28
49
  CacheStatsDetail(): CacheStatsDetailGQL;
50
+ /**
51
+ * What each engine in this server process holds — row counts, newest timestamps, a row-version
52
+ * hash, and engine-specific derived-state counts. Comparing the hashes across servers shows
53
+ * whether they converged; a derived count of zero next to a full array shows lost derived state.
54
+ */
55
+ EngineStateCensus(engineClass?: string): EngineStateCensusGQL[];
29
56
  }
30
57
  export {};
31
58
  //# sourceMappingURL=CacheStatsResolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CacheStatsResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/CacheStatsResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAiC,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAOrF,cACM,mBAAmB;IAErB,IAAI,EAAE,cAAc,CAAC;IAGrB,KAAK,EAAE,MAAM,CAAC;IAGd,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,cACM,aAAa;IAEf,YAAY,EAAE,MAAM,CAAC;IAGrB,cAAc,EAAE,MAAM,CAAC;IAGvB,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAG9B,WAAW,EAAE,MAAM,CAAC;IAGpB,WAAW,EAAE,MAAM,CAAC;IAGpB,IAAI,EAAE,MAAM,CAAC;IAGb,MAAM,EAAE,MAAM,CAAC;IAGf,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,cACM,uBAAuB;IAEzB,UAAU,EAAE,MAAM,CAAC;IAGnB,UAAU,EAAE,MAAM,CAAC;IAGnB,cAAc,EAAE,MAAM,CAAC;IAGvB,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED,cACM,mBAAoB,SAAQ,aAAa;IAE3C,eAAe,EAAE,uBAAuB,EAAE,CAAC;CAC9C;AAyDD,qBACa,kBAAkB;IAG3B,UAAU,IAAI,aAAa;IAO3B,gBAAgB,IAAI,mBAAmB;CAO1C"}
1
+ {"version":3,"file":"CacheStatsResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/CacheStatsResolver.ts"],"names":[],"mappings":"AACA,OAAO,EAAiE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAQrH,cACM,mBAAmB;IAErB,IAAI,EAAE,cAAc,CAAC;IAGrB,KAAK,EAAE,MAAM,CAAC;IAGd,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,cACM,aAAa;IAEf,YAAY,EAAE,MAAM,CAAC;IAGrB,cAAc,EAAE,MAAM,CAAC;IAGvB,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAG9B,WAAW,EAAE,MAAM,CAAC;IAGpB,WAAW,EAAE,MAAM,CAAC;IAGpB,IAAI,EAAE,MAAM,CAAC;IAGb,MAAM,EAAE,MAAM,CAAC;IAGf,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,cACM,uBAAuB;IAEzB,UAAU,EAAE,MAAM,CAAC;IAGnB,UAAU,EAAE,MAAM,CAAC;IAGnB,cAAc,EAAE,MAAM,CAAC;IAGvB,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED,cACM,mBAAoB,SAAQ,aAAa;IAE3C,eAAe,EAAE,uBAAuB,EAAE,CAAC;CAC9C;AAED,cACM,uBAAuB;IAEzB,YAAY,EAAE,MAAM,CAAC;IAGrB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,QAAQ,EAAE,MAAM,CAAC;IAGjB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAG5B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAG5B,kBAAkB,EAAE,OAAO,CAAC;IAG5B,gBAAgB,EAAE,OAAO,CAAC;CAC7B;AAED,cACM,qBAAqB;IAEvB,IAAI,EAAE,MAAM,CAAC;IAGb,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,cACM,oBAAoB;IAEtB,WAAW,EAAE,MAAM,CAAC;IAGpB,MAAM,EAAE,OAAO,CAAC;IAGhB,qBAAqB,EAAE,OAAO,CAAC;IAG/B,UAAU,EAAE,uBAAuB,EAAE,CAAC;IAGtC,OAAO,EAAE,qBAAqB,EAAE,CAAC;CACpC;AA4ED,qBACa,kBAAkB;IAG3B,UAAU,IAAI,aAAa;IAO3B,gBAAgB,IAAI,mBAAmB;IAQvC;;;;OAIG;IAGH,iBAAiB,CACyC,WAAW,CAAC,EAAE,MAAM,GAC3E,oBAAoB,EAAE;CAG5B"}
@@ -7,8 +7,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
- import { Field, Float, Int, ObjectType, Query, Resolver } from 'type-graphql';
11
- import { LocalCacheManager } from '@memberjunction/core';
10
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
+ return function (target, key) { decorator(target, key, paramIndex); }
12
+ };
13
+ import { Arg, Field, Float, Int, ObjectType, Query, Resolver } from 'type-graphql';
14
+ import { BaseEngine, BaseEngineRegistry, LocalCacheManager } from '@memberjunction/core';
12
15
  import { RequireSystemUser } from '../directives/index.js';
13
16
  // ============================================================================
14
17
  // GraphQL Object Types
@@ -97,9 +100,101 @@ __decorate([
97
100
  CacheStatsDetailGQL = __decorate([
98
101
  ObjectType()
99
102
  ], CacheStatsDetailGQL);
103
+ let EnginePropertyCensusGQL = class EnginePropertyCensusGQL {
104
+ };
105
+ __decorate([
106
+ Field(() => String),
107
+ __metadata("design:type", String)
108
+ ], EnginePropertyCensusGQL.prototype, "PropertyName", void 0);
109
+ __decorate([
110
+ Field(() => String, { nullable: true }),
111
+ __metadata("design:type", String)
112
+ ], EnginePropertyCensusGQL.prototype, "EntityName", void 0);
113
+ __decorate([
114
+ Field(() => String, { nullable: true }),
115
+ __metadata("design:type", String)
116
+ ], EnginePropertyCensusGQL.prototype, "DatasetName", void 0);
117
+ __decorate([
118
+ Field(() => Int),
119
+ __metadata("design:type", Number)
120
+ ], EnginePropertyCensusGQL.prototype, "RowCount", void 0);
121
+ __decorate([
122
+ Field(() => String, { nullable: true }),
123
+ __metadata("design:type", String)
124
+ ], EnginePropertyCensusGQL.prototype, "MaxUpdatedAt", void 0);
125
+ __decorate([
126
+ Field(() => String, { nullable: true }),
127
+ __metadata("design:type", String)
128
+ ], EnginePropertyCensusGQL.prototype, "IdentityHash", void 0);
129
+ __decorate([
130
+ Field(() => Boolean),
131
+ __metadata("design:type", Boolean)
132
+ ], EnginePropertyCensusGQL.prototype, "LoadedSuccessfully", void 0);
133
+ __decorate([
134
+ Field(() => Boolean),
135
+ __metadata("design:type", Boolean)
136
+ ], EnginePropertyCensusGQL.prototype, "PermissionDenied", void 0);
137
+ EnginePropertyCensusGQL = __decorate([
138
+ ObjectType()
139
+ ], EnginePropertyCensusGQL);
140
+ let EngineDerivedCountGQL = class EngineDerivedCountGQL {
141
+ };
142
+ __decorate([
143
+ Field(() => String),
144
+ __metadata("design:type", String)
145
+ ], EngineDerivedCountGQL.prototype, "Name", void 0);
146
+ __decorate([
147
+ Field(() => Int),
148
+ __metadata("design:type", Number)
149
+ ], EngineDerivedCountGQL.prototype, "Value", void 0);
150
+ EngineDerivedCountGQL = __decorate([
151
+ ObjectType()
152
+ ], EngineDerivedCountGQL);
153
+ let EngineStateCensusGQL = class EngineStateCensusGQL {
154
+ };
155
+ __decorate([
156
+ Field(() => String),
157
+ __metadata("design:type", String)
158
+ ], EngineStateCensusGQL.prototype, "EngineClass", void 0);
159
+ __decorate([
160
+ Field(() => Boolean),
161
+ __metadata("design:type", Boolean)
162
+ ], EngineStateCensusGQL.prototype, "Loaded", void 0);
163
+ __decorate([
164
+ Field(() => Boolean),
165
+ __metadata("design:type", Boolean)
166
+ ], EngineStateCensusGQL.prototype, "PermissionConstrained", void 0);
167
+ __decorate([
168
+ Field(() => [EnginePropertyCensusGQL]),
169
+ __metadata("design:type", Array)
170
+ ], EngineStateCensusGQL.prototype, "Properties", void 0);
171
+ __decorate([
172
+ Field(() => [EngineDerivedCountGQL]),
173
+ __metadata("design:type", Array)
174
+ ], EngineStateCensusGQL.prototype, "Derived", void 0);
175
+ EngineStateCensusGQL = __decorate([
176
+ ObjectType()
177
+ ], EngineStateCensusGQL);
100
178
  // ============================================================================
101
179
  // Helpers (pure core)
102
180
  // ============================================================================
181
+ function censusToGQL(census) {
182
+ const gql = new EngineStateCensusGQL();
183
+ gql.EngineClass = census.EngineClass;
184
+ gql.Loaded = census.Loaded;
185
+ gql.PermissionConstrained = census.PermissionConstrained;
186
+ gql.Properties = census.Properties.map(p => Object.assign(new EnginePropertyCensusGQL(), p));
187
+ gql.Derived = Object.entries(census.Derived).map(([Name, Value]) => Object.assign(new EngineDerivedCountGQL(), { Name, Value }));
188
+ return gql;
189
+ }
190
+ /** Census of every registered engine in this process, optionally narrowed to one class name. */
191
+ function buildEngineCensus(engineClass) {
192
+ return BaseEngineRegistry.Instance.GetAllEngines()
193
+ .filter((engine) => engine instanceof BaseEngine)
194
+ .filter(engine => !engineClass || engine.constructor.name === engineClass)
195
+ .map(engine => censusToGQL(engine.GetStateCensus()))
196
+ .sort((a, b) => a.EngineClass.localeCompare(b.EngineClass));
197
+ }
103
198
  function toGQL(stats) {
104
199
  const gql = new CacheStatsGQL();
105
200
  gql.TotalEntries = stats.totalEntries;
@@ -159,6 +254,14 @@ let CacheStatsResolver = class CacheStatsResolver {
159
254
  result.EntityBreakdown = buildEntityBreakdown();
160
255
  return result;
161
256
  }
257
+ /**
258
+ * What each engine in this server process holds — row counts, newest timestamps, a row-version
259
+ * hash, and engine-specific derived-state counts. Comparing the hashes across servers shows
260
+ * whether they converged; a derived count of zero next to a full array shows lost derived state.
261
+ */
262
+ EngineStateCensus(engineClass) {
263
+ return buildEngineCensus(engineClass);
264
+ }
162
265
  };
163
266
  __decorate([
164
267
  RequireSystemUser(),
@@ -174,6 +277,14 @@ __decorate([
174
277
  __metadata("design:paramtypes", []),
175
278
  __metadata("design:returntype", CacheStatsDetailGQL)
176
279
  ], CacheStatsResolver.prototype, "CacheStatsDetail", null);
280
+ __decorate([
281
+ RequireSystemUser(),
282
+ Query(() => [EngineStateCensusGQL]),
283
+ __param(0, Arg('EngineClass', () => String, { nullable: true })),
284
+ __metadata("design:type", Function),
285
+ __metadata("design:paramtypes", [String]),
286
+ __metadata("design:returntype", Array)
287
+ ], CacheStatsResolver.prototype, "EngineStateCensus", null);
177
288
  CacheStatsResolver = __decorate([
178
289
  Resolver()
179
290
  ], CacheStatsResolver);
@@ -1 +1 @@
1
- {"version":3,"file":"CacheStatsResolver.js","sourceRoot":"","sources":["../../src/resolvers/CacheStatsResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CacheStatsResolver.js","sourceRoot":"","sources":["../../src/resolvers/CacheStatsResolver.ts"],"names":[],"mappings":"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"}