@resolveio/server-lib 22.3.48 → 22.3.50

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 (687) hide show
  1. package/.nodemon.json +5 -0
  2. package/.vscode/settings.json +21 -0
  3. package/AGENTS.md +189 -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 +1 -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-terminal-conversation.collection.ts +91 -0
  29. package/src/collections/ai-terminal-issue-report.collection.ts +99 -0
  30. package/src/collections/ai-terminal-message.collection.ts +77 -0
  31. package/src/collections/app-setting.collection.ts +104 -0
  32. package/src/collections/app-status.collection.ts +58 -0
  33. package/src/collections/communication-metric.collection.ts +84 -0
  34. package/src/collections/counter.collection.ts +56 -0
  35. package/src/collections/cron-job-history.collection.ts +94 -0
  36. package/src/collections/cron-job.collection.ts +92 -0
  37. package/src/collections/customer-notification.collection.ts +131 -0
  38. package/src/collections/customer-portal-password.collection.ts +76 -0
  39. package/src/collections/email-history.collection.ts +127 -0
  40. package/src/collections/email-verified.collection.ts +62 -0
  41. package/src/collections/file.collection.ts +74 -0
  42. package/src/collections/flag-update.collection.ts +57 -0
  43. package/src/collections/flag.collection.ts +57 -0
  44. package/src/collections/log-method-latency.collection.ts +77 -0
  45. package/src/collections/log-subscription.collection.ts +80 -0
  46. package/src/collections/log.collection.ts +93 -0
  47. package/src/collections/logged-in-users.collection.ts +67 -0
  48. package/src/collections/monitor-cpu.collection.ts +65 -0
  49. package/src/collections/monitor-function.collection.ts +74 -0
  50. package/src/collections/monitor-memory.collection.ts +77 -0
  51. package/src/collections/monitor-mongo.collection.ts +71 -0
  52. package/src/collections/notification.collection.ts +57 -0
  53. package/src/collections/openai-usage-ledger.collection.ts +77 -0
  54. package/src/collections/report-builder-dashboard-builder.collection.ts +109 -0
  55. package/src/collections/report-builder-library.collection.ts +89 -0
  56. package/src/collections/report-builder-report.collection.ts +184 -0
  57. package/src/collections/user-group.collection.ts +89 -0
  58. package/src/collections/user-guide.collection.ts +57 -0
  59. package/src/collections/user.collection.ts +181 -0
  60. package/src/cron/cron.ts +117 -0
  61. package/src/fixtures/cron-jobs.ts +95 -0
  62. package/src/fixtures/init.ts +35 -0
  63. package/src/http/auth.ts +764 -0
  64. package/src/http/health.ts +7 -0
  65. package/src/http/home.ts +90 -0
  66. package/src/http/slow-query-publication.ts +49 -0
  67. package/src/index.ts +1 -0
  68. package/src/managers/ai-assistant-codex-manager.manager.ts +1131 -0
  69. package/src/managers/communication-metric.manager.ts +82 -0
  70. package/src/managers/cron.manager.ts +333 -0
  71. package/src/managers/customer-notification-content.manager.ts +236 -0
  72. package/src/managers/diagnostic-manager-bootstrap.ts +165 -0
  73. package/src/managers/error-auto-fix.manager.ts +2767 -0
  74. package/src/managers/local-log.manager.ts +113 -0
  75. package/src/managers/method.manager.ts +1827 -0
  76. package/src/managers/mongo.manager.ts +4575 -0
  77. package/src/managers/monitor.manager.ts +507 -0
  78. package/src/managers/openai-usage-ledger.manager.ts +116 -0
  79. package/src/managers/slow-query-verifier.manager.ts +3590 -0
  80. package/src/managers/slow-query.manager.ts +519 -0
  81. package/src/managers/subscription.manager.ts +3128 -0
  82. package/src/managers/websocket.manager.ts +746 -0
  83. package/src/managers/worker-dispatcher.manager.ts +1360 -0
  84. package/src/managers/worker-server.manager.ts +536 -0
  85. package/src/methods/accounts.ts +532 -0
  86. package/src/methods/ai-terminal.ts +23043 -0
  87. package/src/methods/app-settings.ts +114 -0
  88. package/src/methods/aws.ts +649 -0
  89. package/src/methods/collections.ts +641 -0
  90. package/src/methods/counters.ts +69 -0
  91. package/src/methods/cron-jobs.ts +2614 -0
  92. package/src/methods/customer-notifications.ts +458 -0
  93. package/src/methods/diagnostics.ts +616 -0
  94. package/src/methods/flag-updates.ts +7 -0
  95. package/src/methods/flags.ts +7 -0
  96. package/src/methods/logs.ts +657 -0
  97. package/src/methods/mongo-explorer.ts +1880 -0
  98. package/src/methods/monitor.ts +540 -0
  99. package/src/methods/pdf.ts +1236 -0
  100. package/src/methods/publications.ts +129 -0
  101. package/src/methods/report-builder.ts +3300 -0
  102. package/src/methods/support.ts +335 -0
  103. package/src/models/ai-terminal-conversation.model.ts +19 -0
  104. package/src/models/ai-terminal-issue-report.model.ts +21 -0
  105. package/src/models/ai-terminal-message.model.ts +24 -0
  106. package/src/models/app-setting.model.ts +17 -0
  107. package/{models/app-status.model.d.ts → src/models/app-status.model.ts} +3 -2
  108. package/{models/billing-logged-in-users.model.d.ts → src/models/billing-logged-in-users.model.ts} +5 -4
  109. package/src/models/collection-document.model.ts +24 -0
  110. package/src/models/communication-metric.model.ts +23 -0
  111. package/{models/counter.model.d.ts → src/models/counter.model.ts} +4 -3
  112. package/src/models/cron-job-history.model.ts +16 -0
  113. package/src/models/cron-job.model.ts +15 -0
  114. package/src/models/customer-notification.model.ts +28 -0
  115. package/src/models/customer-portal-password.model.ts +12 -0
  116. package/src/models/dialog.model.ts +25 -0
  117. package/{models/email-history.model.js → src/models/email-history.model.ts} +35 -4
  118. package/{models/email-verified.model.d.ts → src/models/email-verified.model.ts} +6 -5
  119. package/{models/file.model.d.ts → src/models/file.model.ts} +8 -7
  120. package/{models/flag-update.model.d.ts → src/models/flag-update.model.ts} +4 -3
  121. package/{models/flag.model.d.ts → src/models/flag.model.ts} +4 -3
  122. package/src/models/log-method-latency.model.ts +11 -0
  123. package/{models/log-subscription.model.d.ts → src/models/log-subscription.model.ts} +11 -9
  124. package/src/models/log.model.ts +19 -0
  125. package/{models/logged-in-users.model.d.ts → src/models/logged-in-users.model.ts} +6 -5
  126. package/{models/method-response.model.d.ts → src/models/method-response.model.ts} +7 -6
  127. package/src/models/method.model.ts +25 -0
  128. package/{models/monitor-cpu.model.d.ts → src/models/monitor-cpu.model.ts} +9 -7
  129. package/src/models/monitor-function.model.ts +16 -0
  130. package/src/models/monitor-memory.model.ts +17 -0
  131. package/src/models/monitor-mongo.model.ts +15 -0
  132. package/{models/notification.model.d.ts → src/models/notification.model.ts} +6 -4
  133. package/src/models/openai-usage-ledger.model.ts +16 -0
  134. package/src/models/pagination.model.ts +35 -0
  135. package/src/models/permission.model.ts +14 -0
  136. package/src/models/report-builder-dashboard-builder.model.ts +29 -0
  137. package/src/models/report-builder-library.model.ts +20 -0
  138. package/src/models/report-builder-report.model.ts +136 -0
  139. package/src/models/report-builder.model.ts +68 -0
  140. package/src/models/select-data-label.model.ts +9 -0
  141. package/src/models/server-message.model.ts +31 -0
  142. package/src/models/slow-query-report.model.ts +23 -0
  143. package/src/models/subscription.model.ts +73 -0
  144. package/src/models/support-ticket.model.ts +104 -0
  145. package/src/models/user-group.model.ts +24 -0
  146. package/{models/user-guide.model.d.ts → src/models/user-guide.model.ts} +5 -4
  147. package/src/models/user.model.ts +96 -0
  148. package/src/private/images/ResolveIO.png +0 -0
  149. package/src/publications/ai-terminal.ts +73 -0
  150. package/src/publications/app-settings.ts +25 -0
  151. package/src/publications/app-status.ts +13 -0
  152. package/src/publications/cron-jobs.ts +40 -0
  153. package/src/publications/customer-notifications.ts +101 -0
  154. package/src/publications/files.ts +33 -0
  155. package/src/publications/flags-update.ts +19 -0
  156. package/src/publications/flags.ts +19 -0
  157. package/src/publications/logs.ts +163 -0
  158. package/src/publications/notifications.ts +13 -0
  159. package/src/publications/report-builder-dashboard-builders.ts +39 -0
  160. package/src/publications/report-builder-libraries.ts +41 -0
  161. package/src/publications/report-builder-reports.ts +47 -0
  162. package/src/publications/super-admin.ts +13 -0
  163. package/src/publications/user-groups.ts +12 -0
  164. package/src/publications/user-guides.ts +12 -0
  165. package/src/resolveio-server-app.ts +617 -0
  166. package/src/server-app.ts +3354 -0
  167. package/src/services/codex-client.ts +1223 -0
  168. package/src/services/openai-client.ts +265 -0
  169. package/src/types/error-report.ts +26 -0
  170. package/src/types/js-tiktoken.d.ts +11 -0
  171. package/src/types/slow-query-report.ts +28 -0
  172. package/src/util/ai-qa-policy.ts +879 -0
  173. package/src/util/ai-runner-artifacts.ts +430 -0
  174. package/src/util/ai-runner-qa-auth.ts +356 -0
  175. package/src/util/ai-runner-qa-tools.ts +650 -0
  176. package/src/util/common.ts +649 -0
  177. package/src/util/customer-portal-password.ts +183 -0
  178. package/src/util/error-reporter.ts +332 -0
  179. package/src/util/error-tracking.ts +79 -0
  180. package/src/util/report-builder-unwinds.ts +180 -0
  181. package/src/util/schema-report-builder.ts +448 -0
  182. package/src/util/slow-query-reporter.ts +216 -0
  183. package/src/util/subscription-dependency-context.ts +1096 -0
  184. package/src/util/tokenizer.ts +38 -0
  185. package/src/workers/codex-runner.worker.ts +142 -0
  186. package/start_server.sh +5 -0
  187. package/tests/ai-assistant-corpus-build.ts +484 -0
  188. package/tests/ai-assistant-corpus-replay-e2e.ts +774 -0
  189. package/tests/ai-assistant-data-parity-e2e.ts +1989 -0
  190. package/tests/ai-assistant-eval-triage.ts +831 -0
  191. package/tests/ai-assistant-openai-e2e.ts +1061 -0
  192. package/tests/ai-assistant-openai-git-e2e.ts +155 -0
  193. package/tests/ai-assistant-preflight-matrix.ts +215 -0
  194. package/tests/ai-assistant-routing-eval.test.ts +560 -0
  195. package/tests/ai-assistant-snf-live-eval.ts +975 -0
  196. package/tests/ai-assistant-utils.test.ts +2860 -0
  197. package/tests/ai-runner-contract.test.ts +263 -0
  198. package/tests/error-reporter.test.ts +145 -0
  199. package/tests/method-publication-generator.test.ts +46 -0
  200. package/tests/report-builder-linking.test.ts +79 -0
  201. package/tests/resolveio-platform-intelligence.test.ts +352 -0
  202. package/tests/server-app-cron-owner.test.ts +127 -0
  203. package/tests/subscription-connect-race.test.ts +158 -0
  204. package/tests/subscription-dependency-context.test.ts +324 -0
  205. package/tests/subscription-manager-collection-tracking.test.ts +86 -0
  206. package/tests/subscription-manager-invalidation.test.ts +86 -0
  207. package/tsconfig.json +34 -0
  208. package/ai/assistant-core-heuristics.d.ts +0 -11
  209. package/ai/assistant-core-heuristics.js +0 -356
  210. package/ai/assistant-core-heuristics.js.map +0 -1
  211. package/ai/resolveio-platform-intelligence-memory-corpus.d.ts +0 -3
  212. package/ai/resolveio-platform-intelligence-memory-corpus.js +0 -214
  213. package/ai/resolveio-platform-intelligence-memory-corpus.js.map +0 -1
  214. package/ai/resolveio-platform-intelligence-memory.d.ts +0 -20
  215. package/ai/resolveio-platform-intelligence-memory.js +0 -341
  216. package/ai/resolveio-platform-intelligence-memory.js.map +0 -1
  217. package/ai/resolveio-platform-intelligence-types.js +0 -4
  218. package/ai/resolveio-platform-intelligence-types.js.map +0 -1
  219. package/ai/resolveio-platform-intelligence.d.ts +0 -6
  220. package/ai/resolveio-platform-intelligence.js +0 -463
  221. package/ai/resolveio-platform-intelligence.js.map +0 -1
  222. package/client-server-app.d.ts +0 -1
  223. package/client-server-app.js +0 -68
  224. package/client-server-app.js.map +0 -1
  225. package/collections/ai-terminal-conversation.collection.d.ts +0 -2
  226. package/collections/ai-terminal-conversation.collection.js +0 -140
  227. package/collections/ai-terminal-conversation.collection.js.map +0 -1
  228. package/collections/ai-terminal-issue-report.collection.d.ts +0 -2
  229. package/collections/ai-terminal-issue-report.collection.js +0 -148
  230. package/collections/ai-terminal-issue-report.collection.js.map +0 -1
  231. package/collections/ai-terminal-message.collection.d.ts +0 -2
  232. package/collections/ai-terminal-message.collection.js +0 -121
  233. package/collections/ai-terminal-message.collection.js.map +0 -1
  234. package/collections/app-setting.collection.d.ts +0 -3
  235. package/collections/app-setting.collection.js +0 -103
  236. package/collections/app-setting.collection.js.map +0 -1
  237. package/collections/app-status.collection.d.ts +0 -3
  238. package/collections/app-status.collection.js +0 -57
  239. package/collections/app-status.collection.js.map +0 -1
  240. package/collections/communication-metric.collection.d.ts +0 -2
  241. package/collections/communication-metric.collection.js +0 -133
  242. package/collections/communication-metric.collection.js.map +0 -1
  243. package/collections/counter.collection.d.ts +0 -3
  244. package/collections/counter.collection.js +0 -56
  245. package/collections/counter.collection.js.map +0 -1
  246. package/collections/cron-job-history.collection.d.ts +0 -3
  247. package/collections/cron-job-history.collection.js +0 -137
  248. package/collections/cron-job-history.collection.js.map +0 -1
  249. package/collections/cron-job.collection.d.ts +0 -3
  250. package/collections/cron-job.collection.js +0 -92
  251. package/collections/cron-job.collection.js.map +0 -1
  252. package/collections/customer-notification.collection.d.ts +0 -3
  253. package/collections/customer-notification.collection.js +0 -130
  254. package/collections/customer-notification.collection.js.map +0 -1
  255. package/collections/customer-portal-password.collection.d.ts +0 -3
  256. package/collections/customer-portal-password.collection.js +0 -75
  257. package/collections/customer-portal-password.collection.js.map +0 -1
  258. package/collections/email-history.collection.d.ts +0 -3
  259. package/collections/email-history.collection.js +0 -127
  260. package/collections/email-history.collection.js.map +0 -1
  261. package/collections/email-verified.collection.d.ts +0 -3
  262. package/collections/email-verified.collection.js +0 -62
  263. package/collections/email-verified.collection.js.map +0 -1
  264. package/collections/file.collection.d.ts +0 -3
  265. package/collections/file.collection.js +0 -74
  266. package/collections/file.collection.js.map +0 -1
  267. package/collections/flag-update.collection.d.ts +0 -3
  268. package/collections/flag-update.collection.js +0 -57
  269. package/collections/flag-update.collection.js.map +0 -1
  270. package/collections/flag.collection.d.ts +0 -3
  271. package/collections/flag.collection.js +0 -57
  272. package/collections/flag.collection.js.map +0 -1
  273. package/collections/log-method-latency.collection.d.ts +0 -3
  274. package/collections/log-method-latency.collection.js +0 -77
  275. package/collections/log-method-latency.collection.js.map +0 -1
  276. package/collections/log-subscription.collection.d.ts +0 -3
  277. package/collections/log-subscription.collection.js +0 -80
  278. package/collections/log-subscription.collection.js.map +0 -1
  279. package/collections/log.collection.d.ts +0 -3
  280. package/collections/log.collection.js +0 -93
  281. package/collections/log.collection.js.map +0 -1
  282. package/collections/logged-in-users.collection.d.ts +0 -3
  283. package/collections/logged-in-users.collection.js +0 -67
  284. package/collections/logged-in-users.collection.js.map +0 -1
  285. package/collections/monitor-cpu.collection.d.ts +0 -3
  286. package/collections/monitor-cpu.collection.js +0 -65
  287. package/collections/monitor-cpu.collection.js.map +0 -1
  288. package/collections/monitor-function.collection.d.ts +0 -3
  289. package/collections/monitor-function.collection.js +0 -74
  290. package/collections/monitor-function.collection.js.map +0 -1
  291. package/collections/monitor-memory.collection.d.ts +0 -3
  292. package/collections/monitor-memory.collection.js +0 -77
  293. package/collections/monitor-memory.collection.js.map +0 -1
  294. package/collections/monitor-mongo.collection.d.ts +0 -3
  295. package/collections/monitor-mongo.collection.js +0 -71
  296. package/collections/monitor-mongo.collection.js.map +0 -1
  297. package/collections/notification.collection.d.ts +0 -3
  298. package/collections/notification.collection.js +0 -57
  299. package/collections/notification.collection.js.map +0 -1
  300. package/collections/openai-usage-ledger.collection.d.ts +0 -2
  301. package/collections/openai-usage-ledger.collection.js +0 -124
  302. package/collections/openai-usage-ledger.collection.js.map +0 -1
  303. package/collections/report-builder-dashboard-builder.collection.d.ts +0 -3
  304. package/collections/report-builder-dashboard-builder.collection.js +0 -109
  305. package/collections/report-builder-dashboard-builder.collection.js.map +0 -1
  306. package/collections/report-builder-library.collection.d.ts +0 -3
  307. package/collections/report-builder-library.collection.js +0 -87
  308. package/collections/report-builder-library.collection.js.map +0 -1
  309. package/collections/report-builder-report.collection.d.ts +0 -4
  310. package/collections/report-builder-report.collection.js +0 -184
  311. package/collections/report-builder-report.collection.js.map +0 -1
  312. package/collections/user-group.collection.d.ts +0 -4
  313. package/collections/user-group.collection.js +0 -89
  314. package/collections/user-group.collection.js.map +0 -1
  315. package/collections/user-guide.collection.d.ts +0 -3
  316. package/collections/user-guide.collection.js +0 -57
  317. package/collections/user-guide.collection.js.map +0 -1
  318. package/collections/user.collection.d.ts +0 -4
  319. package/collections/user.collection.js +0 -180
  320. package/collections/user.collection.js.map +0 -1
  321. package/cron/cron.d.ts +0 -14
  322. package/cron/cron.js +0 -216
  323. package/cron/cron.js.map +0 -1
  324. package/fixtures/cron-jobs.d.ts +0 -1
  325. package/fixtures/cron-jobs.js +0 -150
  326. package/fixtures/cron-jobs.js.map +0 -1
  327. package/fixtures/init.d.ts +0 -1
  328. package/fixtures/init.js +0 -91
  329. package/fixtures/init.js.map +0 -1
  330. package/http/auth.d.ts +0 -2
  331. package/http/auth.js +0 -906
  332. package/http/auth.js.map +0 -1
  333. package/http/health.d.ts +0 -1
  334. package/http/health.js +0 -11
  335. package/http/health.js.map +0 -1
  336. package/http/home.d.ts +0 -1
  337. package/http/home.js +0 -134
  338. package/http/home.js.map +0 -1
  339. package/http/slow-query-publication.d.ts +0 -2
  340. package/http/slow-query-publication.js +0 -99
  341. package/http/slow-query-publication.js.map +0 -1
  342. package/index.d.ts +0 -1
  343. package/index.js +0 -19
  344. package/index.js.map +0 -1
  345. package/managers/ai-assistant-codex-manager.manager.d.ts +0 -67
  346. package/managers/ai-assistant-codex-manager.manager.js +0 -1113
  347. package/managers/ai-assistant-codex-manager.manager.js.map +0 -1
  348. package/managers/communication-metric.manager.d.ts +0 -16
  349. package/managers/communication-metric.manager.js +0 -134
  350. package/managers/communication-metric.manager.js.map +0 -1
  351. package/managers/cron.manager.d.ts +0 -20
  352. package/managers/cron.manager.js +0 -534
  353. package/managers/cron.manager.js.map +0 -1
  354. package/managers/customer-notification-content.manager.d.ts +0 -55
  355. package/managers/customer-notification-content.manager.js +0 -158
  356. package/managers/customer-notification-content.manager.js.map +0 -1
  357. package/managers/diagnostic-manager-bootstrap.d.ts +0 -9
  358. package/managers/diagnostic-manager-bootstrap.js +0 -260
  359. package/managers/diagnostic-manager-bootstrap.js.map +0 -1
  360. package/managers/error-auto-fix.manager.d.ts +0 -149
  361. package/managers/error-auto-fix.manager.js +0 -3064
  362. package/managers/error-auto-fix.manager.js.map +0 -1
  363. package/managers/local-log.manager.d.ts +0 -18
  364. package/managers/local-log.manager.js +0 -88
  365. package/managers/local-log.manager.js.map +0 -1
  366. package/managers/method.manager.d.ts +0 -83
  367. package/managers/method.manager.js +0 -1941
  368. package/managers/method.manager.js.map +0 -1
  369. package/managers/mongo.manager.d.ts +0 -224
  370. package/managers/mongo.manager.js +0 -5000
  371. package/managers/mongo.manager.js.map +0 -1
  372. package/managers/monitor.manager.d.ts +0 -70
  373. package/managers/monitor.manager.js +0 -550
  374. package/managers/monitor.manager.js.map +0 -1
  375. package/managers/openai-usage-ledger.manager.d.ts +0 -15
  376. package/managers/openai-usage-ledger.manager.js +0 -144
  377. package/managers/openai-usage-ledger.manager.js.map +0 -1
  378. package/managers/slow-query-verifier.manager.d.ts +0 -144
  379. package/managers/slow-query-verifier.manager.js +0 -3857
  380. package/managers/slow-query-verifier.manager.js.map +0 -1
  381. package/managers/slow-query.manager.d.ts +0 -28
  382. package/managers/slow-query.manager.js +0 -468
  383. package/managers/slow-query.manager.js.map +0 -1
  384. package/managers/subscription.manager.d.ts +0 -169
  385. package/managers/subscription.manager.js +0 -3434
  386. package/managers/subscription.manager.js.map +0 -1
  387. package/managers/websocket.manager.d.ts +0 -73
  388. package/managers/websocket.manager.js +0 -673
  389. package/managers/websocket.manager.js.map +0 -1
  390. package/managers/worker-dispatcher.manager.d.ts +0 -120
  391. package/managers/worker-dispatcher.manager.js +0 -1266
  392. package/managers/worker-dispatcher.manager.js.map +0 -1
  393. package/managers/worker-server.manager.d.ts +0 -35
  394. package/managers/worker-server.manager.js +0 -582
  395. package/managers/worker-server.manager.js.map +0 -1
  396. package/methods/accounts.d.ts +0 -2
  397. package/methods/accounts.js +0 -624
  398. package/methods/accounts.js.map +0 -1
  399. package/methods/ai-terminal.d.ts +0 -336
  400. package/methods/ai-terminal.js +0 -22782
  401. package/methods/ai-terminal.js.map +0 -1
  402. package/methods/app-settings.d.ts +0 -2
  403. package/methods/app-settings.js +0 -169
  404. package/methods/app-settings.js.map +0 -1
  405. package/methods/aws.d.ts +0 -2
  406. package/methods/aws.js +0 -877
  407. package/methods/aws.js.map +0 -1
  408. package/methods/collections.d.ts +0 -2
  409. package/methods/collections.js +0 -719
  410. package/methods/collections.js.map +0 -1
  411. package/methods/counters.d.ts +0 -2
  412. package/methods/counters.js +0 -113
  413. package/methods/counters.js.map +0 -1
  414. package/methods/cron-jobs.d.ts +0 -2
  415. package/methods/cron-jobs.js +0 -2475
  416. package/methods/cron-jobs.js.map +0 -1
  417. package/methods/customer-notifications.d.ts +0 -2
  418. package/methods/customer-notifications.js +0 -528
  419. package/methods/customer-notifications.js.map +0 -1
  420. package/methods/diagnostics.d.ts +0 -2
  421. package/methods/diagnostics.js +0 -703
  422. package/methods/diagnostics.js.map +0 -1
  423. package/methods/flag-updates.d.ts +0 -2
  424. package/methods/flag-updates.js +0 -8
  425. package/methods/flag-updates.js.map +0 -1
  426. package/methods/flags.d.ts +0 -2
  427. package/methods/flags.js +0 -8
  428. package/methods/flags.js.map +0 -1
  429. package/methods/logs.d.ts +0 -2
  430. package/methods/logs.js +0 -751
  431. package/methods/logs.js.map +0 -1
  432. package/methods/mongo-explorer.d.ts +0 -2
  433. package/methods/mongo-explorer.js +0 -1808
  434. package/methods/mongo-explorer.js.map +0 -1
  435. package/methods/monitor.d.ts +0 -2
  436. package/methods/monitor.js +0 -543
  437. package/methods/monitor.js.map +0 -1
  438. package/methods/pdf.d.ts +0 -2
  439. package/methods/pdf.js +0 -1216
  440. package/methods/pdf.js.map +0 -1
  441. package/methods/publications.d.ts +0 -1
  442. package/methods/publications.js +0 -183
  443. package/methods/publications.js.map +0 -1
  444. package/methods/report-builder.d.ts +0 -2
  445. package/methods/report-builder.js +0 -3094
  446. package/methods/report-builder.js.map +0 -1
  447. package/methods/support.d.ts +0 -2
  448. package/methods/support.js +0 -430
  449. package/methods/support.js.map +0 -1
  450. package/models/ai-terminal-conversation.model.d.ts +0 -17
  451. package/models/ai-terminal-conversation.model.js +0 -4
  452. package/models/ai-terminal-conversation.model.js.map +0 -1
  453. package/models/ai-terminal-issue-report.model.d.ts +0 -19
  454. package/models/ai-terminal-issue-report.model.js +0 -4
  455. package/models/ai-terminal-issue-report.model.js.map +0 -1
  456. package/models/ai-terminal-message.model.d.ts +0 -22
  457. package/models/ai-terminal-message.model.js +0 -4
  458. package/models/ai-terminal-message.model.js.map +0 -1
  459. package/models/app-setting.model.d.ts +0 -16
  460. package/models/app-setting.model.js +0 -4
  461. package/models/app-setting.model.js.map +0 -1
  462. package/models/app-status.model.js +0 -4
  463. package/models/app-status.model.js.map +0 -1
  464. package/models/billing-logged-in-users.model.js +0 -4
  465. package/models/billing-logged-in-users.model.js.map +0 -1
  466. package/models/collection-document.model.d.ts +0 -21
  467. package/models/collection-document.model.js +0 -4
  468. package/models/collection-document.model.js.map +0 -1
  469. package/models/communication-metric.model.d.ts +0 -20
  470. package/models/communication-metric.model.js +0 -4
  471. package/models/communication-metric.model.js.map +0 -1
  472. package/models/counter.model.js +0 -4
  473. package/models/counter.model.js.map +0 -1
  474. package/models/cron-job-history.model.d.ts +0 -15
  475. package/models/cron-job-history.model.js +0 -4
  476. package/models/cron-job-history.model.js.map +0 -1
  477. package/models/cron-job.model.d.ts +0 -14
  478. package/models/cron-job.model.js +0 -4
  479. package/models/cron-job.model.js.map +0 -1
  480. package/models/customer-notification.model.d.ts +0 -26
  481. package/models/customer-notification.model.js +0 -4
  482. package/models/customer-notification.model.js.map +0 -1
  483. package/models/customer-portal-password.model.d.ts +0 -11
  484. package/models/customer-portal-password.model.js +0 -4
  485. package/models/customer-portal-password.model.js.map +0 -1
  486. package/models/dialog.model.d.ts +0 -23
  487. package/models/dialog.model.js +0 -4
  488. package/models/dialog.model.js.map +0 -1
  489. package/models/email-history.model.d.ts +0 -31
  490. package/models/email-history.model.js.map +0 -1
  491. package/models/email-verified.model.js +0 -4
  492. package/models/email-verified.model.js.map +0 -1
  493. package/models/file.model.js +0 -4
  494. package/models/file.model.js.map +0 -1
  495. package/models/flag-update.model.js +0 -4
  496. package/models/flag-update.model.js.map +0 -1
  497. package/models/flag.model.js +0 -4
  498. package/models/flag.model.js.map +0 -1
  499. package/models/log-method-latency.model.d.ts +0 -10
  500. package/models/log-method-latency.model.js +0 -4
  501. package/models/log-method-latency.model.js.map +0 -1
  502. package/models/log-subscription.model.js +0 -4
  503. package/models/log-subscription.model.js.map +0 -1
  504. package/models/log.model.d.ts +0 -17
  505. package/models/log.model.js +0 -4
  506. package/models/log.model.js.map +0 -1
  507. package/models/logged-in-users.model.js +0 -4
  508. package/models/logged-in-users.model.js.map +0 -1
  509. package/models/method-response.model.js +0 -4
  510. package/models/method-response.model.js.map +0 -1
  511. package/models/method.model.d.ts +0 -26
  512. package/models/method.model.js +0 -4
  513. package/models/method.model.js.map +0 -1
  514. package/models/monitor-cpu.model.js +0 -4
  515. package/models/monitor-cpu.model.js.map +0 -1
  516. package/models/monitor-function.model.d.ts +0 -14
  517. package/models/monitor-function.model.js +0 -4
  518. package/models/monitor-function.model.js.map +0 -1
  519. package/models/monitor-memory.model.d.ts +0 -15
  520. package/models/monitor-memory.model.js +0 -4
  521. package/models/monitor-memory.model.js.map +0 -1
  522. package/models/monitor-mongo.model.d.ts +0 -13
  523. package/models/monitor-mongo.model.js +0 -4
  524. package/models/monitor-mongo.model.js.map +0 -1
  525. package/models/notification.model.js +0 -4
  526. package/models/notification.model.js.map +0 -1
  527. package/models/openai-usage-ledger.model.d.ts +0 -15
  528. package/models/openai-usage-ledger.model.js +0 -4
  529. package/models/openai-usage-ledger.model.js.map +0 -1
  530. package/models/pagination.model.d.ts +0 -11
  531. package/models/pagination.model.js +0 -28
  532. package/models/pagination.model.js.map +0 -1
  533. package/models/permission.model.d.ts +0 -12
  534. package/models/permission.model.js +0 -4
  535. package/models/permission.model.js.map +0 -1
  536. package/models/report-builder-dashboard-builder.model.d.ts +0 -25
  537. package/models/report-builder-dashboard-builder.model.js +0 -4
  538. package/models/report-builder-dashboard-builder.model.js.map +0 -1
  539. package/models/report-builder-library.model.d.ts +0 -17
  540. package/models/report-builder-library.model.js +0 -4
  541. package/models/report-builder-library.model.js.map +0 -1
  542. package/models/report-builder-report.model.d.ts +0 -121
  543. package/models/report-builder-report.model.js +0 -4
  544. package/models/report-builder-report.model.js.map +0 -1
  545. package/models/report-builder.model.d.ts +0 -61
  546. package/models/report-builder.model.js +0 -4
  547. package/models/report-builder.model.js.map +0 -1
  548. package/models/select-data-label.model.d.ts +0 -9
  549. package/models/select-data-label.model.js +0 -4
  550. package/models/select-data-label.model.js.map +0 -1
  551. package/models/server-message.model.d.ts +0 -32
  552. package/models/server-message.model.js +0 -4
  553. package/models/server-message.model.js.map +0 -1
  554. package/models/slow-query-report.model.d.ts +0 -23
  555. package/models/slow-query-report.model.js +0 -4
  556. package/models/slow-query-report.model.js.map +0 -1
  557. package/models/subscription.model.d.ts +0 -31
  558. package/models/subscription.model.js +0 -4
  559. package/models/subscription.model.js.map +0 -1
  560. package/models/support-ticket.model.d.ts +0 -87
  561. package/models/support-ticket.model.js +0 -4
  562. package/models/support-ticket.model.js.map +0 -1
  563. package/models/user-group.model.d.ts +0 -20
  564. package/models/user-group.model.js +0 -4
  565. package/models/user-group.model.js.map +0 -1
  566. package/models/user-guide.model.js +0 -4
  567. package/models/user-guide.model.js.map +0 -1
  568. package/models/user.model.d.ts +0 -84
  569. package/models/user.model.js +0 -4
  570. package/models/user.model.js.map +0 -1
  571. package/private/images/ResolveIO.png +0 -0
  572. package/public_api.js +0 -115
  573. package/public_api.js.map +0 -1
  574. package/publications/ai-terminal.d.ts +0 -1
  575. package/publications/ai-terminal.js +0 -122
  576. package/publications/ai-terminal.js.map +0 -1
  577. package/publications/app-settings.d.ts +0 -2
  578. package/publications/app-settings.js +0 -28
  579. package/publications/app-settings.js.map +0 -1
  580. package/publications/app-status.d.ts +0 -2
  581. package/publications/app-status.js +0 -16
  582. package/publications/app-status.js.map +0 -1
  583. package/publications/cron-jobs.d.ts +0 -2
  584. package/publications/cron-jobs.js +0 -88
  585. package/publications/cron-jobs.js.map +0 -1
  586. package/publications/customer-notifications.d.ts +0 -2
  587. package/publications/customer-notifications.js +0 -161
  588. package/publications/customer-notifications.js.map +0 -1
  589. package/publications/files.d.ts +0 -2
  590. package/publications/files.js +0 -36
  591. package/publications/files.js.map +0 -1
  592. package/publications/flags-update.d.ts +0 -2
  593. package/publications/flags-update.js +0 -22
  594. package/publications/flags-update.js.map +0 -1
  595. package/publications/flags.d.ts +0 -2
  596. package/publications/flags.js +0 -22
  597. package/publications/flags.js.map +0 -1
  598. package/publications/logs.d.ts +0 -2
  599. package/publications/logs.js +0 -164
  600. package/publications/logs.js.map +0 -1
  601. package/publications/notifications.d.ts +0 -2
  602. package/publications/notifications.js +0 -16
  603. package/publications/notifications.js.map +0 -1
  604. package/publications/report-builder-dashboard-builders.d.ts +0 -2
  605. package/publications/report-builder-dashboard-builders.js +0 -42
  606. package/publications/report-builder-dashboard-builders.js.map +0 -1
  607. package/publications/report-builder-libraries.d.ts +0 -2
  608. package/publications/report-builder-libraries.js +0 -90
  609. package/publications/report-builder-libraries.js.map +0 -1
  610. package/publications/report-builder-reports.d.ts +0 -2
  611. package/publications/report-builder-reports.js +0 -50
  612. package/publications/report-builder-reports.js.map +0 -1
  613. package/publications/super-admin.d.ts +0 -2
  614. package/publications/super-admin.js +0 -16
  615. package/publications/super-admin.js.map +0 -1
  616. package/publications/user-groups.d.ts +0 -1
  617. package/publications/user-groups.js +0 -16
  618. package/publications/user-groups.js.map +0 -1
  619. package/publications/user-guides.d.ts +0 -1
  620. package/publications/user-guides.js +0 -16
  621. package/publications/user-guides.js.map +0 -1
  622. package/resolveio-server-app.d.ts +0 -70
  623. package/resolveio-server-app.js +0 -801
  624. package/resolveio-server-app.js.map +0 -1
  625. package/server-app.d.ts +0 -228
  626. package/server-app.js +0 -3566
  627. package/server-app.js.map +0 -1
  628. package/services/codex-client.d.ts +0 -126
  629. package/services/codex-client.js +0 -1622
  630. package/services/codex-client.js.map +0 -1
  631. package/services/openai-client.d.ts +0 -46
  632. package/services/openai-client.js +0 -318
  633. package/services/openai-client.js.map +0 -1
  634. package/types/error-report.d.ts +0 -25
  635. package/types/error-report.js +0 -4
  636. package/types/error-report.js.map +0 -1
  637. package/types/slow-query-report.d.ts +0 -27
  638. package/types/slow-query-report.js +0 -6
  639. package/types/slow-query-report.js.map +0 -1
  640. package/util/ai-qa-policy.d.ts +0 -119
  641. package/util/ai-qa-policy.js +0 -650
  642. package/util/ai-qa-policy.js.map +0 -1
  643. package/util/ai-runner-artifacts.d.ts +0 -74
  644. package/util/ai-runner-artifacts.js +0 -531
  645. package/util/ai-runner-artifacts.js.map +0 -1
  646. package/util/ai-runner-qa-auth.d.ts +0 -5
  647. package/util/ai-runner-qa-auth.js +0 -357
  648. package/util/ai-runner-qa-auth.js.map +0 -1
  649. package/util/ai-runner-qa-tools.d.ts +0 -16
  650. package/util/ai-runner-qa-tools.js +0 -635
  651. package/util/ai-runner-qa-tools.js.map +0 -1
  652. package/util/common.d.ts +0 -31
  653. package/util/common.js +0 -683
  654. package/util/common.js.map +0 -1
  655. package/util/customer-portal-password.d.ts +0 -13
  656. package/util/customer-portal-password.js +0 -209
  657. package/util/customer-portal-password.js.map +0 -1
  658. package/util/error-reporter.d.ts +0 -52
  659. package/util/error-reporter.js +0 -326
  660. package/util/error-reporter.js.map +0 -1
  661. package/util/error-tracking.d.ts +0 -13
  662. package/util/error-tracking.js +0 -120
  663. package/util/error-tracking.js.map +0 -1
  664. package/util/report-builder-unwinds.d.ts +0 -15
  665. package/util/report-builder-unwinds.js +0 -156
  666. package/util/report-builder-unwinds.js.map +0 -1
  667. package/util/schema-report-builder.d.ts +0 -6
  668. package/util/schema-report-builder.js +0 -481
  669. package/util/schema-report-builder.js.map +0 -1
  670. package/util/slow-query-reporter.d.ts +0 -28
  671. package/util/slow-query-reporter.js +0 -226
  672. package/util/slow-query-reporter.js.map +0 -1
  673. package/util/subscription-dependency-context.d.ts +0 -34
  674. package/util/subscription-dependency-context.js +0 -1283
  675. package/util/subscription-dependency-context.js.map +0 -1
  676. package/util/tokenizer.d.ts +0 -5
  677. package/util/tokenizer.js +0 -41
  678. package/util/tokenizer.js.map +0 -1
  679. package/workers/codex-runner.worker.d.ts +0 -1
  680. package/workers/codex-runner.worker.js +0 -192
  681. package/workers/codex-runner.worker.js.map +0 -1
  682. /package/{private → src/private}/email-templates/enrollment.html +0 -0
  683. /package/{private → src/private}/email-templates/forgot-password.html +0 -0
  684. /package/{private → src/private}/email-templates/support-ticket-deleted.html +0 -0
  685. /package/{private → src/private}/email-templates/support-ticket-modified.html +0 -0
  686. /package/{private → src/private}/email-templates/support-ticket.html +0 -0
  687. /package/{public_api.d.ts → src/public_api.ts} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/managers/monitor.manager.ts"],"names":[],"mappings":"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","file":"monitor.manager.js","sourcesContent":["import axios from 'axios';\nimport { MonitorCPUs } from '../collections/monitor-cpu.collection';\nimport { MonitorFunctions } from '../collections/monitor-function.collection';\nimport { MonitorMemorys } from '../collections/monitor-memory.collection';\nimport { MonitorMongos } from '../collections/monitor-mongo.collection';\nimport { ResolveIOServer } from '../resolveio-server-app';\nimport { objectIdHexString } from '../util/common';\nimport { LocalLogModel } from './local-log.manager';\n\nconst os = require('os');\nconst MAX_BATCH_SIZE = 8 * 1024 * 1024; // 8MB max for safety\n\nexport class MonitorManager {\n\tprivate _instanceHostname = '';\n\tprivate _monitorData: LocalLogModel[] = [];\n\n\tconstructor() {}\n\n\tstatic async create() {\n\t\tconst monitorManager = new MonitorManager();\n\t\tawait monitorManager.initialize();\n\t\treturn monitorManager;\n\t}\n\n\tprivate async initialize() {\n\t\tthis._instanceHostname = os.hostname().replace(/\\./g, '-');\n\t\tawait this.setupIntervals();\n\t\tthis.setupEventLoop();\n\t}\n\n\tcpuAverage() {\n\t\tvar totalIdle = 0, totalTick = 0;\n\t\tvar cpus = os.cpus();\n\n\t\tfor (var i = 0, len = cpus.length; i < len; i++) {\n\t\t\tvar cpu = cpus[i];\n\n\t\t\tfor (let type in cpu.times) {\n\t\t\t\ttotalTick += cpu.times[type];\n\t\t\t}\n\t\t\ttotalIdle += cpu.times.idle;\n\t\t}\n\n\t\treturn {\n\t\t\tidle: totalIdle / cpus.length,\n\t\t\ttotal: totalTick / cpus.length\n\t\t};\n\t}\n\n\tasync setupIntervals() {\n\t\tconst processOnlyRuntime = this.isProcessOnlyManagerRuntime();\n\n\t\t// Example: If not on production or localhost, do a health check\n\t\tif (\n\t\t\t!processOnlyRuntime\n\t\t&&\n\t\t\tResolveIOServer.getServerConfig()['ROOT_URL'] !== 'https://resolveio.com'\n\t\t&& ResolveIOServer.getServerConfig()['ROOT_URL'] !== 'http://localhost:4200'\n\t\t) {\n\t\t\ttry {\n\t\t\t\tlet instanceId = await axios.get('http://169.254.169.254/latest/meta-data/instance-id');\n\n\t\t\t\tsetInterval(async () => {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tawait axios.post('https://backend.resolveio.com/api/health', {\n\t\t\t\t\t\t\ttype: 'application',\n\t\t\t\t\t\t\tid_aws_instance: instanceId.data,\n\t\t\t\t\t\t\tversion: typeof process.env.APP_VERSION === 'number'\n\t\t\t\t\t\t\t\t? (<any>process.env.APP_VERSION).toString()\n\t\t\t\t\t\t\t\t: process.env.APP_VERSION,\n\t\t\t\t\t\t\tversion_key: process.env.APP_VERSION_KEY\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tcatch {}\n\t\t\t\t}, 10000);\n\t\t\t}\n\t\t\tcatch {}\n\t\t}\n\n\t\tlet lastCPU = this.cpuAverage();\n\n\t\tsetInterval(async () => {\n\t\t\tlet now = new Date();\n\t\t\tvar endMeasure = this.cpuAverage();\n\t\t\tvar idleDifference = endMeasure.idle - lastCPU.idle;\n\t\t\tvar totalDifference = endMeasure.total - lastCPU.total;\n\t\t\tvar percentageCPU = 1 - idleDifference / totalDifference;\n\n\t\t\t// Original local code\n\t\t\tif (\n\t\t\t\t!ResolveIOServer.shouldWriteLogsOffline()\n\t\t\t) {\n\t\t\t\tawait MonitorCPUs.create({\n\t\t\t\t\t_id: objectIdHexString(),\n\t\t\t\t\tmetadata: {\n\t\t\t\t\t\tinstance: this._instanceHostname,\n\t\t\t\t\t\tclient: ResolveIOServer.getServerConfig()['CLIENT_NAME']\n\t\t\t\t\t},\n\t\t\t\t\tdate: now,\n\t\t\t\t\tapp: percentageCPU,\n\t\t\t\t\tsystem: os.loadavg()[0]\n\t\t\t\t});\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.pushMonitorData({\n\t\t\t\t\ttype: 'monitor-cpu',\n\t\t\t\t\tdata: {\n\t\t\t\t\t\tmetadata: {\n\t\t\t\t\t\t\tinstance: this._instanceHostname,\n\t\t\t\t\t\t\tclient: ResolveIOServer.getServerConfig()['CLIENT_NAME']\n\t\t\t\t\t\t},\n\t\t\t\t\t\tdate: now,\n\t\t\t\t\t\tapp: percentageCPU,\n\t\t\t\t\t\tsystem: os.loadavg()[0]\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tlastCPU = endMeasure;\n\n\t\t\tconst memUsage = process.memoryUsage();\n\n\t\t\tif (\n\t\t\t\t!ResolveIOServer.shouldWriteLogsOffline()\n\t\t\t) {\n\t\t\t\tawait MonitorMemorys.create({\n\t\t\t\t\t_id: objectIdHexString(),\n\t\t\t\t\tmetadata: {\n\t\t\t\t\t\tinstance: this._instanceHostname,\n\t\t\t\t\t\tclient: ResolveIOServer.getServerConfig()['CLIENT_NAME']\n\t\t\t\t\t},\n\t\t\t\t\tdate: now,\n\t\t\t\t\tphysical_total: memUsage.heapTotal,\n\t\t\t\t\tphysical_used: memUsage.heapUsed,\n\t\t\t\t\tphysical_free: os.freemem(),\n\t\t\t\t\tvirtual: memUsage.rss,\n\t\t\t\t\tprivate: memUsage.external,\n\t\t\t\t\tphysical: os.totalmem()\n\t\t\t\t});\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.pushMonitorData({\n\t\t\t\t\ttype: 'monitor-memory',\n\t\t\t\t\tdata: {\n\t\t\t\t\t\tmetadata: {\n\t\t\t\t\t\t\tinstance: this._instanceHostname,\n\t\t\t\t\t\t\tclient: ResolveIOServer.getServerConfig()['CLIENT_NAME']\n\t\t\t\t\t\t},\n\t\t\t\t\t\tdate: now,\n\t\t\t\t\t\tphysical_total: memUsage.heapTotal,\n\t\t\t\t\t\tphysical_used: memUsage.heapUsed,\n\t\t\t\t\t\tphysical_free: os.freemem(),\n\t\t\t\t\t\tvirtual: memUsage.rss,\n\t\t\t\t\t\tprivate: memUsage.external,\n\t\t\t\t\t\tphysical: os.totalmem(),\n\t\t\t\t\t\ttype: 'memory'\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}, 3000);\n\t}\n\n\tprivate isProcessOnlyManagerRuntime(): boolean {\n\t\tconst parseFlag = (value: any): boolean => {\n\t\t\tconst normalized = String(value ?? '').trim().toLowerCase();\n\t\t\treturn normalized === '1'\n\t\t\t\t|| normalized === 'true'\n\t\t\t\t|| normalized === 'yes'\n\t\t\t\t|| normalized === 'on'\n\t\t\t\t|| normalized === 'enabled';\n\t\t};\n\t\treturn parseFlag(process.env.SUPPORT_CODEX_MANAGER_PROCESS_ONLY)\n\t\t\t|| parseFlag(process.env.SUPPORT_AUTO_MANAGER_PROCESS_ONLY)\n\t\t\t|| parseFlag(process.env.AI_ASSISTANT_CODEX_MANAGER_PROCESS_ONLY);\n\t}\n\n\tasync addMongoTracker(data: MongoMonitorModel) {\n\t\tif (\n\t\t\t!ResolveIOServer.shouldWriteLogsOffline()\n\t\t) {\n\t\t\tif (!data.collection.startsWith('monitor-')) {\n\t\t\t\tawait MonitorMongos.create({\n\t\t\t\t\t_id: objectIdHexString(),\n\t\t\t\t\tmetadata: {\n\t\t\t\t\t\tinstance: this._instanceHostname,\n\t\t\t\t\t\tclient: ResolveIOServer.getServerConfig()['CLIENT_NAME']\n\t\t\t\t\t},\n\t\t\t\t\tdate: new Date(data.date),\n\t\t\t\t\tmethod: data.method,\n\t\t\t\t\tdoc_collection: data.collection,\n\t\t\t\t\tduration: data.duration,\n\t\t\t\t\tquery: Buffer.byteLength(data.query, 'utf8') < 15800000\n\t\t\t\t\t\t? data.query\n\t\t\t\t\t\t: 'Too Big'\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tif (this._instanceHostname) {\n\t\t\t\tthis.pushMonitorData({\n\t\t\t\t\ttype: 'monitor-mongo',\n\t\t\t\t\tdata: {\n\t\t\t\t\t\tmetadata: {\n\t\t\t\t\t\t\tinstance: this._instanceHostname,\n\t\t\t\t\t\t\tclient: ResolveIOServer.getServerConfig()['CLIENT_NAME']\n\t\t\t\t\t\t},\n\t\t\t\t\t\tdate: new Date(data.date),\n\t\t\t\t\t\tmethod: data.method,\n\t\t\t\t\t\tdoc_collection: data.collection,\n\t\t\t\t\t\tduration: data.duration,\n\t\t\t\t\t\tquery: Buffer.byteLength(data.query, 'utf8') < 15800000\n\t\t\t\t\t\t\t? data.query\n\t\t\t\t\t\t\t: 'Too Big'\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\tasync addFunctionTracker(data: MonitorFunction) {\n\t\tif (typeof(data.data) !== 'string') {\n\t\t\tdata.data = JSON.stringify(data.data);\n\t\t}\n\n\t\tif (\n\t\t\t!ResolveIOServer.shouldWriteLogsOffline()\n\t\t) {\n\t\t\tawait MonitorFunctions.create({\n\t\t\t\t_id: objectIdHexString(),\n\t\t\t\tmetadata: {\n\t\t\t\t\tinstance: this._instanceHostname,\n\t\t\t\t\tclient: ResolveIOServer.getServerConfig()['CLIENT_NAME']\n\t\t\t\t},\n\t\t\t\tdate: new Date(data.startTime),\n\t\t\t\ttype: data.functionType,\n\t\t\t\tname: data.functionName,\n\t\t\t\tuser: data.user,\n\t\t\t\tduration: data.duration,\n\t\t\t\tdata: Buffer.byteLength(data.data, 'utf8') < 15800000\n\t\t\t\t\t? data.data\n\t\t\t\t\t: 'Too Big'\n\t\t\t});\n\t\t}\n\t\telse {\n\t\t\tif (this._instanceHostname) {\n\t\t\t\tthis.pushMonitorData({\n\t\t\t\t\ttype: 'monitor-function',\n\t\t\t\t\tdata: {\n\t\t\t\t\t\tmetadata: {\n\t\t\t\t\t\t\tinstance: this._instanceHostname,\n\t\t\t\t\t\t\tclient: ResolveIOServer.getServerConfig()['CLIENT_NAME']\n\t\t\t\t\t\t},\n\t\t\t\t\t\tdate: new Date(data.startTime),\n\t\t\t\t\t\ttype: data.functionType,\n\t\t\t\t\t\tname: data.functionName,\n\t\t\t\t\t\tuser: data.user,\n\t\t\t\t\t\tduration: data.duration,\n\t\t\t\t\t\tdata: Buffer.byteLength(data.data, 'utf8') < 15800000\n\t\t\t\t\t\t\t? data.data\n\t\t\t\t\t\t\t: 'Too Big'\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate pushMonitorData(data: LocalLogModel) {\n\t\tthis._monitorData.push(data);\n\n\t\t// If data is huge, flush immediately to file\n\t\tif (this.estimateBatchSize() >= MAX_BATCH_SIZE) {\n\t\t\tthis.flushMonitorData();\n\t\t}\n\t}\n\n\tprivate estimateBatchSize(): number {\n\t\treturn this._monitorData.reduce((total, item) => {\n\t\t\treturn total + Buffer.byteLength(JSON.stringify(item));\n\t\t}, 0);\n\t}\n\n\tsetupEventLoop() {\n\t\t// Flush every 2.5 seconds\n\t\tsetInterval(() => {\n\t\t\tif (this._monitorData.length > 0) {\n\t\t\t\tthis.flushMonitorData();\n\t\t\t}\n\t\t}, 2500);\n\t}\n\n\tprivate flushMonitorData() {\n\t\tconst batch = [];\n\t\tlet batchSize = 0;\n\n\t\twhile (this._monitorData.length > 0 && batchSize < MAX_BATCH_SIZE) {\n\t\t\tconst item = this._monitorData.shift();\n\t\t\tconst itemSize = Buffer.byteLength(JSON.stringify(item));\n\n\t\t\tif ((batchSize + itemSize) > MAX_BATCH_SIZE && batch.length > 0) {\n\t\t\t\t// put the item back for next round\n\t\t\t\tthis._monitorData.unshift(item);\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tbatch.push(item);\n\t\t\tbatchSize += itemSize;\n\t\t}\n\n\t\ttry {\n\t\t\t// Now, instead of calling an external HTTP endpoint, we write the batch to disk:\n\t\t\tResolveIOServer.getLocalLogManager().writeLogs(batch);\n\t\t}\n\t\tcatch (error) {\n\t\t\tconsole.error(new Date(), 'MonitorManager', 'Failed to flush monitor data to file:', error);\n\t\t}\n\t}\n}\n\nexport interface MongoMonitorModel {\n\tdate: Date;\n\tmethod: string;\n\tcollection: string;\n\tduration: number;\n\tquery: string;\n}\n\nexport class MonitorMongo {\n\tprivate _startTime = 0;\n\tprivate _method = '';\n\tprivate _collection = '';\n\tprivate _query = '';\n\n\tconstructor() {}\n\n\tstatic create(method: string, collection: string, query: string) {\n\t\tconst monitorMongo = new MonitorMongo();\n\t\tmonitorMongo.initialize(method, collection, query);\n\t\treturn monitorMongo;\n\t}\n\n\tprivate initialize(method: string, collection: string, query: string) {\n\t\tthis._startTime = Date.now();\n\t\tthis._method = method;\n\t\tthis._collection = collection;\n\t\tthis._query = query;\n\t}\n\n\tpublic async finish() {\n\t\tlet endTime = Date.now();\n\n\t\tlet mongoMonitor: MongoMonitorModel = {\n\t\t\tdate: new Date(endTime),\n\t\t\tmethod: this._method,\n\t\t\tcollection: this._collection,\n\t\t\tquery: this._query,\n\t\t\tduration: endTime - this._startTime\n\t\t};\n\n\t\tawait ResolveIOServer.getMainServer().getMonitorManager().addMongoTracker(mongoMonitor);\n\t}\n}\n\nexport class MonitorManagerFunction {\n\tprivate _functionCnt = 0;\n\tprivate _functions: MonitorFunction[] = [];\n\tprivate _functionLastCompletedWS: { [id_socket: string]: MonitorFunction; } = {};\n\tprivate _functionLastCompleted: MonitorFunction;\n\n\tconstructor() {}\n\n\tstatic create() {\n\t\tconst monitorManagerFunction = new MonitorManagerFunction();\n\t\tmonitorManagerFunction.initialize();\n\t\treturn monitorManagerFunction;\n\t}\n\n\tprivate initialize() {\n\n\t}\n\n\tstartMonitorFunction(\n\t\tfunctionType: MonitorFunctionType,\n\t\tfunctionName: string,\n\t\tuser: string,\n\t\tid_socket: string,\n\t\tdata: any\n\t) {\n\t\tlet newMonitorFunction = MonitorFunction.create(\n\t\t\tthis._functionCnt++,\n\t\t\tfunctionType,\n\t\t\tfunctionName,\n\t\t\tuser,\n\t\t\tid_socket,\n\t\t\tdata\n\t\t);\n\n\t\tthis._functions.push(newMonitorFunction);\n\t\treturn newMonitorFunction.id;\n\t}\n\n\tasync finishMonitorFunction(id: number) {\n\t\tlet monitor = this._functions.find(a => a.id === id);\n\n\t\tif (monitor) {\n\t\t\tawait monitor.finish();\n\t\t\tthis._functionLastCompleted = monitor;\n\t\t\tthis._functionLastCompletedWS[monitor.id_socket] = monitor;\n\t\t\tthis._functions.splice(\n\t\t\t\tthis._functions.map(a => a.id).indexOf(id),\n\t\t\t\t1\n\t\t\t);\n\t\t}\n\t}\n\n\tgetActiveMonitorFunctions() {\n\t\treturn this._functions;\n\t}\n\n\tgetLastCompletedMonitorFunction() {\n\t\treturn this._functionLastCompleted;\n\t}\n\n\tgetLastCompletedMonitorFunctionWS() {\n\t\treturn this._functionLastCompletedWS;\n\t}\n}\n\nexport type MonitorFunctionType =\n\t'Cron Method'\n\t| 'Method'\n\t| 'User Specific Publication'\n\t| 'Publication';\n\nexport class MonitorFunction {\n\tprivate _timer: NodeJS.Timeout = null;\n\tpublic duration = 0;\n\tpublic functionType: MonitorFunctionType;\n\tpublic functionName: string;\n\tpublic user: string;\n\tpublic data: any;\n\tpublic startTime: Date = null;\n\tpublic endTime: Date = null;\n\tpublic lastTime: Date = null;\n\tpublic id_socket = '';\n\tpublic id = 0;\n\n\tconstructor() {}\n\n\tstatic create(\n\t\tid: number,\n\t\tfunctionType: MonitorFunctionType,\n\t\tfunctionName: string,\n\t\tuser: string,\n\t\tid_socket: string,\n\t\tdata: any\n\t) {\n\t\tconst monitorFunction = new MonitorFunction();\n\t\tmonitorFunction.initialize(id, functionType, functionName, user, id_socket, data);\n\t\treturn monitorFunction;\n\t}\n\n\tprivate initialize(\n\t\tid: number,\n\t\tfunctionType: MonitorFunctionType,\n\t\tfunctionName: string,\n\t\tuser: string,\n\t\tid_socket: string,\n\t\tdata: any\n\t) {\n\t\tthis.id = id;\n\t\tthis.startTime = new Date();\n\t\tthis.functionType = functionType;\n\t\tthis.functionName = functionName;\n\t\tthis.user = user;\n\t\tthis.id_socket = id_socket;\n\t\tthis.data = data;\n\t\tthis.lastTime = new Date();\n\n\t\tthis._timer = setInterval(() => {\n\t\t\tlet diff = Date.now() - this.lastTime.getTime();\n\n\t\t\tif (diff > this.duration) {\n\t\t\t\tthis.duration = diff;\n\t\t\t}\n\n\t\t\tthis.lastTime = new Date();\n\t\t}, 1000);\n\t}\n\n\tpublic async finish() {\n\t\tif (this._timer) {\n\t\t\tclearInterval(this._timer);\n\t\t\tthis._timer = null;\n\t\t}\n\n\t\tthis.endTime = new Date();\n\n\t\tif (this.duration >= 5000) {\n\t\t\t// Optional slow function logging or email\n\t\t\tawait ResolveIOServer.getMainServer().getMonitorManager().addFunctionTracker(this);\n\t\t}\n\n\t\t// await ResolveIOServer.getMainServer().getMonitorManager().addFunctionTracker(this);\n\n\t\treturn Promise.resolve(true);\n\t}\n}\n"]}
@@ -1,15 +0,0 @@
1
- export interface OpenAIUsageRecordInput {
2
- id_client?: string;
3
- model: string;
4
- input_tokens: number;
5
- cached_input_tokens?: number;
6
- output_tokens: number;
7
- total_tokens: number;
8
- billable?: boolean;
9
- category?: string;
10
- id_request?: string;
11
- id_conversation?: string;
12
- timestamp?: Date;
13
- cost_estimate?: number;
14
- }
15
- export declare function recordOpenAIUsage(input: OpenAIUsageRecordInput): Promise<void>;
@@ -1,144 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
13
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.recordOpenAIUsage = recordOpenAIUsage;
40
- var common_1 = require("../util/common");
41
- var resolveio_server_app_1 = require("../resolveio-server-app");
42
- var openai_usage_ledger_collection_1 = require("../collections/openai-usage-ledger.collection");
43
- var toNumber = function (value) {
44
- var parsed = Number(value);
45
- return Number.isFinite(parsed) ? parsed : 0;
46
- };
47
- var normalizeModelKey = function (value) {
48
- return String(value || '').trim().toLowerCase();
49
- };
50
- var parsePricingJson = function (raw) {
51
- if (!raw) {
52
- return {};
53
- }
54
- try {
55
- var parsed_1 = JSON.parse(raw);
56
- if (!parsed_1 || typeof parsed_1 !== 'object') {
57
- return {};
58
- }
59
- var out_1 = {};
60
- Object.keys(parsed_1).forEach(function (key) {
61
- var _a, _b, _c, _d, _e, _f;
62
- var entry = parsed_1[key] || {};
63
- var inputPer1k = toNumber((_c = (_b = (_a = entry.inputPer1k) !== null && _a !== void 0 ? _a : entry.input) !== null && _b !== void 0 ? _b : entry.prompt) !== null && _c !== void 0 ? _c : 0);
64
- var outputPer1k = toNumber((_f = (_e = (_d = entry.outputPer1k) !== null && _d !== void 0 ? _d : entry.output) !== null && _e !== void 0 ? _e : entry.completion) !== null && _f !== void 0 ? _f : 0);
65
- if (inputPer1k || outputPer1k) {
66
- out_1[normalizeModelKey(key)] = { inputPer1k: inputPer1k, outputPer1k: outputPer1k };
67
- }
68
- });
69
- return out_1;
70
- }
71
- catch (_a) {
72
- return {};
73
- }
74
- };
75
- var resolvePricingConfig = function () {
76
- var _a, _b, _c, _d, _e, _f;
77
- var config = resolveio_server_app_1.ResolveIOServer.getServerConfig() || {};
78
- var rawJson = String((_b = (_a = config['OPENAI_MODEL_PRICING']) !== null && _a !== void 0 ? _a : process.env.OPENAI_MODEL_PRICING) !== null && _b !== void 0 ? _b : '').trim();
79
- var defaultInput = toNumber((_d = (_c = config['OPENAI_COST_PER_1K_INPUT_TOKENS']) !== null && _c !== void 0 ? _c : process.env.OPENAI_COST_PER_1K_INPUT_TOKENS) !== null && _d !== void 0 ? _d : 0);
80
- var defaultOutput = toNumber((_f = (_e = config['OPENAI_COST_PER_1K_OUTPUT_TOKENS']) !== null && _e !== void 0 ? _e : process.env.OPENAI_COST_PER_1K_OUTPUT_TOKENS) !== null && _f !== void 0 ? _f : 0);
81
- return {
82
- perModel: parsePricingJson(rawJson),
83
- defaultPricing: { inputPer1k: defaultInput, outputPer1k: defaultOutput }
84
- };
85
- };
86
- var estimateCost = function (model, inputTokens, outputTokens, cachedInputTokens) {
87
- if (cachedInputTokens === void 0) { cachedInputTokens = 0; }
88
- var _a = resolvePricingConfig(), perModel = _a.perModel, defaultPricing = _a.defaultPricing;
89
- var normalizedModel = normalizeModelKey(model);
90
- var pricing = perModel[normalizedModel] || defaultPricing;
91
- if (!pricing.inputPer1k && !pricing.outputPer1k) {
92
- return 0;
93
- }
94
- // Cached prompt tokens are typically discounted or free; only uncached input should use full input pricing.
95
- var uncachedInputTokens = Math.max(0, toNumber(inputTokens) - toNumber(cachedInputTokens));
96
- var inputCost = (uncachedInputTokens / 1000) * pricing.inputPer1k;
97
- var outputCost = (toNumber(outputTokens) / 1000) * pricing.outputPer1k;
98
- return (0, common_1.round)(inputCost + outputCost, 6);
99
- };
100
- function recordOpenAIUsage(input) {
101
- return __awaiter(this, void 0, void 0, function () {
102
- var idClient, inputTokens, cachedInputTokens, outputTokens, totalTokens, model, normalizedInputCostEstimate, costEstimate;
103
- return __generator(this, function (_a) {
104
- switch (_a.label) {
105
- case 0:
106
- if (!input) {
107
- return [2 /*return*/];
108
- }
109
- idClient = String(input.id_client || '').trim();
110
- inputTokens = toNumber(input.input_tokens);
111
- cachedInputTokens = toNumber(input.cached_input_tokens);
112
- outputTokens = toNumber(input.output_tokens);
113
- totalTokens = toNumber(input.total_tokens);
114
- if (!totalTokens && (!inputTokens && !outputTokens)) {
115
- return [2 /*return*/];
116
- }
117
- model = String(input.model || '').trim() || 'unknown';
118
- normalizedInputCostEstimate = toNumber(input.cost_estimate);
119
- costEstimate = normalizedInputCostEstimate > 0
120
- ? normalizedInputCostEstimate
121
- : estimateCost(model, inputTokens, outputTokens, cachedInputTokens);
122
- return [4 /*yield*/, openai_usage_ledger_collection_1.OpenAIUsageLedger.insertOne({
123
- id_client: idClient,
124
- timestamp: input.timestamp || new Date(),
125
- model: model,
126
- input_tokens: inputTokens,
127
- cached_input_tokens: cachedInputTokens,
128
- output_tokens: outputTokens,
129
- total_tokens: totalTokens || (inputTokens + outputTokens),
130
- cost_estimate: costEstimate,
131
- billable: input.billable !== false,
132
- category: input.category || '',
133
- id_request: input.id_request || '',
134
- id_conversation: input.id_conversation || ''
135
- })];
136
- case 1:
137
- _a.sent();
138
- return [2 /*return*/];
139
- }
140
- });
141
- });
142
- }
143
-
144
- //# sourceMappingURL=openai-usage-ledger.manager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/managers/openai-usage-ledger.manager.ts"],"names":[],"mappings":"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","file":"openai-usage-ledger.manager.js","sourcesContent":["import { round } from '../util/common';\nimport { ResolveIOServer } from '../resolveio-server-app';\nimport { OpenAIUsageLedger } from '../collections/openai-usage-ledger.collection';\n\nexport interface OpenAIUsageRecordInput {\n\tid_client?: string;\n\tmodel: string;\n\tinput_tokens: number;\n\tcached_input_tokens?: number;\n\toutput_tokens: number;\n\ttotal_tokens: number;\n\tbillable?: boolean;\n\tcategory?: string;\n\tid_request?: string;\n\tid_conversation?: string;\n\ttimestamp?: Date;\n\tcost_estimate?: number;\n}\n\ntype PricingConfig = {\n\tinputPer1k: number;\n\toutputPer1k: number;\n};\n\nconst toNumber = (value: any): number => {\n\tconst parsed = Number(value);\n\treturn Number.isFinite(parsed) ? parsed : 0;\n};\n\nconst normalizeModelKey = (value: string): string => {\n\treturn String(value || '').trim().toLowerCase();\n};\n\nconst parsePricingJson = (raw: string): Record<string, PricingConfig> => {\n\tif (!raw) {\n\t\treturn {};\n\t}\n\ttry {\n\t\tconst parsed = JSON.parse(raw);\n\t\tif (!parsed || typeof parsed !== 'object') {\n\t\t\treturn {};\n\t\t}\n\t\tconst out: Record<string, PricingConfig> = {};\n\t\tObject.keys(parsed).forEach((key) => {\n\t\t\tconst entry = parsed[key] || {};\n\t\t\tconst inputPer1k = toNumber(entry.inputPer1k ?? entry.input ?? entry.prompt ?? 0);\n\t\t\tconst outputPer1k = toNumber(entry.outputPer1k ?? entry.output ?? entry.completion ?? 0);\n\t\t\tif (inputPer1k || outputPer1k) {\n\t\t\t\tout[normalizeModelKey(key)] = { inputPer1k, outputPer1k };\n\t\t\t}\n\t\t});\n\t\treturn out;\n\t}\n\tcatch {\n\t\treturn {};\n\t}\n};\n\nconst resolvePricingConfig = (): { perModel: Record<string, PricingConfig>; defaultPricing: PricingConfig } => {\n\tconst config = ResolveIOServer.getServerConfig() || {};\n\tconst rawJson = String(config['OPENAI_MODEL_PRICING'] ?? process.env.OPENAI_MODEL_PRICING ?? '').trim();\n\tconst defaultInput = toNumber(config['OPENAI_COST_PER_1K_INPUT_TOKENS'] ?? process.env.OPENAI_COST_PER_1K_INPUT_TOKENS ?? 0);\n\tconst defaultOutput = toNumber(config['OPENAI_COST_PER_1K_OUTPUT_TOKENS'] ?? process.env.OPENAI_COST_PER_1K_OUTPUT_TOKENS ?? 0);\n\treturn {\n\t\tperModel: parsePricingJson(rawJson),\n\t\tdefaultPricing: { inputPer1k: defaultInput, outputPer1k: defaultOutput }\n\t};\n};\n\nconst estimateCost = (model: string, inputTokens: number, outputTokens: number, cachedInputTokens = 0): number => {\n\tconst { perModel, defaultPricing } = resolvePricingConfig();\n\tconst normalizedModel = normalizeModelKey(model);\n\tconst pricing = perModel[normalizedModel] || defaultPricing;\n\tif (!pricing.inputPer1k && !pricing.outputPer1k) {\n\t\treturn 0;\n\t}\n\t// Cached prompt tokens are typically discounted or free; only uncached input should use full input pricing.\n\tconst uncachedInputTokens = Math.max(0, toNumber(inputTokens) - toNumber(cachedInputTokens));\n\tconst inputCost = (uncachedInputTokens / 1000) * pricing.inputPer1k;\n\tconst outputCost = (toNumber(outputTokens) / 1000) * pricing.outputPer1k;\n\treturn round(inputCost + outputCost, 6);\n};\n\nexport async function recordOpenAIUsage(input: OpenAIUsageRecordInput): Promise<void> {\n\tif (!input) {\n\t\treturn;\n\t}\n\tconst idClient = String(input.id_client || '').trim();\n\tconst inputTokens = toNumber(input.input_tokens);\n\tconst cachedInputTokens = toNumber(input.cached_input_tokens);\n\tconst outputTokens = toNumber(input.output_tokens);\n\tconst totalTokens = toNumber(input.total_tokens);\n\tif (!totalTokens && (!inputTokens && !outputTokens)) {\n\t\treturn;\n\t}\n\tconst model = String(input.model || '').trim() || 'unknown';\n\tconst normalizedInputCostEstimate = toNumber(input.cost_estimate);\n\tconst costEstimate = normalizedInputCostEstimate > 0\n\t\t? normalizedInputCostEstimate\n\t\t: estimateCost(model, inputTokens, outputTokens, cachedInputTokens);\n\n\tawait OpenAIUsageLedger.insertOne({\n\t\tid_client: idClient,\n\t\ttimestamp: input.timestamp || new Date(),\n\t\tmodel,\n\t\tinput_tokens: inputTokens,\n\t\tcached_input_tokens: cachedInputTokens,\n\t\toutput_tokens: outputTokens,\n\t\ttotal_tokens: totalTokens || (inputTokens + outputTokens),\n\t\tcost_estimate: costEstimate,\n\t\tbillable: input.billable !== false,\n\t\tcategory: input.category || '',\n\t\tid_request: input.id_request || '',\n\t\tid_conversation: input.id_conversation || ''\n\t});\n}\n"]}
@@ -1,144 +0,0 @@
1
- type SlowQueryExecutionOverride = Record<string, any>;
2
- type SlowQueryLogModel = Record<string, any>;
3
- export interface TokenEligibilityResult {
4
- eligible: boolean;
5
- reason?: string;
6
- }
7
- export type CheckAICoderTokenEligibilityFn = Function;
8
- export interface SlowQueryVerifierDependencies {
9
- ClientDBs?: any;
10
- Clients?: any;
11
- SlowQueryLogs: any;
12
- AICoderApps?: any;
13
- AIDashboardJobs?: any;
14
- checkAICoderTokenEligibility?: CheckAICoderTokenEligibilityFn;
15
- }
16
- export declare function registerSlowQueryVerifierDependencies(dependencies: SlowQueryVerifierDependencies): void;
17
- interface ExplainStageSummary {
18
- stage: string;
19
- path: string;
20
- executionTimeMs?: number;
21
- docsExamined?: number;
22
- keysExamined?: number;
23
- nReturned?: number;
24
- }
25
- export declare function ensureSlowQueryVerifier(serverConfig?: any): SlowQueryVerifier | null;
26
- interface ExplainResult {
27
- durationMs: number;
28
- explainPlan: Record<string, any>;
29
- explainStats: Record<string, any>;
30
- stageSummaries: ExplainStageSummary[];
31
- }
32
- export declare class SlowQueryVerifier {
33
- private readonly _timer?;
34
- private readonly config;
35
- private readonly autoOptimizeInFlight;
36
- private readonly autoOptimizeDependenciesAvailable;
37
- private static readonly APP_SETTINGS_CACHE_TTL_MS;
38
- private appSettingsAutoOptimizeCacheExpiresAt;
39
- private appSettingsAutoOptimizeCacheValue;
40
- constructor(serverConfig?: any, dependencies?: Partial<SlowQueryVerifierDependencies>);
41
- private static resolveConfig;
42
- private parseBooleanEnv;
43
- private resolveAutoOptimizeEnabled;
44
- private poll;
45
- private processCandidate;
46
- generateExplainForLog(logId: string): Promise<void>;
47
- runLog(logId: string, options?: {
48
- force?: boolean;
49
- }): Promise<{
50
- status: 'in_progress' | 'success' | 'failed' | 'updated' | 'not_found';
51
- reason?: string;
52
- log?: SlowQueryLogModel;
53
- }>;
54
- queueLogRun(logId: string, options?: {
55
- force?: boolean;
56
- }): Promise<{
57
- status: 'in_progress' | 'not_found' | 'failed';
58
- reason?: string;
59
- log?: SlowQueryLogModel;
60
- }>;
61
- deployLog(logId: string): Promise<{
62
- status: 'success' | 'failed' | 'not_found';
63
- reason?: string;
64
- log?: SlowQueryLogModel;
65
- }>;
66
- private runLogWithRetries;
67
- private shouldRetryForOutputMismatch;
68
- private runExplain;
69
- measureQuery(log: SlowQueryLogModel, overrides?: SlowQueryExecutionOverride): Promise<ExplainResult>;
70
- private handleExplainResult;
71
- private handleExplainError;
72
- private assignSlowQueryCounter;
73
- private scheduleAutoOptimization;
74
- private runAutoOptimizationInBackground;
75
- private escapeRegex;
76
- private getEscalationRecipients;
77
- private sendSlowQueryEscalationNotice;
78
- private resolveSlowQueryClientTarget;
79
- private buildLocalInternalUserCriteria;
80
- private buildLocalAdminUserCriteria;
81
- private resolveLocalNotificationUserIds;
82
- private isGeneratedAICoderClient;
83
- private buildAICoderSlowQuerySummary;
84
- private buildResolveIOProjectSlowQueryDetails;
85
- private notifyCustomerSlowQueryStatus;
86
- private parseDate;
87
- private resolveFingerprintScopeKey;
88
- private buildFingerprintMatchQuery;
89
- private countAttemptsWithinWindow;
90
- private resolveFingerprintAttemptsInWindow;
91
- private resolveCooldownDeadline;
92
- private markAutoOptimizeCooldownActive;
93
- private markAutoOptimizeTokenIneligible;
94
- private markAutoOptimizeBudgetExceeded;
95
- private maybeStopAutoOptimizeAfterFailure;
96
- private shouldFallbackDashboardMethod;
97
- private createDashboardJob;
98
- private waitForDashboardJobStop;
99
- private isDashboardJobRunning;
100
- private publishDashboardJob;
101
- private evaluateDashboardPublishOutcome;
102
- private resolveBaselineDurationMs;
103
- private static collectMetricValues;
104
- private static asNonNegativeNumber;
105
- private static maxNumber;
106
- private static sortStageSummaries;
107
- private static collectExecutionTreeStages;
108
- private static extractStageSummaries;
109
- private resolveExecutionMetrics;
110
- private evaluateOptimizationOutcome;
111
- private formatStageSummaryForPrompt;
112
- private buildSlowQueryAutoOptimizeDescription;
113
- private resolveAutoOptimizeRepoSlug;
114
- private resolveAutoOptimizeRepoPath;
115
- private static queryHasExplicitSort;
116
- private static countLookupExprInPattern;
117
- private static buildBoundedPipelineForOutputCompare;
118
- private static buildBoundedFindOptionsForOutputCompare;
119
- private static normalizeOutputValue;
120
- private static digestOutputDocument;
121
- private captureOutputFingerprint;
122
- private compareOutputEquivalence;
123
- private resolveAutoOptimizeApp;
124
- private runAutoOptimization;
125
- private resolveClientDB;
126
- private resolveExplainTarget;
127
- private static extractPipelineFromLog;
128
- private static applyQueryOverrides;
129
- private static extractPipelineOptions;
130
- private static extractFindOptions;
131
- private static resolveDurationMs;
132
- private static pipelineHasWriteStage;
133
- private static extractAggregateOptions;
134
- private static buildAggregateExplainCommand;
135
- private static isAggregateExplainWriteConcernError;
136
- private static isBsonObjectTooLargeError;
137
- private static isValidDuration;
138
- private static buildFindCursor;
139
- private static measureExecution;
140
- private static normalizeExplainPayload;
141
- private static sanitizeExplainPayload;
142
- private static deepClone;
143
- }
144
- export {};