@resolveio/server-lib 22.3.124 → 22.3.126

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 (711) hide show
  1. package/.nodemon.json +5 -0
  2. package/.vscode/settings.json +21 -0
  3. package/AGENTS.md +195 -0
  4. package/README.md +22 -0
  5. package/build_package.sh +5 -0
  6. package/compileDTS.pl +64 -0
  7. package/docs/ai-assistant-nightly-eval.md +65 -0
  8. package/docs/ai-assistant-preflight-checklist.md +23 -0
  9. package/docs/ai-assistant-report-builder-bridge-playbook.md +115 -0
  10. package/eslint-plugin-custom/index.js +7 -0
  11. package/eslint-plugin-custom/rules/no-filter-zero-index.js +44 -0
  12. package/eslint.config.js +103 -0
  13. package/gulpfile.js +216 -0
  14. package/methodAndPublicationListGenerator.py +375 -0
  15. package/mongodbensurers.js +2 -0
  16. package/mongostop.js +3 -0
  17. package/package.json +3 -1
  18. package/scripts/cleanup-bypassed-callmethod-logs.js +616 -0
  19. package/settings.development.json +25 -0
  20. package/settings.development.redacted.json +25 -0
  21. package/src/.env +12 -0
  22. package/src/ai/assistant-core-heuristics.ts +379 -0
  23. package/src/ai/resolveio-platform-intelligence-memory-corpus.ts +185 -0
  24. package/src/ai/resolveio-platform-intelligence-memory.ts +325 -0
  25. package/{ai/resolveio-platform-intelligence-types.d.ts → src/ai/resolveio-platform-intelligence-types.ts} +20 -15
  26. package/src/ai/resolveio-platform-intelligence.ts +462 -0
  27. package/src/client-server-app.ts +12 -0
  28. package/src/collections/ai-run.collection.ts +117 -0
  29. package/src/collections/ai-terminal-conversation.collection.ts +91 -0
  30. package/src/collections/ai-terminal-issue-report.collection.ts +99 -0
  31. package/src/collections/ai-terminal-message.collection.ts +77 -0
  32. package/src/collections/app-setting.collection.ts +104 -0
  33. package/src/collections/app-status.collection.ts +58 -0
  34. package/src/collections/communication-metric.collection.ts +84 -0
  35. package/src/collections/counter.collection.ts +56 -0
  36. package/src/collections/cron-job-history.collection.ts +94 -0
  37. package/src/collections/cron-job.collection.ts +92 -0
  38. package/src/collections/customer-notification.collection.ts +131 -0
  39. package/src/collections/customer-portal-password.collection.ts +76 -0
  40. package/src/collections/email-history.collection.ts +134 -0
  41. package/src/collections/email-verified.collection.ts +62 -0
  42. package/src/collections/file.collection.ts +74 -0
  43. package/src/collections/flag-update.collection.ts +57 -0
  44. package/src/collections/flag.collection.ts +57 -0
  45. package/src/collections/log-method-latency.collection.ts +77 -0
  46. package/src/collections/log-subscription.collection.ts +80 -0
  47. package/src/collections/log.collection.ts +93 -0
  48. package/src/collections/logged-in-users.collection.ts +67 -0
  49. package/src/collections/monitor-cpu.collection.ts +65 -0
  50. package/src/collections/monitor-function.collection.ts +74 -0
  51. package/src/collections/monitor-memory.collection.ts +77 -0
  52. package/src/collections/monitor-mongo.collection.ts +71 -0
  53. package/src/collections/notification.collection.ts +57 -0
  54. package/src/collections/openai-usage-ledger.collection.ts +77 -0
  55. package/src/collections/report-builder-dashboard-builder.collection.ts +109 -0
  56. package/src/collections/report-builder-library.collection.ts +89 -0
  57. package/src/collections/report-builder-report.collection.ts +184 -0
  58. package/src/collections/user-group.collection.ts +89 -0
  59. package/src/collections/user-guide.collection.ts +57 -0
  60. package/src/collections/user.collection.ts +181 -0
  61. package/src/cron/cron.ts +117 -0
  62. package/src/fixtures/cron-jobs.ts +95 -0
  63. package/src/fixtures/init.ts +35 -0
  64. package/src/http/auth.ts +818 -0
  65. package/src/http/health.ts +7 -0
  66. package/src/http/home.ts +90 -0
  67. package/src/http/slow-query-publication.ts +49 -0
  68. package/src/index.ts +1 -0
  69. package/src/managers/ai-assistant-codex-manager.manager.ts +1131 -0
  70. package/src/managers/ai-run-evidence.manager.ts +264 -0
  71. package/src/managers/communication-metric.manager.ts +82 -0
  72. package/src/managers/cron.manager.ts +333 -0
  73. package/src/managers/customer-notification-content.manager.ts +236 -0
  74. package/src/managers/diagnostic-manager-bootstrap.ts +165 -0
  75. package/src/managers/error-auto-fix.manager.ts +2767 -0
  76. package/src/managers/local-log.manager.ts +113 -0
  77. package/src/managers/method.manager.ts +1857 -0
  78. package/src/managers/mongo.manager.ts +4575 -0
  79. package/src/managers/monitor.manager.ts +507 -0
  80. package/src/managers/openai-usage-ledger.manager.ts +57 -0
  81. package/src/managers/slow-query-verifier.manager.ts +3590 -0
  82. package/src/managers/slow-query.manager.ts +519 -0
  83. package/src/managers/subscription.manager.ts +3128 -0
  84. package/src/managers/websocket.manager.ts +746 -0
  85. package/src/managers/worker-dispatcher.manager.ts +1360 -0
  86. package/src/managers/worker-server.manager.ts +536 -0
  87. package/src/methods/accounts.ts +532 -0
  88. package/src/methods/ai-terminal.ts +23497 -0
  89. package/src/methods/app-settings.ts +114 -0
  90. package/src/methods/aws.ts +649 -0
  91. package/src/methods/collections.ts +641 -0
  92. package/src/methods/counters.ts +69 -0
  93. package/src/methods/cron-jobs.ts +2614 -0
  94. package/src/methods/customer-notifications.ts +458 -0
  95. package/src/methods/diagnostics.ts +616 -0
  96. package/src/methods/flag-updates.ts +7 -0
  97. package/src/methods/flags.ts +7 -0
  98. package/src/methods/logs.ts +657 -0
  99. package/src/methods/mongo-explorer.ts +1880 -0
  100. package/src/methods/monitor.ts +540 -0
  101. package/src/methods/pdf.ts +1236 -0
  102. package/src/methods/publications.ts +129 -0
  103. package/src/methods/report-builder.ts +3300 -0
  104. package/src/methods/support.ts +335 -0
  105. package/src/models/ai-run.model.ts +27 -0
  106. package/src/models/ai-terminal-conversation.model.ts +19 -0
  107. package/src/models/ai-terminal-issue-report.model.ts +21 -0
  108. package/src/models/ai-terminal-message.model.ts +24 -0
  109. package/src/models/app-setting.model.ts +17 -0
  110. package/{models/app-status.model.d.ts → src/models/app-status.model.ts} +3 -2
  111. package/{models/billing-logged-in-users.model.d.ts → src/models/billing-logged-in-users.model.ts} +5 -4
  112. package/src/models/collection-document.model.ts +24 -0
  113. package/src/models/communication-metric.model.ts +23 -0
  114. package/{models/counter.model.d.ts → src/models/counter.model.ts} +4 -3
  115. package/src/models/cron-job-history.model.ts +16 -0
  116. package/src/models/cron-job.model.ts +15 -0
  117. package/src/models/customer-notification.model.ts +28 -0
  118. package/src/models/customer-portal-password.model.ts +12 -0
  119. package/src/models/dialog.model.ts +25 -0
  120. package/{models/email-history.model.js → src/models/email-history.model.ts} +36 -4
  121. package/{models/email-verified.model.d.ts → src/models/email-verified.model.ts} +6 -5
  122. package/{models/file.model.d.ts → src/models/file.model.ts} +8 -7
  123. package/{models/flag-update.model.d.ts → src/models/flag-update.model.ts} +4 -3
  124. package/{models/flag.model.d.ts → src/models/flag.model.ts} +4 -3
  125. package/src/models/log-method-latency.model.ts +11 -0
  126. package/{models/log-subscription.model.d.ts → src/models/log-subscription.model.ts} +11 -9
  127. package/src/models/log.model.ts +19 -0
  128. package/{models/logged-in-users.model.d.ts → src/models/logged-in-users.model.ts} +6 -5
  129. package/{models/method-response.model.d.ts → src/models/method-response.model.ts} +7 -6
  130. package/src/models/method.model.ts +25 -0
  131. package/{models/monitor-cpu.model.d.ts → src/models/monitor-cpu.model.ts} +9 -7
  132. package/src/models/monitor-function.model.ts +16 -0
  133. package/src/models/monitor-memory.model.ts +17 -0
  134. package/src/models/monitor-mongo.model.ts +15 -0
  135. package/{models/notification.model.d.ts → src/models/notification.model.ts} +6 -4
  136. package/src/models/openai-usage-ledger.model.ts +16 -0
  137. package/src/models/pagination.model.ts +35 -0
  138. package/src/models/permission.model.ts +14 -0
  139. package/src/models/report-builder-dashboard-builder.model.ts +29 -0
  140. package/src/models/report-builder-library.model.ts +20 -0
  141. package/src/models/report-builder-report.model.ts +136 -0
  142. package/src/models/report-builder.model.ts +68 -0
  143. package/src/models/select-data-label.model.ts +9 -0
  144. package/src/models/server-message.model.ts +31 -0
  145. package/src/models/slow-query-report.model.ts +23 -0
  146. package/src/models/subscription.model.ts +73 -0
  147. package/src/models/support-ticket.model.ts +104 -0
  148. package/src/models/user-group.model.ts +24 -0
  149. package/{models/user-guide.model.d.ts → src/models/user-guide.model.ts} +5 -4
  150. package/src/models/user.model.ts +96 -0
  151. package/src/private/images/ResolveIO.png +0 -0
  152. package/{public_api.d.ts → src/public_api.ts} +7 -0
  153. package/src/publications/ai-terminal.ts +73 -0
  154. package/src/publications/app-settings.ts +25 -0
  155. package/src/publications/app-status.ts +13 -0
  156. package/src/publications/cron-jobs.ts +40 -0
  157. package/src/publications/customer-notifications.ts +101 -0
  158. package/src/publications/files.ts +33 -0
  159. package/src/publications/flags-update.ts +19 -0
  160. package/src/publications/flags.ts +19 -0
  161. package/src/publications/logs.ts +163 -0
  162. package/src/publications/notifications.ts +13 -0
  163. package/src/publications/report-builder-dashboard-builders.ts +39 -0
  164. package/src/publications/report-builder-libraries.ts +41 -0
  165. package/src/publications/report-builder-reports.ts +47 -0
  166. package/src/publications/super-admin.ts +13 -0
  167. package/src/publications/user-groups.ts +12 -0
  168. package/src/publications/user-guides.ts +12 -0
  169. package/src/resolveio-server-app.ts +617 -0
  170. package/src/server-app.ts +3354 -0
  171. package/src/services/codex-client.ts +1231 -0
  172. package/src/services/openai-client.ts +265 -0
  173. package/src/types/error-report.ts +26 -0
  174. package/src/types/js-tiktoken.d.ts +11 -0
  175. package/src/types/slow-query-report.ts +28 -0
  176. package/src/util/ai-qa-policy.ts +925 -0
  177. package/src/util/ai-run-evidence-adapters.ts +521 -0
  178. package/src/util/ai-run-evidence-dashboard.ts +271 -0
  179. package/src/util/ai-run-evidence-eval.ts +885 -0
  180. package/src/util/ai-run-evidence.ts +964 -0
  181. package/src/util/ai-runner-artifacts.ts +586 -0
  182. package/src/util/ai-runner-qa-auth.ts +821 -0
  183. package/src/util/ai-runner-qa-tools.ts +3045 -0
  184. package/src/util/aicoder-runner-v6.ts +526 -0
  185. package/src/util/common.ts +649 -0
  186. package/src/util/customer-portal-password.ts +183 -0
  187. package/src/util/error-reporter.ts +332 -0
  188. package/src/util/error-tracking.ts +79 -0
  189. package/src/util/openai-usage-cost.ts +114 -0
  190. package/src/util/report-builder-unwinds.ts +180 -0
  191. package/src/util/runner-process-janitor.ts +219 -0
  192. package/src/util/schema-report-builder.ts +448 -0
  193. package/src/util/slow-query-reporter.ts +216 -0
  194. package/src/util/subscription-dependency-context.ts +1096 -0
  195. package/src/util/support-runner-v5.ts +897 -0
  196. package/src/util/tokenizer.ts +38 -0
  197. package/src/workers/codex-runner.worker.ts +142 -0
  198. package/start_server.sh +5 -0
  199. package/tests/ai-assistant-corpus-build.ts +484 -0
  200. package/tests/ai-assistant-corpus-replay-e2e.ts +774 -0
  201. package/tests/ai-assistant-data-parity-e2e.ts +1989 -0
  202. package/tests/ai-assistant-eval-triage.ts +831 -0
  203. package/tests/ai-assistant-openai-e2e.ts +1061 -0
  204. package/tests/ai-assistant-openai-git-e2e.ts +155 -0
  205. package/tests/ai-assistant-preflight-matrix.ts +215 -0
  206. package/tests/ai-assistant-routing-eval.test.ts +560 -0
  207. package/tests/ai-assistant-snf-live-eval.ts +975 -0
  208. package/tests/ai-assistant-utils.test.ts +2968 -0
  209. package/tests/ai-run-eval.test.ts +88 -0
  210. package/tests/ai-run-evidence.test.ts +232 -0
  211. package/tests/ai-runner-contract.test.ts +488 -0
  212. package/tests/aicoder-runner-v6.test.ts +92 -0
  213. package/tests/error-reporter.test.ts +145 -0
  214. package/tests/method-publication-generator.test.ts +46 -0
  215. package/tests/report-builder-linking.test.ts +79 -0
  216. package/tests/resolveio-platform-intelligence.test.ts +352 -0
  217. package/tests/server-app-cron-owner.test.ts +127 -0
  218. package/tests/subscription-connect-race.test.ts +158 -0
  219. package/tests/subscription-dependency-context.test.ts +324 -0
  220. package/tests/subscription-manager-collection-tracking.test.ts +86 -0
  221. package/tests/subscription-manager-invalidation.test.ts +86 -0
  222. package/tests/support-runner-v5.test.ts +191 -0
  223. package/tsconfig.json +34 -0
  224. package/ai/assistant-core-heuristics.d.ts +0 -11
  225. package/ai/assistant-core-heuristics.js +0 -356
  226. package/ai/assistant-core-heuristics.js.map +0 -1
  227. package/ai/resolveio-platform-intelligence-memory-corpus.d.ts +0 -3
  228. package/ai/resolveio-platform-intelligence-memory-corpus.js +0 -214
  229. package/ai/resolveio-platform-intelligence-memory-corpus.js.map +0 -1
  230. package/ai/resolveio-platform-intelligence-memory.d.ts +0 -20
  231. package/ai/resolveio-platform-intelligence-memory.js +0 -341
  232. package/ai/resolveio-platform-intelligence-memory.js.map +0 -1
  233. package/ai/resolveio-platform-intelligence-types.js +0 -4
  234. package/ai/resolveio-platform-intelligence-types.js.map +0 -1
  235. package/ai/resolveio-platform-intelligence.d.ts +0 -6
  236. package/ai/resolveio-platform-intelligence.js +0 -463
  237. package/ai/resolveio-platform-intelligence.js.map +0 -1
  238. package/client-server-app.d.ts +0 -1
  239. package/client-server-app.js +0 -68
  240. package/client-server-app.js.map +0 -1
  241. package/collections/ai-terminal-conversation.collection.d.ts +0 -2
  242. package/collections/ai-terminal-conversation.collection.js +0 -140
  243. package/collections/ai-terminal-conversation.collection.js.map +0 -1
  244. package/collections/ai-terminal-issue-report.collection.d.ts +0 -2
  245. package/collections/ai-terminal-issue-report.collection.js +0 -148
  246. package/collections/ai-terminal-issue-report.collection.js.map +0 -1
  247. package/collections/ai-terminal-message.collection.d.ts +0 -2
  248. package/collections/ai-terminal-message.collection.js +0 -121
  249. package/collections/ai-terminal-message.collection.js.map +0 -1
  250. package/collections/app-setting.collection.d.ts +0 -3
  251. package/collections/app-setting.collection.js +0 -103
  252. package/collections/app-setting.collection.js.map +0 -1
  253. package/collections/app-status.collection.d.ts +0 -3
  254. package/collections/app-status.collection.js +0 -57
  255. package/collections/app-status.collection.js.map +0 -1
  256. package/collections/communication-metric.collection.d.ts +0 -2
  257. package/collections/communication-metric.collection.js +0 -133
  258. package/collections/communication-metric.collection.js.map +0 -1
  259. package/collections/counter.collection.d.ts +0 -3
  260. package/collections/counter.collection.js +0 -56
  261. package/collections/counter.collection.js.map +0 -1
  262. package/collections/cron-job-history.collection.d.ts +0 -3
  263. package/collections/cron-job-history.collection.js +0 -137
  264. package/collections/cron-job-history.collection.js.map +0 -1
  265. package/collections/cron-job.collection.d.ts +0 -3
  266. package/collections/cron-job.collection.js +0 -92
  267. package/collections/cron-job.collection.js.map +0 -1
  268. package/collections/customer-notification.collection.d.ts +0 -3
  269. package/collections/customer-notification.collection.js +0 -130
  270. package/collections/customer-notification.collection.js.map +0 -1
  271. package/collections/customer-portal-password.collection.d.ts +0 -3
  272. package/collections/customer-portal-password.collection.js +0 -75
  273. package/collections/customer-portal-password.collection.js.map +0 -1
  274. package/collections/email-history.collection.d.ts +0 -3
  275. package/collections/email-history.collection.js +0 -134
  276. package/collections/email-history.collection.js.map +0 -1
  277. package/collections/email-verified.collection.d.ts +0 -3
  278. package/collections/email-verified.collection.js +0 -62
  279. package/collections/email-verified.collection.js.map +0 -1
  280. package/collections/file.collection.d.ts +0 -3
  281. package/collections/file.collection.js +0 -74
  282. package/collections/file.collection.js.map +0 -1
  283. package/collections/flag-update.collection.d.ts +0 -3
  284. package/collections/flag-update.collection.js +0 -57
  285. package/collections/flag-update.collection.js.map +0 -1
  286. package/collections/flag.collection.d.ts +0 -3
  287. package/collections/flag.collection.js +0 -57
  288. package/collections/flag.collection.js.map +0 -1
  289. package/collections/log-method-latency.collection.d.ts +0 -3
  290. package/collections/log-method-latency.collection.js +0 -77
  291. package/collections/log-method-latency.collection.js.map +0 -1
  292. package/collections/log-subscription.collection.d.ts +0 -3
  293. package/collections/log-subscription.collection.js +0 -80
  294. package/collections/log-subscription.collection.js.map +0 -1
  295. package/collections/log.collection.d.ts +0 -3
  296. package/collections/log.collection.js +0 -93
  297. package/collections/log.collection.js.map +0 -1
  298. package/collections/logged-in-users.collection.d.ts +0 -3
  299. package/collections/logged-in-users.collection.js +0 -67
  300. package/collections/logged-in-users.collection.js.map +0 -1
  301. package/collections/monitor-cpu.collection.d.ts +0 -3
  302. package/collections/monitor-cpu.collection.js +0 -65
  303. package/collections/monitor-cpu.collection.js.map +0 -1
  304. package/collections/monitor-function.collection.d.ts +0 -3
  305. package/collections/monitor-function.collection.js +0 -74
  306. package/collections/monitor-function.collection.js.map +0 -1
  307. package/collections/monitor-memory.collection.d.ts +0 -3
  308. package/collections/monitor-memory.collection.js +0 -77
  309. package/collections/monitor-memory.collection.js.map +0 -1
  310. package/collections/monitor-mongo.collection.d.ts +0 -3
  311. package/collections/monitor-mongo.collection.js +0 -71
  312. package/collections/monitor-mongo.collection.js.map +0 -1
  313. package/collections/notification.collection.d.ts +0 -3
  314. package/collections/notification.collection.js +0 -57
  315. package/collections/notification.collection.js.map +0 -1
  316. package/collections/openai-usage-ledger.collection.d.ts +0 -2
  317. package/collections/openai-usage-ledger.collection.js +0 -124
  318. package/collections/openai-usage-ledger.collection.js.map +0 -1
  319. package/collections/report-builder-dashboard-builder.collection.d.ts +0 -3
  320. package/collections/report-builder-dashboard-builder.collection.js +0 -109
  321. package/collections/report-builder-dashboard-builder.collection.js.map +0 -1
  322. package/collections/report-builder-library.collection.d.ts +0 -3
  323. package/collections/report-builder-library.collection.js +0 -87
  324. package/collections/report-builder-library.collection.js.map +0 -1
  325. package/collections/report-builder-report.collection.d.ts +0 -4
  326. package/collections/report-builder-report.collection.js +0 -184
  327. package/collections/report-builder-report.collection.js.map +0 -1
  328. package/collections/user-group.collection.d.ts +0 -4
  329. package/collections/user-group.collection.js +0 -89
  330. package/collections/user-group.collection.js.map +0 -1
  331. package/collections/user-guide.collection.d.ts +0 -3
  332. package/collections/user-guide.collection.js +0 -57
  333. package/collections/user-guide.collection.js.map +0 -1
  334. package/collections/user.collection.d.ts +0 -4
  335. package/collections/user.collection.js +0 -180
  336. package/collections/user.collection.js.map +0 -1
  337. package/cron/cron.d.ts +0 -14
  338. package/cron/cron.js +0 -216
  339. package/cron/cron.js.map +0 -1
  340. package/fixtures/cron-jobs.d.ts +0 -1
  341. package/fixtures/cron-jobs.js +0 -150
  342. package/fixtures/cron-jobs.js.map +0 -1
  343. package/fixtures/init.d.ts +0 -1
  344. package/fixtures/init.js +0 -91
  345. package/fixtures/init.js.map +0 -1
  346. package/http/auth.d.ts +0 -2
  347. package/http/auth.js +0 -951
  348. package/http/auth.js.map +0 -1
  349. package/http/health.d.ts +0 -1
  350. package/http/health.js +0 -11
  351. package/http/health.js.map +0 -1
  352. package/http/home.d.ts +0 -1
  353. package/http/home.js +0 -134
  354. package/http/home.js.map +0 -1
  355. package/http/slow-query-publication.d.ts +0 -2
  356. package/http/slow-query-publication.js +0 -99
  357. package/http/slow-query-publication.js.map +0 -1
  358. package/index.d.ts +0 -1
  359. package/index.js +0 -19
  360. package/index.js.map +0 -1
  361. package/managers/ai-assistant-codex-manager.manager.d.ts +0 -67
  362. package/managers/ai-assistant-codex-manager.manager.js +0 -1113
  363. package/managers/ai-assistant-codex-manager.manager.js.map +0 -1
  364. package/managers/communication-metric.manager.d.ts +0 -16
  365. package/managers/communication-metric.manager.js +0 -134
  366. package/managers/communication-metric.manager.js.map +0 -1
  367. package/managers/cron.manager.d.ts +0 -20
  368. package/managers/cron.manager.js +0 -534
  369. package/managers/cron.manager.js.map +0 -1
  370. package/managers/customer-notification-content.manager.d.ts +0 -55
  371. package/managers/customer-notification-content.manager.js +0 -158
  372. package/managers/customer-notification-content.manager.js.map +0 -1
  373. package/managers/diagnostic-manager-bootstrap.d.ts +0 -9
  374. package/managers/diagnostic-manager-bootstrap.js +0 -260
  375. package/managers/diagnostic-manager-bootstrap.js.map +0 -1
  376. package/managers/error-auto-fix.manager.d.ts +0 -149
  377. package/managers/error-auto-fix.manager.js +0 -3064
  378. package/managers/error-auto-fix.manager.js.map +0 -1
  379. package/managers/local-log.manager.d.ts +0 -18
  380. package/managers/local-log.manager.js +0 -88
  381. package/managers/local-log.manager.js.map +0 -1
  382. package/managers/method.manager.d.ts +0 -84
  383. package/managers/method.manager.js +0 -1964
  384. package/managers/method.manager.js.map +0 -1
  385. package/managers/mongo.manager.d.ts +0 -224
  386. package/managers/mongo.manager.js +0 -5000
  387. package/managers/mongo.manager.js.map +0 -1
  388. package/managers/monitor.manager.d.ts +0 -70
  389. package/managers/monitor.manager.js +0 -550
  390. package/managers/monitor.manager.js.map +0 -1
  391. package/managers/openai-usage-ledger.manager.d.ts +0 -15
  392. package/managers/openai-usage-ledger.manager.js +0 -144
  393. package/managers/openai-usage-ledger.manager.js.map +0 -1
  394. package/managers/slow-query-verifier.manager.d.ts +0 -144
  395. package/managers/slow-query-verifier.manager.js +0 -3857
  396. package/managers/slow-query-verifier.manager.js.map +0 -1
  397. package/managers/slow-query.manager.d.ts +0 -28
  398. package/managers/slow-query.manager.js +0 -468
  399. package/managers/slow-query.manager.js.map +0 -1
  400. package/managers/subscription.manager.d.ts +0 -169
  401. package/managers/subscription.manager.js +0 -3434
  402. package/managers/subscription.manager.js.map +0 -1
  403. package/managers/websocket.manager.d.ts +0 -73
  404. package/managers/websocket.manager.js +0 -673
  405. package/managers/websocket.manager.js.map +0 -1
  406. package/managers/worker-dispatcher.manager.d.ts +0 -120
  407. package/managers/worker-dispatcher.manager.js +0 -1266
  408. package/managers/worker-dispatcher.manager.js.map +0 -1
  409. package/managers/worker-server.manager.d.ts +0 -35
  410. package/managers/worker-server.manager.js +0 -582
  411. package/managers/worker-server.manager.js.map +0 -1
  412. package/methods/accounts.d.ts +0 -2
  413. package/methods/accounts.js +0 -624
  414. package/methods/accounts.js.map +0 -1
  415. package/methods/ai-terminal.d.ts +0 -337
  416. package/methods/ai-terminal.js +0 -23166
  417. package/methods/ai-terminal.js.map +0 -1
  418. package/methods/app-settings.d.ts +0 -2
  419. package/methods/app-settings.js +0 -169
  420. package/methods/app-settings.js.map +0 -1
  421. package/methods/aws.d.ts +0 -2
  422. package/methods/aws.js +0 -877
  423. package/methods/aws.js.map +0 -1
  424. package/methods/collections.d.ts +0 -2
  425. package/methods/collections.js +0 -719
  426. package/methods/collections.js.map +0 -1
  427. package/methods/counters.d.ts +0 -2
  428. package/methods/counters.js +0 -113
  429. package/methods/counters.js.map +0 -1
  430. package/methods/cron-jobs.d.ts +0 -2
  431. package/methods/cron-jobs.js +0 -2475
  432. package/methods/cron-jobs.js.map +0 -1
  433. package/methods/customer-notifications.d.ts +0 -2
  434. package/methods/customer-notifications.js +0 -528
  435. package/methods/customer-notifications.js.map +0 -1
  436. package/methods/diagnostics.d.ts +0 -2
  437. package/methods/diagnostics.js +0 -703
  438. package/methods/diagnostics.js.map +0 -1
  439. package/methods/flag-updates.d.ts +0 -2
  440. package/methods/flag-updates.js +0 -8
  441. package/methods/flag-updates.js.map +0 -1
  442. package/methods/flags.d.ts +0 -2
  443. package/methods/flags.js +0 -8
  444. package/methods/flags.js.map +0 -1
  445. package/methods/logs.d.ts +0 -2
  446. package/methods/logs.js +0 -751
  447. package/methods/logs.js.map +0 -1
  448. package/methods/mongo-explorer.d.ts +0 -2
  449. package/methods/mongo-explorer.js +0 -1808
  450. package/methods/mongo-explorer.js.map +0 -1
  451. package/methods/monitor.d.ts +0 -2
  452. package/methods/monitor.js +0 -543
  453. package/methods/monitor.js.map +0 -1
  454. package/methods/pdf.d.ts +0 -2
  455. package/methods/pdf.js +0 -1216
  456. package/methods/pdf.js.map +0 -1
  457. package/methods/publications.d.ts +0 -1
  458. package/methods/publications.js +0 -183
  459. package/methods/publications.js.map +0 -1
  460. package/methods/report-builder.d.ts +0 -2
  461. package/methods/report-builder.js +0 -3094
  462. package/methods/report-builder.js.map +0 -1
  463. package/methods/support.d.ts +0 -2
  464. package/methods/support.js +0 -430
  465. package/methods/support.js.map +0 -1
  466. package/models/ai-terminal-conversation.model.d.ts +0 -17
  467. package/models/ai-terminal-conversation.model.js +0 -4
  468. package/models/ai-terminal-conversation.model.js.map +0 -1
  469. package/models/ai-terminal-issue-report.model.d.ts +0 -19
  470. package/models/ai-terminal-issue-report.model.js +0 -4
  471. package/models/ai-terminal-issue-report.model.js.map +0 -1
  472. package/models/ai-terminal-message.model.d.ts +0 -22
  473. package/models/ai-terminal-message.model.js +0 -4
  474. package/models/ai-terminal-message.model.js.map +0 -1
  475. package/models/app-setting.model.d.ts +0 -16
  476. package/models/app-setting.model.js +0 -4
  477. package/models/app-setting.model.js.map +0 -1
  478. package/models/app-status.model.js +0 -4
  479. package/models/app-status.model.js.map +0 -1
  480. package/models/billing-logged-in-users.model.js +0 -4
  481. package/models/billing-logged-in-users.model.js.map +0 -1
  482. package/models/collection-document.model.d.ts +0 -21
  483. package/models/collection-document.model.js +0 -4
  484. package/models/collection-document.model.js.map +0 -1
  485. package/models/communication-metric.model.d.ts +0 -20
  486. package/models/communication-metric.model.js +0 -4
  487. package/models/communication-metric.model.js.map +0 -1
  488. package/models/counter.model.js +0 -4
  489. package/models/counter.model.js.map +0 -1
  490. package/models/cron-job-history.model.d.ts +0 -15
  491. package/models/cron-job-history.model.js +0 -4
  492. package/models/cron-job-history.model.js.map +0 -1
  493. package/models/cron-job.model.d.ts +0 -14
  494. package/models/cron-job.model.js +0 -4
  495. package/models/cron-job.model.js.map +0 -1
  496. package/models/customer-notification.model.d.ts +0 -26
  497. package/models/customer-notification.model.js +0 -4
  498. package/models/customer-notification.model.js.map +0 -1
  499. package/models/customer-portal-password.model.d.ts +0 -11
  500. package/models/customer-portal-password.model.js +0 -4
  501. package/models/customer-portal-password.model.js.map +0 -1
  502. package/models/dialog.model.d.ts +0 -23
  503. package/models/dialog.model.js +0 -4
  504. package/models/dialog.model.js.map +0 -1
  505. package/models/email-history.model.d.ts +0 -32
  506. package/models/email-history.model.js.map +0 -1
  507. package/models/email-verified.model.js +0 -4
  508. package/models/email-verified.model.js.map +0 -1
  509. package/models/file.model.js +0 -4
  510. package/models/file.model.js.map +0 -1
  511. package/models/flag-update.model.js +0 -4
  512. package/models/flag-update.model.js.map +0 -1
  513. package/models/flag.model.js +0 -4
  514. package/models/flag.model.js.map +0 -1
  515. package/models/log-method-latency.model.d.ts +0 -10
  516. package/models/log-method-latency.model.js +0 -4
  517. package/models/log-method-latency.model.js.map +0 -1
  518. package/models/log-subscription.model.js +0 -4
  519. package/models/log-subscription.model.js.map +0 -1
  520. package/models/log.model.d.ts +0 -17
  521. package/models/log.model.js +0 -4
  522. package/models/log.model.js.map +0 -1
  523. package/models/logged-in-users.model.js +0 -4
  524. package/models/logged-in-users.model.js.map +0 -1
  525. package/models/method-response.model.js +0 -4
  526. package/models/method-response.model.js.map +0 -1
  527. package/models/method.model.d.ts +0 -26
  528. package/models/method.model.js +0 -4
  529. package/models/method.model.js.map +0 -1
  530. package/models/monitor-cpu.model.js +0 -4
  531. package/models/monitor-cpu.model.js.map +0 -1
  532. package/models/monitor-function.model.d.ts +0 -14
  533. package/models/monitor-function.model.js +0 -4
  534. package/models/monitor-function.model.js.map +0 -1
  535. package/models/monitor-memory.model.d.ts +0 -15
  536. package/models/monitor-memory.model.js +0 -4
  537. package/models/monitor-memory.model.js.map +0 -1
  538. package/models/monitor-mongo.model.d.ts +0 -13
  539. package/models/monitor-mongo.model.js +0 -4
  540. package/models/monitor-mongo.model.js.map +0 -1
  541. package/models/notification.model.js +0 -4
  542. package/models/notification.model.js.map +0 -1
  543. package/models/openai-usage-ledger.model.d.ts +0 -15
  544. package/models/openai-usage-ledger.model.js +0 -4
  545. package/models/openai-usage-ledger.model.js.map +0 -1
  546. package/models/pagination.model.d.ts +0 -11
  547. package/models/pagination.model.js +0 -28
  548. package/models/pagination.model.js.map +0 -1
  549. package/models/permission.model.d.ts +0 -12
  550. package/models/permission.model.js +0 -4
  551. package/models/permission.model.js.map +0 -1
  552. package/models/report-builder-dashboard-builder.model.d.ts +0 -25
  553. package/models/report-builder-dashboard-builder.model.js +0 -4
  554. package/models/report-builder-dashboard-builder.model.js.map +0 -1
  555. package/models/report-builder-library.model.d.ts +0 -17
  556. package/models/report-builder-library.model.js +0 -4
  557. package/models/report-builder-library.model.js.map +0 -1
  558. package/models/report-builder-report.model.d.ts +0 -121
  559. package/models/report-builder-report.model.js +0 -4
  560. package/models/report-builder-report.model.js.map +0 -1
  561. package/models/report-builder.model.d.ts +0 -61
  562. package/models/report-builder.model.js +0 -4
  563. package/models/report-builder.model.js.map +0 -1
  564. package/models/select-data-label.model.d.ts +0 -9
  565. package/models/select-data-label.model.js +0 -4
  566. package/models/select-data-label.model.js.map +0 -1
  567. package/models/server-message.model.d.ts +0 -32
  568. package/models/server-message.model.js +0 -4
  569. package/models/server-message.model.js.map +0 -1
  570. package/models/slow-query-report.model.d.ts +0 -23
  571. package/models/slow-query-report.model.js +0 -4
  572. package/models/slow-query-report.model.js.map +0 -1
  573. package/models/subscription.model.d.ts +0 -31
  574. package/models/subscription.model.js +0 -4
  575. package/models/subscription.model.js.map +0 -1
  576. package/models/support-ticket.model.d.ts +0 -87
  577. package/models/support-ticket.model.js +0 -4
  578. package/models/support-ticket.model.js.map +0 -1
  579. package/models/user-group.model.d.ts +0 -20
  580. package/models/user-group.model.js +0 -4
  581. package/models/user-group.model.js.map +0 -1
  582. package/models/user-guide.model.js +0 -4
  583. package/models/user-guide.model.js.map +0 -1
  584. package/models/user.model.d.ts +0 -84
  585. package/models/user.model.js +0 -4
  586. package/models/user.model.js.map +0 -1
  587. package/private/images/ResolveIO.png +0 -0
  588. package/public_api.js +0 -118
  589. package/public_api.js.map +0 -1
  590. package/publications/ai-terminal.d.ts +0 -1
  591. package/publications/ai-terminal.js +0 -122
  592. package/publications/ai-terminal.js.map +0 -1
  593. package/publications/app-settings.d.ts +0 -2
  594. package/publications/app-settings.js +0 -28
  595. package/publications/app-settings.js.map +0 -1
  596. package/publications/app-status.d.ts +0 -2
  597. package/publications/app-status.js +0 -16
  598. package/publications/app-status.js.map +0 -1
  599. package/publications/cron-jobs.d.ts +0 -2
  600. package/publications/cron-jobs.js +0 -88
  601. package/publications/cron-jobs.js.map +0 -1
  602. package/publications/customer-notifications.d.ts +0 -2
  603. package/publications/customer-notifications.js +0 -161
  604. package/publications/customer-notifications.js.map +0 -1
  605. package/publications/files.d.ts +0 -2
  606. package/publications/files.js +0 -36
  607. package/publications/files.js.map +0 -1
  608. package/publications/flags-update.d.ts +0 -2
  609. package/publications/flags-update.js +0 -22
  610. package/publications/flags-update.js.map +0 -1
  611. package/publications/flags.d.ts +0 -2
  612. package/publications/flags.js +0 -22
  613. package/publications/flags.js.map +0 -1
  614. package/publications/logs.d.ts +0 -2
  615. package/publications/logs.js +0 -164
  616. package/publications/logs.js.map +0 -1
  617. package/publications/notifications.d.ts +0 -2
  618. package/publications/notifications.js +0 -16
  619. package/publications/notifications.js.map +0 -1
  620. package/publications/report-builder-dashboard-builders.d.ts +0 -2
  621. package/publications/report-builder-dashboard-builders.js +0 -42
  622. package/publications/report-builder-dashboard-builders.js.map +0 -1
  623. package/publications/report-builder-libraries.d.ts +0 -2
  624. package/publications/report-builder-libraries.js +0 -90
  625. package/publications/report-builder-libraries.js.map +0 -1
  626. package/publications/report-builder-reports.d.ts +0 -2
  627. package/publications/report-builder-reports.js +0 -50
  628. package/publications/report-builder-reports.js.map +0 -1
  629. package/publications/super-admin.d.ts +0 -2
  630. package/publications/super-admin.js +0 -16
  631. package/publications/super-admin.js.map +0 -1
  632. package/publications/user-groups.d.ts +0 -1
  633. package/publications/user-groups.js +0 -16
  634. package/publications/user-groups.js.map +0 -1
  635. package/publications/user-guides.d.ts +0 -1
  636. package/publications/user-guides.js +0 -16
  637. package/publications/user-guides.js.map +0 -1
  638. package/resolveio-server-app.d.ts +0 -70
  639. package/resolveio-server-app.js +0 -801
  640. package/resolveio-server-app.js.map +0 -1
  641. package/server-app.d.ts +0 -228
  642. package/server-app.js +0 -3566
  643. package/server-app.js.map +0 -1
  644. package/services/codex-client.d.ts +0 -128
  645. package/services/codex-client.js +0 -1629
  646. package/services/codex-client.js.map +0 -1
  647. package/services/openai-client.d.ts +0 -46
  648. package/services/openai-client.js +0 -318
  649. package/services/openai-client.js.map +0 -1
  650. package/types/error-report.d.ts +0 -25
  651. package/types/error-report.js +0 -4
  652. package/types/error-report.js.map +0 -1
  653. package/types/slow-query-report.d.ts +0 -27
  654. package/types/slow-query-report.js +0 -6
  655. package/types/slow-query-report.js.map +0 -1
  656. package/util/ai-qa-policy.d.ts +0 -124
  657. package/util/ai-qa-policy.js +0 -736
  658. package/util/ai-qa-policy.js.map +0 -1
  659. package/util/ai-runner-artifacts.d.ts +0 -82
  660. package/util/ai-runner-artifacts.js +0 -713
  661. package/util/ai-runner-artifacts.js.map +0 -1
  662. package/util/ai-runner-qa-auth.d.ts +0 -5
  663. package/util/ai-runner-qa-auth.js +0 -822
  664. package/util/ai-runner-qa-auth.js.map +0 -1
  665. package/util/ai-runner-qa-tools.d.ts +0 -25
  666. package/util/ai-runner-qa-tools.js +0 -2910
  667. package/util/ai-runner-qa-tools.js.map +0 -1
  668. package/util/aicoder-runner-v6.d.ts +0 -168
  669. package/util/aicoder-runner-v6.js +0 -347
  670. package/util/aicoder-runner-v6.js.map +0 -1
  671. package/util/common.d.ts +0 -31
  672. package/util/common.js +0 -683
  673. package/util/common.js.map +0 -1
  674. package/util/customer-portal-password.d.ts +0 -13
  675. package/util/customer-portal-password.js +0 -209
  676. package/util/customer-portal-password.js.map +0 -1
  677. package/util/error-reporter.d.ts +0 -52
  678. package/util/error-reporter.js +0 -326
  679. package/util/error-reporter.js.map +0 -1
  680. package/util/error-tracking.d.ts +0 -13
  681. package/util/error-tracking.js +0 -120
  682. package/util/error-tracking.js.map +0 -1
  683. package/util/report-builder-unwinds.d.ts +0 -15
  684. package/util/report-builder-unwinds.js +0 -156
  685. package/util/report-builder-unwinds.js.map +0 -1
  686. package/util/runner-process-janitor.d.ts +0 -27
  687. package/util/runner-process-janitor.js +0 -208
  688. package/util/runner-process-janitor.js.map +0 -1
  689. package/util/schema-report-builder.d.ts +0 -6
  690. package/util/schema-report-builder.js +0 -481
  691. package/util/schema-report-builder.js.map +0 -1
  692. package/util/slow-query-reporter.d.ts +0 -28
  693. package/util/slow-query-reporter.js +0 -226
  694. package/util/slow-query-reporter.js.map +0 -1
  695. package/util/subscription-dependency-context.d.ts +0 -34
  696. package/util/subscription-dependency-context.js +0 -1283
  697. package/util/subscription-dependency-context.js.map +0 -1
  698. package/util/support-runner-v5.d.ts +0 -250
  699. package/util/support-runner-v5.js +0 -634
  700. package/util/support-runner-v5.js.map +0 -1
  701. package/util/tokenizer.d.ts +0 -5
  702. package/util/tokenizer.js +0 -41
  703. package/util/tokenizer.js.map +0 -1
  704. package/workers/codex-runner.worker.d.ts +0 -1
  705. package/workers/codex-runner.worker.js +0 -192
  706. package/workers/codex-runner.worker.js.map +0 -1
  707. /package/{private → src/private}/email-templates/enrollment.html +0 -0
  708. /package/{private → src/private}/email-templates/forgot-password.html +0 -0
  709. /package/{private → src/private}/email-templates/support-ticket-deleted.html +0 -0
  710. /package/{private → src/private}/email-templates/support-ticket-modified.html +0 -0
  711. /package/{private → src/private}/email-templates/support-ticket.html +0 -0
package/gulpfile.js ADDED
@@ -0,0 +1,216 @@
1
+ var gulp = require("gulp");
2
+ var exec = require('child_process').exec;
3
+ var rename = require("gulp-rename");
4
+ var del = require('del');
5
+ var sourcemaps = require('gulp-sourcemaps');
6
+ var zip = require('gulp-zip');
7
+ var ts = require("gulp-typescript");
8
+ var nodemon = require("gulp-nodemon");
9
+ var uglify = require('gulp-uglify');
10
+ var gulpIf = require('gulp-if');
11
+ const { ESLint } = require('eslint');
12
+ const fs = require('fs');
13
+
14
+
15
+ var paths = {
16
+ src: 'src/**/*',
17
+ srcTS: 'src/**/*.ts',
18
+ srcPrivate: 'src/private/**/*',
19
+
20
+ tmp: 'tmp',
21
+ tmpJS: 'tmp/**/*.js',
22
+ tmpPrivate: 'tmp/private',
23
+
24
+ dist: 'dist',
25
+ distJS: 'dist/**/*.js',
26
+ distPrivate: 'dist/private',
27
+
28
+ dbDir: 'mongo/data/db',
29
+ dbLogs: 'mongo/log'
30
+ };
31
+ var shell = require('gulp-shell');
32
+
33
+ gulp.task('eslint', async function () {
34
+ const eslint = new ESLint({
35
+ overrideConfigFile: './eslint.config.js'
36
+ });
37
+
38
+ const results = await eslint.lintFiles(['./src/**/*.ts']);
39
+ const formatter = await eslint.loadFormatter('stylish');
40
+ const resultText = formatter.format(results);
41
+
42
+ console.log(resultText);
43
+
44
+ const hasErrors = results.some(result => result.errorCount > 0);
45
+
46
+ if (hasErrors) {
47
+ throw new Error('ESLint errors detected');
48
+ }
49
+ });
50
+
51
+ gulp.task('clean', function () {
52
+ return del([paths.tmp, paths.dist]);
53
+ });
54
+
55
+ // Function to check if MongoDB is running and kill the process if it is
56
+ function killMongoIfRunning(cb) {
57
+ exec('pgrep mongod', (err, stdout, stderr) => {
58
+ if (stdout) {
59
+ console.log('MongoDB is running. Killing the process...');
60
+ exec('pkill mongod', (killErr, killStdout, killStderr) => {
61
+ if (killErr) {
62
+ console.error('Error killing MongoDB:', killStderr);
63
+ } else {
64
+ console.log('MongoDB process killed.');
65
+ }
66
+ cb();
67
+ });
68
+ } else {
69
+ console.log('MongoDB is not running.');
70
+ cb();
71
+ }
72
+ });
73
+ }
74
+
75
+ // Gulp task to start MongoDB after killing any existing process
76
+ gulp.task('mongo-start', function(done) {
77
+ killMongoIfRunning(() => {
78
+ fs.mkdirSync(paths.dbDir, { recursive: true });
79
+ fs.mkdirSync(paths.dbLogs, { recursive: true });
80
+
81
+ const finish = (() => {
82
+ let completed = false;
83
+ return (err) => {
84
+ if (completed) {
85
+ return;
86
+ }
87
+
88
+ completed = true;
89
+ done(err);
90
+ };
91
+ })();
92
+
93
+ const stream = gulp.src('.')
94
+ .pipe(shell('mongod --fork --dbpath ' + paths.dbDir + '/ --logpath ' + paths.dbLogs + '/mongo.log --port 3001 --replSet rs0 --bind_ip 127.0.0.1'))
95
+ .pipe(shell(['mongosh --port 3001 < mongodbensurers.js']));
96
+
97
+ stream.on('error', finish);
98
+ stream.on('end', () => finish());
99
+ stream.on('finish', () => finish());
100
+ });
101
+ });
102
+
103
+ gulp.task("mongo-stop", function() {
104
+ return gulp.src('.')
105
+ .pipe(shell(['killall mongod']));
106
+ });
107
+
108
+ gulp.task("config", gulp.series("clean", function() {
109
+ return gulp.src('./settings.development.json')
110
+ .pipe(rename('settings.json'))
111
+ .pipe(gulp.dest(paths.tmp));
112
+ }));
113
+
114
+ gulp.task("email-templates", function() {
115
+ return gulp.src(paths.srcPrivate)
116
+ .pipe(gulp.dest(paths.tmpPrivate));
117
+ });
118
+
119
+ function waitForStreams(streams) {
120
+ return Promise.all(streams.map((stream) => {
121
+ return new Promise((resolve, reject) => {
122
+ stream.on('finish', resolve);
123
+ stream.on('end', resolve);
124
+ stream.on('error', reject);
125
+ });
126
+ }));
127
+ }
128
+
129
+ function buildTypeScript(destination) {
130
+ var tsProject = ts.createProject("tsconfig.json");
131
+ var tsResult = gulp.src('src/**/*.ts')
132
+ .pipe(sourcemaps.init())
133
+ .pipe(tsProject());
134
+
135
+ var jsStream = tsResult.js
136
+ .pipe(sourcemaps.mapSources((sourcePath) => {
137
+ return sourcePath;
138
+ }))
139
+ .pipe(sourcemaps.write("./"))
140
+ .pipe(gulp.dest(destination));
141
+
142
+ var dtsStream = tsResult.dts.pipe(gulp.dest(destination));
143
+
144
+ return waitForStreams([jsStream, dtsStream]);
145
+ }
146
+
147
+ gulp.task("compile", function () {
148
+ return buildTypeScript(paths.tmp);
149
+ });
150
+
151
+ gulp.task('watch', function (done) {
152
+ gulp.watch([paths.src, './node_modules'], gulp.series('compile'));
153
+
154
+ done();
155
+ });
156
+
157
+ gulp.task("default", gulp.parallel(gulp.series("config", "email-templates", 'compile', (done) => {
158
+ nodemon({
159
+ script: "tmp/client-server-app.js",
160
+ watch: "tmp",
161
+ // exec: 'node --inspect-brk --max-old-space-size=1800 --trace-warnings',
162
+ exec: 'node --inspect --max-old-space-size=1800 --trace-warnings',
163
+ delay: 500
164
+ });
165
+
166
+ done();
167
+ }), 'watch'));
168
+
169
+ gulp.task("config:dist", gulp.series("clean", function() {
170
+ const configPath = fs.existsSync('./settings.production.json') ? './settings.production.json' : './settings.development.json';
171
+ return gulp.src(configPath, {allowEmpty: true})
172
+ .pipe(rename('settings.json'))
173
+ .pipe(gulp.dest(paths.dist));
174
+ }));
175
+
176
+ gulp.task("email-templates:dist", function() {
177
+ return gulp.src(paths.srcPrivate)
178
+ .pipe(gulp.dest(paths.distPrivate));
179
+ });
180
+
181
+ gulp.task("compile:dist", function () {
182
+ return buildTypeScript(paths.dist);
183
+ });
184
+
185
+ gulp.task("packages:dist", function () {
186
+ return gulp.src("./package.json")
187
+ .pipe(gulp.dest(paths.dist));
188
+ });
189
+
190
+ gulp.task("copy-methods-publications", function() {
191
+ return gulp.src(['methods.ts', 'publications.ts'])
192
+ .pipe(gulp.dest(paths.dist));
193
+ });
194
+
195
+ gulp.task("watch:dist", gulp.series("config:dist", "email-templates:dist", "compile:dist", "packages:dist", "copy-methods-publications", function(done) {
196
+ gulp.watch(paths.srcTS, gulp.series("compile:dist"));
197
+ gulp.watch(paths.srcPrivate, gulp.series("email-templates:dist"));
198
+ gulp.watch(['methods.ts', 'publications.ts'], gulp.series("copy-methods-publications"));
199
+ done();
200
+ }));
201
+
202
+ gulp.task("generate-methods-publications", function(done) {
203
+ exec('python3 methodAndPublicationListGenerator.py', function (err, stdout, stderr) {
204
+ if (err) {
205
+ console.error(`exec error: ${err}`);
206
+ return done(err);
207
+ }
208
+ console.log(`stdout: ${stdout}`);
209
+ console.error(`stderr: ${stderr}`);
210
+ done();
211
+ });
212
+ });
213
+
214
+ gulp.task("build-prod", gulp.series("eslint", "config", "email-templates:dist", "compile:dist", "packages:dist", "generate-methods-publications", "copy-methods-publications", function () {
215
+ return gulp.src(paths.dist + "/**/*", {dot : true});
216
+ }));
@@ -0,0 +1,375 @@
1
+ import os
2
+ import re
3
+
4
+ def parse_directory(directory, extension=".ts"):
5
+ files = []
6
+ for root, _, file_list in os.walk(directory):
7
+ for file in file_list:
8
+ if file.endswith(extension):
9
+ files.append(os.path.join(root, file))
10
+ return files
11
+
12
+ def split_params(params):
13
+ parts = []
14
+ buf = ''
15
+ depth_paren = 0
16
+ depth_brace = 0
17
+ depth_bracket = 0
18
+ depth_angle = 0
19
+ in_single = False
20
+ in_double = False
21
+ in_template = False
22
+ escape = False
23
+
24
+ for ch in params:
25
+ if escape:
26
+ buf += ch
27
+ escape = False
28
+ continue
29
+
30
+ if ch == '\\' and (in_single or in_double or in_template):
31
+ buf += ch
32
+ escape = True
33
+ continue
34
+
35
+ if ch == "'" and not in_double and not in_template:
36
+ in_single = not in_single
37
+ buf += ch
38
+ continue
39
+
40
+ if ch == '"' and not in_single and not in_template:
41
+ in_double = not in_double
42
+ buf += ch
43
+ continue
44
+
45
+ if ch == '`' and not in_single and not in_double:
46
+ in_template = not in_template
47
+ buf += ch
48
+ continue
49
+
50
+ if in_single or in_double or in_template:
51
+ buf += ch
52
+ continue
53
+
54
+ if ch == '(':
55
+ depth_paren += 1
56
+ elif ch == ')':
57
+ depth_paren = max(0, depth_paren - 1)
58
+ elif ch == '{':
59
+ depth_brace += 1
60
+ elif ch == '}':
61
+ depth_brace = max(0, depth_brace - 1)
62
+ elif ch == '[':
63
+ depth_bracket += 1
64
+ elif ch == ']':
65
+ depth_bracket = max(0, depth_bracket - 1)
66
+ elif ch == '<':
67
+ depth_angle += 1
68
+ elif ch == '>':
69
+ depth_angle = max(0, depth_angle - 1)
70
+
71
+ if ch == ',' and depth_paren == 0 and depth_brace == 0 and depth_bracket == 0 and depth_angle == 0:
72
+ if buf.strip():
73
+ parts.append(buf.strip())
74
+ buf = ''
75
+ continue
76
+
77
+ buf += ch
78
+
79
+ if buf.strip():
80
+ parts.append(buf.strip())
81
+
82
+ return parts
83
+
84
+ def build_param_lists(params):
85
+ param_list = []
86
+ call_params = []
87
+
88
+ for param in split_params(params):
89
+ param = param.strip()
90
+ if not param:
91
+ continue
92
+
93
+ param_parts = param.split(':', 1)
94
+ param_name = param_parts[0].strip().replace('?', '').split('=')[0].strip()
95
+ param_type = param_parts[1].strip() if len(param_parts) > 1 else ''
96
+
97
+ param_list.append(param)
98
+ call_params.append(param_name)
99
+
100
+ return param_list, call_params
101
+
102
+ def get_param_name(param):
103
+ return param.split(':', 1)[0].strip().replace('?', '').split('=')[0].strip()
104
+
105
+ def is_optional_param(param):
106
+ name_part = param.split(':', 1)[0].strip()
107
+ return '?' in name_part or '=' in name_part
108
+
109
+ def trim_user_specific_publication_params(param_list, call_params, is_user_specific, publication_name='unknown'):
110
+ if not is_user_specific:
111
+ return param_list, call_params
112
+
113
+ if not param_list or not call_params:
114
+ return param_list, call_params
115
+
116
+ first_param_name = get_param_name(param_list[0])
117
+ if first_param_name not in ('id_user', 'id_current_user'):
118
+ raise ValueError(f"user_specific publication {publication_name} must declare injected user id as the first parameter")
119
+
120
+ if publication_name.endswith('ForUser') and len(param_list) == 1 and first_param_name == 'id_user' and is_optional_param(param_list[0]):
121
+ raise ValueError(
122
+ f"user_specific publication {publication_name} has ambiguous optional id_user parameter; "
123
+ "declare function(id_current_user: string, id_user?: string) when the client may pass a target user, "
124
+ "or function(id_user: string) when only the logged-in user is injected"
125
+ )
126
+
127
+ return param_list[1:], call_params[1:]
128
+
129
+ def extract_methods_from_lines(lines):
130
+ methods = {}
131
+ inside_methods_block = False
132
+ inside_string = False
133
+ method_depth = 0
134
+ tmp_method = None
135
+ types_used = set()
136
+
137
+ for line in lines:
138
+ line = line.strip()
139
+
140
+ if not inside_string and re.search(r'(\.methods\(\s*\{)', line):
141
+ inside_methods_block = True
142
+ method_depth = 1
143
+ continue
144
+
145
+ if not inside_methods_block:
146
+ continue
147
+
148
+ inside_string = not inside_string if re.search(r'(?<!\\)(\'|")', line) else inside_string
149
+
150
+ method_depth += line.count('{') - line.count('}')
151
+
152
+ if method_depth == 2 and re.match(r'^[a-zA-Z0-9_]+:\s*\{', line):
153
+ tmp_method = re.match(r'^([a-zA-Z0-9_]+):\s*\{', line).group(1)
154
+
155
+ if tmp_method and method_depth == 3 and (re.search(r'function:\s*function\s*\(', line) or re.search(r'function:\s*async\s*function\s*\(', line)):
156
+ function_match = re.search(r'function\s*\(([^)]*)\)', line)
157
+
158
+ if function_match:
159
+ params = function_match.group(1).strip()
160
+ param_list = []
161
+ call_params = []
162
+ for param in split_params(params):
163
+ param_parts = param.split(':', 1)
164
+ param_name = param_parts[0].strip().replace('?', '').split('=')[0].strip()
165
+ param_type = param_parts[1].strip() if len(param_parts) > 1 else ''
166
+
167
+ # Handle arrays or other complex types
168
+ base_type = re.sub(r'\[\]|\<.*?\>', '', param_type).strip()
169
+ if base_type:
170
+ types_used.add(base_type)
171
+ param_list.append(param.strip())
172
+ call_params.append(param_name)
173
+
174
+ tmp_parameters = ", ".join(param_list)
175
+
176
+ if tmp_parameters:
177
+ method_line = f"\t\t{tmp_method}: ({tmp_parameters}, cb?: Function): Promise<any> => {{"
178
+ call_line = f"\t\t\treturn resolveioServer.call('{tmp_method}', {', '.join(call_params)}, cb);"
179
+ else:
180
+ method_line = f"\t\t{tmp_method}: (cb?: Function): Promise<any> => {{"
181
+ call_line = f"\t\t\treturn resolveioServer.call('{tmp_method}', cb);"
182
+
183
+ methods[tmp_method] = [method_line, call_line, "\t\t},"]
184
+ tmp_method = None
185
+
186
+ if method_depth == 0 and '});' in line:
187
+ inside_methods_block = False
188
+
189
+ return methods, types_used
190
+
191
+ def extract_publications_from_lines(lines):
192
+ publications = {}
193
+ inside_publications_block = False
194
+ inside_string = False
195
+ publication_depth = 0
196
+ tmp_publication = None
197
+ types_used = set()
198
+ tmp_param_list = None
199
+ tmp_call_params = None
200
+ tmp_user_specific = False
201
+
202
+ for line in lines:
203
+ line = line.strip()
204
+
205
+ if not inside_string and re.search(r'(\.publications\(\s*\{)', line):
206
+ inside_publications_block = True
207
+ publication_depth = 1
208
+ continue
209
+
210
+ if not inside_publications_block:
211
+ continue
212
+
213
+ inside_string = not inside_string if re.search(r'(?<!\\)(\'|")', line) else inside_string
214
+
215
+ publication_depth += line.count('{') - line.count('}')
216
+
217
+ if publication_depth == 2 and re.match(r'^[a-zA-Z0-9_]+:\s*\{', line):
218
+ tmp_publication = re.match(r'^([a-zA-Z0-9_]+):\s*\{', line).group(1)
219
+ tmp_param_list = None
220
+ tmp_call_params = None
221
+ tmp_user_specific = False
222
+
223
+ if tmp_publication and publication_depth == 3 and (re.search(r'function:\s*function\s*\(', line) or re.search(r'function:\s*async\s*function\s*\(', line)):
224
+ function_match = re.search(r'function\s*\(([^)]*)\)', line)
225
+
226
+ if function_match:
227
+ params = function_match.group(1).strip()
228
+ tmp_param_list, tmp_call_params = build_param_lists(params)
229
+ for param in tmp_param_list:
230
+ param_parts = param.split(':', 1)
231
+ param_type = param_parts[1].strip() if len(param_parts) > 1 else ''
232
+ base_type = re.sub(r'\[\]|\<.*?\>', '', param_type).strip()
233
+ if base_type:
234
+ types_used.add(base_type)
235
+
236
+ if tmp_publication and publication_depth >= 2 and re.search(r'user_specific\s*:\s*true', line):
237
+ tmp_user_specific = True
238
+
239
+ if tmp_publication and publication_depth == 1 and tmp_param_list is not None:
240
+ param_list, call_params = trim_user_specific_publication_params(
241
+ tmp_param_list,
242
+ tmp_call_params,
243
+ tmp_user_specific,
244
+ tmp_publication
245
+ )
246
+ tmp_parameters = ", ".join(param_list)
247
+
248
+ if tmp_parameters:
249
+ publication_line = f"\t\t{tmp_publication}: ({tmp_parameters}) => {{"
250
+ call_line = f"\t\t\treturn <Observable<any>> resolveioServer.subscribe('{tmp_publication}', {', '.join(call_params)});"
251
+ else:
252
+ publication_line = f"\t\t{tmp_publication}: () => {{"
253
+ call_line = f"\t\t\treturn <Observable<any>> resolveioServer.subscribe('{tmp_publication}');"
254
+
255
+ publications[tmp_publication] = [publication_line, call_line, "\t\t},"]
256
+ tmp_publication = None
257
+ tmp_param_list = None
258
+ tmp_call_params = None
259
+ tmp_user_specific = False
260
+
261
+ if publication_depth == 0 and '});' in line:
262
+ inside_publications_block = False
263
+
264
+ return publications, types_used
265
+
266
+ def generate_import_statements(types_used, models_directory):
267
+ import_statements = []
268
+ available_models = {}
269
+
270
+ # Scan the models directory to find available models and types
271
+ for root, _, files in os.walk(models_directory):
272
+ for file in files:
273
+ if file.endswith(".ts"):
274
+ file_path = os.path.join(root, file)
275
+ with open(file_path, 'r') as model_file:
276
+ model_content = model_file.read()
277
+
278
+ # Look for both interface and type exports
279
+ export_matches = re.findall(r'export\s+(?:interface|type)\s+([a-zA-Z0-9_]+)', model_content)
280
+ for match in export_matches:
281
+ available_models[match] = os.path.relpath(file_path, start=os.path.dirname(models_directory)).replace("\\", "/").replace(".ts", "")
282
+
283
+ # Generate import statements for types used
284
+ for type_name in types_used:
285
+ if type_name in available_models:
286
+ import_path = available_models[type_name]
287
+ import_statements.append(f"import {{ {type_name} }} from './{import_path}';")
288
+
289
+ return sorted(import_statements)
290
+
291
+ def generate_methods_file(files, models_directory, output_file):
292
+ method_blocks = {} # Dictionary to hold method blocks
293
+ all_types_used = set() # Set to track types used
294
+
295
+ # Iterate over each file and extract methods
296
+ for file in files:
297
+ with open(file, 'r') as f:
298
+ lines = f.readlines()
299
+ extracted_methods, types_used = extract_methods_from_lines(lines)
300
+
301
+ # Collect all method blocks from this file into method_blocks
302
+ method_blocks.update(extracted_methods)
303
+
304
+ # Collect types used
305
+ all_types_used.update(types_used)
306
+
307
+ # Sort methods globally by their method names
308
+ sorted_method_names = sorted(method_blocks.keys())
309
+
310
+ # Generate import statements
311
+ import_statements = generate_import_statements(all_types_used, models_directory)
312
+
313
+ # Write to the output file
314
+ with open(output_file, 'w') as f:
315
+ for import_statement in import_statements:
316
+ f.write(f"{import_statement}\n")
317
+ f.write("\nexport function SERVER_METHODS(resolveioServer) {\n")
318
+ f.write("\treturn {\n")
319
+
320
+ # Append sorted methods to the file
321
+ for method_name in sorted_method_names:
322
+ for line in method_blocks[method_name]:
323
+ f.write(f"{line}\n")
324
+
325
+ f.write("\t};\n")
326
+ f.write("}\n")
327
+
328
+ def generate_publications_file(files, models_directory, output_file):
329
+ publication_blocks = {} # Dictionary to hold publication blocks
330
+ all_types_used = set() # Set to track types used
331
+
332
+ # Iterate over each file and extract publications
333
+ for file in files:
334
+ with open(file, 'r') as f:
335
+ lines = f.readlines()
336
+ extracted_publications, types_used = extract_publications_from_lines(lines)
337
+
338
+ # Collect all method blocks from this file into method_blocks
339
+ publication_blocks.update(extracted_publications)
340
+
341
+ # Collect types used
342
+ all_types_used.update(types_used)
343
+
344
+ # Sort publications globally by their publication names
345
+ sorted_publication_names = sorted(publication_blocks.keys())
346
+
347
+ # Generate import statements
348
+ import_statements = generate_import_statements(all_types_used, models_directory)
349
+
350
+ # Write to the output file
351
+ with open(output_file, 'w') as f:
352
+ f.write("import { Observable } from 'rxjs';\n")
353
+ for import_statement in import_statements:
354
+ f.write(f"{import_statement}\n")
355
+ f.write("\nexport function SERVER_PUBLICATIONS(resolveioServer) {\n")
356
+ f.write("\treturn {\n")
357
+
358
+ # Append sorted publications to the file
359
+ for publication_name in sorted_publication_names:
360
+ for line in publication_blocks[publication_name]:
361
+ f.write(f"{line}\n")
362
+
363
+ f.write("\t};\n")
364
+ f.write("}\n")
365
+
366
+ if __name__ == "__main__":
367
+ method_dir = './src/methods'
368
+ pub_dir = './src/publications'
369
+ models_dir = './src/models'
370
+
371
+ method_files = parse_directory(method_dir)
372
+ pub_files = parse_directory(pub_dir)
373
+
374
+ generate_methods_file(method_files, models_dir, 'methods.ts')
375
+ generate_publications_file(pub_files, models_dir, 'publications.ts')
@@ -0,0 +1,2 @@
1
+ rs.initiate();
2
+ exit;
package/mongostop.js ADDED
@@ -0,0 +1,3 @@
1
+ db.adminCommand( { replSetStepDown: 120, secondaryCatchUpPeriodSecs: 15, force: true } );
2
+ db.shutdownServer();
3
+ exit;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@resolveio/server-lib",
3
- "version": "22.3.124",
3
+ "version": "22.3.126",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "package": "./build_package.sh",
@@ -26,6 +26,8 @@
26
26
  "ai-assistant-corpus-build": "node --require ts-node/register tests/ai-assistant-corpus-build.ts",
27
27
  "ai-assistant-corpus-replay-e2e": "node --require ts-node/register tests/ai-assistant-corpus-replay-e2e.ts",
28
28
  "method-publication-generator-test": "node --require ts-node/register tests/method-publication-generator.test.ts",
29
+ "ai-run-evidence-test": "node --require ts-node/register tests/ai-run-evidence.test.ts",
30
+ "ai-run-eval-test": "node --require ts-node/register tests/ai-run-eval.test.ts",
29
31
  "ai-assistant-nightly-eval": "npm run ai-assistant-corpus-build && npm run ai-assistant-data-parity-e2e && npm run ai-assistant-corpus-replay-e2e && npm run ai-assistant-eval-triage"
30
32
  },
31
33
  "author": "",