@resolveio/server-lib 22.3.125 → 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 (735) 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 +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-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/src/publications/ai-terminal.ts +73 -0
  153. package/src/publications/app-settings.ts +25 -0
  154. package/src/publications/app-status.ts +13 -0
  155. package/src/publications/cron-jobs.ts +40 -0
  156. package/src/publications/customer-notifications.ts +101 -0
  157. package/src/publications/files.ts +33 -0
  158. package/src/publications/flags-update.ts +19 -0
  159. package/src/publications/flags.ts +19 -0
  160. package/src/publications/logs.ts +163 -0
  161. package/src/publications/notifications.ts +13 -0
  162. package/src/publications/report-builder-dashboard-builders.ts +39 -0
  163. package/src/publications/report-builder-libraries.ts +41 -0
  164. package/src/publications/report-builder-reports.ts +47 -0
  165. package/src/publications/super-admin.ts +13 -0
  166. package/src/publications/user-groups.ts +12 -0
  167. package/src/publications/user-guides.ts +12 -0
  168. package/src/resolveio-server-app.ts +617 -0
  169. package/src/server-app.ts +3354 -0
  170. package/src/services/codex-client.ts +1231 -0
  171. package/src/services/openai-client.ts +265 -0
  172. package/src/types/error-report.ts +26 -0
  173. package/src/types/js-tiktoken.d.ts +11 -0
  174. package/src/types/slow-query-report.ts +28 -0
  175. package/src/util/ai-qa-policy.ts +925 -0
  176. package/src/util/ai-run-evidence-adapters.ts +521 -0
  177. package/src/util/ai-run-evidence-dashboard.ts +271 -0
  178. package/src/util/ai-run-evidence-eval.ts +885 -0
  179. package/src/util/ai-run-evidence.ts +964 -0
  180. package/src/util/ai-runner-artifacts.ts +586 -0
  181. package/src/util/ai-runner-qa-auth.ts +821 -0
  182. package/src/util/ai-runner-qa-tools.ts +3045 -0
  183. package/src/util/aicoder-runner-v6.ts +526 -0
  184. package/src/util/common.ts +649 -0
  185. package/src/util/customer-portal-password.ts +183 -0
  186. package/src/util/error-reporter.ts +332 -0
  187. package/src/util/error-tracking.ts +79 -0
  188. package/src/util/openai-usage-cost.ts +114 -0
  189. package/src/util/report-builder-unwinds.ts +180 -0
  190. package/src/util/runner-process-janitor.ts +219 -0
  191. package/src/util/schema-report-builder.ts +448 -0
  192. package/src/util/slow-query-reporter.ts +216 -0
  193. package/src/util/subscription-dependency-context.ts +1096 -0
  194. package/src/util/support-runner-v5.ts +897 -0
  195. package/src/util/tokenizer.ts +38 -0
  196. package/src/workers/codex-runner.worker.ts +142 -0
  197. package/start_server.sh +5 -0
  198. package/tests/ai-assistant-corpus-build.ts +484 -0
  199. package/tests/ai-assistant-corpus-replay-e2e.ts +774 -0
  200. package/tests/ai-assistant-data-parity-e2e.ts +1989 -0
  201. package/tests/ai-assistant-eval-triage.ts +831 -0
  202. package/tests/ai-assistant-openai-e2e.ts +1061 -0
  203. package/tests/ai-assistant-openai-git-e2e.ts +155 -0
  204. package/tests/ai-assistant-preflight-matrix.ts +215 -0
  205. package/tests/ai-assistant-routing-eval.test.ts +560 -0
  206. package/tests/ai-assistant-snf-live-eval.ts +975 -0
  207. package/tests/ai-assistant-utils.test.ts +2968 -0
  208. package/tests/ai-run-eval.test.ts +88 -0
  209. package/tests/ai-run-evidence.test.ts +232 -0
  210. package/tests/ai-runner-contract.test.ts +488 -0
  211. package/tests/aicoder-runner-v6.test.ts +92 -0
  212. package/tests/error-reporter.test.ts +145 -0
  213. package/tests/method-publication-generator.test.ts +46 -0
  214. package/tests/report-builder-linking.test.ts +79 -0
  215. package/tests/resolveio-platform-intelligence.test.ts +352 -0
  216. package/tests/server-app-cron-owner.test.ts +127 -0
  217. package/tests/subscription-connect-race.test.ts +158 -0
  218. package/tests/subscription-dependency-context.test.ts +324 -0
  219. package/tests/subscription-manager-collection-tracking.test.ts +86 -0
  220. package/tests/subscription-manager-invalidation.test.ts +86 -0
  221. package/tests/support-runner-v5.test.ts +191 -0
  222. package/tsconfig.json +34 -0
  223. package/ai/assistant-core-heuristics.d.ts +0 -11
  224. package/ai/assistant-core-heuristics.js +0 -356
  225. package/ai/assistant-core-heuristics.js.map +0 -1
  226. package/ai/resolveio-platform-intelligence-memory-corpus.d.ts +0 -3
  227. package/ai/resolveio-platform-intelligence-memory-corpus.js +0 -214
  228. package/ai/resolveio-platform-intelligence-memory-corpus.js.map +0 -1
  229. package/ai/resolveio-platform-intelligence-memory.d.ts +0 -20
  230. package/ai/resolveio-platform-intelligence-memory.js +0 -341
  231. package/ai/resolveio-platform-intelligence-memory.js.map +0 -1
  232. package/ai/resolveio-platform-intelligence-types.js +0 -4
  233. package/ai/resolveio-platform-intelligence-types.js.map +0 -1
  234. package/ai/resolveio-platform-intelligence.d.ts +0 -6
  235. package/ai/resolveio-platform-intelligence.js +0 -463
  236. package/ai/resolveio-platform-intelligence.js.map +0 -1
  237. package/client-server-app.d.ts +0 -1
  238. package/client-server-app.js +0 -68
  239. package/client-server-app.js.map +0 -1
  240. package/collections/ai-run.collection.d.ts +0 -3
  241. package/collections/ai-run.collection.js +0 -170
  242. package/collections/ai-run.collection.js.map +0 -1
  243. package/collections/ai-terminal-conversation.collection.d.ts +0 -2
  244. package/collections/ai-terminal-conversation.collection.js +0 -140
  245. package/collections/ai-terminal-conversation.collection.js.map +0 -1
  246. package/collections/ai-terminal-issue-report.collection.d.ts +0 -2
  247. package/collections/ai-terminal-issue-report.collection.js +0 -148
  248. package/collections/ai-terminal-issue-report.collection.js.map +0 -1
  249. package/collections/ai-terminal-message.collection.d.ts +0 -2
  250. package/collections/ai-terminal-message.collection.js +0 -121
  251. package/collections/ai-terminal-message.collection.js.map +0 -1
  252. package/collections/app-setting.collection.d.ts +0 -3
  253. package/collections/app-setting.collection.js +0 -103
  254. package/collections/app-setting.collection.js.map +0 -1
  255. package/collections/app-status.collection.d.ts +0 -3
  256. package/collections/app-status.collection.js +0 -57
  257. package/collections/app-status.collection.js.map +0 -1
  258. package/collections/communication-metric.collection.d.ts +0 -2
  259. package/collections/communication-metric.collection.js +0 -133
  260. package/collections/communication-metric.collection.js.map +0 -1
  261. package/collections/counter.collection.d.ts +0 -3
  262. package/collections/counter.collection.js +0 -56
  263. package/collections/counter.collection.js.map +0 -1
  264. package/collections/cron-job-history.collection.d.ts +0 -3
  265. package/collections/cron-job-history.collection.js +0 -137
  266. package/collections/cron-job-history.collection.js.map +0 -1
  267. package/collections/cron-job.collection.d.ts +0 -3
  268. package/collections/cron-job.collection.js +0 -92
  269. package/collections/cron-job.collection.js.map +0 -1
  270. package/collections/customer-notification.collection.d.ts +0 -3
  271. package/collections/customer-notification.collection.js +0 -130
  272. package/collections/customer-notification.collection.js.map +0 -1
  273. package/collections/customer-portal-password.collection.d.ts +0 -3
  274. package/collections/customer-portal-password.collection.js +0 -75
  275. package/collections/customer-portal-password.collection.js.map +0 -1
  276. package/collections/email-history.collection.d.ts +0 -3
  277. package/collections/email-history.collection.js +0 -134
  278. package/collections/email-history.collection.js.map +0 -1
  279. package/collections/email-verified.collection.d.ts +0 -3
  280. package/collections/email-verified.collection.js +0 -62
  281. package/collections/email-verified.collection.js.map +0 -1
  282. package/collections/file.collection.d.ts +0 -3
  283. package/collections/file.collection.js +0 -74
  284. package/collections/file.collection.js.map +0 -1
  285. package/collections/flag-update.collection.d.ts +0 -3
  286. package/collections/flag-update.collection.js +0 -57
  287. package/collections/flag-update.collection.js.map +0 -1
  288. package/collections/flag.collection.d.ts +0 -3
  289. package/collections/flag.collection.js +0 -57
  290. package/collections/flag.collection.js.map +0 -1
  291. package/collections/log-method-latency.collection.d.ts +0 -3
  292. package/collections/log-method-latency.collection.js +0 -77
  293. package/collections/log-method-latency.collection.js.map +0 -1
  294. package/collections/log-subscription.collection.d.ts +0 -3
  295. package/collections/log-subscription.collection.js +0 -80
  296. package/collections/log-subscription.collection.js.map +0 -1
  297. package/collections/log.collection.d.ts +0 -3
  298. package/collections/log.collection.js +0 -93
  299. package/collections/log.collection.js.map +0 -1
  300. package/collections/logged-in-users.collection.d.ts +0 -3
  301. package/collections/logged-in-users.collection.js +0 -67
  302. package/collections/logged-in-users.collection.js.map +0 -1
  303. package/collections/monitor-cpu.collection.d.ts +0 -3
  304. package/collections/monitor-cpu.collection.js +0 -65
  305. package/collections/monitor-cpu.collection.js.map +0 -1
  306. package/collections/monitor-function.collection.d.ts +0 -3
  307. package/collections/monitor-function.collection.js +0 -74
  308. package/collections/monitor-function.collection.js.map +0 -1
  309. package/collections/monitor-memory.collection.d.ts +0 -3
  310. package/collections/monitor-memory.collection.js +0 -77
  311. package/collections/monitor-memory.collection.js.map +0 -1
  312. package/collections/monitor-mongo.collection.d.ts +0 -3
  313. package/collections/monitor-mongo.collection.js +0 -71
  314. package/collections/monitor-mongo.collection.js.map +0 -1
  315. package/collections/notification.collection.d.ts +0 -3
  316. package/collections/notification.collection.js +0 -57
  317. package/collections/notification.collection.js.map +0 -1
  318. package/collections/openai-usage-ledger.collection.d.ts +0 -2
  319. package/collections/openai-usage-ledger.collection.js +0 -124
  320. package/collections/openai-usage-ledger.collection.js.map +0 -1
  321. package/collections/report-builder-dashboard-builder.collection.d.ts +0 -3
  322. package/collections/report-builder-dashboard-builder.collection.js +0 -109
  323. package/collections/report-builder-dashboard-builder.collection.js.map +0 -1
  324. package/collections/report-builder-library.collection.d.ts +0 -3
  325. package/collections/report-builder-library.collection.js +0 -87
  326. package/collections/report-builder-library.collection.js.map +0 -1
  327. package/collections/report-builder-report.collection.d.ts +0 -4
  328. package/collections/report-builder-report.collection.js +0 -184
  329. package/collections/report-builder-report.collection.js.map +0 -1
  330. package/collections/user-group.collection.d.ts +0 -4
  331. package/collections/user-group.collection.js +0 -89
  332. package/collections/user-group.collection.js.map +0 -1
  333. package/collections/user-guide.collection.d.ts +0 -3
  334. package/collections/user-guide.collection.js +0 -57
  335. package/collections/user-guide.collection.js.map +0 -1
  336. package/collections/user.collection.d.ts +0 -4
  337. package/collections/user.collection.js +0 -180
  338. package/collections/user.collection.js.map +0 -1
  339. package/cron/cron.d.ts +0 -14
  340. package/cron/cron.js +0 -216
  341. package/cron/cron.js.map +0 -1
  342. package/fixtures/cron-jobs.d.ts +0 -1
  343. package/fixtures/cron-jobs.js +0 -150
  344. package/fixtures/cron-jobs.js.map +0 -1
  345. package/fixtures/init.d.ts +0 -1
  346. package/fixtures/init.js +0 -91
  347. package/fixtures/init.js.map +0 -1
  348. package/http/auth.d.ts +0 -2
  349. package/http/auth.js +0 -951
  350. package/http/auth.js.map +0 -1
  351. package/http/health.d.ts +0 -1
  352. package/http/health.js +0 -11
  353. package/http/health.js.map +0 -1
  354. package/http/home.d.ts +0 -1
  355. package/http/home.js +0 -134
  356. package/http/home.js.map +0 -1
  357. package/http/slow-query-publication.d.ts +0 -2
  358. package/http/slow-query-publication.js +0 -99
  359. package/http/slow-query-publication.js.map +0 -1
  360. package/index.d.ts +0 -1
  361. package/index.js +0 -19
  362. package/index.js.map +0 -1
  363. package/managers/ai-assistant-codex-manager.manager.d.ts +0 -67
  364. package/managers/ai-assistant-codex-manager.manager.js +0 -1113
  365. package/managers/ai-assistant-codex-manager.manager.js.map +0 -1
  366. package/managers/ai-run-evidence.manager.d.ts +0 -36
  367. package/managers/ai-run-evidence.manager.js +0 -377
  368. package/managers/ai-run-evidence.manager.js.map +0 -1
  369. package/managers/communication-metric.manager.d.ts +0 -16
  370. package/managers/communication-metric.manager.js +0 -134
  371. package/managers/communication-metric.manager.js.map +0 -1
  372. package/managers/cron.manager.d.ts +0 -20
  373. package/managers/cron.manager.js +0 -534
  374. package/managers/cron.manager.js.map +0 -1
  375. package/managers/customer-notification-content.manager.d.ts +0 -55
  376. package/managers/customer-notification-content.manager.js +0 -158
  377. package/managers/customer-notification-content.manager.js.map +0 -1
  378. package/managers/diagnostic-manager-bootstrap.d.ts +0 -9
  379. package/managers/diagnostic-manager-bootstrap.js +0 -260
  380. package/managers/diagnostic-manager-bootstrap.js.map +0 -1
  381. package/managers/error-auto-fix.manager.d.ts +0 -149
  382. package/managers/error-auto-fix.manager.js +0 -3064
  383. package/managers/error-auto-fix.manager.js.map +0 -1
  384. package/managers/local-log.manager.d.ts +0 -18
  385. package/managers/local-log.manager.js +0 -88
  386. package/managers/local-log.manager.js.map +0 -1
  387. package/managers/method.manager.d.ts +0 -84
  388. package/managers/method.manager.js +0 -1964
  389. package/managers/method.manager.js.map +0 -1
  390. package/managers/mongo.manager.d.ts +0 -224
  391. package/managers/mongo.manager.js +0 -5000
  392. package/managers/mongo.manager.js.map +0 -1
  393. package/managers/monitor.manager.d.ts +0 -70
  394. package/managers/monitor.manager.js +0 -550
  395. package/managers/monitor.manager.js.map +0 -1
  396. package/managers/openai-usage-ledger.manager.d.ts +0 -16
  397. package/managers/openai-usage-ledger.manager.js +0 -93
  398. package/managers/openai-usage-ledger.manager.js.map +0 -1
  399. package/managers/slow-query-verifier.manager.d.ts +0 -144
  400. package/managers/slow-query-verifier.manager.js +0 -3857
  401. package/managers/slow-query-verifier.manager.js.map +0 -1
  402. package/managers/slow-query.manager.d.ts +0 -28
  403. package/managers/slow-query.manager.js +0 -468
  404. package/managers/slow-query.manager.js.map +0 -1
  405. package/managers/subscription.manager.d.ts +0 -169
  406. package/managers/subscription.manager.js +0 -3434
  407. package/managers/subscription.manager.js.map +0 -1
  408. package/managers/websocket.manager.d.ts +0 -73
  409. package/managers/websocket.manager.js +0 -673
  410. package/managers/websocket.manager.js.map +0 -1
  411. package/managers/worker-dispatcher.manager.d.ts +0 -120
  412. package/managers/worker-dispatcher.manager.js +0 -1266
  413. package/managers/worker-dispatcher.manager.js.map +0 -1
  414. package/managers/worker-server.manager.d.ts +0 -35
  415. package/managers/worker-server.manager.js +0 -582
  416. package/managers/worker-server.manager.js.map +0 -1
  417. package/methods/accounts.d.ts +0 -2
  418. package/methods/accounts.js +0 -624
  419. package/methods/accounts.js.map +0 -1
  420. package/methods/ai-terminal.d.ts +0 -337
  421. package/methods/ai-terminal.js +0 -23166
  422. package/methods/ai-terminal.js.map +0 -1
  423. package/methods/app-settings.d.ts +0 -2
  424. package/methods/app-settings.js +0 -169
  425. package/methods/app-settings.js.map +0 -1
  426. package/methods/aws.d.ts +0 -2
  427. package/methods/aws.js +0 -877
  428. package/methods/aws.js.map +0 -1
  429. package/methods/collections.d.ts +0 -2
  430. package/methods/collections.js +0 -719
  431. package/methods/collections.js.map +0 -1
  432. package/methods/counters.d.ts +0 -2
  433. package/methods/counters.js +0 -113
  434. package/methods/counters.js.map +0 -1
  435. package/methods/cron-jobs.d.ts +0 -2
  436. package/methods/cron-jobs.js +0 -2475
  437. package/methods/cron-jobs.js.map +0 -1
  438. package/methods/customer-notifications.d.ts +0 -2
  439. package/methods/customer-notifications.js +0 -528
  440. package/methods/customer-notifications.js.map +0 -1
  441. package/methods/diagnostics.d.ts +0 -2
  442. package/methods/diagnostics.js +0 -703
  443. package/methods/diagnostics.js.map +0 -1
  444. package/methods/flag-updates.d.ts +0 -2
  445. package/methods/flag-updates.js +0 -8
  446. package/methods/flag-updates.js.map +0 -1
  447. package/methods/flags.d.ts +0 -2
  448. package/methods/flags.js +0 -8
  449. package/methods/flags.js.map +0 -1
  450. package/methods/logs.d.ts +0 -2
  451. package/methods/logs.js +0 -751
  452. package/methods/logs.js.map +0 -1
  453. package/methods/mongo-explorer.d.ts +0 -2
  454. package/methods/mongo-explorer.js +0 -1808
  455. package/methods/mongo-explorer.js.map +0 -1
  456. package/methods/monitor.d.ts +0 -2
  457. package/methods/monitor.js +0 -543
  458. package/methods/monitor.js.map +0 -1
  459. package/methods/pdf.d.ts +0 -2
  460. package/methods/pdf.js +0 -1216
  461. package/methods/pdf.js.map +0 -1
  462. package/methods/publications.d.ts +0 -1
  463. package/methods/publications.js +0 -183
  464. package/methods/publications.js.map +0 -1
  465. package/methods/report-builder.d.ts +0 -2
  466. package/methods/report-builder.js +0 -3094
  467. package/methods/report-builder.js.map +0 -1
  468. package/methods/support.d.ts +0 -2
  469. package/methods/support.js +0 -430
  470. package/methods/support.js.map +0 -1
  471. package/models/ai-run.model.d.ts +0 -19
  472. package/models/ai-run.model.js +0 -4
  473. package/models/ai-run.model.js.map +0 -1
  474. package/models/ai-terminal-conversation.model.d.ts +0 -17
  475. package/models/ai-terminal-conversation.model.js +0 -4
  476. package/models/ai-terminal-conversation.model.js.map +0 -1
  477. package/models/ai-terminal-issue-report.model.d.ts +0 -19
  478. package/models/ai-terminal-issue-report.model.js +0 -4
  479. package/models/ai-terminal-issue-report.model.js.map +0 -1
  480. package/models/ai-terminal-message.model.d.ts +0 -22
  481. package/models/ai-terminal-message.model.js +0 -4
  482. package/models/ai-terminal-message.model.js.map +0 -1
  483. package/models/app-setting.model.d.ts +0 -16
  484. package/models/app-setting.model.js +0 -4
  485. package/models/app-setting.model.js.map +0 -1
  486. package/models/app-status.model.js +0 -4
  487. package/models/app-status.model.js.map +0 -1
  488. package/models/billing-logged-in-users.model.js +0 -4
  489. package/models/billing-logged-in-users.model.js.map +0 -1
  490. package/models/collection-document.model.d.ts +0 -21
  491. package/models/collection-document.model.js +0 -4
  492. package/models/collection-document.model.js.map +0 -1
  493. package/models/communication-metric.model.d.ts +0 -20
  494. package/models/communication-metric.model.js +0 -4
  495. package/models/communication-metric.model.js.map +0 -1
  496. package/models/counter.model.js +0 -4
  497. package/models/counter.model.js.map +0 -1
  498. package/models/cron-job-history.model.d.ts +0 -15
  499. package/models/cron-job-history.model.js +0 -4
  500. package/models/cron-job-history.model.js.map +0 -1
  501. package/models/cron-job.model.d.ts +0 -14
  502. package/models/cron-job.model.js +0 -4
  503. package/models/cron-job.model.js.map +0 -1
  504. package/models/customer-notification.model.d.ts +0 -26
  505. package/models/customer-notification.model.js +0 -4
  506. package/models/customer-notification.model.js.map +0 -1
  507. package/models/customer-portal-password.model.d.ts +0 -11
  508. package/models/customer-portal-password.model.js +0 -4
  509. package/models/customer-portal-password.model.js.map +0 -1
  510. package/models/dialog.model.d.ts +0 -23
  511. package/models/dialog.model.js +0 -4
  512. package/models/dialog.model.js.map +0 -1
  513. package/models/email-history.model.d.ts +0 -32
  514. package/models/email-history.model.js.map +0 -1
  515. package/models/email-verified.model.js +0 -4
  516. package/models/email-verified.model.js.map +0 -1
  517. package/models/file.model.js +0 -4
  518. package/models/file.model.js.map +0 -1
  519. package/models/flag-update.model.js +0 -4
  520. package/models/flag-update.model.js.map +0 -1
  521. package/models/flag.model.js +0 -4
  522. package/models/flag.model.js.map +0 -1
  523. package/models/log-method-latency.model.d.ts +0 -10
  524. package/models/log-method-latency.model.js +0 -4
  525. package/models/log-method-latency.model.js.map +0 -1
  526. package/models/log-subscription.model.js +0 -4
  527. package/models/log-subscription.model.js.map +0 -1
  528. package/models/log.model.d.ts +0 -17
  529. package/models/log.model.js +0 -4
  530. package/models/log.model.js.map +0 -1
  531. package/models/logged-in-users.model.js +0 -4
  532. package/models/logged-in-users.model.js.map +0 -1
  533. package/models/method-response.model.js +0 -4
  534. package/models/method-response.model.js.map +0 -1
  535. package/models/method.model.d.ts +0 -26
  536. package/models/method.model.js +0 -4
  537. package/models/method.model.js.map +0 -1
  538. package/models/monitor-cpu.model.js +0 -4
  539. package/models/monitor-cpu.model.js.map +0 -1
  540. package/models/monitor-function.model.d.ts +0 -14
  541. package/models/monitor-function.model.js +0 -4
  542. package/models/monitor-function.model.js.map +0 -1
  543. package/models/monitor-memory.model.d.ts +0 -15
  544. package/models/monitor-memory.model.js +0 -4
  545. package/models/monitor-memory.model.js.map +0 -1
  546. package/models/monitor-mongo.model.d.ts +0 -13
  547. package/models/monitor-mongo.model.js +0 -4
  548. package/models/monitor-mongo.model.js.map +0 -1
  549. package/models/notification.model.js +0 -4
  550. package/models/notification.model.js.map +0 -1
  551. package/models/openai-usage-ledger.model.d.ts +0 -15
  552. package/models/openai-usage-ledger.model.js +0 -4
  553. package/models/openai-usage-ledger.model.js.map +0 -1
  554. package/models/pagination.model.d.ts +0 -11
  555. package/models/pagination.model.js +0 -28
  556. package/models/pagination.model.js.map +0 -1
  557. package/models/permission.model.d.ts +0 -12
  558. package/models/permission.model.js +0 -4
  559. package/models/permission.model.js.map +0 -1
  560. package/models/report-builder-dashboard-builder.model.d.ts +0 -25
  561. package/models/report-builder-dashboard-builder.model.js +0 -4
  562. package/models/report-builder-dashboard-builder.model.js.map +0 -1
  563. package/models/report-builder-library.model.d.ts +0 -17
  564. package/models/report-builder-library.model.js +0 -4
  565. package/models/report-builder-library.model.js.map +0 -1
  566. package/models/report-builder-report.model.d.ts +0 -121
  567. package/models/report-builder-report.model.js +0 -4
  568. package/models/report-builder-report.model.js.map +0 -1
  569. package/models/report-builder.model.d.ts +0 -61
  570. package/models/report-builder.model.js +0 -4
  571. package/models/report-builder.model.js.map +0 -1
  572. package/models/select-data-label.model.d.ts +0 -9
  573. package/models/select-data-label.model.js +0 -4
  574. package/models/select-data-label.model.js.map +0 -1
  575. package/models/server-message.model.d.ts +0 -32
  576. package/models/server-message.model.js +0 -4
  577. package/models/server-message.model.js.map +0 -1
  578. package/models/slow-query-report.model.d.ts +0 -23
  579. package/models/slow-query-report.model.js +0 -4
  580. package/models/slow-query-report.model.js.map +0 -1
  581. package/models/subscription.model.d.ts +0 -31
  582. package/models/subscription.model.js +0 -4
  583. package/models/subscription.model.js.map +0 -1
  584. package/models/support-ticket.model.d.ts +0 -87
  585. package/models/support-ticket.model.js +0 -4
  586. package/models/support-ticket.model.js.map +0 -1
  587. package/models/user-group.model.d.ts +0 -20
  588. package/models/user-group.model.js +0 -4
  589. package/models/user-group.model.js.map +0 -1
  590. package/models/user-guide.model.js +0 -4
  591. package/models/user-guide.model.js.map +0 -1
  592. package/models/user.model.d.ts +0 -84
  593. package/models/user.model.js +0 -4
  594. package/models/user.model.js.map +0 -1
  595. package/private/images/ResolveIO.png +0 -0
  596. package/public_api.js +0 -125
  597. package/public_api.js.map +0 -1
  598. package/publications/ai-terminal.d.ts +0 -1
  599. package/publications/ai-terminal.js +0 -122
  600. package/publications/ai-terminal.js.map +0 -1
  601. package/publications/app-settings.d.ts +0 -2
  602. package/publications/app-settings.js +0 -28
  603. package/publications/app-settings.js.map +0 -1
  604. package/publications/app-status.d.ts +0 -2
  605. package/publications/app-status.js +0 -16
  606. package/publications/app-status.js.map +0 -1
  607. package/publications/cron-jobs.d.ts +0 -2
  608. package/publications/cron-jobs.js +0 -88
  609. package/publications/cron-jobs.js.map +0 -1
  610. package/publications/customer-notifications.d.ts +0 -2
  611. package/publications/customer-notifications.js +0 -161
  612. package/publications/customer-notifications.js.map +0 -1
  613. package/publications/files.d.ts +0 -2
  614. package/publications/files.js +0 -36
  615. package/publications/files.js.map +0 -1
  616. package/publications/flags-update.d.ts +0 -2
  617. package/publications/flags-update.js +0 -22
  618. package/publications/flags-update.js.map +0 -1
  619. package/publications/flags.d.ts +0 -2
  620. package/publications/flags.js +0 -22
  621. package/publications/flags.js.map +0 -1
  622. package/publications/logs.d.ts +0 -2
  623. package/publications/logs.js +0 -164
  624. package/publications/logs.js.map +0 -1
  625. package/publications/notifications.d.ts +0 -2
  626. package/publications/notifications.js +0 -16
  627. package/publications/notifications.js.map +0 -1
  628. package/publications/report-builder-dashboard-builders.d.ts +0 -2
  629. package/publications/report-builder-dashboard-builders.js +0 -42
  630. package/publications/report-builder-dashboard-builders.js.map +0 -1
  631. package/publications/report-builder-libraries.d.ts +0 -2
  632. package/publications/report-builder-libraries.js +0 -90
  633. package/publications/report-builder-libraries.js.map +0 -1
  634. package/publications/report-builder-reports.d.ts +0 -2
  635. package/publications/report-builder-reports.js +0 -50
  636. package/publications/report-builder-reports.js.map +0 -1
  637. package/publications/super-admin.d.ts +0 -2
  638. package/publications/super-admin.js +0 -16
  639. package/publications/super-admin.js.map +0 -1
  640. package/publications/user-groups.d.ts +0 -1
  641. package/publications/user-groups.js +0 -16
  642. package/publications/user-groups.js.map +0 -1
  643. package/publications/user-guides.d.ts +0 -1
  644. package/publications/user-guides.js +0 -16
  645. package/publications/user-guides.js.map +0 -1
  646. package/resolveio-server-app.d.ts +0 -70
  647. package/resolveio-server-app.js +0 -801
  648. package/resolveio-server-app.js.map +0 -1
  649. package/server-app.d.ts +0 -228
  650. package/server-app.js +0 -3566
  651. package/server-app.js.map +0 -1
  652. package/services/codex-client.d.ts +0 -128
  653. package/services/codex-client.js +0 -1629
  654. package/services/codex-client.js.map +0 -1
  655. package/services/openai-client.d.ts +0 -46
  656. package/services/openai-client.js +0 -318
  657. package/services/openai-client.js.map +0 -1
  658. package/types/error-report.d.ts +0 -25
  659. package/types/error-report.js +0 -4
  660. package/types/error-report.js.map +0 -1
  661. package/types/slow-query-report.d.ts +0 -27
  662. package/types/slow-query-report.js +0 -6
  663. package/types/slow-query-report.js.map +0 -1
  664. package/util/ai-qa-policy.d.ts +0 -124
  665. package/util/ai-qa-policy.js +0 -736
  666. package/util/ai-qa-policy.js.map +0 -1
  667. package/util/ai-run-evidence-adapters.d.ts +0 -33
  668. package/util/ai-run-evidence-adapters.js +0 -660
  669. package/util/ai-run-evidence-adapters.js.map +0 -1
  670. package/util/ai-run-evidence-dashboard.d.ts +0 -67
  671. package/util/ai-run-evidence-dashboard.js +0 -309
  672. package/util/ai-run-evidence-dashboard.js.map +0 -1
  673. package/util/ai-run-evidence-eval.d.ts +0 -86
  674. package/util/ai-run-evidence-eval.js +0 -854
  675. package/util/ai-run-evidence-eval.js.map +0 -1
  676. package/util/ai-run-evidence.d.ts +0 -212
  677. package/util/ai-run-evidence.js +0 -649
  678. package/util/ai-run-evidence.js.map +0 -1
  679. package/util/ai-runner-artifacts.d.ts +0 -82
  680. package/util/ai-runner-artifacts.js +0 -713
  681. package/util/ai-runner-artifacts.js.map +0 -1
  682. package/util/ai-runner-qa-auth.d.ts +0 -5
  683. package/util/ai-runner-qa-auth.js +0 -822
  684. package/util/ai-runner-qa-auth.js.map +0 -1
  685. package/util/ai-runner-qa-tools.d.ts +0 -26
  686. package/util/ai-runner-qa-tools.js +0 -3029
  687. package/util/ai-runner-qa-tools.js.map +0 -1
  688. package/util/aicoder-runner-v6.d.ts +0 -168
  689. package/util/aicoder-runner-v6.js +0 -347
  690. package/util/aicoder-runner-v6.js.map +0 -1
  691. package/util/common.d.ts +0 -31
  692. package/util/common.js +0 -683
  693. package/util/common.js.map +0 -1
  694. package/util/customer-portal-password.d.ts +0 -13
  695. package/util/customer-portal-password.js +0 -209
  696. package/util/customer-portal-password.js.map +0 -1
  697. package/util/error-reporter.d.ts +0 -52
  698. package/util/error-reporter.js +0 -326
  699. package/util/error-reporter.js.map +0 -1
  700. package/util/error-tracking.d.ts +0 -13
  701. package/util/error-tracking.js +0 -120
  702. package/util/error-tracking.js.map +0 -1
  703. package/util/openai-usage-cost.d.ts +0 -6
  704. package/util/openai-usage-cost.js +0 -92
  705. package/util/openai-usage-cost.js.map +0 -1
  706. package/util/report-builder-unwinds.d.ts +0 -15
  707. package/util/report-builder-unwinds.js +0 -156
  708. package/util/report-builder-unwinds.js.map +0 -1
  709. package/util/runner-process-janitor.d.ts +0 -27
  710. package/util/runner-process-janitor.js +0 -208
  711. package/util/runner-process-janitor.js.map +0 -1
  712. package/util/schema-report-builder.d.ts +0 -6
  713. package/util/schema-report-builder.js +0 -481
  714. package/util/schema-report-builder.js.map +0 -1
  715. package/util/slow-query-reporter.d.ts +0 -28
  716. package/util/slow-query-reporter.js +0 -226
  717. package/util/slow-query-reporter.js.map +0 -1
  718. package/util/subscription-dependency-context.d.ts +0 -34
  719. package/util/subscription-dependency-context.js +0 -1283
  720. package/util/subscription-dependency-context.js.map +0 -1
  721. package/util/support-runner-v5.d.ts +0 -250
  722. package/util/support-runner-v5.js +0 -634
  723. package/util/support-runner-v5.js.map +0 -1
  724. package/util/tokenizer.d.ts +0 -5
  725. package/util/tokenizer.js +0 -41
  726. package/util/tokenizer.js.map +0 -1
  727. package/workers/codex-runner.worker.d.ts +0 -1
  728. package/workers/codex-runner.worker.js +0 -192
  729. package/workers/codex-runner.worker.js.map +0 -1
  730. /package/{private → src/private}/email-templates/enrollment.html +0 -0
  731. /package/{private → src/private}/email-templates/forgot-password.html +0 -0
  732. /package/{private → src/private}/email-templates/support-ticket-deleted.html +0 -0
  733. /package/{private → src/private}/email-templates/support-ticket-modified.html +0 -0
  734. /package/{private → src/private}/email-templates/support-ticket.html +0 -0
  735. /package/{public_api.d.ts → src/public_api.ts} +0 -0
@@ -0,0 +1,86 @@
1
+ import { SubscriptionManager } from '../src/managers/subscription.manager';
2
+ import { ActiveSubscriptionModel } from '../src/models/subscription.model';
3
+
4
+ function assert(condition: boolean, message: string) {
5
+ if (!condition) {
6
+ throw new Error(message);
7
+ }
8
+ }
9
+
10
+ function createBaseSubscription(): ActiveSubscriptionModel {
11
+ return {
12
+ publication: 'testPublication',
13
+ subscriptionKey: '[]',
14
+ subscriptionData: [],
15
+ collections: ['orders'],
16
+ clients: [],
17
+ cacheId: 0,
18
+ running: false,
19
+ runAgain: false,
20
+ collectionDependencies: new Map(),
21
+ collectionFilters: new Map(),
22
+ watchAllCollections: new Set(),
23
+ collectionQueryMeta: new Map()
24
+ };
25
+ }
26
+
27
+ async function testFilterOnlyDeleteInvalidates() {
28
+ const manager = new SubscriptionManager() as any;
29
+ const sub = createBaseSubscription();
30
+ manager.ensureDependencyContainers(sub);
31
+ sub.collectionFilters.set('orders', [{status: 'Active'}]);
32
+
33
+ const shouldInvalidate = await manager.shouldInvalidateSubscription(sub, 'orders', 'delete', 'ORD-1');
34
+ assert(shouldInvalidate, 'Expected filter-only delete to invalidate subscription');
35
+ }
36
+
37
+ async function testFilterOnlyUpdateInvalidates() {
38
+ const manager = new SubscriptionManager() as any;
39
+ const sub = createBaseSubscription();
40
+ manager.ensureDependencyContainers(sub);
41
+ sub.collectionFilters.set('orders', [{status: 'Active'}]);
42
+
43
+ const shouldInvalidate = await manager.shouldInvalidateSubscription(
44
+ sub,
45
+ 'orders',
46
+ 'update',
47
+ 'ORD-1',
48
+ {_id: 'ORD-1', status: 'Archived'}
49
+ );
50
+
51
+ assert(shouldInvalidate, 'Expected filter-only update to invalidate subscription when tracked ids are unavailable');
52
+ }
53
+
54
+ async function testTrackedDeleteUnknownIdSkips() {
55
+ const manager = new SubscriptionManager() as any;
56
+ const sub = createBaseSubscription();
57
+ manager.ensureDependencyContainers(sub);
58
+ sub.collectionDependencies.set('orders', new Set(['ORD-1']));
59
+
60
+ const shouldInvalidate = await manager.shouldInvalidateSubscription(sub, 'orders', 'delete', 'ORD-2');
61
+ assert(!shouldInvalidate, 'Expected delete on unknown tracked id to skip invalidation');
62
+ }
63
+
64
+ async function testTrackedDeleteKnownIdInvalidates() {
65
+ const manager = new SubscriptionManager() as any;
66
+ const sub = createBaseSubscription();
67
+ manager.ensureDependencyContainers(sub);
68
+ sub.collectionDependencies.set('orders', new Set(['ORD-1']));
69
+
70
+ const shouldInvalidate = await manager.shouldInvalidateSubscription(sub, 'orders', 'delete', 'ORD-1');
71
+ assert(shouldInvalidate, 'Expected delete on tracked id to invalidate subscription');
72
+ }
73
+
74
+ async function run() {
75
+ await testFilterOnlyDeleteInvalidates();
76
+ await testFilterOnlyUpdateInvalidates();
77
+ await testTrackedDeleteUnknownIdSkips();
78
+ await testTrackedDeleteKnownIdInvalidates();
79
+ console.log('subscription-manager-invalidation tests completed');
80
+ process.exit(0);
81
+ }
82
+
83
+ run().catch(error => {
84
+ console.error(error);
85
+ process.exit(1);
86
+ });
@@ -0,0 +1,191 @@
1
+ import * as assert from 'node:assert/strict';
2
+ import {
3
+ buildResolveIOSupportV5MicrotaskPrompt,
4
+ buildResolveIOSupportV5DiagnoseFirstPrompt,
5
+ buildResolveIOSupportV5Incident,
6
+ buildResolveIOSupportV5PromptBudget,
7
+ buildResolveIOSupportV5ScopeDigest,
8
+ decideResolveIOSupportV5Continuation,
9
+ fingerprintResolveIOSupportV5Blocker,
10
+ initializeResolveIOSupportV5State,
11
+ recordResolveIOSupportV5MicrotaskUsage,
12
+ recordResolveIOSupportV5Step,
13
+ summarizeResolveIOSupportV5MicrotaskUsage
14
+ } from '../src/util/support-runner-v5';
15
+
16
+ const initialized = initializeResolveIOSupportV5State({
17
+ jobId: 'job-1',
18
+ ticketId: 'ticket-1',
19
+ ticketNumber: '004999',
20
+ title: 'Support ticket #004999',
21
+ description: 'Fix BOL driver display and QA it.',
22
+ approvedScopeRequirements: ['BOL driver display', 'disabled driver canonical rejection'],
23
+ prBranch: 'feature/support-004999',
24
+ buildThreadKey: 'support:ticket-1:job:job-1:build',
25
+ qaThreadKey: 'support:ticket-1:job:job-1:qa',
26
+ now: '2026-06-06T00:00:00.000Z'
27
+ });
28
+
29
+ assert.equal(initialized.supportWorkflowVersion, 'v5');
30
+ assert.equal(initialized.supportV5SupervisorState.noEmailUnlessApproved, true);
31
+ assert.equal(initialized.supportV5LaneMemory.build.model, 'gpt-5.3-codex');
32
+ assert.equal(initialized.supportV5LaneMemory.qa.model, 'gpt-5.4-mini');
33
+ assert.equal(initialized.supportV5LaneMemory.build.threadKey, 'support:ticket-1:job:job-1:build');
34
+ assert.match(initialized.supportV5SupervisorState.approvedScope, /BOL driver display/);
35
+ assert.ok(initialized.supportV5MicrotaskLedger.length >= 4);
36
+ assert.equal(initialized.supportV5MicrotaskLedger[0].lane, 'build');
37
+ assert.equal(initialized.supportV5MicrotaskLedger[1].lane, 'qa');
38
+ assert.equal(initialized.supportV5MicrotaskLedger[0].threadKey, 'support:ticket-1:job:job-1:build');
39
+ assert.equal(initialized.supportV5MicrotaskLedger[1].threadKey, 'support:ticket-1:job:job-1:qa');
40
+ assert.equal(initialized.supportV5ActiveMicrotaskId, initialized.supportV5MicrotaskLedger[0].microtaskId);
41
+ assert.match(initialized.supportV5ScopeDigest || '', /Approved scope/);
42
+
43
+ const withFailure = recordResolveIOSupportV5Step(initialized, {
44
+ stepType: 'qa_row',
45
+ outcome: 'needs_repair',
46
+ lane: 'qa',
47
+ model: 'gpt-5.4-mini',
48
+ threadKey: 'support:ticket-1:job:job-1:qa',
49
+ promptTokenEstimate: 1200,
50
+ runtimeMs: 45000,
51
+ summary: 'Row 2 failed.',
52
+ blocker: 'Screenshot shell-only for row 2',
53
+ artifactPaths: ['qa-artifacts/row-2.jpg'],
54
+ activeQaRow: {
55
+ index: 2,
56
+ workflow: 'Disabled driver cannot replace selected active driver',
57
+ route: '/dashboard/driver/truck-treating/bol-detail/bol/route',
58
+ status: 'failed'
59
+ },
60
+ now: '2026-06-06T00:01:00.000Z'
61
+ });
62
+
63
+ assert.equal(withFailure.supportV5StepHistory.length, 1);
64
+ assert.equal(withFailure.supportV5Budget.loopCount, 1);
65
+ assert.equal(withFailure.supportV5LaneMemory.qa.activeBlocker, 'Screenshot shell-only for row 2');
66
+ assert.equal(withFailure.supportV5SupervisorState.currentQaRow?.index, 2);
67
+ assert.deepEqual(decideResolveIOSupportV5Continuation(withFailure).action, 'continue');
68
+
69
+ let repeated = withFailure;
70
+ repeated = recordResolveIOSupportV5Step(repeated, {
71
+ stepType: 'qa_row',
72
+ outcome: 'needs_repair',
73
+ lane: 'qa',
74
+ blocker: 'Screenshot shell-only for row 2',
75
+ summary: 'Still shell-only.',
76
+ now: '2026-06-06T00:02:00.000Z'
77
+ });
78
+ repeated = recordResolveIOSupportV5Step(repeated, {
79
+ stepType: 'qa_row',
80
+ outcome: 'needs_repair',
81
+ lane: 'qa',
82
+ blocker: 'Screenshot shell-only for row 2',
83
+ summary: 'Still shell-only again.',
84
+ now: '2026-06-06T00:03:00.000Z'
85
+ });
86
+
87
+ const repeatedDecision = decideResolveIOSupportV5Continuation(repeated);
88
+ assert.equal(repeatedDecision.action, 'park');
89
+ assert.equal(repeatedDecision.reason, 'support_v5_repeated_no_progress');
90
+
91
+ const budgeted = recordResolveIOSupportV5Step(initialized, {
92
+ stepType: 'build_repair',
93
+ outcome: 'needs_repair',
94
+ lane: 'build',
95
+ promptTokenEstimate: 1900,
96
+ blocker: 'Prompt was too broad for a repair step.',
97
+ now: '2026-06-06T00:04:00.000Z'
98
+ });
99
+ assert.equal(decideResolveIOSupportV5Continuation(budgeted).reason, 'support_v5_budget_guard');
100
+
101
+ const prompt = buildResolveIOSupportV5DiagnoseFirstPrompt({
102
+ goal: initialized.supportV5SupervisorState.currentGoal,
103
+ activeStep: 'qa_row',
104
+ activeBlocker: 'Route failed to hydrate.',
105
+ lane: 'qa',
106
+ currentQaRow: withFailure.supportV5SupervisorState.currentQaRow,
107
+ artifactPaths: ['qa-artifacts/client.log'],
108
+ changedFiles: ['geochem/angular/app/bol/new/bol-new.component.ts']
109
+ }).join('\n');
110
+
111
+ assert.match(prompt, /Diagnose First/);
112
+ assert.match(prompt, /Do not send customer email/);
113
+ assert.match(prompt, /Current QA row/);
114
+ assert.match(prompt, /geochem\/angular\/app\/bol\/new\/bol-new\.component\.ts/);
115
+
116
+ assert.equal(
117
+ fingerprintResolveIOSupportV5Blocker('Line 123 failed for 6a239cd7d67a2b24b36f3dfe'),
118
+ fingerprintResolveIOSupportV5Blocker('Line 456 failed for abcdefabcdefabcdef')
119
+ );
120
+
121
+ const incident = buildResolveIOSupportV5Incident({
122
+ incidentClass: 'false_screenshot_rejection',
123
+ summary: 'Sparse but valid BOL detail screen was rejected by file-size gate.',
124
+ stepType: 'artifact_package',
125
+ blocker: 'screenshot shell-only',
126
+ artifactPaths: ['qa-artifacts/row-2.jpg'],
127
+ now: '2026-06-06T00:05:00.000Z'
128
+ });
129
+ assert.equal(incident.incidentClass, 'false_screenshot_rejection');
130
+ assert.ok(incident.blockerFingerprint);
131
+
132
+ const microtaskPrompt = buildResolveIOSupportV5MicrotaskPrompt({
133
+ bundle: initialized,
134
+ lane: 'build',
135
+ stage: 'support-autonomous-owner',
136
+ failureText: 'QA row failed because the driver dropdown still includes disabled drivers.',
137
+ changedFiles: ['geochem/angular/app/bol/new/bol-new.component.ts'],
138
+ contextSnippets: ['Workspace root: /var/ai-workspace/job-1', 'Project root: geochem']
139
+ });
140
+ assert.equal(microtaskPrompt.activeMicrotask?.lane, 'build');
141
+ assert.equal(microtaskPrompt.withinHardCap, true);
142
+ assert.ok(microtaskPrompt.promptTokenEstimate <= buildResolveIOSupportV5PromptBudget().buildMicrotaskHardCap);
143
+ assert.match(microtaskPrompt.prompt, /Microtask id:/);
144
+ assert.match(microtaskPrompt.prompt, /persistent lane thread/);
145
+ assert.doesNotMatch(microtaskPrompt.prompt, /Initial ticket context:/);
146
+ assert.doesNotMatch(microtaskPrompt.prompt, /Staged support context:/);
147
+ assert.doesNotMatch(microtaskPrompt.prompt, /BUILD_PLAN/);
148
+
149
+ const qaPrompt = buildResolveIOSupportV5MicrotaskPrompt({
150
+ bundle: {
151
+ ...initialized,
152
+ supportV5ActiveMicrotaskId: initialized.supportV5MicrotaskLedger[1].microtaskId
153
+ },
154
+ lane: 'qa',
155
+ stage: 'support-qa-validation',
156
+ activeQaRow: {
157
+ index: 0,
158
+ workflow: 'BOL driver display',
159
+ route: '/dashboard/driver/truck-treating/bol-detail/bol/route',
160
+ assertion: 'Disabled driver is rejected',
161
+ status: 'pending'
162
+ }
163
+ });
164
+ assert.equal(qaPrompt.activeMicrotask?.lane, 'qa');
165
+ assert.ok(qaPrompt.promptTokenEstimate <= buildResolveIOSupportV5PromptBudget().qaMicrotaskHardCap);
166
+ assert.match(qaPrompt.prompt, /Return strict JSON only/);
167
+
168
+ const usageBundle = recordResolveIOSupportV5MicrotaskUsage(initialized, {
169
+ microtaskId: initialized.supportV5MicrotaskLedger[0].microtaskId,
170
+ lane: 'build',
171
+ model: 'gpt-5.3-codex',
172
+ threadKey: initialized.supportV5LaneMemory.build.threadKey,
173
+ reuseThread: true,
174
+ promptTokenEstimate: microtaskPrompt.promptTokenEstimate,
175
+ promptSections: microtaskPrompt.promptSections,
176
+ outcome: 'pass'
177
+ });
178
+ const usageSummary = summarizeResolveIOSupportV5MicrotaskUsage(usageBundle);
179
+ assert.equal(usageSummary.byMicrotask.length, 1);
180
+ assert.ok(usageSummary.bySection.some((section) => section.name === 'active_microtask'));
181
+ assert.equal(usageSummary.broadPromptViolations.length, 0);
182
+
183
+ const digest = buildResolveIOSupportV5ScopeDigest({
184
+ goal: 'Resolve support ticket 004999',
185
+ approvedScope: ['A'.repeat(2000), 'B'.repeat(2000)],
186
+ prBranch: 'support-004999',
187
+ maxTokens: 200
188
+ });
189
+ assert.ok(digest.length <= 800);
190
+
191
+ console.log('support runner v5 tests passed');
package/tsconfig.json ADDED
@@ -0,0 +1,34 @@
1
+ {
2
+ "compileOnSave": false,
3
+ "compilerOptions": {
4
+ "outDir": "./dist/out-tsc",
5
+ "sourceMap": true,
6
+ "declaration": true,
7
+ "declarationMap": true,
8
+ "inlineSources": true,
9
+ "baseUrl": ".",
10
+ "module": "commonjs",
11
+ "moduleResolution": "node",
12
+ "emitDecoratorMetadata": true,
13
+ "experimentalDecorators": true,
14
+ "target": "es5",
15
+ "skipLibCheck": true,
16
+ "stripInternal": true,
17
+ "noImplicitAny": false,
18
+ "downlevelIteration": true,
19
+ "typeRoots": [
20
+ "node_modules/@types"
21
+ ],
22
+ "lib": [
23
+ "es2017",
24
+ "dom"
25
+ ],
26
+ "noImplicitReturns": true
27
+ },
28
+ "include": [
29
+ "./**/*.ts"
30
+ ],
31
+ "exclude": [
32
+ "node_modules"
33
+ ]
34
+ }
@@ -1,11 +0,0 @@
1
- type AiAssistantCoreTermHint = {
2
- terms: string[];
3
- collections: string[];
4
- };
5
- export declare const AI_ASSISTANT_CORE_HEURISTICS: Readonly<{
6
- version: 3;
7
- collection_aliases: Record<string, string>;
8
- collection_alias_options: Record<string, string[]>;
9
- collection_term_hints: AiAssistantCoreTermHint[];
10
- }>;
11
- export {};
@@ -1,356 +0,0 @@
1
- "use strict";
2
- var __read = (this && this.__read) || function (o, n) {
3
- var m = typeof Symbol === "function" && o[Symbol.iterator];
4
- if (!m) return o;
5
- var i = m.call(o), r, ar = [], e;
6
- try {
7
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
- }
9
- catch (error) { e = { error: error }; }
10
- finally {
11
- try {
12
- if (r && !r.done && (m = i["return"])) m.call(i);
13
- }
14
- finally { if (e) throw e.error; }
15
- }
16
- return ar;
17
- };
18
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
19
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
20
- if (ar || !(i in from)) {
21
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
22
- ar[i] = from[i];
23
- }
24
- }
25
- return to.concat(ar || Array.prototype.slice.call(from));
26
- };
27
- Object.defineProperty(exports, "__esModule", { value: true });
28
- exports.AI_ASSISTANT_CORE_HEURISTICS = void 0;
29
- function normalizeTerm(value) {
30
- return String(value || '')
31
- .trim()
32
- .toLowerCase()
33
- .replace(/\s+/g, ' ');
34
- }
35
- function uniqueStrings(values) {
36
- var seen = new Set();
37
- var unique = [];
38
- (values || []).forEach(function (value) {
39
- var normalized = normalizeTerm(value);
40
- if (!normalized || seen.has(normalized)) {
41
- return;
42
- }
43
- seen.add(normalized);
44
- unique.push(normalized);
45
- });
46
- return unique;
47
- }
48
- function uniqueCollections(values) {
49
- var seen = new Set();
50
- var unique = [];
51
- (values || []).forEach(function (value) {
52
- var normalized = normalizeTerm(value).replace(/[^a-z0-9._-]/g, '');
53
- if (!normalized || seen.has(normalized)) {
54
- return;
55
- }
56
- seen.add(normalized);
57
- unique.push(normalized);
58
- });
59
- return unique;
60
- }
61
- function mergeCollectionLists() {
62
- var groups = [];
63
- for (var _i = 0; _i < arguments.length; _i++) {
64
- groups[_i] = arguments[_i];
65
- }
66
- return uniqueCollections((groups || []).reduce(function (acc, group) { return acc.concat(Array.isArray(group) ? group : []); }, []));
67
- }
68
- function singularizeToken(token) {
69
- var normalized = normalizeTerm(token);
70
- if (!normalized) {
71
- return '';
72
- }
73
- if (normalized.endsWith('ies') && normalized.length > 4) {
74
- return "".concat(normalized.slice(0, -3), "y");
75
- }
76
- if (normalized.length > 4
77
- && normalized.endsWith('s')
78
- && !normalized.endsWith('ss')
79
- && !normalized.endsWith('us')
80
- && !normalized.endsWith('is')) {
81
- return normalized.slice(0, -1);
82
- }
83
- return normalized;
84
- }
85
- function buildCollectionNameTerms(collection) {
86
- var normalized = normalizeTerm(collection).replace(/[^a-z0-9._-]/g, '');
87
- if (!normalized) {
88
- return [];
89
- }
90
- var withoutReportPrefix = normalized.startsWith('report-')
91
- ? normalized.slice('report-'.length)
92
- : normalized;
93
- var tokens = withoutReportPrefix.split(/[-_.]+/g).filter(Boolean);
94
- var singularTokens = tokens.map(singularizeToken).filter(Boolean);
95
- return uniqueStrings([
96
- normalized,
97
- withoutReportPrefix,
98
- withoutReportPrefix.replace(/[-_.]+/g, ' '),
99
- withoutReportPrefix.replace(/[-_.]+/g, ''),
100
- singularTokens.join('-'),
101
- singularTokens.join(' '),
102
- singularTokens.join('')
103
- ]);
104
- }
105
- function buildCollectionTermHintsFromCandidates(collections) {
106
- return uniqueCollections(collections).map(function (collection) { return ({
107
- terms: buildCollectionNameTerms(collection),
108
- collections: [collection]
109
- }); });
110
- }
111
- var REPORT_COLLECTION_HINT_CANDIDATES = uniqueCollections([
112
- 'reports',
113
- 'report-templates',
114
- 'report-layouts',
115
- 'report-builder-configs',
116
- 'report-builder-layouts',
117
- 'report-dashboards',
118
- 'report-widgets',
119
- 'report-favorites',
120
- 'report-schedules',
121
- 'report-runs',
122
- 'saved-reports',
123
- 'qb-reports',
124
- 'dashboard-configs',
125
- 'dashboard-widgets'
126
- ]);
127
- var AUTH_COLLECTION_HINT_CANDIDATES = uniqueCollections([
128
- 'users',
129
- 'client-users',
130
- 'billing-logged-in-users',
131
- 'customer-auth-accounts',
132
- 'customer-auth-sessions',
133
- 'customer-portal-accounts',
134
- 'customer-portal-sessions',
135
- 'customer-portal-invites',
136
- 'owners'
137
- ]);
138
- var PERMISSION_NAV_COLLECTION_HINT_CANDIDATES = uniqueCollections([
139
- 'roles',
140
- 'permissions',
141
- 'role-permissions',
142
- 'user-groups',
143
- 'dashboard-configs',
144
- 'homepage-configs',
145
- 'homepage-sections'
146
- ]);
147
- var UI_WIDGET_COLLECTION_HINT_CANDIDATES = uniqueCollections([
148
- 'dashboard-widgets',
149
- 'report-widgets',
150
- 'report-layouts',
151
- 'report-templates',
152
- 'dashboard-configs',
153
- 'homepage-configs',
154
- 'homepage-sections',
155
- 'homepage-announcements',
156
- 'ai-assist-configs',
157
- 'systems'
158
- ]);
159
- var SYSTEM_COLLECTION_HINT_CANDIDATES = uniqueCollections([
160
- 'systems',
161
- 'settings',
162
- 'configs',
163
- 'company-secrets',
164
- 'ai-coder-apps',
165
- 'ai-development-jobs',
166
- 'build-instance-logs',
167
- 'error-autofix-logs',
168
- 'slow-query-logs',
169
- 'work-logs',
170
- 'crm-usage-logs',
171
- 'mongo-performance-metrics',
172
- 'mongo-snapshots',
173
- 'aws-heartbeats',
174
- 'aws-app-versions'
175
- ]);
176
- var TABLE_COLLECTION_HINT_CANDIDATES = mergeCollectionLists(REPORT_COLLECTION_HINT_CANDIDATES, UI_WIDGET_COLLECTION_HINT_CANDIDATES);
177
- var NAV_COLLECTION_HINT_CANDIDATES = mergeCollectionLists(PERMISSION_NAV_COLLECTION_HINT_CANDIDATES, UI_WIDGET_COLLECTION_HINT_CANDIDATES, ['modules', 'menus', 'navigation-items']);
178
- var USER_PERMISSION_COLLECTION_HINT_CANDIDATES = mergeCollectionLists(['users', 'client-users', 'billing-logged-in-users'], AUTH_COLLECTION_HINT_CANDIDATES, PERMISSION_NAV_COLLECTION_HINT_CANDIDATES);
179
- var AI_ASSISTANT_CORE_COLLECTION_ALIAS_OPTIONS = {
180
- report: REPORT_COLLECTION_HINT_CANDIDATES,
181
- reports: REPORT_COLLECTION_HINT_CANDIDATES,
182
- reporting: REPORT_COLLECTION_HINT_CANDIDATES,
183
- reportbuilder: REPORT_COLLECTION_HINT_CANDIDATES,
184
- reportbuilders: REPORT_COLLECTION_HINT_CANDIDATES,
185
- reportdesigner: REPORT_COLLECTION_HINT_CANDIDATES,
186
- reportdesigners: REPORT_COLLECTION_HINT_CANDIDATES,
187
- reportschema: REPORT_COLLECTION_HINT_CANDIDATES,
188
- reportschemas: REPORT_COLLECTION_HINT_CANDIDATES,
189
- dashboard: mergeCollectionLists(REPORT_COLLECTION_HINT_CANDIDATES, UI_WIDGET_COLLECTION_HINT_CANDIDATES),
190
- dashboards: mergeCollectionLists(REPORT_COLLECTION_HINT_CANDIDATES, UI_WIDGET_COLLECTION_HINT_CANDIDATES),
191
- analytics: REPORT_COLLECTION_HINT_CANDIDATES,
192
- kpi: REPORT_COLLECTION_HINT_CANDIDATES,
193
- kpis: REPORT_COLLECTION_HINT_CANDIDATES,
194
- chart: REPORT_COLLECTION_HINT_CANDIDATES,
195
- charts: REPORT_COLLECTION_HINT_CANDIDATES,
196
- graph: REPORT_COLLECTION_HINT_CANDIDATES,
197
- graphs: REPORT_COLLECTION_HINT_CANDIDATES,
198
- visualization: mergeCollectionLists(REPORT_COLLECTION_HINT_CANDIDATES, UI_WIDGET_COLLECTION_HINT_CANDIDATES),
199
- visualizations: mergeCollectionLists(REPORT_COLLECTION_HINT_CANDIDATES, UI_WIDGET_COLLECTION_HINT_CANDIDATES),
200
- widget: UI_WIDGET_COLLECTION_HINT_CANDIDATES,
201
- widgets: UI_WIDGET_COLLECTION_HINT_CANDIDATES,
202
- collapsetable: TABLE_COLLECTION_HINT_CANDIDATES,
203
- collapsetables: TABLE_COLLECTION_HINT_CANDIDATES,
204
- collapsibletable: TABLE_COLLECTION_HINT_CANDIDATES,
205
- collapsibletables: TABLE_COLLECTION_HINT_CANDIDATES,
206
- expandabletable: TABLE_COLLECTION_HINT_CANDIDATES,
207
- expandabletables: TABLE_COLLECTION_HINT_CANDIDATES,
208
- datatable: TABLE_COLLECTION_HINT_CANDIDATES,
209
- datatables: TABLE_COLLECTION_HINT_CANDIDATES,
210
- datagrid: TABLE_COLLECTION_HINT_CANDIDATES,
211
- datagrids: TABLE_COLLECTION_HINT_CANDIDATES,
212
- navbar: NAV_COLLECTION_HINT_CANDIDATES,
213
- navbars: NAV_COLLECTION_HINT_CANDIDATES,
214
- navbarmain: NAV_COLLECTION_HINT_CANDIDATES,
215
- navbarmodule: NAV_COLLECTION_HINT_CANDIDATES,
216
- navigation: NAV_COLLECTION_HINT_CANDIDATES,
217
- navigations: NAV_COLLECTION_HINT_CANDIDATES,
218
- sidebar: NAV_COLLECTION_HINT_CANDIDATES,
219
- sidebars: NAV_COLLECTION_HINT_CANDIDATES,
220
- menu: NAV_COLLECTION_HINT_CANDIDATES,
221
- menus: NAV_COLLECTION_HINT_CANDIDATES,
222
- modulemenu: NAV_COLLECTION_HINT_CANDIDATES,
223
- modulemenus: NAV_COLLECTION_HINT_CANDIDATES,
224
- login: AUTH_COLLECTION_HINT_CANDIDATES,
225
- logins: AUTH_COLLECTION_HINT_CANDIDATES,
226
- signin: AUTH_COLLECTION_HINT_CANDIDATES,
227
- signins: AUTH_COLLECTION_HINT_CANDIDATES,
228
- signinpage: AUTH_COLLECTION_HINT_CANDIDATES,
229
- authentication: AUTH_COLLECTION_HINT_CANDIDATES,
230
- auth: AUTH_COLLECTION_HINT_CANDIDATES,
231
- session: AUTH_COLLECTION_HINT_CANDIDATES,
232
- sessions: AUTH_COLLECTION_HINT_CANDIDATES,
233
- permission: USER_PERMISSION_COLLECTION_HINT_CANDIDATES,
234
- permissions: USER_PERMISSION_COLLECTION_HINT_CANDIDATES,
235
- role: USER_PERMISSION_COLLECTION_HINT_CANDIDATES,
236
- roles: USER_PERMISSION_COLLECTION_HINT_CANDIDATES,
237
- access: mergeCollectionLists(USER_PERMISSION_COLLECTION_HINT_CANDIDATES, AUTH_COLLECTION_HINT_CANDIDATES),
238
- authorization: mergeCollectionLists(USER_PERMISSION_COLLECTION_HINT_CANDIDATES, AUTH_COLLECTION_HINT_CANDIDATES),
239
- system: SYSTEM_COLLECTION_HINT_CANDIDATES,
240
- systems: SYSTEM_COLLECTION_HINT_CANDIDATES,
241
- setting: SYSTEM_COLLECTION_HINT_CANDIDATES,
242
- settings: SYSTEM_COLLECTION_HINT_CANDIDATES,
243
- config: SYSTEM_COLLECTION_HINT_CANDIDATES,
244
- configs: SYSTEM_COLLECTION_HINT_CANDIDATES,
245
- configuration: SYSTEM_COLLECTION_HINT_CANDIDATES,
246
- configurations: SYSTEM_COLLECTION_HINT_CANDIDATES,
247
- audit: SYSTEM_COLLECTION_HINT_CANDIDATES,
248
- audits: SYSTEM_COLLECTION_HINT_CANDIDATES,
249
- log: SYSTEM_COLLECTION_HINT_CANDIDATES,
250
- logs: SYSTEM_COLLECTION_HINT_CANDIDATES,
251
- notification: mergeCollectionLists(SYSTEM_COLLECTION_HINT_CANDIDATES, ['user-notifications']),
252
- notifications: mergeCollectionLists(SYSTEM_COLLECTION_HINT_CANDIDATES, ['user-notifications'])
253
- };
254
- var AI_ASSISTANT_CORE_COLLECTION_ALIASES = Object.keys(AI_ASSISTANT_CORE_COLLECTION_ALIAS_OPTIONS)
255
- .reduce(function (acc, key) {
256
- var options = AI_ASSISTANT_CORE_COLLECTION_ALIAS_OPTIONS[key] || [];
257
- var best = options[0];
258
- if (best) {
259
- acc[key] = best;
260
- }
261
- return acc;
262
- }, {});
263
- var AI_ASSISTANT_CORE_DOMAIN_TERM_HINTS = [
264
- {
265
- terms: [
266
- 'report builder',
267
- 'report builder schema',
268
- 'report schema',
269
- 'report designer',
270
- 'build report',
271
- 'custom report',
272
- 'report filters',
273
- 'report columns',
274
- 'report query'
275
- ],
276
- collections: REPORT_COLLECTION_HINT_CANDIDATES
277
- },
278
- {
279
- terms: [
280
- 'dashboard report',
281
- 'dashboard widget',
282
- 'analytics dashboard',
283
- 'kpi dashboard',
284
- 'chart dashboard'
285
- ],
286
- collections: mergeCollectionLists(REPORT_COLLECTION_HINT_CANDIDATES, UI_WIDGET_COLLECTION_HINT_CANDIDATES)
287
- },
288
- {
289
- terms: [
290
- 'login issue',
291
- 'cannot login',
292
- 'log in failed',
293
- 'sign in failed',
294
- 'authentication issue',
295
- 'session issue',
296
- 'access denied'
297
- ],
298
- collections: mergeCollectionLists(AUTH_COLLECTION_HINT_CANDIDATES, PERMISSION_NAV_COLLECTION_HINT_CANDIDATES)
299
- },
300
- {
301
- terms: [
302
- 'collapse table',
303
- 'collapsible table',
304
- 'expandable table',
305
- 'collapse-table',
306
- 'data table',
307
- 'data-table',
308
- 'datatable',
309
- 'data grid',
310
- 'table widget'
311
- ],
312
- collections: TABLE_COLLECTION_HINT_CANDIDATES
313
- },
314
- {
315
- terms: [
316
- 'navbar main',
317
- 'main navbar',
318
- 'navbar module',
319
- 'module navbar',
320
- 'navigation bar',
321
- 'main navigation',
322
- 'module navigation',
323
- 'sidebar navigation',
324
- 'menu bar'
325
- ],
326
- collections: NAV_COLLECTION_HINT_CANDIDATES
327
- },
328
- {
329
- terms: [
330
- 'system settings',
331
- 'system config',
332
- 'system configuration',
333
- 'global settings',
334
- 'platform settings',
335
- 'admin settings',
336
- 'audit log',
337
- 'activity log'
338
- ],
339
- collections: SYSTEM_COLLECTION_HINT_CANDIDATES
340
- }
341
- ];
342
- var AI_ASSISTANT_CORE_COLLECTION_HINT_CANDIDATES = uniqueCollections(mergeCollectionLists(REPORT_COLLECTION_HINT_CANDIDATES, AUTH_COLLECTION_HINT_CANDIDATES, PERMISSION_NAV_COLLECTION_HINT_CANDIDATES, UI_WIDGET_COLLECTION_HINT_CANDIDATES, SYSTEM_COLLECTION_HINT_CANDIDATES, TABLE_COLLECTION_HINT_CANDIDATES, NAV_COLLECTION_HINT_CANDIDATES, Object.values(AI_ASSISTANT_CORE_COLLECTION_ALIAS_OPTIONS)
343
- .reduce(function (acc, group) { return acc.concat(group || []); }, [])));
344
- var AI_ASSISTANT_CORE_COLLECTION_TERM_HINTS = buildCollectionTermHintsFromCandidates(AI_ASSISTANT_CORE_COLLECTION_HINT_CANDIDATES);
345
- var AI_ASSISTANT_CORE_TERM_HINTS = __spreadArray(__spreadArray([], __read(AI_ASSISTANT_CORE_DOMAIN_TERM_HINTS), false), __read(AI_ASSISTANT_CORE_COLLECTION_TERM_HINTS), false).map(function (entry) { return ({
346
- terms: uniqueStrings(entry.terms || []),
347
- collections: uniqueCollections(entry.collections || [])
348
- }); }).filter(function (entry) { return entry.terms.length && entry.collections.length; });
349
- exports.AI_ASSISTANT_CORE_HEURISTICS = Object.freeze({
350
- version: 3,
351
- collection_aliases: AI_ASSISTANT_CORE_COLLECTION_ALIASES,
352
- collection_alias_options: AI_ASSISTANT_CORE_COLLECTION_ALIAS_OPTIONS,
353
- collection_term_hints: AI_ASSISTANT_CORE_TERM_HINTS
354
- });
355
-
356
- //# sourceMappingURL=assistant-core-heuristics.js.map