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

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 (560) hide show
  1. package/README.md +47 -1
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/agentSessions/SessionJanitor.d.ts +91 -30
  4. package/dist/agentSessions/SessionJanitor.d.ts.map +1 -1
  5. package/dist/agentSessions/SessionJanitor.js +311 -81
  6. package/dist/agentSessions/SessionJanitor.js.map +1 -1
  7. package/dist/agentSessions/SessionManager.d.ts +17 -3
  8. package/dist/agentSessions/SessionManager.d.ts.map +1 -1
  9. package/dist/agentSessions/SessionManager.js +44 -10
  10. package/dist/agentSessions/SessionManager.js.map +1 -1
  11. package/dist/apiRoot.d.ts +32 -0
  12. package/dist/apiRoot.d.ts.map +1 -0
  13. package/dist/apiRoot.js +67 -0
  14. package/dist/apiRoot.js.map +1 -0
  15. package/dist/auth/AuthProviderCatalogRouter.d.ts.map +1 -1
  16. package/dist/auth/AuthProviderCatalogRouter.js +27 -0
  17. package/dist/auth/AuthProviderCatalogRouter.js.map +1 -1
  18. package/dist/auth/LoginScreenEngine.d.ts +22 -0
  19. package/dist/auth/LoginScreenEngine.d.ts.map +1 -0
  20. package/dist/auth/LoginScreenEngine.js +57 -0
  21. package/dist/auth/LoginScreenEngine.js.map +1 -0
  22. package/dist/auth/index.d.ts +1 -0
  23. package/dist/auth/index.d.ts.map +1 -1
  24. package/dist/auth/index.js +52 -10
  25. package/dist/auth/index.js.map +1 -1
  26. package/dist/auth/initializeProviders.d.ts +10 -0
  27. package/dist/auth/initializeProviders.d.ts.map +1 -1
  28. package/dist/auth/initializeProviders.js +37 -1
  29. package/dist/auth/initializeProviders.js.map +1 -1
  30. package/dist/auth/localDevAuth.d.ts +79 -0
  31. package/dist/auth/localDevAuth.d.ts.map +1 -0
  32. package/dist/auth/localDevAuth.js +439 -0
  33. package/dist/auth/localDevAuth.js.map +1 -0
  34. package/dist/auth/magicLink/MagicLinkKeys.d.ts +2 -2
  35. package/dist/auth/magicLink/MagicLinkKeys.d.ts.map +1 -1
  36. package/dist/auth/magicLink/MagicLinkKeys.js +1 -1
  37. package/dist/auth/magicLink/MagicLinkKeys.js.map +1 -1
  38. package/dist/auth/magicLink/MagicLinkRouter.d.ts.map +1 -1
  39. package/dist/auth/magicLink/MagicLinkRouter.js +3 -2
  40. package/dist/auth/magicLink/MagicLinkRouter.js.map +1 -1
  41. package/dist/auth/magicLink/types.d.ts +12 -0
  42. package/dist/auth/magicLink/types.d.ts.map +1 -1
  43. package/dist/auth/sessionUserClone.d.ts +1 -1
  44. package/dist/auth/sessionUserClone.d.ts.map +1 -1
  45. package/dist/auth/sessionUserClone.js +3 -2
  46. package/dist/auth/sessionUserClone.js.map +1 -1
  47. package/dist/broadcast/BaseCacheInvalidationBroadcastProvider.d.ts +292 -0
  48. package/dist/broadcast/BaseCacheInvalidationBroadcastProvider.d.ts.map +1 -0
  49. package/dist/broadcast/BaseCacheInvalidationBroadcastProvider.js +442 -0
  50. package/dist/broadcast/BaseCacheInvalidationBroadcastProvider.js.map +1 -0
  51. package/dist/broadcast/index.d.ts +6 -0
  52. package/dist/broadcast/index.d.ts.map +1 -0
  53. package/dist/broadcast/index.js +6 -0
  54. package/dist/broadcast/index.js.map +1 -0
  55. package/dist/broadcast/providers/AWSIoTCoreBroadcastProvider.d.ts +43 -0
  56. package/dist/broadcast/providers/AWSIoTCoreBroadcastProvider.d.ts.map +1 -0
  57. package/dist/broadcast/providers/AWSIoTCoreBroadcastProvider.js +144 -0
  58. package/dist/broadcast/providers/AWSIoTCoreBroadcastProvider.js.map +1 -0
  59. package/dist/broadcast/providers/AzureWebPubSubBroadcastProvider.d.ts +46 -0
  60. package/dist/broadcast/providers/AzureWebPubSubBroadcastProvider.d.ts.map +1 -0
  61. package/dist/broadcast/providers/AzureWebPubSubBroadcastProvider.js +149 -0
  62. package/dist/broadcast/providers/AzureWebPubSubBroadcastProvider.js.map +1 -0
  63. package/dist/broadcast/providers/GCPPubSubBroadcastProvider.d.ts +49 -0
  64. package/dist/broadcast/providers/GCPPubSubBroadcastProvider.d.ts.map +1 -0
  65. package/dist/broadcast/providers/GCPPubSubBroadcastProvider.js +131 -0
  66. package/dist/broadcast/providers/GCPPubSubBroadcastProvider.js.map +1 -0
  67. package/dist/broadcast/providers/SequencedRoleBucketBroadcastProvider.d.ts +24 -0
  68. package/dist/broadcast/providers/SequencedRoleBucketBroadcastProvider.d.ts.map +1 -0
  69. package/dist/broadcast/providers/SequencedRoleBucketBroadcastProvider.js +51 -0
  70. package/dist/broadcast/providers/SequencedRoleBucketBroadcastProvider.js.map +1 -0
  71. package/dist/cache.d.ts +3 -2
  72. package/dist/cache.d.ts.map +1 -1
  73. package/dist/cache.js.map +1 -1
  74. package/dist/config.d.ts +632 -22
  75. package/dist/config.d.ts.map +1 -1
  76. package/dist/config.js +104 -4
  77. package/dist/config.js.map +1 -1
  78. package/dist/context.d.ts +3 -1
  79. package/dist/context.d.ts.map +1 -1
  80. package/dist/context.js +29 -8
  81. package/dist/context.js.map +1 -1
  82. package/dist/coreRoutes.d.ts +29 -0
  83. package/dist/coreRoutes.d.ts.map +1 -0
  84. package/dist/coreRoutes.js +156 -0
  85. package/dist/coreRoutes.js.map +1 -0
  86. package/dist/generated/graphql-schemas/__mj.d.ts +1016 -29
  87. package/dist/generated/graphql-schemas/__mj.d.ts.map +1 -1
  88. package/dist/generated/graphql-schemas/__mj.js +5125 -434
  89. package/dist/generated/graphql-schemas/__mj.js.map +1 -1
  90. package/dist/generic/CacheInvalidationResolver.d.ts +85 -30
  91. package/dist/generic/CacheInvalidationResolver.d.ts.map +1 -1
  92. package/dist/generic/CacheInvalidationResolver.js +175 -60
  93. package/dist/generic/CacheInvalidationResolver.js.map +1 -1
  94. package/dist/generic/OrphanedConversationDetailReconciler.d.ts.map +1 -1
  95. package/dist/generic/OrphanedConversationDetailReconciler.js +2 -0
  96. package/dist/generic/OrphanedConversationDetailReconciler.js.map +1 -1
  97. package/dist/generic/PubSubManager.d.ts +10 -0
  98. package/dist/generic/PubSubManager.d.ts.map +1 -1
  99. package/dist/generic/PubSubManager.js +44 -1
  100. package/dist/generic/PubSubManager.js.map +1 -1
  101. package/dist/generic/PushStatusResolver.d.ts +39 -6
  102. package/dist/generic/PushStatusResolver.d.ts.map +1 -1
  103. package/dist/generic/PushStatusResolver.js +94 -12
  104. package/dist/generic/PushStatusResolver.js.map +1 -1
  105. package/dist/generic/ResolverBase.d.ts +168 -69
  106. package/dist/generic/ResolverBase.d.ts.map +1 -1
  107. package/dist/generic/ResolverBase.js +464 -405
  108. package/dist/generic/ResolverBase.js.map +1 -1
  109. package/dist/generic/RunViewResolver.d.ts +11 -3
  110. package/dist/generic/RunViewResolver.d.ts.map +1 -1
  111. package/dist/generic/RunViewResolver.js +91 -13
  112. package/dist/generic/RunViewResolver.js.map +1 -1
  113. package/dist/generic/actionOutputFieldSecurity.d.ts +26 -0
  114. package/dist/generic/actionOutputFieldSecurity.d.ts.map +1 -0
  115. package/dist/generic/actionOutputFieldSecurity.js +47 -0
  116. package/dist/generic/actionOutputFieldSecurity.js.map +1 -0
  117. package/dist/generic/fieldSecurityTransport.d.ts +30 -0
  118. package/dist/generic/fieldSecurityTransport.d.ts.map +1 -0
  119. package/dist/generic/fieldSecurityTransport.js +30 -0
  120. package/dist/generic/fieldSecurityTransport.js.map +1 -0
  121. package/dist/globalCors.d.ts +33 -0
  122. package/dist/globalCors.d.ts.map +1 -0
  123. package/dist/globalCors.js +58 -0
  124. package/dist/globalCors.js.map +1 -0
  125. package/dist/index.d.ts +14 -0
  126. package/dist/index.d.ts.map +1 -1
  127. package/dist/index.js +230 -222
  128. package/dist/index.js.map +1 -1
  129. package/dist/integration/CustomColumnPromoter.d.ts.map +1 -1
  130. package/dist/integration/CustomColumnPromoter.js +6 -1
  131. package/dist/integration/CustomColumnPromoter.js.map +1 -1
  132. package/dist/logging/variablesLoggingMiddleware.d.ts +12 -0
  133. package/dist/logging/variablesLoggingMiddleware.d.ts.map +1 -1
  134. package/dist/logging/variablesLoggingMiddleware.js +50 -1
  135. package/dist/logging/variablesLoggingMiddleware.js.map +1 -1
  136. package/dist/multiTenancy/index.d.ts.map +1 -1
  137. package/dist/multiTenancy/index.js +22 -2
  138. package/dist/multiTenancy/index.js.map +1 -1
  139. package/dist/realtimeSessions/RealtimeSessionVerificationService.d.ts.map +1 -1
  140. package/dist/realtimeSessions/RealtimeSessionVerificationService.js +2 -1
  141. package/dist/realtimeSessions/RealtimeSessionVerificationService.js.map +1 -1
  142. package/dist/realtimeSessions/RealtimeVerifyRouter.d.ts.map +1 -1
  143. package/dist/realtimeSessions/RealtimeVerifyRouter.js +2 -1
  144. package/dist/realtimeSessions/RealtimeVerifyRouter.js.map +1 -1
  145. package/dist/realtimeSessions/RecordingAssemblyScheduler.d.ts +100 -0
  146. package/dist/realtimeSessions/RecordingAssemblyScheduler.d.ts.map +1 -0
  147. package/dist/realtimeSessions/RecordingAssemblyScheduler.js +173 -0
  148. package/dist/realtimeSessions/RecordingAssemblyScheduler.js.map +1 -0
  149. package/dist/realtimeSessions/SessionVerificationPortsBase.d.ts.map +1 -1
  150. package/dist/realtimeSessions/SessionVerificationPortsBase.js +1 -0
  151. package/dist/realtimeSessions/SessionVerificationPortsBase.js.map +1 -1
  152. package/dist/realtimeSessions/index.d.ts +2 -0
  153. package/dist/realtimeSessions/index.d.ts.map +1 -1
  154. package/dist/realtimeSessions/index.js +2 -0
  155. package/dist/realtimeSessions/index.js.map +1 -1
  156. package/dist/realtimeSessions/ownedRealtimeSession.d.ts +32 -0
  157. package/dist/realtimeSessions/ownedRealtimeSession.d.ts.map +1 -0
  158. package/dist/realtimeSessions/ownedRealtimeSession.js +56 -0
  159. package/dist/realtimeSessions/ownedRealtimeSession.js.map +1 -0
  160. package/dist/realtimeSessions/sessionAccess.d.ts +91 -8
  161. package/dist/realtimeSessions/sessionAccess.d.ts.map +1 -1
  162. package/dist/realtimeSessions/sessionAccess.js +127 -20
  163. package/dist/realtimeSessions/sessionAccess.js.map +1 -1
  164. package/dist/realtimeSessions/sessionConfigStamps.js +1 -1
  165. package/dist/realtimeSessions/sessionConfigStamps.js.map +1 -1
  166. package/dist/realtimeSessions/subscriptionAuthorization.d.ts.map +1 -1
  167. package/dist/realtimeSessions/subscriptionAuthorization.js +5 -2
  168. package/dist/realtimeSessions/subscriptionAuthorization.js.map +1 -1
  169. package/dist/realtimeSessions/verificationWorkflow.d.ts +2 -0
  170. package/dist/realtimeSessions/verificationWorkflow.d.ts.map +1 -1
  171. package/dist/realtimeSessions/verificationWorkflow.js +1 -1
  172. package/dist/realtimeSessions/verificationWorkflow.js.map +1 -1
  173. package/dist/realtimeWidget/WidgetRouter.d.ts.map +1 -1
  174. package/dist/realtimeWidget/WidgetRouter.js +19 -3
  175. package/dist/realtimeWidget/WidgetRouter.js.map +1 -1
  176. package/dist/realtimeWidget/WidgetSessionService.d.ts +67 -7
  177. package/dist/realtimeWidget/WidgetSessionService.d.ts.map +1 -1
  178. package/dist/realtimeWidget/WidgetSessionService.js +201 -19
  179. package/dist/realtimeWidget/WidgetSessionService.js.map +1 -1
  180. package/dist/realtimeWidget/host-identity.d.ts +1 -1
  181. package/dist/realtimeWidget/host-identity.js +1 -1
  182. package/dist/realtimeWidget/widgetCore.d.ts +20 -1
  183. package/dist/realtimeWidget/widgetCore.d.ts.map +1 -1
  184. package/dist/realtimeWidget/widgetCore.js +17 -1
  185. package/dist/realtimeWidget/widgetCore.js.map +1 -1
  186. package/dist/realtimeWidget/widgetGuestElevation.d.ts +1 -1
  187. package/dist/realtimeWidget/widgetGuestElevation.d.ts.map +1 -1
  188. package/dist/realtimeWidget/widgetGuestElevation.js +2 -1
  189. package/dist/realtimeWidget/widgetGuestElevation.js.map +1 -1
  190. package/dist/resolvers/ActionResolver.d.ts +19 -1
  191. package/dist/resolvers/ActionResolver.d.ts.map +1 -1
  192. package/dist/resolvers/ActionResolver.js +63 -12
  193. package/dist/resolvers/ActionResolver.js.map +1 -1
  194. package/dist/resolvers/AdhocQueryResolver.d.ts.map +1 -1
  195. package/dist/resolvers/AdhocQueryResolver.js +1 -0
  196. package/dist/resolvers/AdhocQueryResolver.js.map +1 -1
  197. package/dist/resolvers/AgentRunStatusPublisher.d.ts +18 -4
  198. package/dist/resolvers/AgentRunStatusPublisher.d.ts.map +1 -1
  199. package/dist/resolvers/AgentRunStatusPublisher.js +32 -8
  200. package/dist/resolvers/AgentRunStatusPublisher.js.map +1 -1
  201. package/dist/resolvers/AgentSessionResolver.d.ts +10 -4
  202. package/dist/resolvers/AgentSessionResolver.d.ts.map +1 -1
  203. package/dist/resolvers/AgentSessionResolver.js +40 -17
  204. package/dist/resolvers/AgentSessionResolver.js.map +1 -1
  205. package/dist/resolvers/ArtifactFileResolver.d.ts +5 -1
  206. package/dist/resolvers/ArtifactFileResolver.d.ts.map +1 -1
  207. package/dist/resolvers/ArtifactFileResolver.js +9 -7
  208. package/dist/resolvers/ArtifactFileResolver.js.map +1 -1
  209. package/dist/resolvers/ConversationRunEventsResolver.d.ts +8 -4
  210. package/dist/resolvers/ConversationRunEventsResolver.d.ts.map +1 -1
  211. package/dist/resolvers/ConversationRunEventsResolver.js +6 -6
  212. package/dist/resolvers/ConversationRunEventsResolver.js.map +1 -1
  213. package/dist/resolvers/DatasetResolver.d.ts +24 -3
  214. package/dist/resolvers/DatasetResolver.d.ts.map +1 -1
  215. package/dist/resolvers/DatasetResolver.js +57 -8
  216. package/dist/resolvers/DatasetResolver.js.map +1 -1
  217. package/dist/resolvers/EntityCommunicationsResolver.d.ts +13 -1
  218. package/dist/resolvers/EntityCommunicationsResolver.d.ts.map +1 -1
  219. package/dist/resolvers/EntityCommunicationsResolver.js +50 -14
  220. package/dist/resolvers/EntityCommunicationsResolver.js.map +1 -1
  221. package/dist/resolvers/EntityRecordNameResolver.d.ts +2 -1
  222. package/dist/resolvers/EntityRecordNameResolver.d.ts.map +1 -1
  223. package/dist/resolvers/EntityRecordNameResolver.js +3 -2
  224. package/dist/resolvers/EntityRecordNameResolver.js.map +1 -1
  225. package/dist/resolvers/FetchEntityVectorsResolver.d.ts +46 -3
  226. package/dist/resolvers/FetchEntityVectorsResolver.d.ts.map +1 -1
  227. package/dist/resolvers/FetchEntityVectorsResolver.js +211 -50
  228. package/dist/resolvers/FetchEntityVectorsResolver.js.map +1 -1
  229. package/dist/resolvers/FileCategoryResolver.d.ts.map +1 -1
  230. package/dist/resolvers/FileCategoryResolver.js +1 -0
  231. package/dist/resolvers/FileCategoryResolver.js.map +1 -1
  232. package/dist/resolvers/FileResolver.d.ts +87 -11
  233. package/dist/resolvers/FileResolver.d.ts.map +1 -1
  234. package/dist/resolvers/FileResolver.js +292 -105
  235. package/dist/resolvers/FileResolver.js.map +1 -1
  236. package/dist/resolvers/GetDataContextDataResolver.d.ts +33 -7
  237. package/dist/resolvers/GetDataContextDataResolver.d.ts.map +1 -1
  238. package/dist/resolvers/GetDataContextDataResolver.js +117 -38
  239. package/dist/resolvers/GetDataContextDataResolver.js.map +1 -1
  240. package/dist/resolvers/GetDataResolver.d.ts.map +1 -1
  241. package/dist/resolvers/GetDataResolver.js +6 -3
  242. package/dist/resolvers/GetDataResolver.js.map +1 -1
  243. package/dist/resolvers/IntegrationDiscoveryResolver.d.ts.map +1 -1
  244. package/dist/resolvers/IntegrationDiscoveryResolver.js +49 -9
  245. package/dist/resolvers/IntegrationDiscoveryResolver.js.map +1 -1
  246. package/dist/resolvers/MergeRecordsResolver.d.ts +8 -1
  247. package/dist/resolvers/MergeRecordsResolver.d.ts.map +1 -1
  248. package/dist/resolvers/MergeRecordsResolver.js +31 -3
  249. package/dist/resolvers/MergeRecordsResolver.js.map +1 -1
  250. package/dist/resolvers/PipelineProgressResolver.d.ts +6 -0
  251. package/dist/resolvers/PipelineProgressResolver.d.ts.map +1 -1
  252. package/dist/resolvers/PipelineProgressResolver.js +5 -3
  253. package/dist/resolvers/PipelineProgressResolver.js.map +1 -1
  254. package/dist/resolvers/QueryResolver.d.ts +2 -0
  255. package/dist/resolvers/QueryResolver.d.ts.map +1 -1
  256. package/dist/resolvers/QueryResolver.js +33 -6
  257. package/dist/resolvers/QueryResolver.js.map +1 -1
  258. package/dist/resolvers/QuerySystemUserResolver.d.ts +2 -0
  259. package/dist/resolvers/QuerySystemUserResolver.d.ts.map +1 -1
  260. package/dist/resolvers/QuerySystemUserResolver.js +15 -6
  261. package/dist/resolvers/QuerySystemUserResolver.js.map +1 -1
  262. package/dist/resolvers/RSUResolver.d.ts.map +1 -1
  263. package/dist/resolvers/RSUResolver.js +12 -0
  264. package/dist/resolvers/RSUResolver.js.map +1 -1
  265. package/dist/resolvers/RealtimeClientSessionResolver.d.ts +18 -10
  266. package/dist/resolvers/RealtimeClientSessionResolver.d.ts.map +1 -1
  267. package/dist/resolvers/RealtimeClientSessionResolver.js +92 -54
  268. package/dist/resolvers/RealtimeClientSessionResolver.js.map +1 -1
  269. package/dist/resolvers/RemoteBrowserActionResolver.d.ts.map +1 -1
  270. package/dist/resolvers/RemoteBrowserActionResolver.js +11 -9
  271. package/dist/resolvers/RemoteBrowserActionResolver.js.map +1 -1
  272. package/dist/resolvers/RunAIAgentResolver.d.ts +56 -8
  273. package/dist/resolvers/RunAIAgentResolver.d.ts.map +1 -1
  274. package/dist/resolvers/RunAIAgentResolver.js +241 -67
  275. package/dist/resolvers/RunAIAgentResolver.js.map +1 -1
  276. package/dist/resolvers/RunTemplateResolver.d.ts.map +1 -1
  277. package/dist/resolvers/RunTemplateResolver.js +4 -4
  278. package/dist/resolvers/RunTemplateResolver.js.map +1 -1
  279. package/dist/resolvers/RunTestResolver.d.ts.map +1 -1
  280. package/dist/resolvers/RunTestResolver.js +3 -1
  281. package/dist/resolvers/RunTestResolver.js.map +1 -1
  282. package/dist/resolvers/SearchKnowledgeStreamResolver.d.ts +12 -1
  283. package/dist/resolvers/SearchKnowledgeStreamResolver.d.ts.map +1 -1
  284. package/dist/resolvers/SearchKnowledgeStreamResolver.js +15 -2
  285. package/dist/resolvers/SearchKnowledgeStreamResolver.js.map +1 -1
  286. package/dist/resolvers/SqlLoggingConfigResolver.d.ts.map +1 -1
  287. package/dist/resolvers/SqlLoggingConfigResolver.js +2 -3
  288. package/dist/resolvers/SqlLoggingConfigResolver.js.map +1 -1
  289. package/dist/resolvers/SyncDataResolver.d.ts.map +1 -1
  290. package/dist/resolvers/SyncDataResolver.js +4 -0
  291. package/dist/resolvers/SyncDataResolver.js.map +1 -1
  292. package/dist/resolvers/TaskGraphFrameResolver.d.ts +2 -1
  293. package/dist/resolvers/TaskGraphFrameResolver.d.ts.map +1 -1
  294. package/dist/resolvers/TaskGraphFrameResolver.js +28 -1
  295. package/dist/resolvers/TaskGraphFrameResolver.js.map +1 -1
  296. package/dist/resolvers/TestQuerySQLResolver.d.ts +24 -0
  297. package/dist/resolvers/TestQuerySQLResolver.d.ts.map +1 -1
  298. package/dist/resolvers/TestQuerySQLResolver.js +66 -13
  299. package/dist/resolvers/TestQuerySQLResolver.js.map +1 -1
  300. package/dist/resolvers/TransactionGroupResolver.d.ts +34 -2
  301. package/dist/resolvers/TransactionGroupResolver.d.ts.map +1 -1
  302. package/dist/resolvers/TransactionGroupResolver.js +150 -27
  303. package/dist/resolvers/TransactionGroupResolver.js.map +1 -1
  304. package/dist/resolvers/UserViewResolver.d.ts +1 -1
  305. package/dist/resolvers/UserViewResolver.d.ts.map +1 -1
  306. package/dist/resolvers/UserViewResolver.js +2 -1
  307. package/dist/resolvers/UserViewResolver.js.map +1 -1
  308. package/dist/resolvers/agent-run-data-guard.d.ts +31 -0
  309. package/dist/resolvers/agent-run-data-guard.d.ts.map +1 -0
  310. package/dist/resolvers/agent-run-data-guard.js +72 -0
  311. package/dist/resolvers/agent-run-data-guard.js.map +1 -0
  312. package/dist/rest/EntityCRUDHandler.d.ts +6 -0
  313. package/dist/rest/EntityCRUDHandler.d.ts.map +1 -1
  314. package/dist/rest/EntityCRUDHandler.js +19 -5
  315. package/dist/rest/EntityCRUDHandler.js.map +1 -1
  316. package/dist/rest/RESTEndpointHandler.d.ts.map +1 -1
  317. package/dist/rest/RESTEndpointHandler.js +8 -5
  318. package/dist/rest/RESTEndpointHandler.js.map +1 -1
  319. package/dist/rest/RealtimeRecordingHandler.d.ts +49 -0
  320. package/dist/rest/RealtimeRecordingHandler.d.ts.map +1 -0
  321. package/dist/rest/RealtimeRecordingHandler.js +383 -0
  322. package/dist/rest/RealtimeRecordingHandler.js.map +1 -0
  323. package/dist/rest/ViewOperationsHandler.d.ts +9 -1
  324. package/dist/rest/ViewOperationsHandler.d.ts.map +1 -1
  325. package/dist/rest/ViewOperationsHandler.js +43 -17
  326. package/dist/rest/ViewOperationsHandler.js.map +1 -1
  327. package/dist/rest/setupRESTEndpoints.d.ts +6 -0
  328. package/dist/rest/setupRESTEndpoints.d.ts.map +1 -1
  329. package/dist/rest/setupRESTEndpoints.js +6 -0
  330. package/dist/rest/setupRESTEndpoints.js.map +1 -1
  331. package/dist/serverExtensionReservedRoots.d.ts +12 -10
  332. package/dist/serverExtensionReservedRoots.d.ts.map +1 -1
  333. package/dist/serverExtensionReservedRoots.js +14 -17
  334. package/dist/serverExtensionReservedRoots.js.map +1 -1
  335. package/dist/serverRoleConfigUnits.d.ts +29 -0
  336. package/dist/serverRoleConfigUnits.d.ts.map +1 -0
  337. package/dist/serverRoleConfigUnits.js +33 -0
  338. package/dist/serverRoleConfigUnits.js.map +1 -0
  339. package/dist/services/MJStorageBlobStore.d.ts +8 -1
  340. package/dist/services/MJStorageBlobStore.d.ts.map +1 -1
  341. package/dist/services/MJStorageBlobStore.js +25 -19
  342. package/dist/services/MJStorageBlobStore.js.map +1 -1
  343. package/dist/services/StartTaskGraphDispatcher.js +2 -2
  344. package/dist/services/StartTaskGraphDispatcher.js.map +1 -1
  345. package/dist/services/TaskGraphActionRunner.d.ts +5 -3
  346. package/dist/services/TaskGraphActionRunner.d.ts.map +1 -1
  347. package/dist/services/TaskGraphActionRunner.js +27 -5
  348. package/dist/services/TaskGraphActionRunner.js.map +1 -1
  349. package/dist/services/TaskGraphAgentRunner.d.ts +14 -2
  350. package/dist/services/TaskGraphAgentRunner.d.ts.map +1 -1
  351. package/dist/services/TaskGraphAgentRunner.js +157 -9
  352. package/dist/services/TaskGraphAgentRunner.js.map +1 -1
  353. package/dist/services/TaskGraphContinuationDeliverer.d.ts +59 -2
  354. package/dist/services/TaskGraphContinuationDeliverer.d.ts.map +1 -1
  355. package/dist/services/TaskGraphContinuationDeliverer.js +626 -16
  356. package/dist/services/TaskGraphContinuationDeliverer.js.map +1 -1
  357. package/dist/sharedCache.d.ts.map +1 -1
  358. package/dist/sharedCache.js +3 -0
  359. package/dist/sharedCache.js.map +1 -1
  360. package/dist/types.d.ts +23 -1
  361. package/dist/types.d.ts.map +1 -1
  362. package/dist/types.js.map +1 -1
  363. package/package.json +99 -98
  364. package/src/__tests__/ActionResolver.fieldSecurity.test.ts +237 -0
  365. package/src/__tests__/AdhocQueryResolver.dialect.test.ts +137 -0
  366. package/src/__tests__/AgentRunStatusPublisher.test.ts +49 -0
  367. package/src/__tests__/AgentSessionResolver.ownership.test.ts +137 -0
  368. package/src/__tests__/CustomColumnPromoterOnePass.test.ts +15 -1
  369. package/src/__tests__/DatasetResolver.itemFilters.test.ts +201 -0
  370. package/src/__tests__/EntityCommunicationsResolver.actingUser.test.ts +151 -0
  371. package/src/__tests__/EntityRecordNameResolver.rowSecurity.test.ts +152 -0
  372. package/src/__tests__/EvolutionActsOnWhatItDetects.test.ts +113 -0
  373. package/src/__tests__/FetchEntityVectorsResolver.test.ts +369 -18
  374. package/src/__tests__/FileResolver.fieldSecurity.test.ts +82 -0
  375. package/src/__tests__/FileResolver.storageAccess.test.ts +562 -0
  376. package/src/__tests__/GetDataContextDataResolver.sqlItems.test.ts +416 -0
  377. package/src/__tests__/ListOperationsResolver.adhocScreen.test.ts +137 -0
  378. package/src/__tests__/LoginScreenEngine.test.ts +86 -0
  379. package/src/__tests__/MJStorageBlobStore.storageGate.test.ts +63 -0
  380. package/src/__tests__/PipelineProgressResolver.filter.test.ts +58 -0
  381. package/src/__tests__/QuerySystemUserResolver.fieldSecurity.test.ts +49 -0
  382. package/src/__tests__/RESTEndpointHandler.test.ts +25 -0
  383. package/src/__tests__/RealtimeClientSessionResolver.configTamper.test.ts +23 -3
  384. package/src/__tests__/RealtimeClientSessionResolver.test.ts +324 -46
  385. package/src/__tests__/RecordingAssemblyScheduler.test.ts +178 -0
  386. package/src/__tests__/RemoteBrowserActionResolver.ownership.test.ts +98 -0
  387. package/src/__tests__/ResolverBase.adhocReadScope.test.ts +133 -2
  388. package/src/__tests__/ResolverBase.balancedClause.test.ts +155 -0
  389. package/src/__tests__/ResolverBase.clauseUnscopedRead.test.ts +127 -0
  390. package/src/__tests__/ResolverBase.clientOldValues.test.ts +243 -7
  391. package/src/__tests__/ResolverBase.deleteReturnProjection.test.ts +52 -0
  392. package/src/__tests__/ResolverBase.entityMessageRelay.test.ts +176 -0
  393. package/src/__tests__/ResolverBase.filterEscaping.test.ts +5 -2
  394. package/src/__tests__/ResolverBase.includeBinaryFields.test.ts +23 -1
  395. package/src/__tests__/ResolverBase.publishStatusUpdate.test.ts +68 -0
  396. package/src/__tests__/ResolverBase.userViewCacheAndDedup.test.ts +130 -0
  397. package/src/__tests__/RunAIAgentResolver.branch.test.ts +69 -13
  398. package/src/__tests__/RunAIAgentResolver.conversationWriter.test.ts +210 -0
  399. package/src/__tests__/RunAIAgentResolver.fireAndForgetCompletion.test.ts +209 -0
  400. package/src/__tests__/RunAIAgentResolver.historyFrom.test.ts +20 -28
  401. package/src/__tests__/RunAIAgentResolver.runDataGuard.test.ts +264 -0
  402. package/src/__tests__/RunAIAgentResolver.serverReply.test.ts +358 -0
  403. package/src/__tests__/RunAIAgentResolver.stoppedPredecessor.test.ts +4 -1
  404. package/src/__tests__/RunTemplateResolver.test.ts +35 -2
  405. package/src/__tests__/RunViewResolver.cacheCheckForwarding.test.ts +11 -0
  406. package/src/__tests__/RunViewResolver.cacheCheckScreen.test.ts +165 -0
  407. package/src/__tests__/SearchKnowledgeStreamResolver.test.ts +161 -0
  408. package/src/__tests__/SessionJanitor.test.ts +365 -10
  409. package/src/__tests__/SessionManager.test.ts +122 -0
  410. package/src/__tests__/TaskGraphActionRunner.durablePayload.test.ts +25 -0
  411. package/src/__tests__/TaskGraphAgentRunner.test.ts +266 -0
  412. package/src/__tests__/TaskGraphContinuationDeliverer.test.ts +468 -23
  413. package/src/__tests__/TaskGraphFrameResolver.test.ts +22 -0
  414. package/src/__tests__/TestQuerySQLResolver.test.ts +274 -0
  415. package/src/__tests__/TransactionGroupResolver.fieldSecurity.test.ts +199 -0
  416. package/src/__tests__/TransactionGroupResolver.refusals.test.ts +98 -1
  417. package/src/__tests__/UpdateMJDataContextItem.oldValues.test.ts +220 -0
  418. package/src/__tests__/UserViewResolver.updateWhereClause.test.ts +15 -0
  419. package/src/__tests__/ViewOperationsHandler.clauseScreen.test.ts +157 -0
  420. package/src/__tests__/ViewOperationsHandler.test.ts +7 -2
  421. package/src/__tests__/WidgetSessionService.test.ts +583 -4
  422. package/src/__tests__/agent-run-data-guard.test.ts +130 -0
  423. package/src/__tests__/apiRootBoot.test.ts +202 -0
  424. package/src/__tests__/buildMagicLinkSessionUser.test.ts +96 -0
  425. package/src/__tests__/cacheBroadcastProviders.test.ts +403 -0
  426. package/src/__tests__/cacheInvalidationRecordData.test.ts +109 -0
  427. package/src/__tests__/conversationRunEvents.test.ts +56 -14
  428. package/src/__tests__/fieldSecurityFixtures.ts +91 -0
  429. package/src/__tests__/globalCors.test.ts +217 -0
  430. package/src/__tests__/localDevAuth.test.ts +196 -0
  431. package/src/__tests__/multiTenancy.postgresRewrite.test.ts +181 -0
  432. package/src/__tests__/multiTenancy.security.test.ts +51 -0
  433. package/src/__tests__/multiTenancy.test.ts +1 -1
  434. package/src/__tests__/orphanedConversationDetailReconciler.test.ts +10 -0
  435. package/src/__tests__/ownedRealtimeSession.test.ts +39 -0
  436. package/src/__tests__/pushStatusResolver.filter.test.ts +64 -1
  437. package/src/__tests__/realtimeRecordingHandler.test.ts +669 -0
  438. package/src/__tests__/realtimeSessions/RealtimeSessionEventsResolver.test.ts +29 -1
  439. package/src/__tests__/realtimeSessions/ownedRealtimeSession.anonymous.test.ts +31 -0
  440. package/src/__tests__/realtimeSessions/ownedRealtimeSession.namedScoped.test.ts +37 -0
  441. package/src/__tests__/realtimeSessions/sessionAccess.test.ts +146 -7
  442. package/src/__tests__/realtimeSessions/sessionConfigStamps.test.ts +1 -1
  443. package/src/__tests__/realtimeSessions/verificationWorkflow.test.ts +25 -4
  444. package/src/__tests__/resolverBase.cloudEventChangedFields.test.ts +157 -0
  445. package/src/__tests__/resolverBase.fieldSecurityTransport.test.ts +222 -0
  446. package/src/__tests__/resolverBase.fls.test.ts +146 -97
  447. package/src/__tests__/restTransport.fieldSecurity.test.ts +148 -0
  448. package/src/__tests__/runParamsTimeZone.test.ts +179 -0
  449. package/src/__tests__/runStreams.fieldSecurity.test.ts +100 -0
  450. package/src/__tests__/runViewProperties.test.ts +114 -0
  451. package/src/__tests__/scalabilityBenchmarks.test.ts +765 -0
  452. package/src/__tests__/scalabilityDatabaseIntegration.test.ts +207 -0
  453. package/src/__tests__/serverExtensionHostOverlay.test.ts +66 -0
  454. package/src/__tests__/serverExtensionReservedRoots.test.ts +11 -98
  455. package/src/__tests__/sessionUserClone.test.ts +5 -1
  456. package/src/__tests__/sharedCache.test.ts +5 -3
  457. package/src/__tests__/startupSweepOrder.test.ts +40 -0
  458. package/src/__tests__/unifiedAuth.test.ts +28 -0
  459. package/src/__tests__/widgetGuestElevation.test.ts +2 -0
  460. package/src/agentSessions/SessionJanitor.ts +369 -93
  461. package/src/agentSessions/SessionManager.ts +45 -10
  462. package/src/apiRoot.ts +78 -0
  463. package/src/auth/AuthProviderCatalogRouter.ts +29 -0
  464. package/src/auth/LoginScreenEngine.ts +50 -0
  465. package/src/auth/index.ts +57 -12
  466. package/src/auth/initializeProviders.ts +43 -1
  467. package/src/auth/localDevAuth.ts +528 -0
  468. package/src/auth/magicLink/MagicLinkKeys.ts +2 -2
  469. package/src/auth/magicLink/MagicLinkRouter.ts +3 -2
  470. package/src/auth/magicLink/types.ts +10 -0
  471. package/src/auth/sessionUserClone.ts +3 -2
  472. package/src/broadcast/BaseCacheInvalidationBroadcastProvider.ts +674 -0
  473. package/src/broadcast/index.ts +5 -0
  474. package/src/broadcast/providers/AWSIoTCoreBroadcastProvider.ts +180 -0
  475. package/src/broadcast/providers/AzureWebPubSubBroadcastProvider.ts +182 -0
  476. package/src/broadcast/providers/GCPPubSubBroadcastProvider.ts +169 -0
  477. package/src/broadcast/providers/SequencedRoleBucketBroadcastProvider.ts +57 -0
  478. package/src/cache.ts +2 -1
  479. package/src/config.ts +115 -5
  480. package/src/context.ts +32 -8
  481. package/src/coreRoutes.ts +181 -0
  482. package/src/generated/graphql-schemas/__mj.ts +3684 -284
  483. package/src/generic/CacheInvalidationResolver.ts +172 -60
  484. package/src/generic/OrphanedConversationDetailReconciler.ts +4 -2
  485. package/src/generic/PubSubManager.ts +54 -1
  486. package/src/generic/PushStatusResolver.ts +109 -12
  487. package/src/generic/ResolverBase.ts +540 -431
  488. package/src/generic/RunViewResolver.ts +97 -15
  489. package/src/generic/actionOutputFieldSecurity.ts +75 -0
  490. package/src/generic/fieldSecurityTransport.ts +62 -0
  491. package/src/globalCors.ts +71 -0
  492. package/src/index.ts +239 -238
  493. package/src/integration/CustomColumnPromoter.ts +6 -1
  494. package/src/logging/variablesLoggingMiddleware.ts +59 -3
  495. package/src/multiTenancy/index.ts +24 -2
  496. package/src/realtimeSessions/README.md +7 -3
  497. package/src/realtimeSessions/RealtimeSessionVerificationService.ts +2 -1
  498. package/src/realtimeSessions/RealtimeVerifyRouter.ts +2 -1
  499. package/src/realtimeSessions/RecordingAssemblyScheduler.ts +234 -0
  500. package/src/realtimeSessions/SessionVerificationPortsBase.ts +1 -0
  501. package/src/realtimeSessions/index.ts +2 -0
  502. package/src/realtimeSessions/ownedRealtimeSession.ts +69 -0
  503. package/src/realtimeSessions/sessionAccess.ts +183 -23
  504. package/src/realtimeSessions/sessionConfigStamps.ts +1 -1
  505. package/src/realtimeSessions/subscriptionAuthorization.ts +4 -2
  506. package/src/realtimeSessions/verificationWorkflow.ts +3 -1
  507. package/src/realtimeWidget/WidgetRouter.ts +22 -4
  508. package/src/realtimeWidget/WidgetSessionService.ts +252 -17
  509. package/src/realtimeWidget/host-identity.ts +1 -1
  510. package/src/realtimeWidget/widgetCore.ts +30 -1
  511. package/src/realtimeWidget/widgetGuestElevation.ts +2 -1
  512. package/src/resolvers/ActionResolver.ts +78 -15
  513. package/src/resolvers/AdhocQueryResolver.ts +1 -0
  514. package/src/resolvers/AgentRunStatusPublisher.ts +36 -8
  515. package/src/resolvers/AgentSessionResolver.ts +46 -18
  516. package/src/resolvers/ArtifactFileResolver.ts +9 -8
  517. package/src/resolvers/ConversationRunEventsResolver.ts +15 -11
  518. package/src/resolvers/DatasetResolver.ts +70 -10
  519. package/src/resolvers/EntityCommunicationsResolver.ts +56 -15
  520. package/src/resolvers/EntityRecordNameResolver.ts +3 -2
  521. package/src/resolvers/FetchEntityVectorsResolver.ts +248 -55
  522. package/src/resolvers/FileCategoryResolver.ts +1 -0
  523. package/src/resolvers/FileResolver.ts +334 -109
  524. package/src/resolvers/GetDataContextDataResolver.ts +139 -41
  525. package/src/resolvers/GetDataResolver.ts +6 -3
  526. package/src/resolvers/IntegrationDiscoveryResolver.ts +53 -9
  527. package/src/resolvers/MergeRecordsResolver.ts +23 -2
  528. package/src/resolvers/PipelineProgressResolver.ts +12 -3
  529. package/src/resolvers/QueryResolver.ts +31 -6
  530. package/src/resolvers/QuerySystemUserResolver.ts +15 -6
  531. package/src/resolvers/RSUResolver.ts +12 -0
  532. package/src/resolvers/RealtimeClientSessionResolver.ts +114 -66
  533. package/src/resolvers/RemoteBrowserActionResolver.ts +15 -10
  534. package/src/resolvers/RunAIAgentResolver.ts +296 -85
  535. package/src/resolvers/RunTemplateResolver.ts +6 -4
  536. package/src/resolvers/RunTestResolver.ts +3 -1
  537. package/src/resolvers/SearchKnowledgeStreamResolver.ts +19 -3
  538. package/src/resolvers/SqlLoggingConfigResolver.ts +2 -4
  539. package/src/resolvers/SyncDataResolver.ts +4 -0
  540. package/src/resolvers/TaskGraphFrameResolver.ts +33 -1
  541. package/src/resolvers/TestQuerySQLResolver.ts +69 -13
  542. package/src/resolvers/TransactionGroupResolver.ts +185 -30
  543. package/src/resolvers/UserViewResolver.ts +2 -1
  544. package/src/resolvers/__tests__/GetDataResolver.validation.test.ts +95 -0
  545. package/src/resolvers/__tests__/MergeRecordsResolver.test.ts +43 -0
  546. package/src/resolvers/agent-run-data-guard.ts +89 -0
  547. package/src/rest/EntityCRUDHandler.ts +22 -5
  548. package/src/rest/RESTEndpointHandler.ts +8 -5
  549. package/src/rest/RealtimeRecordingHandler.ts +467 -0
  550. package/src/rest/ViewOperationsHandler.ts +52 -18
  551. package/src/rest/setupRESTEndpoints.ts +6 -0
  552. package/src/serverExtensionReservedRoots.ts +14 -17
  553. package/src/serverRoleConfigUnits.ts +48 -0
  554. package/src/services/MJStorageBlobStore.ts +31 -30
  555. package/src/services/StartTaskGraphDispatcher.ts +2 -2
  556. package/src/services/TaskGraphActionRunner.ts +25 -5
  557. package/src/services/TaskGraphAgentRunner.ts +188 -11
  558. package/src/services/TaskGraphContinuationDeliverer.ts +738 -16
  559. package/src/sharedCache.ts +3 -0
  560. package/src/types.ts +23 -1
@@ -11,10 +11,11 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
11
  return function (target, key) { decorator(target, key, paramIndex); }
12
12
  };
13
13
  import { Arg, Ctx, Field, InputType, Int, Mutation, ObjectType, registerEnumType } from 'type-graphql';
14
- import { CompositeKey, KeyValuePair, LogError, Metadata, TransactionVariable } from '@memberjunction/core';
15
- import { SafeJSONParse } from '@memberjunction/global';
14
+ import { AssertClientInputWritableForUser, CompositeKey, EntityInfo, KeyValuePair, LogError, Metadata, TransactionVariable } from '@memberjunction/core';
15
+ import { SafeJSONParse, ValuesEqual } from '@memberjunction/global';
16
16
  import { GetReadWriteProvider } from '../util.js';
17
17
  import { ResolverBase } from '../generic/ResolverBase.js';
18
+ import { ProjectValuesForCaller } from '../generic/fieldSecurityTransport.js';
18
19
  export var TransactionVariableType;
19
20
  (function (TransactionVariableType) {
20
21
  TransactionVariableType["Define"] = "Define";
@@ -159,12 +160,21 @@ export class TransactionResolver extends ResolverBase {
159
160
  // rows were all refused arrive at Submit() empty, take its legitimate "nothing to do"
160
161
  // branch, and report success for writes that never happened.
161
162
  const refusals = [];
163
+ const preUpdateValues = new Map();
164
+ // instantiate an entity object for every item first, so the group's variables are known
165
+ // BEFORE any Save()/Delete() runs below: a 'Use' variable sets its field at Submit(), after
166
+ // every server-side write check has passed, so an entity whose check depends on a field's
167
+ // final value must be able to see that a variable will set it.
168
+ const user = context.userPayload.userRecord;
169
+ for (const item of group.Items) {
170
+ entityObjects.push(await md.GetEntityObject(item.EntityName, user));
171
+ }
172
+ this.AssertNetworkInputWritable(group, entityObjects, user);
173
+ this.AddNetworkVariables(group, entityObjects, tg);
162
174
  for (const [index, item] of group.Items.entries()) {
163
- // instantiate a new entity object for the item
164
- const entity = await md.GetEntityObject(item.EntityName, context.userPayload.userRecord);
165
- entityObjects.push(entity); // save for later for mapping variables if needed
175
+ const entity = entityObjects[index];
166
176
  // get the values from the payload
167
- const itemValues = SafeJSONParse(item.EntityObjectJSON);
177
+ const itemValues = SafeJSONParse(item.EntityObjectJSON) ?? {};
168
178
  // build a primary key for the item
169
179
  const pkey = new CompositeKey(entity.PrimaryKeys.map(pk => {
170
180
  const kv = new KeyValuePair();
@@ -177,6 +187,14 @@ export class TransactionResolver extends ResolverBase {
177
187
  case "Create":
178
188
  if (item.OperationType === "Update") {
179
189
  await entity.InnerLoad(pkey);
190
+ if (typeof entity.GetDataObject === 'function') {
191
+ // fls-guard: pre-update snapshot; projected before the delta is built
192
+ preUpdateValues.set(index, await entity.GetDataObject());
193
+ }
194
+ else if (typeof entity.GetAll === 'function') {
195
+ // fls-guard: pre-update snapshot; projected before the delta is built
196
+ preUpdateValues.set(index, { ...entity.GetAll() });
197
+ }
180
198
  }
181
199
  objectValues.push(itemValues);
182
200
  entity.SetMany(itemValues, true);
@@ -199,6 +217,7 @@ export class TransactionResolver extends ResolverBase {
199
217
  // Awaiting costs nothing here — DataObjectParams defaults
200
218
  // includeRelatedEntityData to false, which guards the method's only awaited
201
219
  // work, so with no params this is GetAll() plus a filter loop.
220
+ // fls-guard: projected in PrepareReturnValue
202
221
  objectValues.push(await entity.GetDataObject());
203
222
  entity.TransactionGroup = tg;
204
223
  if (!await entity.Delete()) {
@@ -220,30 +239,16 @@ export class TransactionResolver extends ResolverBase {
220
239
  if (refusals.length > 0) {
221
240
  LogError(`TransactionResolver::ExecuteTransactionGroup --- ${refusals.length} of ${group.Items.length} ` +
222
241
  `item(s) were refused, so the group was not submitted:\n${refusals.join('\n')}`);
223
- return await this.PrepareReturnValue(false, entityObjects, objectValues, group);
224
- }
225
- // now, we need to set the variables
226
- if (group.Variables && group.Variables.length > 0) {
227
- for (const networkVar of group.Variables) {
228
- // for each variable, add it to the transaction group and map the index from the network payload to the specific entity object loaded up above
229
- if (networkVar.ItemIndex >= 0 && networkVar.ItemIndex < entityObjects.length) {
230
- const entityObject = entityObjects[networkVar.ItemIndex];
231
- const newVar = new TransactionVariable(networkVar.Name, entityObject, networkVar.FieldName, networkVar.Type);
232
- tg.AddVariable(newVar);
233
- }
234
- else {
235
- throw new Error(`TransactionResolver::ExecuteTransactionGroup --- Error\n\n' + 'Invalid ItemIndex ${networkVar.ItemIndex} in TransactionVariable "${JSON.stringify(networkVar)}"`);
236
- }
237
- }
242
+ return await this.PrepareReturnValue(false, entityObjects, objectValues, group, preUpdateValues, md, user);
238
243
  }
239
244
  // after all that, we are ready to roll, so let's run the TG
240
245
  if (await tg.Submit()) {
241
246
  // success!
242
- return await this.PrepareReturnValue(true, entityObjects, objectValues, group);
247
+ return await this.PrepareReturnValue(true, entityObjects, objectValues, group, preUpdateValues, md, user);
243
248
  }
244
249
  else {
245
250
  // failure, send back the results
246
- return await this.PrepareReturnValue(false, entityObjects, objectValues, group);
251
+ return await this.PrepareReturnValue(false, entityObjects, objectValues, group, preUpdateValues, md, user);
247
252
  }
248
253
  }
249
254
  catch (err) {
@@ -251,16 +256,62 @@ export class TransactionResolver extends ResolverBase {
251
256
  throw new Error('TransactionResolver::ExecuteTransactionGroup --- Error\n\n' + err);
252
257
  }
253
258
  }
254
- async PrepareReturnValue(success, entityObjects, objectValues, group) {
259
+ /**
260
+ * Field-level security gate on everything the client sent, run before any item is applied.
261
+ *
262
+ * Each create or update payload must name only fields the caller may read, and so must every transaction
263
+ * variable: a `Define` on a denied field would copy its value into another item's readable
264
+ * field at `Submit()`, and a `Use` would write it. A key that names no field is refused with
265
+ * the same message as a denied one (see `AssertClientInputWritableForUser`). Callers denied
266
+ * nothing on an entity are not affected. A delete payload is not gated: only its primary key
267
+ * is read, and the record is loaded from the database.
268
+ */
269
+ AssertNetworkInputWritable(group, entityObjects, user) {
270
+ for (const [index, item] of group.Items.entries()) {
271
+ if (item.OperationType === TransactionOperationType.Delete) {
272
+ continue;
273
+ }
274
+ const values = SafeJSONParse(item.EntityObjectJSON);
275
+ AssertClientInputWritableForUser(entityObjects[index]?.EntityInfo, values, user);
276
+ }
277
+ for (const networkVar of group.Variables ?? []) {
278
+ const target = entityObjects[networkVar.ItemIndex];
279
+ if (target && networkVar.FieldName) {
280
+ AssertClientInputWritableForUser(target.EntityInfo, { [networkVar.FieldName]: null }, user);
281
+ }
282
+ }
283
+ }
284
+ /**
285
+ * Adds the network payload's variables to the group, mapping each one's item index to the entity
286
+ * object built for that item.
287
+ */
288
+ AddNetworkVariables(group, entityObjects, tg) {
289
+ for (const networkVar of group.Variables ?? []) {
290
+ if (networkVar.ItemIndex >= 0 && networkVar.ItemIndex < entityObjects.length) {
291
+ const entityObject = entityObjects[networkVar.ItemIndex];
292
+ tg.AddVariable(new TransactionVariable(networkVar.Name, entityObject, networkVar.FieldName, networkVar.Type));
293
+ }
294
+ else {
295
+ throw new Error(`TransactionResolver::ExecuteTransactionGroup --- Error\n\n' + 'Invalid ItemIndex ${networkVar.ItemIndex} in TransactionVariable "${JSON.stringify(networkVar)}"`);
296
+ }
297
+ }
298
+ }
299
+ async PrepareReturnValue(success, entityObjects, objectValues, group, preUpdateValues, provider, user) {
255
300
  const jsonResults = [];
256
301
  for (let i = 0; i < group.Items.length; i++) {
257
302
  const item = group.Items[i];
303
+ const project = (values) => ProjectValuesForCaller(entityObjects[i]?.EntityInfo, values, user, provider);
258
304
  if (item.OperationType === 'Delete') {
259
- jsonResults.push(JSON.stringify(objectValues[i]));
305
+ const deleted = objectValues[i];
306
+ jsonResults.push(JSON.stringify(deleted && typeof deleted === 'object' ? project(deleted) : deleted));
307
+ }
308
+ else if (item.OperationType === 'Update') {
309
+ jsonResults.push(await this.serializeUpdateReturnValue(entityObjects[i], objectValues[i], preUpdateValues?.get(i), group, i, project));
260
310
  }
261
311
  else {
262
- // create or update, return what is in the database
263
- jsonResults.push(await entityObjects[i].GetDataObjectJSON());
312
+ // create, return what is in the database, as the caller may read it
313
+ // fls-guard: projected by project()
314
+ jsonResults.push(JSON.stringify(project(await entityObjects[i].GetDataObject())));
264
315
  }
265
316
  }
266
317
  return {
@@ -269,6 +320,78 @@ export class TransactionResolver extends ResolverBase {
269
320
  ResultsJSON: jsonResults
270
321
  };
271
322
  }
323
+ /**
324
+ * Serializes a delta return payload for an `Update` transaction group item containing:
325
+ * - Primary key fields
326
+ * - All keys sent by the client in `sentValues` (`objectValues[i]`)
327
+ * - Any `TransactionVariable` fields targeting this item
328
+ * - `__mj_CreatedAt` and `__mj_UpdatedAt`
329
+ * - Virtual fields when any foreign key field was in `sentValues`
330
+ * - Any field whose post-save value differs from its pre-update DB snapshot (`preSaveValues`),
331
+ * capturing virtual fields, triggers, or server-side `BeforeSave()` mutations automatically
332
+ * while omitting unchanged columns.
333
+ *
334
+ * Both rows are projected for the caller BEFORE they are compared. Comparing a full-width
335
+ * post-save row against a snapshot taken from a narrowed load would count every denied value
336
+ * as changed, and the delta would then deliver exactly the values the caller may not read.
337
+ */
338
+ async serializeUpdateReturnValue(entity, sentValues, preSaveValues, group, itemIndex, project) {
339
+ const rawDataObj = typeof entity.GetDataObject === 'function'
340
+ // fls-guard: projected by project() below
341
+ ? await entity.GetDataObject()
342
+ // fls-guard: projected by project() below
343
+ : SafeJSONParse(await entity.GetDataObjectJSON());
344
+ if (!rawDataObj || typeof rawDataObj !== 'object') {
345
+ return JSON.stringify(rawDataObj);
346
+ }
347
+ const fullDataObj = project(rawDataObj);
348
+ if (!sentValues || typeof sentValues !== 'object') {
349
+ return JSON.stringify(fullDataObj);
350
+ }
351
+ preSaveValues = preSaveValues ? project(preSaveValues) : preSaveValues;
352
+ const sentRecord = sentValues;
353
+ const includeKeys = new Set([
354
+ EntityInfo.CreatedAtFieldName,
355
+ EntityInfo.UpdatedAtFieldName,
356
+ ]);
357
+ for (const pk of entity.PrimaryKeys ?? []) {
358
+ if (pk?.Name) {
359
+ includeKeys.add(pk.Name);
360
+ }
361
+ }
362
+ for (const key of Object.keys(sentRecord)) {
363
+ includeKeys.add(key);
364
+ }
365
+ for (const v of group.Variables ?? []) {
366
+ if (v.ItemIndex === itemIndex && v.FieldName) {
367
+ includeKeys.add(v.FieldName);
368
+ }
369
+ }
370
+ if (Array.isArray(entity.Fields)) {
371
+ for (const f of entity.Fields) {
372
+ if (f.EntityFieldInfo?.IsSpecialDateField ||
373
+ Boolean(f.EntityFieldInfo?.IsVirtual) ||
374
+ Boolean(f.EntityFieldInfo?.IsComputed) ||
375
+ f.ReadOnly) {
376
+ includeKeys.add(f.Name);
377
+ }
378
+ }
379
+ }
380
+ if (preSaveValues) {
381
+ for (const key of Object.keys(fullDataObj)) {
382
+ if (!ValuesEqual(fullDataObj[key], preSaveValues[key])) {
383
+ includeKeys.add(key);
384
+ }
385
+ }
386
+ }
387
+ const deltaObj = {};
388
+ for (const key of Object.keys(fullDataObj)) {
389
+ if (includeKeys.has(key)) {
390
+ deltaObj[key] = fullDataObj[key];
391
+ }
392
+ }
393
+ return JSON.stringify(deltaObj);
394
+ }
272
395
  }
273
396
  __decorate([
274
397
  Mutation(() => TransactionOutputType),
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionGroupResolver.js","sourceRoot":"","sources":["../../src/resolvers/TransactionGroupResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TransactionGroupResolver.js","sourceRoot":"","sources":["../../src/resolvers/TransactionGroupResolver.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export declare class UserViewResolver extends MJUserViewResolverBase {
6
6
  CurrentUserDefaultViewByEntityID(EntityID: number, context: AppContext): Promise<any[]>;
7
7
  protected getCurrentUserID(context: AppContext): Promise<number>;
8
8
  CurrentUserUserViewsByEntityID(EntityID: number, context: AppContext): Promise<any[]>;
9
- UpdateWhereClause(ID: string, { userPayload, providers }: AppContext): Promise<any>;
9
+ UpdateWhereClause(ID: string, { userPayload, providers }: AppContext): Promise<Record<string, unknown>>;
10
10
  }
11
11
  export default UserViewResolver;
12
12
  //# sourceMappingURL=UserViewResolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserViewResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/UserViewResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAA+C,MAAM,wBAAwB,CAAC;AACjG,OAAO,EAAe,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAKhF,qBACa,gBAAiB,SAAQ,sBAAsB;IAEpD,iBAAiB,CAA2B,MAAM,EAAE,MAAM,EAAS,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,UAAU;IAMzG,0BAA0B,CACJ,MAAM,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EACrC,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,UAAU;IAOzC,gCAAgC,CAA6B,QAAQ,EAAE,MAAM,EAAS,OAAO,EAAE,UAAU;cAS/F,gBAAgB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAOhE,8BAA8B,CAA6B,QAAQ,EAAE,MAAM,EAAS,OAAO,EAAE,UAAU;IAMvG,iBAAiB,CAA0B,EAAE,EAAE,MAAM,EAAS,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,UAAU;CAqB3G;AAED,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"UserViewResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/UserViewResolver.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAA+C,MAAM,wBAAwB,CAAC;AACjG,OAAO,EAAe,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAMhF,qBACa,gBAAiB,SAAQ,sBAAsB;IAEpD,iBAAiB,CAA2B,MAAM,EAAE,MAAM,EAAS,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,UAAU;IAMzG,0BAA0B,CACJ,MAAM,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EACrC,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,UAAU;IAOzC,gCAAgC,CAA6B,QAAQ,EAAE,MAAM,EAAS,OAAO,EAAE,UAAU;cAS/F,gBAAgB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAOhE,8BAA8B,CAA6B,QAAQ,EAAE,MAAM,EAAS,OAAO,EAAE,UAAU;IAMvG,iBAAiB,CAA0B,EAAE,EAAE,MAAM,EAAS,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,UAAU;CAqB3G;AAED,eAAe,gBAAgB,CAAC"}
@@ -14,6 +14,7 @@ import { Arg, Ctx, Int, Query, Resolver } from '@memberjunction/server';
14
14
  import { MJUserView_, MJUserViewResolverBase } from '../generated/generated.js';
15
15
  import { UserResolver } from './UserResolver.js';
16
16
  import { GetReadOnlyProvider, GetReadWriteProvider } from '../util.js';
17
+ import { ProjectEntityObjectForCaller } from '../generic/fieldSecurityTransport.js';
17
18
  let UserViewResolver = class UserViewResolver extends MJUserViewResolverBase {
18
19
  async UserViewsByUserID(UserID, { providers, userPayload }) {
19
20
  const provider = GetReadOnlyProvider(providers, { allowFallbackToReadWrite: true });
@@ -55,7 +56,7 @@ let UserViewResolver = class UserViewResolver extends MJUserViewResolverBase {
55
56
  }
56
57
  await viewEntity.UpdateWhereClause(true); // force regeneration regardless of dirty state — that is the whole point of this endpoint
57
58
  if (await viewEntity.Save()) {
58
- return viewEntity.GetAll();
59
+ return ProjectEntityObjectForCaller(viewEntity, u, p);
59
60
  }
60
61
  else {
61
62
  throw new Error('Failed to update where clause');
@@ -1 +1 @@
1
- {"version":3,"file":"UserViewResolver.js","sourceRoot":"","sources":["../../src/resolvers/UserViewResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,OAAO,EAAc,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAe,MAAM,wBAAwB,CAAC;AACjG,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGhE,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,sBAAsB;IAEpD,AAAN,KAAK,CAAC,iBAAiB,CAA2B,MAAc,EAAS,EAAE,SAAS,EAAE,WAAW,EAAc;QAC7G,MAAM,QAAQ,GAAG,mBAAmB,CAAC,SAAS,EAAE,EAAC,wBAAwB,EAAE,IAAI,EAAC,CAAC,CAAA;QACjF,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,gBAAgB,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAC3F,CAAC;IAGK,AAAN,KAAK,CAAC,0BAA0B,CACJ,MAAc,EACZ,QAAgB,EACrC,EAAE,SAAS,EAAE,WAAW,EAAc;QAE7C,MAAM,QAAQ,GAAG,mBAAmB,CAAC,SAAS,EAAE,EAAC,wBAAwB,EAAE,IAAI,EAAC,CAAC,CAAA;QACjF,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,gBAAgB,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IACtH,CAAC;IAGK,AAAN,KAAK,CAAC,gCAAgC,CAA6B,QAAgB,EAAS,OAAmB;QAC7G,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,SAAS,EAAE,EAAC,wBAAwB,EAAE,IAAI,EAAC,CAAC,CAAA;QACzF,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,gBAAgB,EAAE;YACnD,MAAM,EAAE,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YAC5C,QAAQ;YACR,SAAS,EAAE,IAAI;SAChB,EAAE,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACrC,CAAC;IAES,KAAK,CAAC,gBAAgB,CAAC,OAAmB;QAClD,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAChF,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IAGK,AAAN,KAAK,CAAC,8BAA8B,CAA6B,QAAgB,EAAS,OAAmB;QAC3G,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,SAAS,EAAE,EAAC,wBAAwB,EAAE,IAAI,EAAC,CAAC,CAAA;QACzF,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,gBAAgB,EAAE,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAC,EAAE,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC5I,CAAC;IAGK,AAAN,KAAK,CAAC,iBAAiB,CAA0B,EAAU,EAAS,EAAE,WAAW,EAAE,SAAS,EAAc;QACxG,wFAAwF;QACxF,2FAA2F;QAC3F,2FAA2F;QAC3F,8FAA8F;QAC9F,gGAAgG;QAChG,yEAAyE;QACzE,MAAM,CAAC,GAAG,oBAAoB,CAAC,SAAS,EAAE,EAAC,uBAAuB,EAAE,IAAI,EAAC,CAAC,CAAC;QAC3E,MAAM,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;QAC/C,MAAM,UAAU,GAA6B,MAAM,CAAC,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;QAC1F,IAAI,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,aAAa,EAAE,6BAA6B,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,0FAA0F;QAEpI,IAAI,MAAM,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;YAC5B,OAAO,UAAU,CAAC,MAAM,EAAE,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;CACF,CAAA;AA3DO;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC;IACF,WAAA,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;IAAkB,WAAA,GAAG,EAAE,CAAA;;;;yDAGvE;AAGK;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC;IAExB,WAAA,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;IACxB,WAAA,GAAG,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;IAC1B,WAAA,GAAG,EAAE,CAAA;;;;kEAIP;AAGK;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC;IACa,WAAA,GAAG,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;IAAoB,WAAA,GAAG,EAAE,CAAA;;;;wEAO1F;AASK;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC;IACW,WAAA,GAAG,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;IAAoB,WAAA,GAAG,EAAE,CAAA;;;;sEAGxF;AAGK;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC;IACF,WAAA,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAA;IAAc,WAAA,GAAG,EAAE,CAAA;;;;yDAoBlE;AA5DU,gBAAgB;IAD5B,QAAQ,CAAC,WAAW,CAAC;GACT,gBAAgB,CA6D5B;;AAED,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"UserViewResolver.js","sourceRoot":"","sources":["../../src/resolvers/UserViewResolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import type { UserPayload } from '../types.js';
2
+ /**
3
+ * The API-key scope (`MJ: API Scopes.FullPath`) that makes an `mj_sk_*` key a trusted integration for reserved run
4
+ * data. Checked against the agent being run, so a key can be trusted for some agents only. `full_access` does not
5
+ * imply it: the key must hold this scope itself.
6
+ */
7
+ export declare const TRUSTED_RUN_DATA_SCOPE = "agent:trusted";
8
+ /** Who sent a run's `data`, as far as {@link IsTrustedAgentRunCaller} needs to know. */
9
+ export interface ClientAgentRunCaller {
10
+ /**
11
+ * The request's authenticated payload, BEFORE any widget-guest elevation. `isSystemUser` is set only by
12
+ * the system API key (and by widget elevation, which {@link IsWidgetGuestRun} overrides); `apiKeyHash`
13
+ * only by an `mj_sk_*` user API key.
14
+ */
15
+ UserPayload: Pick<UserPayload, 'email' | 'isSystemUser' | 'apiKeyHash'>;
16
+ /** True when the run executes under the widget-guest elevated principal. Such a run is never trusted. */
17
+ IsWidgetGuestRun: boolean;
18
+ /** The agent the caller asked to run: the resource the {@link TRUSTED_RUN_DATA_SCOPE} check is made against. */
19
+ AgentID: string;
20
+ }
21
+ /**
22
+ * Whether a caller may set the reserved run-data keys — the value the agent-run resolvers pass as
23
+ * `ExecuteAgentParams.TrustReservedRunData`: the system user, or an API key that holds
24
+ * {@link TRUSTED_RUN_DATA_SCOPE} for this agent, and never a widget-guest run, whatever principal it was elevated to.
25
+ * A key without the scope is treated like the browser session of the user it belongs to.
26
+ *
27
+ * @param caller - Who sent the run's `data`.
28
+ * @returns `true` when the run may read the reserved keys from `data`.
29
+ */
30
+ export declare function IsTrustedAgentRunCaller(caller: ClientAgentRunCaller): Promise<boolean>;
31
+ //# sourceMappingURL=agent-run-data-guard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-run-data-guard.d.ts","sourceRoot":"","sources":["../../src/resolvers/agent-run-data-guard.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,kBAAkB,CAAC;AAEtD,wFAAwF;AACxF,MAAM,WAAW,oBAAoB;IACjC;;;;OAIG;IACH,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,GAAG,cAAc,GAAG,YAAY,CAAC,CAAC;IACxE,yGAAyG;IACzG,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gHAAgH;IAChH,OAAO,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAsB,uBAAuB,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC,CAS5F"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * @fileoverview Decides which callers of the agent-run resolvers may set a run's scope or agent-type parameters
3
+ * through the free-form `data` argument.
4
+ *
5
+ * `BaseAgent` and `AgentRunner` read a few `ExecuteAgentParams.data` keys (`RESERVED_AGENT_RUN_DATA_KEYS` in
6
+ * `@memberjunction/ai-core-plus`) as fallbacks that change what a run is, not just what its prompt says:
7
+ * - `PrimaryScopeEntityName`, `PrimaryScopeRecordID`, `SecondaryScopes` decide the run's scope: which
8
+ * notes and examples memory is injected, the pre-execution RAG search context, the scoped prompt parts
9
+ * and run settings, the scope columns written on the `MJ: AI Agent Runs` row, and what sub-agents
10
+ * inherit. On a widget-guest run an explicit scope also beats the returning-visitor scope.
11
+ * - `__agentTypePromptParams` is the highest-precedence agent-type parameter layer. It can turn on the
12
+ * Loop type's `enableTaskGraphs` capability, and switch decisions on or off.
13
+ *
14
+ * The rule lives with the run, not here: `BaseAgent.Execute` drops those keys from every run's `data` unless the
15
+ * params set `ExecuteAgentParams.TrustReservedRunData`. The resolvers set that marker for the callers
16
+ * {@link IsTrustedAgentRunCaller} accepts — the system user, and an `mj_sk_*` API key that holds the
17
+ * {@link TRUSTED_RUN_DATA_SCOPE} scope — and never for a browser or a widget guest. Any user who may create API
18
+ * keys can mint one for themselves, so a key alone is not enough: an administrator grants the scope. Explorer never
19
+ * sends these keys. Everything else in `data` (template data, `conversationId`, `appContext`, `clientTools`, ...)
20
+ * reaches the run unchanged either way.
21
+ *
22
+ * @module @memberjunction/server/resolvers
23
+ */
24
+ import { LogError } from '@memberjunction/core';
25
+ import { GetAPIKeyEngine } from '@memberjunction/api-keys';
26
+ import { UserCache } from '@memberjunction/generic-database-provider';
27
+ /**
28
+ * The API-key scope (`MJ: API Scopes.FullPath`) that makes an `mj_sk_*` key a trusted integration for reserved run
29
+ * data. Checked against the agent being run, so a key can be trusted for some agents only. `full_access` does not
30
+ * imply it: the key must hold this scope itself.
31
+ */
32
+ export const TRUSTED_RUN_DATA_SCOPE = 'agent:trusted';
33
+ /**
34
+ * Whether a caller may set the reserved run-data keys — the value the agent-run resolvers pass as
35
+ * `ExecuteAgentParams.TrustReservedRunData`: the system user, or an API key that holds
36
+ * {@link TRUSTED_RUN_DATA_SCOPE} for this agent, and never a widget-guest run, whatever principal it was elevated to.
37
+ * A key without the scope is treated like the browser session of the user it belongs to.
38
+ *
39
+ * @param caller - Who sent the run's `data`.
40
+ * @returns `true` when the run may read the reserved keys from `data`.
41
+ */
42
+ export async function IsTrustedAgentRunCaller(caller) {
43
+ if (caller.IsWidgetGuestRun) {
44
+ return false;
45
+ }
46
+ if (caller.UserPayload.isSystemUser === true) {
47
+ return true;
48
+ }
49
+ const apiKeyHash = caller.UserPayload.apiKeyHash;
50
+ return apiKeyHash ? keyHoldsTrustedRunDataScope(apiKeyHash, caller.AgentID) : false;
51
+ }
52
+ /**
53
+ * Whether the key explicitly holds {@link TRUSTED_RUN_DATA_SCOPE} for the agent. A key-level rule must match: an
54
+ * allow that comes from scope enforcement being switched off, or from `defaultBehaviorNoScopes: 'allow'`, matches
55
+ * no rule and does not count. Any failure counts as not held.
56
+ */
57
+ async function keyHoldsTrustedRunDataScope(apiKeyHash, agentID) {
58
+ try {
59
+ const systemUser = UserCache.Instance.GetSystemUser();
60
+ if (!systemUser) {
61
+ return false;
62
+ }
63
+ // A probe, not an access decision (the run goes ahead either way), so it is not written to the usage log.
64
+ const result = await GetAPIKeyEngine().Authorize(apiKeyHash, 'MJAPI', TRUSTED_RUN_DATA_SCOPE, agentID, systemUser, { endpoint: '/graphql', method: 'POST' }, { skipLogging: true });
65
+ return result.Allowed && result.MatchedKeyRule != null;
66
+ }
67
+ catch (e) {
68
+ LogError(`IsTrustedAgentRunCaller: the ${TRUSTED_RUN_DATA_SCOPE} check failed; the run is not trusted: ${e}`);
69
+ return false;
70
+ }
71
+ }
72
+ //# sourceMappingURL=agent-run-data-guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-run-data-guard.js","sourceRoot":"","sources":["../../src/resolvers/agent-run-data-guard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAC;AAGtE;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,eAAe,CAAC;AAgBtD;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,MAA4B;IACtE,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,IAAI,MAAM,CAAC,WAAW,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;QAC3C,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC;IACjD,OAAO,UAAU,CAAC,CAAC,CAAC,2BAA2B,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACxF,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,2BAA2B,CAAC,UAAkB,EAAE,OAAe;IAC1E,IAAI,CAAC;QACD,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;QACtD,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,0GAA0G;QAC1G,MAAM,MAAM,GAAG,MAAM,eAAe,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,EAAE,sBAAsB,EAAE,OAAO,EAAE,UAAU,EAC7G,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,OAAO,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,cAAc,IAAI,IAAI,CAAC;IAC3D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,QAAQ,CAAC,gCAAgC,sBAAsB,0CAA0C,CAAC,EAAE,CAAC,CAAC;QAC9G,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC"}
@@ -68,6 +68,12 @@ export declare class EntityCRUDHandler {
68
68
  error?: string;
69
69
  details?: any;
70
70
  }>;
71
+ /**
72
+ * The record's field values for the response, reduced to what `user` may READ. An entity
73
+ * object built for a restricted user holds no denied value already; this is the backstop for
74
+ * one that does.
75
+ */
76
+ private static responseData;
71
77
  /**
72
78
  * Build the record key from the `:id` path segment. A single-column key (any column name) is
73
79
  * the bare value; a composite key is the URL-encoded `Field1|Value1||Field2|Value2` segment.
@@ -1 +1 @@
1
- {"version":3,"file":"EntityCRUDHandler.d.ts","sourceRoot":"","sources":["../../src/rest/EntityCRUDHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntityCRUDHandler.d.ts","sourceRoot":"","sources":["../../src/rest/EntityCRUDHandler.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { CompositeKey, EntityPermissionType, EntitySaveOptions, LogError, Metadata } from '@memberjunction/core';
1
+ import { AssertClientInputWritableForUser, CompositeKey, EntityPermissionType, EntitySaveOptions, LogError, Metadata } from '@memberjunction/core';
2
+ import { ProjectValuesForCaller } from '../generic/fieldSecurityTransport.js';
2
3
  /**
3
4
  * Entity CRUD Implementation Functions for REST endpoints
4
5
  * These functions contain the detailed implementation for entity operations
@@ -38,6 +39,8 @@ export class EntityCRUDHandler {
38
39
  // Remove options from data
39
40
  delete data.options;
40
41
  }
42
+ // Field-level security: refuse a key the caller may not read, or that names no field
43
+ AssertClientInputWritableForUser(entity.EntityInfo, data, user);
41
44
  // Set values on the entity
42
45
  for (const key in data) {
43
46
  entity.Set(key, data[key]);
@@ -62,7 +65,7 @@ export class EntityCRUDHandler {
62
65
  };
63
66
  }
64
67
  // Get entity data for response
65
- const entityData = await entity.GetDataObject();
68
+ const entityData = await this.responseData(entity, user, md);
66
69
  return { success: true, entity: entityData };
67
70
  }
68
71
  catch (error) {
@@ -100,7 +103,7 @@ export class EntityCRUDHandler {
100
103
  };
101
104
  }
102
105
  // Get entity data for response
103
- const entityData = await entity.GetDataObject();
106
+ const entityData = await this.responseData(entity, user, md);
104
107
  return { success: true, entity: entityData };
105
108
  }
106
109
  catch (error) {
@@ -154,6 +157,8 @@ export class EntityCRUDHandler {
154
157
  // Remove options from data
155
158
  delete data.options;
156
159
  }
160
+ // Field-level security: refuse a key the caller may not read, or that names no field
161
+ AssertClientInputWritableForUser(entity.EntityInfo, data, user);
157
162
  // Update entity with new values
158
163
  for (const key in data) {
159
164
  entity.Set(key, data[key]);
@@ -161,7 +166,7 @@ export class EntityCRUDHandler {
161
166
  // Check if entity is dirty
162
167
  if (!entity.Dirty && !options.IgnoreDirtyState) {
163
168
  // Nothing changed, return success
164
- const entityData = await entity.GetDataObject();
169
+ const entityData = await this.responseData(entity, user, md);
165
170
  return { success: true, entity: entityData };
166
171
  }
167
172
  // Validate entity
@@ -184,7 +189,7 @@ export class EntityCRUDHandler {
184
189
  };
185
190
  }
186
191
  // Get entity data for response
187
- const entityData = await entity.GetDataObject();
192
+ const entityData = await this.responseData(entity, user, md);
188
193
  return { success: true, entity: entityData };
189
194
  }
190
195
  catch (error) {
@@ -242,6 +247,15 @@ export class EntityCRUDHandler {
242
247
  static async deleteEntity(entityName, id, options, user) {
243
248
  return this.DeleteEntity(entityName, id, options, user);
244
249
  }
250
+ /**
251
+ * The record's field values for the response, reduced to what `user` may READ. An entity
252
+ * object built for a restricted user holds no denied value already; this is the backstop for
253
+ * one that does.
254
+ */
255
+ static async responseData(entity, user, md) {
256
+ // fls-guard: projected by ProjectValuesForCaller
257
+ return ProjectValuesForCaller(entity.EntityInfo, await entity.GetDataObject(), user, md);
258
+ }
245
259
  /**
246
260
  * Build the record key from the `:id` path segment. A single-column key (any column name) is
247
261
  * the bare value; a composite key is the URL-encoded `Field1|Value1||Field2|Value2` segment.
@@ -1 +1 @@
1
- {"version":3,"file":"EntityCRUDHandler.js","sourceRoot":"","sources":["../../src/rest/EntityCRUDHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntityCRUDHandler.js","sourceRoot":"","sources":["../../src/rest/EntityCRUDHandler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RESTEndpointHandler.d.ts","sourceRoot":"","sources":["../../src/rest/RESTEndpointHandler.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAS9B;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACvC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAE3B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAE3B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED;;;;GAIG;AACH,qBAAa,mBAAmB;IAC5B,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,OAAO,CAA6B;gBAEhC,OAAO,GAAE,0BAA+B;IAMpD;;;OAGG;IACH,OAAO,CAAC,cAAc;IAOtB;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAqEvB;;OAEG;IACH,OAAO,CAAC,WAAW;IAoDnB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAQrB;;OAEG;IACH,OAAO,CAAC,YAAY;IAWpB;;OAEG;YACW,cAAc;IAsB5B;;OAEG;YACW,aAAa;IAyB3B;;OAEG;YACW,SAAS;IAsBvB;;OAEG;YACW,YAAY;IAuB1B;;OAEG;YACW,YAAY;IAwB1B;;OAEG;YACW,YAAY;IA2B1B;;OAEG;YACW,gBAAgB;IAyB9B;;OAEG;YACW,qBAAqB;IAyBnC;;OAEG;YACW,mBAAmB;IAwBjC;;OAEG;YACW,OAAO;IA0BrB;;OAEG;YACW,QAAQ;IAoCtB;;OAEG;YACW,aAAa;IAoB3B;;OAEG;YACW,iBAAiB;IAoC/B;;OAEG;YACW,sBAAsB;IAyCpC;;OAEG;YACW,gBAAgB;IAiB9B;;OAEG;YACW,uBAAuB;IAyBrC;;OAEG;YACW,uBAAuB;IAyBrC;;OAEG;YACW,0BAA0B;IAyBxC;;OAEG;YACW,kBAAkB;IAUhC;;OAEG;YACW,QAAQ;IAUtB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;OAEG;IACI,SAAS,IAAI,OAAO,CAAC,MAAM;IAIlC,yCAAyC;IAClC,SAAS,IAAI,OAAO,CAAC,MAAM;CAGrC"}
1
+ {"version":3,"file":"RESTEndpointHandler.d.ts","sourceRoot":"","sources":["../../src/rest/RESTEndpointHandler.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAS9B;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACvC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAE3B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAE3B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAE1B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED;;;;GAIG;AACH,qBAAa,mBAAmB;IAC5B,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,OAAO,CAA6B;gBAEhC,OAAO,GAAE,0BAA+B;IAMpD;;;OAGG;IACH,OAAO,CAAC,cAAc;IAOtB;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAqEvB;;OAEG;IACH,OAAO,CAAC,WAAW;IAoDnB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAQrB;;OAEG;IACH,OAAO,CAAC,YAAY;IAWpB;;OAEG;YACW,cAAc;IAsB5B;;OAEG;YACW,aAAa;IAyB3B;;OAEG;YACW,SAAS;IAsBvB;;OAEG;YACW,YAAY;IAuB1B;;OAEG;YACW,YAAY;IAwB1B;;OAEG;YACW,YAAY;IA2B1B;;OAEG;YACW,gBAAgB;IAyB9B;;OAEG;YACW,qBAAqB;IAyBnC;;OAEG;YACW,mBAAmB;IAwBjC;;OAEG;YACW,OAAO;IA2BrB;;OAEG;YACW,QAAQ;IAsCtB;;OAEG;YACW,aAAa;IAoB3B;;OAEG;YACW,iBAAiB;IAoC/B;;OAEG;YACW,sBAAsB;IAyCpC;;OAEG;YACW,gBAAgB;IAiB9B;;OAEG;YACW,uBAAuB;IAyBrC;;OAEG;YACW,uBAAuB;IAyBrC;;OAEG;YACW,0BAA0B;IAyBxC;;OAEG;YACW,kBAAkB;IAUhC;;OAEG;YACW,QAAQ;IAUtB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;OAEG;IACI,SAAS,IAAI,OAAO,CAAC,MAAM;IAIlC,yCAAyC;IAClC,SAAS,IAAI,OAAO,CAAC,MAAM;CAGrC"}