@besales/mcp 0.47.1 → 1.0.0-beta.2

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 (587) hide show
  1. package/README.md +109 -164
  2. package/README.onprem.ru.md +35 -0
  3. package/bin/besales-mcp-http.js +9 -0
  4. package/bin/besales-onprem.mjs +19 -0
  5. package/dist/auth/connection-store.d.ts +3 -1
  6. package/dist/auth/connection-store.js +9 -3
  7. package/dist/auth/connection-store.js.map +1 -1
  8. package/dist/auth/oauth-client.d.ts +20 -27
  9. package/dist/auth/oauth-client.js +31 -23
  10. package/dist/auth/oauth-client.js.map +1 -1
  11. package/dist/auth/session-workspace.d.ts +1 -0
  12. package/dist/auth/session-workspace.js +10 -1
  13. package/dist/auth/session-workspace.js.map +1 -1
  14. package/dist/auth/token-storage.js +4 -1
  15. package/dist/auth/token-storage.js.map +1 -1
  16. package/dist/cli.d.ts +1 -0
  17. package/dist/cli.js +80 -19
  18. package/dist/cli.js.map +1 -1
  19. package/dist/constants/crm-catalog.d.ts +2 -0
  20. package/dist/constants/crm-catalog.js +3 -0
  21. package/dist/constants/crm-catalog.js.map +1 -0
  22. package/dist/http/api-client.d.ts +52 -7
  23. package/dist/http/api-client.js +131 -66
  24. package/dist/http/api-client.js.map +1 -1
  25. package/dist/http/feedback-document-error.d.ts +26 -0
  26. package/dist/http/feedback-document-error.js +22 -0
  27. package/dist/http/feedback-document-error.js.map +1 -0
  28. package/dist/http-server.d.ts +15 -0
  29. package/dist/http-server.js +378 -0
  30. package/dist/http-server.js.map +1 -0
  31. package/dist/instructions/server-instructions.d.ts +1 -1
  32. package/dist/instructions/server-instructions.js +6 -3
  33. package/dist/instructions/server-instructions.js.map +1 -1
  34. package/dist/network/constants.d.ts +25 -0
  35. package/dist/network/constants.js +26 -0
  36. package/dist/network/constants.js.map +1 -0
  37. package/dist/network/failed-verifications.d.ts +10 -0
  38. package/dist/network/failed-verifications.js +37 -0
  39. package/dist/network/failed-verifications.js.map +1 -0
  40. package/dist/network/http-test-fixture.d.ts +3 -0
  41. package/dist/network/http-test-fixture.js +86 -0
  42. package/dist/network/http-test-fixture.js.map +1 -0
  43. package/dist/network/known-keys.d.ts +10 -0
  44. package/dist/network/known-keys.js +38 -0
  45. package/dist/network/known-keys.js.map +1 -0
  46. package/dist/network/memory-credentials.d.ts +11 -0
  47. package/dist/network/memory-credentials.js +24 -0
  48. package/dist/network/memory-credentials.js.map +1 -0
  49. package/dist/network/rate-limit.d.ts +23 -0
  50. package/dist/network/rate-limit.js +62 -0
  51. package/dist/network/rate-limit.js.map +1 -0
  52. package/dist/network/rejected-keys.d.ts +9 -0
  53. package/dist/network/rejected-keys.js +39 -0
  54. package/dist/network/rejected-keys.js.map +1 -0
  55. package/dist/network/request-work.d.ts +8 -0
  56. package/dist/network/request-work.js +20 -0
  57. package/dist/network/request-work.js.map +1 -0
  58. package/dist/network/successful-keys.d.ts +17 -0
  59. package/dist/network/successful-keys.js +47 -0
  60. package/dist/network/successful-keys.js.map +1 -0
  61. package/dist/resources/concepts/external-execution.md +3 -1
  62. package/dist/resources/concepts/feedback-sheets.md +21 -12
  63. package/dist/resources/concepts/icp.md +8 -1
  64. package/dist/resources/concepts/sandbox.md +15 -6
  65. package/dist/resources/concepts/triggers.md +8 -0
  66. package/dist/resources/concepts/workbook-classification.md +104 -50
  67. package/dist/resources/docs/agent-behavior.md +51 -382
  68. package/dist/resources/docs/campaigns.md +9 -16
  69. package/dist/resources/docs/crm-integration.md +39 -523
  70. package/dist/resources/docs/files-and-uploads.md +23 -286
  71. package/dist/resources/docs/follow-up.md +47 -12
  72. package/dist/resources/docs/knowledge-base.md +52 -521
  73. package/dist/resources/docs/pipeline-builder.md +26 -216
  74. package/dist/resources/docs/pipeline-settings-deep.md +27 -220
  75. package/dist/resources/docs/platforms.md +106 -519
  76. package/dist/resources/docs/prompt-anatomy.md +39 -285
  77. package/dist/resources/docs/routing.md +8 -16
  78. package/dist/resources/docs/trigger-actions.md +40 -24
  79. package/dist/resources/docs/variables.md +8 -12
  80. package/dist/resources/operator-edit.contract.d.ts +7 -0
  81. package/dist/resources/operator-edit.contract.js +8 -0
  82. package/dist/resources/operator-edit.contract.js.map +1 -0
  83. package/dist/resources/registry.js +20 -4
  84. package/dist/resources/registry.js.map +1 -1
  85. package/dist/resources/workflows/audit-dialogues.md +23 -12
  86. package/dist/resources/workflows/compare-models.md +6 -4
  87. package/dist/resources/workflows/connect-crm-from-scratch.md +15 -12
  88. package/dist/resources/workflows/connect-datasource-from-scratch.md +5 -4
  89. package/dist/resources/workflows/extract-from-document.md +8 -6
  90. package/dist/resources/workflows/operator-edit.md +15 -0
  91. package/dist/resources/workflows/platform-setup-from-scratch.md +59 -70
  92. package/dist/resources/workflows/production-readiness-check.md +25 -15
  93. package/dist/schemas/mcp-tools.json +12061 -6753
  94. package/dist/schemas/voice-actions-api.contract.json +248 -0
  95. package/dist/shared/constants/broadcast-reason.constants.d.ts +2 -0
  96. package/dist/shared/constants/broadcast-reason.constants.js +47 -0
  97. package/dist/shared/constants/broadcast-reason.constants.js.map +1 -0
  98. package/dist/shared/constants/crm-stage-pool.constants.d.ts +2 -0
  99. package/dist/shared/constants/crm-stage-pool.constants.js +3 -0
  100. package/dist/shared/constants/crm-stage-pool.constants.js.map +1 -0
  101. package/dist/shared/constants/followup-note.constants.d.ts +3 -0
  102. package/dist/shared/constants/followup-note.constants.js +4 -0
  103. package/dist/shared/constants/followup-note.constants.js.map +1 -0
  104. package/dist/shared/constants/followup-session.constants.d.ts +2 -0
  105. package/dist/shared/constants/followup-session.constants.js +3 -0
  106. package/dist/shared/constants/followup-session.constants.js.map +1 -0
  107. package/dist/shared/constants/funnel-analytics.constants.d.ts +2 -0
  108. package/dist/shared/constants/funnel-analytics.constants.js +3 -0
  109. package/dist/shared/constants/funnel-analytics.constants.js.map +1 -0
  110. package/dist/shared/constants/message-filter.constants.d.ts +7 -0
  111. package/dist/shared/constants/message-filter.constants.js +8 -0
  112. package/dist/shared/constants/message-filter.constants.js.map +1 -0
  113. package/dist/shared/utils/trigger-repeat-mapping.d.ts +72 -0
  114. package/dist/shared/utils/trigger-repeat-mapping.js +53 -0
  115. package/dist/shared/utils/trigger-repeat-mapping.js.map +1 -0
  116. package/dist/skills/besales-dialogue-audit/SKILL.md +31 -20
  117. package/dist/tasks/task-state-store.js +5 -0
  118. package/dist/tasks/task-state-store.js.map +1 -1
  119. package/dist/tools/annotations.js +4 -3
  120. package/dist/tools/annotations.js.map +1 -1
  121. package/dist/tools/definitions/agent-design.d.ts +78 -21
  122. package/dist/tools/definitions/agent-design.js +246 -90
  123. package/dist/tools/definitions/agent-design.js.map +1 -1
  124. package/dist/tools/definitions/agent-model-notice.d.ts +5 -0
  125. package/dist/tools/definitions/agent-model-notice.js +31 -0
  126. package/dist/tools/definitions/agent-model-notice.js.map +1 -0
  127. package/dist/tools/definitions/agent-models.d.ts +5 -0
  128. package/dist/tools/definitions/agent-models.js +26 -0
  129. package/dist/tools/definitions/agent-models.js.map +1 -0
  130. package/dist/tools/definitions/agent-settings.d.ts +85 -0
  131. package/dist/tools/definitions/agent-settings.js +187 -0
  132. package/dist/tools/definitions/agent-settings.js.map +1 -0
  133. package/dist/tools/definitions/ai-costs.d.ts +12 -0
  134. package/dist/tools/definitions/ai-costs.js +142 -0
  135. package/dist/tools/definitions/ai-costs.js.map +1 -0
  136. package/dist/tools/definitions/api-tool-request.d.ts +15 -0
  137. package/dist/tools/definitions/api-tool-request.js +2 -0
  138. package/dist/tools/definitions/api-tool-request.js.map +1 -0
  139. package/dist/tools/definitions/behavior-shipped-form.d.ts +182 -0
  140. package/dist/tools/definitions/behavior-shipped-form.js +185 -0
  141. package/dist/tools/definitions/behavior-shipped-form.js.map +1 -0
  142. package/dist/tools/definitions/broadcast-alerts.d.ts +6 -0
  143. package/dist/tools/definitions/broadcast-alerts.js +72 -0
  144. package/dist/tools/definitions/broadcast-alerts.js.map +1 -0
  145. package/dist/tools/definitions/broadcast-analytics.d.ts +102 -18
  146. package/dist/tools/definitions/broadcast-analytics.js +732 -427
  147. package/dist/tools/definitions/broadcast-analytics.js.map +1 -1
  148. package/dist/tools/definitions/broadcast-scheduler.d.ts +19 -13
  149. package/dist/tools/definitions/broadcast-scheduler.js +217 -128
  150. package/dist/tools/definitions/broadcast-scheduler.js.map +1 -1
  151. package/dist/tools/definitions/call-operator-task.schema.d.ts +11 -0
  152. package/dist/tools/definitions/call-operator-task.schema.js +30 -0
  153. package/dist/tools/definitions/call-operator-task.schema.js.map +1 -0
  154. package/dist/tools/definitions/contacts.d.ts +3 -0
  155. package/dist/tools/definitions/contacts.js +57 -31
  156. package/dist/tools/definitions/contacts.js.map +1 -1
  157. package/dist/tools/definitions/crm-platform.d.ts +28 -39
  158. package/dist/tools/definitions/crm-platform.js +235 -344
  159. package/dist/tools/definitions/crm-platform.js.map +1 -1
  160. package/dist/tools/definitions/crm-stage-pool.messages.d.ts +39 -0
  161. package/dist/tools/definitions/crm-stage-pool.messages.js +43 -0
  162. package/dist/tools/definitions/crm-stage-pool.messages.js.map +1 -0
  163. package/dist/tools/definitions/crm-stage-pool.schema.d.ts +64 -0
  164. package/dist/tools/definitions/crm-stage-pool.schema.js +109 -0
  165. package/dist/tools/definitions/crm-stage-pool.schema.js.map +1 -0
  166. package/dist/tools/definitions/custom-reports.d.ts +12 -0
  167. package/dist/tools/definitions/custom-reports.js +68 -0
  168. package/dist/tools/definitions/custom-reports.js.map +1 -0
  169. package/dist/tools/definitions/datasource.d.ts +2 -1
  170. package/dist/tools/definitions/datasource.js +28 -13
  171. package/dist/tools/definitions/datasource.js.map +1 -1
  172. package/dist/tools/definitions/dialog-review-findings-response.d.ts +14 -0
  173. package/dist/tools/definitions/dialog-review-findings-response.js +23 -0
  174. package/dist/tools/definitions/dialog-review-findings-response.js.map +1 -0
  175. package/dist/tools/definitions/dialog-review-safe-response.d.ts +5 -0
  176. package/dist/tools/definitions/dialog-review-safe-response.js +152 -0
  177. package/dist/tools/definitions/dialog-review-safe-response.js.map +1 -0
  178. package/dist/tools/definitions/dialog-review.d.ts +49 -0
  179. package/dist/tools/definitions/dialog-review.js +383 -0
  180. package/dist/tools/definitions/dialog-review.js.map +1 -0
  181. package/dist/tools/definitions/dialogue-analysis.d.ts +46 -0
  182. package/dist/tools/definitions/dialogue-analysis.js +170 -0
  183. package/dist/tools/definitions/dialogue-analysis.js.map +1 -0
  184. package/dist/tools/definitions/dialogue-audit-agent-scope.d.ts +7 -0
  185. package/dist/tools/definitions/dialogue-audit-agent-scope.js +41 -0
  186. package/dist/tools/definitions/dialogue-audit-agent-scope.js.map +1 -0
  187. package/dist/tools/definitions/dialogue-audit-alias.d.ts +67 -0
  188. package/dist/tools/definitions/dialogue-audit-alias.js +559 -0
  189. package/dist/tools/definitions/dialogue-audit-alias.js.map +1 -0
  190. package/dist/tools/definitions/dialogue-export.d.ts +7 -1
  191. package/dist/tools/definitions/dialogue-export.js +89 -32
  192. package/dist/tools/definitions/dialogue-export.js.map +1 -1
  193. package/dist/tools/definitions/dialogue-followup-state.d.ts +9 -0
  194. package/dist/tools/definitions/dialogue-followup-state.js +69 -0
  195. package/dist/tools/definitions/dialogue-followup-state.js.map +1 -0
  196. package/dist/tools/definitions/edit-version-transport.test-fixtures.d.ts +13 -0
  197. package/dist/tools/definitions/edit-version-transport.test-fixtures.js +292 -0
  198. package/dist/tools/definitions/edit-version-transport.test-fixtures.js.map +1 -0
  199. package/dist/tools/definitions/edit-version.d.ts +5 -0
  200. package/dist/tools/definitions/edit-version.js +20 -0
  201. package/dist/tools/definitions/edit-version.js.map +1 -0
  202. package/dist/tools/definitions/external-api-channels.js +17 -15
  203. package/dist/tools/definitions/external-api-channels.js.map +1 -1
  204. package/dist/tools/definitions/feedback-document-access.d.ts +16 -0
  205. package/dist/tools/definitions/feedback-document-access.js +63 -0
  206. package/dist/tools/definitions/feedback-document-access.js.map +1 -0
  207. package/dist/tools/definitions/fixtures/shipped-setup-status.d.ts +3 -0
  208. package/dist/tools/definitions/fixtures/shipped-setup-status.js +9 -0
  209. package/dist/tools/definitions/fixtures/shipped-setup-status.js.map +1 -0
  210. package/dist/tools/definitions/follow-up-config.d.ts +79 -0
  211. package/dist/tools/definitions/follow-up-config.js +258 -0
  212. package/dist/tools/definitions/follow-up-config.js.map +1 -0
  213. package/dist/tools/definitions/follow-up-funnel-test.d.ts +4 -3
  214. package/dist/tools/definitions/follow-up-funnel-test.js +65 -52
  215. package/dist/tools/definitions/follow-up-funnel-test.js.map +1 -1
  216. package/dist/tools/definitions/follow-up-promotion-instructions.d.ts +2 -0
  217. package/dist/tools/definitions/follow-up-promotion-instructions.js +7 -0
  218. package/dist/tools/definitions/follow-up-promotion-instructions.js.map +1 -0
  219. package/dist/tools/definitions/follow-up-setup.d.ts +4 -28
  220. package/dist/tools/definitions/follow-up-setup.js +20 -87
  221. package/dist/tools/definitions/follow-up-setup.js.map +1 -1
  222. package/dist/tools/definitions/follow-up.d.ts +20 -122
  223. package/dist/tools/definitions/follow-up.js +200 -354
  224. package/dist/tools/definitions/follow-up.js.map +1 -1
  225. package/dist/tools/definitions/followup-getcourse-compat.d.ts +29 -0
  226. package/dist/tools/definitions/followup-getcourse-compat.js +62 -0
  227. package/dist/tools/definitions/followup-getcourse-compat.js.map +1 -0
  228. package/dist/tools/definitions/followup-sequence-config.schema.d.ts +10 -0
  229. package/dist/tools/definitions/followup-sequence-config.schema.js +14 -0
  230. package/dist/tools/definitions/followup-sequence-config.schema.js.map +1 -0
  231. package/dist/tools/definitions/funnel-analytics.d.ts +18 -0
  232. package/dist/tools/definitions/funnel-analytics.js +150 -0
  233. package/dist/tools/definitions/funnel-analytics.js.map +1 -0
  234. package/dist/tools/definitions/getcourse-anchor-refresh.d.ts +5 -9
  235. package/dist/tools/definitions/getcourse-anchor-refresh.js +26 -31
  236. package/dist/tools/definitions/getcourse-anchor-refresh.js.map +1 -1
  237. package/dist/tools/definitions/getcourse-cold-outbound-settings.d.ts +46 -0
  238. package/dist/tools/definitions/getcourse-cold-outbound-settings.js +37 -0
  239. package/dist/tools/definitions/getcourse-cold-outbound-settings.js.map +1 -0
  240. package/dist/tools/definitions/getcourse-cold-welcome.d.ts +17 -29
  241. package/dist/tools/definitions/getcourse-cold-welcome.js +182 -242
  242. package/dist/tools/definitions/getcourse-cold-welcome.js.map +1 -1
  243. package/dist/tools/definitions/getcourse-wave-welcome.messages.d.ts +10 -0
  244. package/dist/tools/definitions/getcourse-wave-welcome.messages.js +17 -0
  245. package/dist/tools/definitions/getcourse-wave-welcome.messages.js.map +1 -0
  246. package/dist/tools/definitions/help.js.map +1 -1
  247. package/dist/tools/definitions/icp-import-source.d.ts +75 -0
  248. package/dist/tools/definitions/icp-import-source.js +88 -0
  249. package/dist/tools/definitions/icp-import-source.js.map +1 -0
  250. package/dist/tools/definitions/inbound-analytics.d.ts +13 -0
  251. package/dist/tools/definitions/inbound-analytics.js +55 -0
  252. package/dist/tools/definitions/inbound-analytics.js.map +1 -0
  253. package/dist/tools/definitions/instagram-comment.templates.d.ts +19 -0
  254. package/dist/tools/definitions/instagram-comment.templates.js +34 -0
  255. package/dist/tools/definitions/instagram-comment.templates.js.map +1 -0
  256. package/dist/tools/definitions/instagram-settings-compat.d.ts +33 -0
  257. package/dist/tools/definitions/instagram-settings-compat.js +7 -0
  258. package/dist/tools/definitions/instagram-settings-compat.js.map +1 -0
  259. package/dist/tools/definitions/knowledge-chunking.d.ts +42 -0
  260. package/dist/tools/definitions/knowledge-chunking.js +83 -0
  261. package/dist/tools/definitions/knowledge-chunking.js.map +1 -0
  262. package/dist/tools/definitions/knowledge-space-search-fields.d.ts +12 -0
  263. package/dist/tools/definitions/knowledge-space-search-fields.js +30 -0
  264. package/dist/tools/definitions/knowledge-space-search-fields.js.map +1 -0
  265. package/dist/tools/definitions/knowledge.d.ts +24 -14
  266. package/dist/tools/definitions/knowledge.js +342 -233
  267. package/dist/tools/definitions/knowledge.js.map +1 -1
  268. package/dist/tools/definitions/legacy-trigger-repeat.d.ts +17 -0
  269. package/dist/tools/definitions/legacy-trigger-repeat.js +53 -0
  270. package/dist/tools/definitions/legacy-trigger-repeat.js.map +1 -0
  271. package/dist/tools/definitions/link-tracking.d.ts +8 -0
  272. package/dist/tools/definitions/link-tracking.js +141 -38
  273. package/dist/tools/definitions/link-tracking.js.map +1 -1
  274. package/dist/tools/definitions/mailing-variant-content.d.ts +75 -0
  275. package/dist/tools/definitions/mailing-variant-content.js +73 -0
  276. package/dist/tools/definitions/mailing-variant-content.js.map +1 -0
  277. package/dist/tools/definitions/model-comparison.d.ts +1 -0
  278. package/dist/tools/definitions/model-comparison.js +4 -5
  279. package/dist/tools/definitions/model-comparison.js.map +1 -1
  280. package/dist/tools/definitions/money-currency.d.ts +5 -0
  281. package/dist/tools/definitions/money-currency.js +10 -0
  282. package/dist/tools/definitions/money-currency.js.map +1 -0
  283. package/dist/tools/definitions/operator-workflow.d.ts +5 -5
  284. package/dist/tools/definitions/operator-workflow.js +80 -27
  285. package/dist/tools/definitions/operator-workflow.js.map +1 -1
  286. package/dist/tools/definitions/platform-funnel-analytics.d.ts +42 -0
  287. package/dist/tools/definitions/platform-funnel-analytics.js +72 -0
  288. package/dist/tools/definitions/platform-funnel-analytics.js.map +1 -0
  289. package/dist/tools/definitions/platform-getcourse-wave-field-bindings.d.ts +42 -0
  290. package/dist/tools/definitions/platform-getcourse-wave-field-bindings.js +51 -0
  291. package/dist/tools/definitions/platform-getcourse-wave-field-bindings.js.map +1 -0
  292. package/dist/tools/definitions/platform-settings-limits.d.ts +5 -0
  293. package/dist/tools/definitions/platform-settings-limits.js +6 -0
  294. package/dist/tools/definitions/platform-settings-limits.js.map +1 -0
  295. package/dist/tools/definitions/platform-settings-shipped-form.d.ts +37 -0
  296. package/dist/tools/definitions/platform-settings-shipped-form.js +310 -0
  297. package/dist/tools/definitions/platform-settings-shipped-form.js.map +1 -0
  298. package/dist/tools/definitions/platform-settings-update.d.ts +300 -0
  299. package/dist/tools/definitions/platform-settings-update.js +134 -0
  300. package/dist/tools/definitions/platform-settings-update.js.map +1 -0
  301. package/dist/tools/definitions/{getcourse-wave.d.ts → platform-setup-wave.d.ts} +75 -6
  302. package/dist/tools/definitions/platform-setup-wave.js +1079 -0
  303. package/dist/tools/definitions/platform-setup-wave.js.map +1 -0
  304. package/dist/tools/definitions/platform-setup.d.ts +701 -222
  305. package/dist/tools/definitions/platform-setup.js +313 -752
  306. package/dist/tools/definitions/platform-setup.js.map +1 -1
  307. package/dist/tools/definitions/platform-widget-page-rules.schema.d.ts +10 -0
  308. package/dist/tools/definitions/platform-widget-page-rules.schema.js +7 -0
  309. package/dist/tools/definitions/platform-widget-page-rules.schema.js.map +1 -0
  310. package/dist/tools/definitions/prompt-authoring.constants.d.ts +2 -0
  311. package/dist/tools/definitions/prompt-authoring.constants.js +3 -0
  312. package/dist/tools/definitions/prompt-authoring.constants.js.map +1 -0
  313. package/dist/tools/definitions/prompt-batch-controls.d.ts +5 -0
  314. package/dist/tools/definitions/prompt-batch-controls.js +40 -0
  315. package/dist/tools/definitions/prompt-batch-controls.js.map +1 -0
  316. package/dist/tools/definitions/prompt-draft-authoring.d.ts +5 -0
  317. package/dist/tools/definitions/prompt-draft-authoring.js +24 -0
  318. package/dist/tools/definitions/prompt-draft-authoring.js.map +1 -0
  319. package/dist/tools/definitions/prompt-text-projection.d.ts +11 -0
  320. package/dist/tools/definitions/prompt-text-projection.js +62 -0
  321. package/dist/tools/definitions/prompt-text-projection.js.map +1 -0
  322. package/dist/tools/definitions/reviewer-paid.d.ts +19 -0
  323. package/dist/tools/definitions/reviewer-paid.js +115 -0
  324. package/dist/tools/definitions/reviewer-paid.js.map +1 -0
  325. package/dist/tools/definitions/routing-condition-projection.d.ts +31 -0
  326. package/dist/tools/definitions/routing-condition-projection.js +97 -0
  327. package/dist/tools/definitions/routing-condition-projection.js.map +1 -0
  328. package/dist/tools/definitions/schedule-selection-hints.d.ts +3 -0
  329. package/dist/tools/definitions/schedule-selection-hints.js +42 -0
  330. package/dist/tools/definitions/schedule-selection-hints.js.map +1 -0
  331. package/dist/tools/definitions/{scheduled-tasks.d.ts → scheduled-task-alias.d.ts} +12 -10
  332. package/dist/tools/definitions/scheduled-task-alias.js +207 -0
  333. package/dist/tools/definitions/scheduled-task-alias.js.map +1 -0
  334. package/dist/tools/definitions/session.js +3 -3
  335. package/dist/tools/definitions/session.js.map +1 -1
  336. package/dist/tools/definitions/setup-init-operation.schema.d.ts +2 -0
  337. package/dist/tools/definitions/setup-init-operation.schema.js +6 -0
  338. package/dist/tools/definitions/setup-init-operation.schema.js.map +1 -0
  339. package/dist/tools/definitions/shared-input.helpers.d.ts +51 -0
  340. package/dist/tools/definitions/shared-input.helpers.js +323 -0
  341. package/dist/tools/definitions/shared-input.helpers.js.map +1 -0
  342. package/dist/tools/definitions/shared.d.ts +414 -284
  343. package/dist/tools/definitions/shared.js +436 -619
  344. package/dist/tools/definitions/shared.js.map +1 -1
  345. package/dist/tools/definitions/shipped-output-names.d.ts +19 -0
  346. package/dist/tools/definitions/shipped-output-names.js +123 -0
  347. package/dist/tools/definitions/shipped-output-names.js.map +1 -0
  348. package/dist/tools/definitions/task-state.d.ts +5 -5
  349. package/dist/tools/definitions/task-state.js +2 -1
  350. package/dist/tools/definitions/task-state.js.map +1 -1
  351. package/dist/tools/definitions/telegram-personal-capacity.d.ts +4 -0
  352. package/dist/tools/definitions/telegram-personal-capacity.js +18 -0
  353. package/dist/tools/definitions/telegram-personal-capacity.js.map +1 -0
  354. package/dist/tools/definitions/telegram-pool-policy.d.ts +8 -0
  355. package/dist/tools/definitions/telegram-pool-policy.js +56 -0
  356. package/dist/tools/definitions/telegram-pool-policy.js.map +1 -0
  357. package/dist/tools/definitions/touch-history-alias.d.ts +4 -0
  358. package/dist/tools/definitions/touch-history-alias.js +99 -0
  359. package/dist/tools/definitions/touch-history-alias.js.map +1 -0
  360. package/dist/tools/definitions/trigger-action-item.schema.d.ts +254 -0
  361. package/dist/tools/definitions/trigger-action-item.schema.js +121 -0
  362. package/dist/tools/definitions/trigger-action-item.schema.js.map +1 -0
  363. package/dist/tools/definitions/trigger-argument.schema.d.ts +14 -0
  364. package/dist/tools/definitions/trigger-argument.schema.js +23 -0
  365. package/dist/tools/definitions/trigger-argument.schema.js.map +1 -0
  366. package/dist/tools/definitions/trigger-claim-alias.d.ts +10 -0
  367. package/dist/tools/definitions/trigger-claim-alias.js +90 -0
  368. package/dist/tools/definitions/trigger-claim-alias.js.map +1 -0
  369. package/dist/tools/definitions/trigger-echo-projection.d.ts +1 -0
  370. package/dist/tools/definitions/trigger-echo-projection.js +41 -0
  371. package/dist/tools/definitions/trigger-echo-projection.js.map +1 -0
  372. package/dist/tools/definitions/trigger-upsert.tool.d.ts +29 -0
  373. package/dist/tools/definitions/trigger-upsert.tool.js +122 -0
  374. package/dist/tools/definitions/trigger-upsert.tool.js.map +1 -0
  375. package/dist/tools/definitions/v15-port-descriptions.d.ts +11 -0
  376. package/dist/tools/definitions/v15-port-descriptions.js +30 -0
  377. package/dist/tools/definitions/v15-port-descriptions.js.map +1 -0
  378. package/dist/tools/definitions/variables.d.ts +44 -0
  379. package/dist/tools/definitions/variables.js +310 -0
  380. package/dist/tools/definitions/variables.js.map +1 -0
  381. package/dist/tools/definitions/voice-action-input.d.ts +9 -0
  382. package/dist/tools/definitions/voice-action-input.js +141 -0
  383. package/dist/tools/definitions/voice-action-input.js.map +1 -0
  384. package/dist/tools/definitions/widget-customization-compat.d.ts +51 -0
  385. package/dist/tools/definitions/widget-customization-compat.js +23 -0
  386. package/dist/tools/definitions/widget-customization-compat.js.map +1 -0
  387. package/dist/tools/definitions.d.ts +1105 -621
  388. package/dist/tools/definitions.js +57 -27
  389. package/dist/tools/definitions.js.map +1 -1
  390. package/dist/tools/description-localization.js +3 -2
  391. package/dist/tools/description-localization.js.map +1 -1
  392. package/dist/tools/follow-up-request.d.ts +19 -0
  393. package/dist/tools/follow-up-request.js +81 -0
  394. package/dist/tools/follow-up-request.js.map +1 -0
  395. package/dist/tools/followup-revision.d.ts +4 -0
  396. package/dist/tools/followup-revision.js +29 -0
  397. package/dist/tools/followup-revision.js.map +1 -0
  398. package/dist/tools/incomplete-list.js +4 -0
  399. package/dist/tools/incomplete-list.js.map +1 -1
  400. package/dist/tools/inventory.js +47 -11
  401. package/dist/tools/inventory.js.map +1 -1
  402. package/dist/tools/operation-recovery.d.ts +4 -0
  403. package/dist/tools/operation-recovery.js +33 -0
  404. package/dist/tools/operation-recovery.js.map +1 -0
  405. package/dist/tools/registry-mapping-primary.cases.d.ts +2 -0
  406. package/dist/tools/registry-mapping-primary.cases.js +753 -0
  407. package/dist/tools/registry-mapping-primary.cases.js.map +1 -0
  408. package/dist/tools/registry-mapping-secondary.cases.d.ts +2 -0
  409. package/dist/tools/registry-mapping-secondary.cases.js +626 -0
  410. package/dist/tools/registry-mapping-secondary.cases.js.map +1 -0
  411. package/dist/tools/registry-mapping.cases.d.ts +8 -0
  412. package/dist/tools/registry-mapping.cases.js +13 -0
  413. package/dist/tools/registry-mapping.cases.js.map +1 -0
  414. package/dist/tools/registry-test-fixtures.d.ts +50 -0
  415. package/dist/tools/registry-test-fixtures.js +120 -0
  416. package/dist/tools/registry-test-fixtures.js.map +1 -0
  417. package/dist/tools/registry.d.ts +2 -0
  418. package/dist/tools/registry.js +82 -52
  419. package/dist/tools/registry.js.map +1 -1
  420. package/dist/tools/result.d.ts +1 -0
  421. package/dist/tools/result.js +90 -22
  422. package/dist/tools/result.js.map +1 -1
  423. package/dist/tools/toolsets.d.ts +16 -0
  424. package/dist/tools/toolsets.js +25 -1
  425. package/dist/tools/toolsets.js.map +1 -1
  426. package/dist/types/api-contract.gen.d.ts +105862 -22115
  427. package/dist/utils/credential-signatures.d.ts +3 -0
  428. package/dist/utils/credential-signatures.js +10 -0
  429. package/dist/utils/credential-signatures.js.map +1 -0
  430. package/dist/utils/data-source-column-name.d.ts +10 -0
  431. package/dist/utils/data-source-column-name.js +36 -0
  432. package/dist/utils/data-source-column-name.js.map +1 -0
  433. package/dist/utils/logger.d.ts +1 -0
  434. package/dist/utils/logger.js +32 -8
  435. package/dist/utils/logger.js.map +1 -1
  436. package/dist/utils/secret-read-boundary.d.ts +2 -0
  437. package/dist/utils/secret-read-boundary.js +88 -0
  438. package/dist/utils/secret-read-boundary.js.map +1 -0
  439. package/dist/utils/setup-secrets.d.ts +4 -0
  440. package/dist/utils/setup-secrets.js +40 -0
  441. package/dist/utils/setup-secrets.js.map +1 -0
  442. package/docs/agent-models.md +9 -0
  443. package/docs/agent-usage-guide.full.ru.md +1 -4
  444. package/docs/analytics-contract.md +67 -0
  445. package/docs/async-operation-lifecycle.md +10 -3
  446. package/docs/connect.ru.md +144 -4
  447. package/docs/contact-company-profile.md +17 -0
  448. package/docs/contact-recommendations.md +7 -0
  449. package/docs/crm-stage-pool.md +73 -0
  450. package/docs/customer-data.md +61 -0
  451. package/docs/edit-versions.md +36 -0
  452. package/docs/failure-semantics.md +17 -9
  453. package/docs/help-navigation.md +15 -42
  454. package/docs/host-compatibility-matrix.md +72 -93
  455. package/docs/host-setup.md +33 -35
  456. package/docs/invariants/public-api-and-contracts.md +16 -0
  457. package/docs/legacy-action-settings.md +21 -0
  458. package/docs/main-transfer-dependencies.md +38 -0
  459. package/docs/mcp2-parity.md +50 -0
  460. package/docs/modules/analytics.md +79 -0
  461. package/docs/modules/besales-mcp.md +137 -0
  462. package/docs/modules/dialog-review-report.md +38 -0
  463. package/docs/modules/dialogue-followup-adapters.md +39 -0
  464. package/docs/modules/message-reactions.md +17 -0
  465. package/docs/modules/network-mode.md +284 -0
  466. package/docs/modules/prompt-batch-and-dialogue-controls.md +69 -0
  467. package/docs/pii-policy.md +21 -16
  468. package/docs/response-size-budget.md +197 -7
  469. package/docs/secret-read-boundary.md +102 -0
  470. package/docs/task-state.md +7 -2
  471. package/docs/telegram-pool-policy.md +19 -0
  472. package/docs/tool-effects.md +15 -9
  473. package/docs/tool-surface.md +205 -4
  474. package/docs/voice-actions-and-inbox.md +95 -0
  475. package/docs/wazzup-instagram-comments.md +26 -0
  476. package/package.json +17 -10
  477. package/scripts/api-source-loader.spec.mjs +40 -0
  478. package/scripts/audit-bridge-controls.mjs +129 -0
  479. package/scripts/audit-revert-mutants.mjs +107 -0
  480. package/scripts/bridge-api-input.spec.mjs +98 -0
  481. package/scripts/bridge-controls-mutants.mjs +130 -0
  482. package/scripts/brx3-shipped-refusals.spec.mjs +149 -0
  483. package/scripts/brx4-ledger-payload.spec.mjs +127 -0
  484. package/scripts/build-onprem.mjs +108 -0
  485. package/scripts/connect-clients.sh +141 -0
  486. package/scripts/connect-scopes.mjs +166 -0
  487. package/scripts/connect-scopes.spec.mjs +83 -0
  488. package/scripts/emit-personal-link-carrier.mjs +31 -0
  489. package/scripts/emit-setup-init-schemas.mjs +24 -0
  490. package/scripts/emit-tool-routes.mjs +878 -0
  491. package/scripts/emit-tool-routes.spec.mjs +300 -0
  492. package/scripts/followup-registry.spec.mjs +107 -0
  493. package/scripts/generate-crm-rotation-contract.mjs +98 -0
  494. package/scripts/generate-followup-session-contract.mjs +16 -0
  495. package/scripts/icp-import-verification/mutate.cjs +70 -0
  496. package/scripts/import-secret-read-contract.mjs +53 -0
  497. package/scripts/install-claude-desktop.js +1 -1
  498. package/scripts/lag-decisions.mjs +37 -0
  499. package/scripts/lag-decisions.spec.mjs +87 -0
  500. package/scripts/lag-open-task-owners.mjs +46 -0
  501. package/scripts/lag-open-task-owners.spec.mjs +78 -0
  502. package/scripts/lag-payload.mjs +10 -0
  503. package/scripts/legacy-action-lag.spec.mjs +22 -0
  504. package/scripts/legacy-field-refusal.shipped.spec.mjs +99 -0
  505. package/scripts/mcpcompat-handler.mjs +34 -0
  506. package/scripts/mcpcompat-loader.mjs +36 -0
  507. package/scripts/mcpcompat-typescript.mjs +3 -0
  508. package/scripts/platform-settings-shipped-parity.spec.mjs +89 -0
  509. package/scripts/prbr-round1-recheck.spec.mjs +605 -0
  510. package/scripts/prbr-shipped-compatibility.spec.mjs +276 -0
  511. package/scripts/publish-mcp-registry.mjs +98 -0
  512. package/scripts/publish-mcp-registry.spec.mjs +68 -0
  513. package/scripts/record-scheduled-task-call.mjs +26 -0
  514. package/scripts/refusal-probe.mjs +17 -0
  515. package/scripts/refusal-probe.spec.mjs +29 -0
  516. package/scripts/registry-diff.mjs +502 -0
  517. package/scripts/registry-diff.spec.mjs +787 -0
  518. package/scripts/request-query.mjs +43 -0
  519. package/scripts/request-query.spec.mjs +82 -0
  520. package/scripts/route-lag.mjs +23 -0
  521. package/scripts/route-lag.spec.mjs +30 -0
  522. package/scripts/sample-args.mjs +174 -0
  523. package/scripts/sample-args.spec.mjs +160 -0
  524. package/scripts/shipped-definitions.mjs +197 -0
  525. package/scripts/shipped-definitions.spec.mjs +57 -0
  526. package/scripts/shipped-inputs.spec.mjs +136 -0
  527. package/scripts/shipped-recordings.spec.mjs +19 -0
  528. package/scripts/shipped-ref.d.mts +5 -0
  529. package/scripts/shipped-ref.mjs +20 -0
  530. package/scripts/shipped-ref.spec.mjs +59 -0
  531. package/scripts/shipped-registry.mjs +107 -0
  532. package/scripts/shipped-sample-candidates.mjs +69 -0
  533. package/scripts/shipped-sample-candidates.spec.mjs +117 -0
  534. package/scripts/shipped-sample.mjs +868 -0
  535. package/scripts/shipped-sample.spec.mjs +451 -0
  536. package/scripts/sync-agent-model-schemas.mjs +72 -0
  537. package/scripts/sync-api-contracts.mjs +85 -0
  538. package/scripts/sync-api-contracts.spec.mjs +144 -0
  539. package/scripts/sync-contract-ledger-schemas.mjs +161 -0
  540. package/scripts/sync-crm-stage-pool-schema.mjs +85 -0
  541. package/scripts/sync-prompt-draft-schema.mjs +92 -0
  542. package/scripts/sync-route-map.mjs +94 -0
  543. package/scripts/sync-schema-descriptions.mjs +25 -0
  544. package/scripts/sync-tool-inventory.mjs +27 -0
  545. package/scripts/sync-trigger-argument-schema.mjs +121 -0
  546. package/scripts/sync-trigger-repeat-mapping.mjs +12 -0
  547. package/scripts/sync-voice-actions-contract.mjs +67 -0
  548. package/scripts/sync-voice-actions-tools.mjs +97 -0
  549. package/scripts/sync-wave-id-schemas.mjs +55 -0
  550. package/scripts/tool-input-schemas.mjs +46 -0
  551. package/scripts/tool-input-schemas.spec.mjs +50 -0
  552. package/scripts/verify-followup-adapters.mjs +235 -0
  553. package/scripts/verify-secret-read-import.mjs +84 -0
  554. package/scripts/verify-secret-read-mutants.mjs +143 -0
  555. package/dist/tools/definitions/analytics.d.ts +0 -40
  556. package/dist/tools/definitions/analytics.js +0 -233
  557. package/dist/tools/definitions/analytics.js.map +0 -1
  558. package/dist/tools/definitions/broadcast-mailing-variants.d.ts +0 -41
  559. package/dist/tools/definitions/broadcast-mailing-variants.js +0 -194
  560. package/dist/tools/definitions/broadcast-mailing-variants.js.map +0 -1
  561. package/dist/tools/definitions/dialogue-audit.d.ts +0 -38
  562. package/dist/tools/definitions/dialogue-audit.js +0 -292
  563. package/dist/tools/definitions/dialogue-audit.js.map +0 -1
  564. package/dist/tools/definitions/getcourse-wave.js +0 -519
  565. package/dist/tools/definitions/getcourse-wave.js.map +0 -1
  566. package/dist/tools/definitions/operational-overview.d.ts +0 -3
  567. package/dist/tools/definitions/operational-overview.js +0 -23
  568. package/dist/tools/definitions/operational-overview.js.map +0 -1
  569. package/dist/tools/definitions/scheduled-tasks.js +0 -173
  570. package/dist/tools/definitions/scheduled-tasks.js.map +0 -1
  571. package/dist/tools/definitions/trigger-contact-claims.d.ts +0 -7
  572. package/dist/tools/definitions/trigger-contact-claims.js +0 -60
  573. package/dist/tools/definitions/trigger-contact-claims.js.map +0 -1
  574. package/dist/tools/registry-mapping-cases-core.d.ts +0 -38
  575. package/dist/tools/registry-mapping-cases-core.js +0 -927
  576. package/dist/tools/registry-mapping-cases-core.js.map +0 -1
  577. package/dist/tools/registry-mapping-cases-platform.d.ts +0 -2
  578. package/dist/tools/registry-mapping-cases-platform.js +0 -1052
  579. package/dist/tools/registry-mapping-cases-platform.js.map +0 -1
  580. package/dist/tools/trigger-action-config.d.ts +0 -49
  581. package/dist/tools/trigger-action-config.js +0 -171
  582. package/dist/tools/trigger-action-config.js.map +0 -1
  583. package/docs/evals/model-behavior-scorecard.md +0 -80
  584. package/docs/operation-coverage.md +0 -114
  585. package/scripts/mock-credentials.js +0 -77
  586. package/scripts/model-eval-server.js +0 -213
  587. package/scripts/run-model-eval.js +0 -447
@@ -0,0 +1,97 @@
1
+ /**
2
+ * Обратная проекция условий правила роутинга: каноническая группа условий → форма контракта.
3
+ *
4
+ * Бэкенд хранит условие единой группой (`{combinator, rules:[{lhs, operator, value}]}`), а
5
+ * контракт инструментов говорит на языке `condition_logic` + `conditions[]`. Перевод в эту
6
+ * сторону — обязанность моста: без него клиент прочитал бы правило в одном виде, а отправить
7
+ * правку мог бы только в другом, то есть «прочитал → поправил → отправил» не замыкался бы.
8
+ *
9
+ * Отдаются ОБЕ формы значения: набор и одиночное значение как зеркало первого элемента —
10
+ * ровно то, что принимает запись.
11
+ */
12
+ /**
13
+ * Проецирует условие правила «по значению переменной».
14
+ *
15
+ * @returns `null`, если правило другого типа или форма группы пресету не соответствует —
16
+ * тогда сырая группа остаётся в ответе как есть, и клиент видит правду вместо догадки.
17
+ */
18
+ export function projectRoutingRuleCondition(rule) {
19
+ if (!isRecord(rule) || rule['conditionType'] !== 'VARIABLE') {
20
+ return null;
21
+ }
22
+ const group = rule['condition'];
23
+ if (!isRecord(group) || !Array.isArray(group['rules'])) {
24
+ return null;
25
+ }
26
+ const combinator = group['combinator'];
27
+ if (combinator !== 'AND' && combinator !== 'OR') {
28
+ return null;
29
+ }
30
+ const conditions = [];
31
+ for (const node of group['rules']) {
32
+ const projected = projectRule(node);
33
+ if (projected === null) {
34
+ // Одно неподходящее правило делает недостоверной всю проекцию: отдать половину значило бы
35
+ // показать правило, которого нет.
36
+ return null;
37
+ }
38
+ conditions.push(projected);
39
+ }
40
+ if (conditions.length === 0) {
41
+ return null;
42
+ }
43
+ return { condition_logic: combinator === 'OR' ? 'ANY' : 'ALL', conditions };
44
+ }
45
+ function projectRule(node) {
46
+ if (!isRecord(node) || 'combinator' in node) {
47
+ return null;
48
+ }
49
+ const lhs = node['lhs'];
50
+ if (!isRecord(lhs) || lhs['source'] !== 'variable' || typeof lhs['variableId'] !== 'string') {
51
+ return null;
52
+ }
53
+ const values = readValues(node['operator'], node['value']);
54
+ if (values === null) {
55
+ return null;
56
+ }
57
+ return {
58
+ custom_variable_id: lhs['variableId'],
59
+ variable_values: values,
60
+ variable_value: values[0] ?? '',
61
+ };
62
+ }
63
+ /**
64
+ * Набор значений условия: канон — `in` с массивом, прежняя форма `eq` со скаляром.
65
+ *
66
+ * Пустой набор проекции не имеет: показать его пришлось бы одиночным значением `''`, которого в
67
+ * правиле нет, а отправить обратно клиент такую форму не может — схема записи требует непустой
68
+ * набор. Честнее отдать сырую группу.
69
+ */
70
+ function readValues(operator, value) {
71
+ if (operator === 'in' &&
72
+ Array.isArray(value) &&
73
+ value.length > 0 &&
74
+ value.every((item) => typeof item === 'string' && item !== '')) {
75
+ return value;
76
+ }
77
+ if (operator === 'eq' && typeof value === 'string' && value !== '') {
78
+ return [value];
79
+ }
80
+ return null;
81
+ }
82
+ /** Дополняет одно правило проекцией условия; форму ответа в остальном не трогает. */
83
+ export function withProjectedRoutingRule(response) {
84
+ const projected = projectRoutingRuleCondition(response);
85
+ return projected === null || !isRecord(response) ? response : { ...response, ...projected };
86
+ }
87
+ /** То же для снимка настроек площадки, где правила лежат списком. */
88
+ export function withProjectedRoutingRules(response) {
89
+ if (!isRecord(response) || !Array.isArray(response['routingRules'])) {
90
+ return response;
91
+ }
92
+ return { ...response, routingRules: response['routingRules'].map(withProjectedRoutingRule) };
93
+ }
94
+ function isRecord(value) {
95
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
96
+ }
97
+ //# sourceMappingURL=routing-condition-projection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routing-condition-projection.js","sourceRoot":"","sources":["../../../src/tools/definitions/routing-condition-projection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAaH;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CAAC,IAAa;IACvD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,UAAU,EAAE,CAAC;QAC5D,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;IAChC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QACvD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,UAAU,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;IACvC,IAAI,UAAU,KAAK,KAAK,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,UAAU,GAAgC,EAAE,CAAC;IACnD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QAClC,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,0FAA0F;YAC1F,kCAAkC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,EAAE,eAAe,EAAE,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC;AAC9E,CAAC;AAED,SAAS,WAAW,CAAC,IAAa;IAChC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;IACxB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,UAAU,IAAI,OAAO,GAAG,CAAC,YAAY,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC5F,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3D,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,kBAAkB,EAAE,GAAG,CAAC,YAAY,CAAC;QACrC,eAAe,EAAE,MAAM;QACvB,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE;KAChC,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAS,UAAU,CAAC,QAAiB,EAAE,KAAc;IACnD,IACE,QAAQ,KAAK,IAAI;QACjB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACpB,KAAK,CAAC,MAAM,GAAG,CAAC;QAChB,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,EAAE,CAAC,EAC9D,CAAC;QACD,OAAO,KAA0B,CAAC;IACpC,CAAC;IACD,IAAI,QAAQ,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QACnE,OAAO,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,wBAAwB,CAAC,QAAiB;IACxD,MAAM,SAAS,GAAG,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IACxD,OAAO,SAAS,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,GAAG,SAAS,EAAE,CAAC;AAC9F,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,yBAAyB,CAAC,QAAiB;IACzD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC;QACpE,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,EAAE,GAAG,QAAQ,EAAE,YAAY,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,wBAAwB,CAAC,EAAE,CAAC;AAC/F,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare const SCHEDULE_EXCLUSION_HINT: string;
2
+ export declare const SCHEDULE_POOL_GROUPS_HINT = "excluded \u2014 \u043B\u044E\u0434\u0438 \u043F\u043E \u0433\u0440\u0443\u043F\u043F\u0430\u043C {group, label, count, legacy}; \u0447\u0435\u043B\u043E\u0432\u0435\u043A\u0443 \u043D\u0430\u0437\u044B\u0432\u0430\u0439 label. noMessenger \u2014 \u043D\u0435\u0442 \u043C\u0435\u0441\u0441\u0435\u043D\u0434\u0436\u0435\u0440\u0430; inContact \u2014 \u044D\u0442\u0438\u043C \u0441\u0435\u0433\u043C\u0435\u043D\u0442\u043E\u043C \u0443\u0436\u0435 \u043F\u0438\u0441\u0430\u043B\u0438, \u0438\u0434\u0451\u0442 \u0440\u0430\u0437\u0433\u043E\u0432\u043E\u0440 \u0438\u043B\u0438 \u0442\u0440\u043E\u0435 \u0441\u0443\u0442\u043E\u043A \u0442\u0438\u0448\u0438\u043D\u044B \u043F\u043E\u0441\u043B\u0435 \u043D\u0430\u0448\u0435\u0439 \u0440\u0435\u043F\u043B\u0438\u043A\u0438, \u043F\u0430\u0443\u0437\u0430 \u043F\u043E\u0432\u0442\u043E\u0440\u0430 \u0441\u0435\u0433\u043C\u0435\u043D\u0442\u0430, \u043F\u0430\u0443\u0437\u0430 \u043F\u043E\u0441\u043B\u0435 \u043B\u044E\u0431\u043E\u0433\u043E \u043D\u0430\u0448\u0435\u0433\u043E \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u044F (\u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0430 \u00AB\u041D\u0435 \u043F\u0438\u0441\u0430\u0442\u044C, \u0435\u0441\u043B\u0438 \u043F\u0438\u0441\u0430\u043B\u0438 \u0437\u0430 N \u0434\u043D\u0435\u0439\u00BB), \u043F\u043E\u0434\u0430\u0447\u0430 \u044D\u0442\u0438\u043C \u0440\u0430\u0441\u043F\u0438\u0441\u0430\u043D\u0438\u0435\u043C \u0443\u0448\u043B\u0430 \u0438\u043B\u0438 \u0435\u0449\u0451 \u0438\u0434\u0451\u0442; paid \u2014 \u043A\u0443\u043F\u0438\u043B; withManager \u2014 \u0441 \u0447\u0435\u043B\u043E\u0432\u0435\u043A\u043E\u043C \u0440\u0430\u0431\u043E\u0442\u0430\u0435\u0442 \u043C\u0435\u043D\u0435\u0434\u0436\u0435\u0440: \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u044E\u0449\u0430\u044F \u0437\u0430\u044F\u0432\u043A\u0430 \u043D\u0430 \u043F\u0440\u043E\u0434\u0443\u043A\u0442 \u043F\u043E\u0441\u043B\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438, \u043F\u043E \u043A\u043E\u0442\u043E\u0440\u043E\u0439 \u043E\u043D \u043F\u043E\u043F\u0430\u043B \u0432 \u0441\u0435\u0433\u043C\u0435\u043D\u0442, \u043E\u043F\u0435\u0440\u0430\u0442\u043E\u0440\u0441\u043A\u0438\u0439 \u0441\u0442\u0430\u0442\u0443\u0441 \u0438\u043B\u0438 \u043F\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u0434\u0438\u0430\u043B\u043E\u0433\u0430 \u0432 \u043E\u0442\u0434\u0435\u043B \u043C\u043E\u043B\u043E\u0436\u0435 \u0442\u0440\u0451\u0445 \u0441\u0443\u0442\u043E\u043A; blocked \u2014 \u0431\u0430\u043D, \u043E\u0442\u043A\u0430\u0437 \u043E\u0442 \u0440\u0430\u0441\u0441\u044B\u043B\u043E\u043A, \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u044E\u0449\u0438\u0439 \u043C\u044C\u044E\u0442 \u0438\u043B\u0438 \u043F\u043E\u0433\u043B\u043E\u0449\u0435\u043D\u0438\u0435 \u0441\u043B\u0438\u044F\u043D\u0438\u0435\u043C (\u0443\u0434\u0430\u043B\u0451\u043D\u043D\u0443\u044E \u043E\u043F\u0435\u0440\u0430\u0442\u043E\u0440\u043E\u043C \u043A\u0430\u0440\u0442\u043E\u0447\u043A\u0443 \u043E\u0442\u043F\u0440\u0430\u0432\u043A\u0430 \u043E\u0436\u0438\u0432\u0438\u0442); activeSeries \u2014 \u0441\u0435\u0440\u0438\u044F \u0438\u0434\u0451\u0442; retryPause \u2014 \u043F\u0430\u0443\u0437\u0430 \u043F\u043E\u0441\u043B\u0435 \u043D\u0435\u0443\u0434\u0430\u0447\u043D\u043E\u0439 \u043F\u043E\u043F\u044B\u0442\u043A\u0438; overCap \u2014 \u0434\u043D\u0435\u0432\u043D\u043E\u0439 \u043F\u043E\u0442\u043E\u043B\u043E\u043A; higherPriority \u2014 \u0441\u0442\u0430\u0440\u0448\u0438\u0439 \u0441\u0435\u0433\u043C\u0435\u043D\u0442; otherPlatform \u2014 notHandoffCandidate, cardOnSiblingPlatform, handoffReturn, handoffOperatorTrace, handoffSeriesRunning, handoffDialogOpen; other \u2014 guardUnverified, invalidIdentifier, noPreviousTouch, repeatNoCard. form=LEGACY \u2014 \u0440\u0430\u0441\u043A\u043B\u0430\u0434 \u043F\u043E\u0441\u0447\u0438\u0442\u0430\u043D \u043F\u0440\u0435\u0436\u043D\u0438\u043C \u0443\u0447\u0451\u0442\u043E\u043C (\u0440\u0430\u0441\u0447\u0451\u0442\u044B \u043F\u0440\u0435\u0436\u043D\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043C\u044B \u0434\u043E 22.09.2026): \u0441\u0442\u0440\u043E\u043A\u0438 \u043A\u0430\u043A \u0431\u044B\u043B\u0438, \u0442\u043E\u043B\u044C\u043A\u043E \u043D\u0435\u043D\u0443\u043B\u0435\u0432\u044B\u0435. legacy=true \u0443 \u043F\u0440\u0435\u0436\u043D\u0438\u0445 \u0433\u0440\u0443\u043F\u043F alreadyWritten (\u0443\u0436\u0435 \u043F\u0438\u0441\u0430\u043B\u0438), held (\u043A\u0443\u043F\u0438\u043B, \u043C\u0435\u043D\u0435\u0434\u0436\u0435\u0440, \u0431\u0430\u043D \u0438\u043B\u0438 \u043C\u044C\u044E\u0442), pause (\u043F\u0430\u0443\u0437\u0430): \u043D\u0430\u0437\u044B\u0432\u0430\u0439 \u0438\u0445 \u0442\u0430\u043A \u0438 \u0441 \u043D\u043E\u0432\u044B\u043C\u0438 \u0433\u0440\u0443\u043F\u043F\u0430\u043C\u0438 \u043D\u0435 \u0441\u043A\u043B\u0430\u0434\u044B\u0432\u0430\u0439. \u0423 \u0437\u0430\u043F\u0443\u0441\u043A\u043E\u0432 \u0434\u043E 16.09.2026 (facts.scheduleRuns[].selection) \u043A \u043D\u043E\u0432\u044B\u043C \u0433\u0440\u0443\u043F\u043F\u0430\u043C \u0434\u043E\u0431\u0430\u0432\u043B\u044F\u044E\u0442\u0441\u044F \u043F\u0440\u0435\u0436\u043D\u0438\u0435 held \u0438 pause, \u0442\u043E\u043B\u044C\u043A\u043E \u043D\u0435\u043D\u0443\u043B\u0435\u0432\u044B\u0435, \u0441 legacy=true.";
3
+ export declare const SCHEDULE_CLOSE_CLASS_HINT = "closeReasonClass \u2014 \u0440\u043E\u0434 \u043F\u0440\u0438\u0447\u0438\u043D\u044B \u0434\u043B\u044F \u0442\u0435\u0431\u044F, \u0447\u0435\u043B\u043E\u0432\u0435\u043A\u0443 \u043D\u0430\u0437\u044B\u0432\u0430\u0439 error: ANSWER \u2014 \u0437\u0430\u043A\u043E\u043D\u043D\u044B\u0439 \u043E\u0442\u0432\u0435\u0442 \u00AB\u0441\u0435\u0433\u043E\u0434\u043D\u044F \u043D\u0435\u043A\u043E\u043C\u0443\u00BB, \u0447\u0438\u043D\u0438\u0442\u044C \u043D\u0435\u0447\u0435\u0433\u043E; FAILURE \u2014 \u0440\u0430\u0441\u0441\u044B\u043B\u043A\u0430 \u043D\u0435 \u0441\u043E\u0441\u0442\u043E\u044F\u043B\u0430\u0441\u044C \u0438\u043B\u0438 \u043E\u0431\u043E\u0440\u0432\u0430\u043B\u0430\u0441\u044C, \u0432\u043A\u043B\u044E\u0447\u0430\u044F \u043E\u0431\u0440\u044B\u0432 \u0438\u0441\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044F \u043C\u0435\u0436\u0434\u0443 \u0447\u0430\u0441\u0442\u044F\u043C\u0438: \u0447\u0438\u043D\u0438\u0442 \u043E\u043F\u0435\u0440\u0430\u0442\u043E\u0440, \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0430 \u0438\u043B\u0438 \u0432\u0440\u0435\u043C\u044F; OPERATOR \u2014 \u0447\u0435\u043B\u043E\u0432\u0435\u043A \u0437\u0430\u043F\u0440\u043E\u0441\u0438\u043B \u043E\u0441\u0442\u0430\u043D\u043E\u0432\u043A\u0443 \u043F\u0430\u043A\u0435\u0442\u0430, \u0441\u0435\u0440\u0432\u0435\u0440 \u0441\u0442\u0430\u0432\u0438\u0442 \u043A\u043B\u0430\u0441\u0441 \u0442\u043E\u043B\u044C\u043A\u043E \u043F\u0440\u0438 \u0437\u0430\u043F\u0438\u0441\u0430\u043D\u043D\u043E\u043C \u0437\u0430\u043F\u0440\u043E\u0441\u0435 \u043E\u0442\u043C\u0435\u043D\u044B; UNKNOWN \u2014 \u043F\u0440\u0438\u0447\u0438\u043D\u0430 \u043F\u0440\u0435\u0436\u043D\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043C\u044B \u043D\u0435 \u043E\u043F\u043E\u0437\u043D\u0430\u043D\u0430, \u0435\u0451 \u0442\u0435\u043A\u0441\u0442 \u0432 error.";
@@ -0,0 +1,42 @@
1
+ /** Подсказки отбора: один текст для предпросмотра, истории прогонов, пула и истории запусков. */
2
+ const reasons = {
3
+ alreadySentSegment: 'Этим сегментом уже слали. Повтор по новой регистрации работает у продолжения без previousSegment: регистрация должна быть новее последнего касания и пауза должна истечь; продукт регистрации повтор не ограничивает. «Только нетронутым» сохраняет право первого сообщения.',
4
+ alreadyGreeted: 'Человек уже получал «Первое сообщение»; оно одно на человека навсегда.',
5
+ activeEpisode: 'Человека ведёт автоприём регистраций; дождись окончания.',
6
+ touchClaimed: 'Занято право этого сегмента либо тот же шаблон недавно использовал другой сегмент. Во втором случае запрет временный: спустя больше трёх суток отпускает, ровно трое суток ещё удерживают.',
7
+ contactBlocked: 'Бан, отказ от рассылок, действующий мьют или карточка, поглощённая слиянием. Удалённая оператором карточка не держит: отправка её оживит, если человеку можно писать.',
8
+ contactWithManager: 'С человеком работает менеджер: операторский статус или передача диалога в отдел моложе трёх суток.',
9
+ alreadyInDialog: 'Идёт живой разговор: человек написал после нашей последней реплики.',
10
+ dialogQuiet: 'Пауза тишины после нашей реплики; человек вернётся в пул сам.',
11
+ cooldown: 'Получал нашу рассылку в окне тихого периода; дождись срока.',
12
+ resendPause: 'Пауза повтора сегмента ещё идёт; дождись срока.',
13
+ contactReplied: 'Повтор: человек уже отвечал; повтор не положен.',
14
+ invalidIdentifier: 'Номер ученика непригоден; исправь источник.',
15
+ collapsedDuplicates: 'Несколько продуктовых строк человека свёрнуты в одну; это не отдельный потерянный человек.',
16
+ skipAfterSegment: 'Текст сегмента из skip_after_segment_ids ушёл не раньше регистрации, по которой человек попал в пул. Регистрация новее касания открывает человека снова; неизвестная регистрация запрет не снимает.',
17
+ journalSubmitted: 'Журнал этого расписания держит поданного человека или уже состоявшуюся отправку.',
18
+ journalNoMessenger: 'Карточку не завели или каналами не достать; пауза 7 суток снимается сроком или сменой каналов.',
19
+ journalRetryPause: 'Прошлая попытка не удалась; пауза ещё идёт, дождись срока.',
20
+ notHandoffCandidate: 'Журнал держит отказ прошлой передачи с соседнего канала школы; проверь условия передачи.',
21
+ noPreviousTouch: 'У повтора нет последнего базового касания; это правило повтора, не сбой.',
22
+ previousTouchTooRecent: 'Базовое касание свежее порога давности; человек войдёт в повтор сам.',
23
+ repeatNoCard: 'Кандидат на повтор, но карточки на канале расписания нет — ни живой, ни удалённой оператором (удалённую отправка оживит). У повтора импорта нет: без карточки не проверить ответы и дожимы.',
24
+ cardOnSiblingPlatform: 'Человека ведёт другой канал школы, передача выключена; включи handoff_from_school_platforms.',
25
+ handoffReturn: 'Передача уже увозила человека с этого канала по той же регистрации; новая регистрация снимает запрет кольца.',
26
+ handoffOperatorTrace: 'С человеком работал живой сотрудник школы; передаче он не достаётся никогда.',
27
+ handoffSeriesRunning: 'На прежнем канале ещё идёт серия или даты эфира нет; передача ждёт её конца.',
28
+ handoffDialogOpen: 'Разговор ещё идёт; через трое суток тишины человек снова кандидат.',
29
+ claimedByHigherPriority: 'Человек удержан старшим сегментом. День запуска и дневной потолок старшего здесь не проверяются: отсев приоритетом не гарантирует отправку человеку. При FRESH_FIRST избыток может выйти из окна, так и не получив сообщения. После новой регистрации старший удерживает человека, если сам повторяет сегмент; иначе младший получает его только при доказанно другом продукте всех отправок старшего. Неизвестный продукт или последнее касание только в журнале удерживают.',
30
+ noMessengerVerdict: 'Школа ответила, что мессенджеров нет. Ответ в силе, пока новее полуночи дня запуска минус getcourse_settings.reachability_ttl_days (по умолчанию 7 суток пояса канала). Добавь почту В ДВУХ местах: в способы отправки канала и каналы расписания.',
31
+ notReachable: 'Выбранными каналами не достать — доказано свежим ответом школы; проверь способы отправки.',
32
+ guardPaid: 'Предохранитель нашёл оплату; отправка не положена.',
33
+ guardActiveApplication: 'Предохранитель нашёл живую заявку; человека ведёт менеджер.',
34
+ guardActiveSeries: 'Предохранитель нашёл идущую серию; дождись окончания.',
35
+ guardUnverified: 'Предохранитель не смог проверить человека; восстанови доступ к источнику.',
36
+ blockPlaceholdersUnresolved: 'Люди блока «продукт × воронка», снятого из-за переменных текста: SKIPPED_UNRESOLVED_VARS, пауза 6 часов. После паузы возвращаются к следующему запуску; пока значения переменных или перекрытия агента не исправлены, блок снимается каждый запуск. Места dailyCap уже заняты, замены в этом прогоне не добираются. Имена переменных — в причине строк журнала. Пакет расписания не ограничен числом таких блоков; droppedOverBlockLimit — исторический счётчик.',
37
+ overCap: 'Не поместились в дневной потолок; предохранитель их не проверял. Могут вернуться следующим запуском, пока не вышли из окна свежести.',
38
+ };
39
+ export const SCHEDULE_EXCLUSION_HINT = `Показывай excludedBy числами; null — причины не записаны. ${Object.entries(reasons).map(([key, text]) => `${key} — ${text}`).join(' ')}`;
40
+ export const SCHEDULE_POOL_GROUPS_HINT = 'excluded — люди по группам {group, label, count, legacy}; человеку называй label. noMessenger — нет мессенджера; inContact — этим сегментом уже писали, идёт разговор или трое суток тишины после нашей реплики, пауза повтора сегмента, пауза после любого нашего сообщения (настройка «Не писать, если писали за N дней»), подача этим расписанием ушла или ещё идёт; paid — купил; withManager — с человеком работает менеджер: действующая заявка на продукт после регистрации, по которой он попал в сегмент, операторский статус или передача диалога в отдел моложе трёх суток; blocked — бан, отказ от рассылок, действующий мьют или поглощение слиянием (удалённую оператором карточку отправка оживит); activeSeries — серия идёт; retryPause — пауза после неудачной попытки; overCap — дневной потолок; higherPriority — старший сегмент; otherPlatform — notHandoffCandidate, cardOnSiblingPlatform, handoffReturn, handoffOperatorTrace, handoffSeriesRunning, handoffDialogOpen; other — guardUnverified, invalidIdentifier, noPreviousTouch, repeatNoCard. form=LEGACY — расклад посчитан прежним учётом (расчёты прежней системы до 22.09.2026): строки как были, только ненулевые. legacy=true у прежних групп alreadyWritten (уже писали), held (купил, менеджер, бан или мьют), pause (пауза): называй их так и с новыми группами не складывай. У запусков до 16.09.2026 (facts.scheduleRuns[].selection) к новым группам добавляются прежние held и pause, только ненулевые, с legacy=true.';
41
+ export const SCHEDULE_CLOSE_CLASS_HINT = 'closeReasonClass — род причины для тебя, человеку называй error: ANSWER — законный ответ «сегодня некому», чинить нечего; FAILURE — рассылка не состоялась или оборвалась, включая обрыв исполнителя между частями: чинит оператор, настройка или время; OPERATOR — человек запросил остановку пакета, сервер ставит класс только при записанном запросе отмены; UNKNOWN — причина прежней системы не опознана, её текст в error.';
42
+ //# sourceMappingURL=schedule-selection-hints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schedule-selection-hints.js","sourceRoot":"","sources":["../../../src/tools/definitions/schedule-selection-hints.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,MAAM,OAAO,GAAqC;IAChD,kBAAkB,EAAE,8QAA8Q;IAClS,cAAc,EAAE,wEAAwE;IACxF,aAAa,EAAE,0DAA0D;IACzE,YAAY,EAAE,4LAA4L;IAC1M,cAAc,EAAE,uKAAuK;IACvL,kBAAkB,EAAE,oGAAoG;IACxH,eAAe,EAAE,qEAAqE;IACtF,WAAW,EAAE,+DAA+D;IAC5E,QAAQ,EAAE,6DAA6D;IACvE,WAAW,EAAE,iDAAiD;IAC9D,cAAc,EAAE,iDAAiD;IACjE,iBAAiB,EAAE,6CAA6C;IAChE,mBAAmB,EAAE,4FAA4F;IACjH,gBAAgB,EAAE,qMAAqM;IACvN,gBAAgB,EAAE,kFAAkF;IACpG,kBAAkB,EAAE,gGAAgG;IACpH,iBAAiB,EAAE,4DAA4D;IAC/E,mBAAmB,EAAE,0FAA0F;IAC/G,eAAe,EAAE,0EAA0E;IAC3F,sBAAsB,EAAE,sEAAsE;IAC9F,YAAY,EAAE,6LAA6L;IAC3M,qBAAqB,EAAE,8FAA8F;IACrH,aAAa,EAAE,8GAA8G;IAC7H,oBAAoB,EAAE,8EAA8E;IACpG,oBAAoB,EAAE,8EAA8E;IACpG,iBAAiB,EAAE,oEAAoE;IACvF,uBAAuB,EAAE,+cAA+c;IACxe,kBAAkB,EAAE,oPAAoP;IACxQ,YAAY,EAAE,2FAA2F;IACzG,SAAS,EAAE,oDAAoD;IAC/D,sBAAsB,EAAE,6DAA6D;IACrF,iBAAiB,EAAE,uDAAuD;IAC1E,eAAe,EAAE,2EAA2E;IAC5F,2BAA2B,EAAE,kcAAkc;IAC/d,OAAO,EAAE,sIAAsI;CAChJ,CAAC;AACF,MAAM,CAAC,MAAM,uBAAuB,GAAG,6DAA6D,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AACjL,MAAM,CAAC,MAAM,yBAAyB,GAAG,m7CAAm7C,CAAC;AAC79C,MAAM,CAAC,MAAM,yBAAyB,GAAG,maAAma,CAAC"}
@@ -1,13 +1,16 @@
1
- export declare const scheduledTaskTools: (import("./shared.js").ToolDefinition<{
1
+ export declare const scheduledTaskAliasTools: readonly [import("./shared.js").ToolDefinition<{
2
2
  platform_id: string;
3
- }> | import("./shared.js").ToolDefinition<{
3
+ workspace_id?: string | undefined;
4
+ }>, import("./shared.js").ToolDefinition<{
4
5
  platform_id: string;
5
6
  type: "DIALOGUE_ANALYSIS";
6
7
  is_enabled: boolean;
8
+ explicit_confirmation: true;
9
+ workspace_id?: string | undefined;
7
10
  daily?: {
8
11
  enabled: boolean;
9
12
  summary_time?: string | undefined;
10
- output?: "note" | "hidden" | undefined;
13
+ output?: "hidden" | "note" | undefined;
11
14
  model?: string | undefined;
12
15
  max_tokens?: number | undefined;
13
16
  } | undefined;
@@ -16,18 +19,17 @@ export declare const scheduledTaskTools: (import("./shared.js").ToolDefinition<{
16
19
  window_start?: string | undefined;
17
20
  window_end?: string | undefined;
18
21
  min_new_events?: number | undefined;
19
- output?: "note" | "hidden" | undefined;
22
+ output?: "hidden" | "note" | undefined;
20
23
  model?: string | undefined;
21
24
  max_tokens?: number | undefined;
22
25
  } | undefined;
26
+ daily_prompt?: string | null | undefined;
27
+ hourly_prompt?: string | null | undefined;
23
28
  funnels?: string[] | undefined;
24
29
  managers?: number[] | undefined;
25
30
  stages?: {
26
31
  pipeline_crm_id: string;
27
- pipeline_id: number;
28
- status_id: number;
32
+ pipeline_id: string | number;
33
+ status_id: string | number;
29
34
  }[] | null | undefined;
30
- daily_prompt?: string | null | undefined;
31
- hourly_prompt?: string | null | undefined;
32
- explicit_confirmation?: boolean | undefined;
33
- }>)[];
35
+ }>];
@@ -0,0 +1,207 @@
1
+ import { SCHEDULED_MODEL_HINT, ANALYSIS_WINDOW_HINT } from './v15-port-descriptions.js';
2
+ // Отгруженные имена планового разбора переписки, вернувшиеся в ветку `v2`.
3
+ //
4
+ // ⚠️ Это ПСЕВДОНИМЫ поверх уже построенных маршрутов, а не второй продукт: тот же адрес
5
+ // обслуживают канонические `besales_dialogue_analysis_task_*`. Имена возвращены потому, что клиент,
6
+ // зовущий отгруженное имя сегодня, получает «инструмент не найден», — и это разрыв совместимости,
7
+ // а не расхождение полей.
8
+ //
9
+ // ⛔ Отказ по непереносимому полю живёт в СХЕМЕ (`superRefine`), а не в конструкторе запроса.
10
+ // Проверка полноты карты маршрутов оборачивает разбор схемы в перехват, а конструктор — НЕТ:
11
+ // брошенное оттуда исключение роняет сьют вместо находки. Сами поля при этом ОБЪЯВЛЕНЫ — паритет
12
+ // ключей схемы и опубликованного контракта сверяется в обе стороны.
13
+ import { CRM_CATALOG_CODE_MAX_LENGTH } from '../../constants/crm-catalog.js';
14
+ import { z } from 'zod';
15
+ import { defineTool, uuidSchema, withInstructions } from './shared.js';
16
+ const clockSchema = z
17
+ .string()
18
+ .regex(/^([01]\d|2[0-3]):[0-5]\d$/, 'Время в формате HH:mm (локальное время канала)');
19
+ const outputSchema = z.enum(['note', 'hidden']);
20
+ /**
21
+ * Поля отгруженного контракта, запись которых пока закрыта или требует другой формы.
22
+ *
23
+ * ⛔ Перечень объявлен ОДИН раз и используется и схемой, и текстом отказа: вторая копия разошлась
24
+ * бы с первой, и отказ назвал бы не то поле, которое отверг.
25
+ */
26
+ const UNSUPPORTED_FIELDS = {
27
+ 'daily.model': SCHEDULED_MODEL_HINT,
28
+ 'daily.max_tokens': SCHEDULED_MODEL_HINT,
29
+ 'hourly.model': SCHEDULED_MODEL_HINT,
30
+ 'hourly.max_tokens': SCHEDULED_MODEL_HINT,
31
+ daily_prompt: 'v2 принимает ИМЯ шаблона реестра промптов (prompts.daily у besales_dialogue_analysis_task_update), а не сырой текст',
32
+ hourly_prompt: 'v2 принимает ИМЯ шаблона реестра промптов (prompts.hourly у besales_dialogue_analysis_task_update), а не сырой текст',
33
+ };
34
+ function refuseUnsupported(path, context) {
35
+ context.addIssue({
36
+ code: 'custom',
37
+ path: path.split('.'),
38
+ message: `Поле ${path} не переносится в v2: ${UNSUPPORTED_FIELDS[path]}`,
39
+ });
40
+ }
41
+ const dailySchema = z
42
+ .object({
43
+ enabled: z.boolean(),
44
+ summary_time: clockSchema.optional(),
45
+ output: outputSchema.optional(),
46
+ model: z.string().min(1).optional().describe(SCHEDULED_MODEL_HINT),
47
+ max_tokens: z.number().int().min(1).optional().describe(SCHEDULED_MODEL_HINT),
48
+ })
49
+ .strict()
50
+ .refine((value) => !value.enabled || value.summary_time !== undefined, {
51
+ message: 'Для включённого режима «саммари дня» обязателен summary_time',
52
+ });
53
+ const hourlySchema = z
54
+ .object({
55
+ enabled: z.boolean(),
56
+ window_start: clockSchema.optional(),
57
+ window_end: clockSchema.optional(),
58
+ min_new_events: z.number().int().min(1).optional(),
59
+ output: outputSchema.optional(),
60
+ model: z.string().min(1).optional().describe(SCHEDULED_MODEL_HINT),
61
+ max_tokens: z.number().int().min(1).optional().describe(SCHEDULED_MODEL_HINT),
62
+ })
63
+ .strict()
64
+ .refine((value) => !value.enabled || (value.window_start !== undefined && value.window_end !== undefined), { message: 'Для включённого режима «статус коммуникации» обязательны window_start и window_end' });
65
+ const stageSchema = z
66
+ .object({
67
+ pipeline_crm_id: uuidSchema,
68
+ pipeline_id: z.union([
69
+ z.string().trim().min(1).max(CRM_CATALOG_CODE_MAX_LENGTH),
70
+ z.number().int().min(0).max(Number.MAX_SAFE_INTEGER),
71
+ ]),
72
+ status_id: z.union([
73
+ z.string().trim().min(1).max(CRM_CATALOG_CODE_MAX_LENGTH),
74
+ z.number().int().min(0).max(Number.MAX_SAFE_INTEGER),
75
+ ]),
76
+ })
77
+ .strict();
78
+ const updateSchema = z
79
+ .object({
80
+ workspace_id: uuidSchema.optional(),
81
+ platform_id: uuidSchema,
82
+ type: z.literal('DIALOGUE_ANALYSIS').default('DIALOGUE_ANALYSIS'),
83
+ is_enabled: z.boolean(),
84
+ daily: dailySchema.optional(),
85
+ hourly: hourlySchema.optional(),
86
+ daily_prompt: z.string().min(1).nullable().optional(),
87
+ hourly_prompt: z.string().min(1).nullable().optional(),
88
+ funnels: z.array(z.string().min(1)).optional(),
89
+ managers: z.array(z.number().int().min(1)).optional(),
90
+ stages: z.array(stageSchema).nullable().optional(),
91
+ explicit_confirmation: z.literal(true),
92
+ })
93
+ .strict()
94
+ .superRefine((input, context) => {
95
+ for (const mode of ['daily', 'hourly']) {
96
+ const section = input[mode];
97
+ if (section === undefined)
98
+ continue;
99
+ if (section.model !== undefined)
100
+ refuseUnsupported(`${mode}.model`, context);
101
+ if (section.max_tokens !== undefined)
102
+ refuseUnsupported(`${mode}.max_tokens`, context);
103
+ }
104
+ if (typeof input.daily_prompt === 'string')
105
+ refuseUnsupported('daily_prompt', context);
106
+ if (typeof input.hourly_prompt === 'string')
107
+ refuseUnsupported('hourly_prompt', context);
108
+ });
109
+ /** Тело v2 без непереносимых полей: они до сюда не доходят — схема их уже отвергла. */
110
+ function buildConfig(input) {
111
+ const config = {};
112
+ if (input.daily_prompt === null || input.hourly_prompt === null) {
113
+ config.prompts = {
114
+ ...(input.daily_prompt === null ? { daily: null } : {}),
115
+ ...(input.hourly_prompt === null ? { hourly: null } : {}),
116
+ };
117
+ }
118
+ if (input.daily !== undefined) {
119
+ config.daily = {
120
+ enabled: input.daily.enabled,
121
+ ...(input.daily.summary_time === undefined ? {} : { summary_time: input.daily.summary_time }),
122
+ ...(input.daily.output === undefined ? {} : { output: input.daily.output }),
123
+ };
124
+ }
125
+ if (input.hourly !== undefined) {
126
+ config.hourly = {
127
+ enabled: input.hourly.enabled,
128
+ ...(input.hourly.window_start === undefined
129
+ ? {}
130
+ : { window_start: input.hourly.window_start }),
131
+ ...(input.hourly.window_end === undefined ? {} : { window_end: input.hourly.window_end }),
132
+ ...(input.hourly.min_new_events === undefined
133
+ ? {}
134
+ : { min_new_events: input.hourly.min_new_events }),
135
+ ...(input.hourly.output === undefined ? {} : { output: input.hourly.output }),
136
+ };
137
+ }
138
+ // ⛔ Чужие коды каталога уезжают ОТДЕЛЬНЫМ полем, которое сервер разрешает в локальные строки.
139
+ // Подставить их в поле локальных идентификаторов значило бы получить отказ с именем ЧУЖОГО поля.
140
+ if (input.funnels !== undefined) {
141
+ config.pipeline_scope = { mode: 'SELECTED', pipeline_external_ids: input.funnels };
142
+ }
143
+ if (input.managers !== undefined) {
144
+ config.manager_scope = { mode: 'SELECTED', operator_external_ids: input.managers };
145
+ }
146
+ // Семантика пустоты переносится дословно: ключа нет — охват стадий не трогаем; `null` — все
147
+ // колонки выбранных воронок; пустой массив у включённой задачи сервер отвергает.
148
+ if (input.stages !== undefined) {
149
+ config.stage_scope =
150
+ input.stages === null ? null : { mode: 'SELECTED', stages: input.stages };
151
+ }
152
+ return config;
153
+ }
154
+ export const scheduledTaskAliasTools = [
155
+ defineTool({
156
+ name: 'besales_scheduled_task_list',
157
+ sideEffect: 'none',
158
+ closedWorld: true,
159
+ requiredFields: ['platform_id'],
160
+ defaultWorkspaceId: true,
161
+ schema: z
162
+ .object({
163
+ workspace_id: uuidSchema.optional(),
164
+ platform_id: uuidSchema,
165
+ })
166
+ .strict(),
167
+ createRequest: (input) => ({
168
+ method: 'GET',
169
+ path: `/channels/${input.platform_id}/scheduled-tasks`,
170
+ }),
171
+ enhanceResponse: (response) => withInstructions(response, [
172
+ 'Это отгруженное имя поверх маршрута v2. Канонический инструмент — besales_dialogue_analysis_task_list; поверхность одна и та же.',
173
+ 'platform_id здесь означает КАНАЛ (только Bitrix24 Bot) — в v2 он называется channel_id.',
174
+ 'Пустой список означает, что плановый разбор на канале ещё не настраивали.',
175
+ 'config.prompts хранит ИМЕНА шаблонов реестра промптов, не тексты.',
176
+ SCHEDULED_MODEL_HINT,
177
+ 'pipeline_scope и manager_scope в ОТВЕТЕ несут локальные идентификаторы каталога, а не коды CRM: запись принимает обе формы, чтение отдаёт одну.',
178
+ ]),
179
+ }),
180
+ defineTool({
181
+ name: 'besales_scheduled_task_update',
182
+ sideEffect: 'write',
183
+ requiredFields: ['platform_id', 'is_enabled', 'explicit_confirmation'],
184
+ defaultWorkspaceId: true,
185
+ schema: updateSchema,
186
+ createRequest: (input) => ({
187
+ method: 'PATCH',
188
+ path: `/channels/${input.platform_id}/scheduled-tasks/${input.type}`,
189
+ body: {
190
+ isEnabled: input.is_enabled,
191
+ config: buildConfig(input),
192
+ },
193
+ }),
194
+ enhanceResponse: (response) => withInstructions(response, [
195
+ '⚠️ Задача пишет разбор в CRM клиента по расписанию. Зови инструмент только после явного подтверждения оператора и передавай explicit_confirmation=true.',
196
+ 'Это отгруженное имя поверх маршрута v2. Канонический инструмент — besales_dialogue_analysis_task_update.',
197
+ 'Конфиг МЕРЖИТСЯ на сервере: непереданные секции сохраняются. Отсутствие ключа stages НЕ означает «все колонки» — прежнее сужение сохраняется; чтобы снять его, передай stages: null.',
198
+ 'stages принимает строковые коды портала (например C29:NET_OTVETA) и прежние числовые номера стадий: сервер переводит полную тройку по сохранённой карте переноса. Неизвестный номер получает явный отказ.',
199
+ 'funnels принимает номера воронок CRM, managers — ASSIGNED_BY_ID ответственных: сервер разрешает их в локальные строки каталога. Код, найденный в нескольких подключениях CRM, — отказ: назови локальные идентификаторы через besales_dialogue_analysis_task_update.',
200
+ SCHEDULED_MODEL_HINT,
201
+ ANALYSIS_WINDOW_HINT,
202
+ 'model, max_tokens и сырой текст daily_prompt/hourly_prompt отвергаются до обращения к серверу. daily_prompt:null и hourly_prompt:null снимают переопределение только названного режима. Новое переопределение задаётся ИМЕНЕМ шаблона реестра через канонический инструмент.',
203
+ 'Включённая задача требует непустого охвата обеих осей — воронок и ответственных. Без них сервер отвечает отказом «задай охват».',
204
+ ]),
205
+ }),
206
+ ];
207
+ //# sourceMappingURL=scheduled-task-alias.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduled-task-alias.js","sourceRoot":"","sources":["../../../src/tools/definitions/scheduled-task-alias.ts"],"names":[],"mappings":"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"}
@@ -65,9 +65,9 @@ export const sessionTools = [
65
65
  const envPin = ctx.env.BESALES_WORKSPACE_ID?.trim() || null;
66
66
  const sessionOverride = getSessionWorkspaceId() ?? null;
67
67
  const active = await ctx.store.getActive();
68
- // Зеркалит resolveSelectedWorkspace в registry.ts: если разойдётся, диагностика
69
- // покажет воркспейс, которого боевой вызов не выберет. `active` НЕ является
70
- // фоллбэком при нескольких подключениях — там неоднозначность fail-closed.
68
+ // Зеркалит resolveSelectedWorkspace в registry.ts: если разойдётся, диагностика покажет
69
+ // воркспейс, которого боевой вызов не выберет. `active` НЕ является фоллбэком при
70
+ // нескольких подключениях — там неоднозначность fail-closed.
71
71
  let workspaceId = null;
72
72
  let source = 'none';
73
73
  if (envPin) {
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/tools/definitions/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/tools/definitions/session.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ /** Одно намерение сохраняется при сетевом повторе, новое получает новый UUID. */
2
+ export declare const setupInitOperationIdSchema: import("zod").ZodOptional<import("zod").ZodString>;
@@ -0,0 +1,6 @@
1
+ import { uuidSchema } from './shared.js';
2
+ /** Одно намерение сохраняется при сетевом повторе, новое получает новый UUID. */
3
+ export const setupInitOperationIdSchema = uuidSchema
4
+ .optional()
5
+ .describe('Создайте новый UUID перед первой попыткой подключения. При потере ответа повторите прежний UUID с теми же настройками; для нового подключения создайте новый UUID.');
6
+ //# sourceMappingURL=setup-init-operation.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-init-operation.schema.js","sourceRoot":"","sources":["../../../src/tools/definitions/setup-init-operation.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,iFAAiF;AACjF,MAAM,CAAC,MAAM,0BAA0B,GAAG,UAAU;KACjD,QAAQ,EAAE;KACV,QAAQ,CACP,oKAAoK,CACrK,CAAC"}
@@ -0,0 +1,51 @@
1
+ import type { z } from 'zod';
2
+ import type { ToolDefinition, ToolResultPolicy, agentRuntimeConfigSchema, agentOutputConfigSchema, pipelineCrmBehaviorSchema, pipelineAutoFinishSchema, platformAccessControlSchema, platformVariablesConfigSchema, platformCrmBehaviorSchema, platformWidgetMarketingSchema, platformInstagramCommentSchema, platformGeneralSettingsSchema, platformSalebotSettingsSchema, platformSmsgorodSettingsSchema, platformBitrix24BotSettingsSchema, platformGetcourseSettingsSchema } from './shared.js';
3
+ export declare function defineTool<Input>(definition: ToolDefinition<Input>): ToolDefinition<Input>;
4
+ /**
5
+ * Политика ответа на КОНКРЕТНЫЙ вызов. Читателей два (сетевой путь и локальный), и оба обязаны
6
+ * ходить сюда: разойдись они, локальный инструмент получил бы политику по умолчанию молча.
7
+ */
8
+ export declare function resolveResultPolicy<Input>(definition: ToolDefinition<Input>, input: Input): ToolResultPolicy | undefined;
9
+ /**
10
+ * Секция behavior для тела запроса: содержимое как прислано плюс версия формата.
11
+ *
12
+ * ⛔ Версию проставляет ИНСТРУМЕНТ, а не оператор: это константа провода, а не решение. Схема
13
+ * принимает её необязательным полем только затем, чтобы прочитанный снимок канала можно было
14
+ * вернуть обратно без правки — иначе строгая схема отвергала бы собственный же снимок.
15
+ */
16
+ export declare function withSchemaVersion(section: Record<string, unknown> | undefined): Record<string, unknown> | undefined;
17
+ export declare function compactObject<T extends Record<string, unknown>>(value: T): Partial<T>;
18
+ export declare function compactMetadata(metadata: {
19
+ total_tokens?: number;
20
+ models?: Record<string, string>;
21
+ } | undefined): Record<string, unknown> | undefined;
22
+ export declare function setupConfirmation(input: {
23
+ explicit_confirmation?: boolean;
24
+ confirmation_reason?: string;
25
+ }): Record<string, unknown>;
26
+ export declare function withInstructions(response: unknown, instructions: readonly string[]): unknown;
27
+ export declare function buildKnowledgeSpaceListQuery(scopeType?: string, channelId?: string): string;
28
+ export declare function buildListQuery(params: Record<string, string | number | boolean | undefined>): string;
29
+ export declare function buildVariableListQuery(scope: 'WORKSPACE' | 'CHANNEL', platformId?: string, filter?: 'all' | 'variables' | 'constants'): string;
30
+ export declare function buildVariableScopeQuery(scope: 'WORKSPACE' | 'CHANNEL', platformId?: string): string;
31
+ export declare function buildFileListQuery(input: {
32
+ file_type?: string;
33
+ source?: string;
34
+ section_id?: string;
35
+ limit?: number;
36
+ offset?: number;
37
+ }): string;
38
+ export declare function mapRuntimeConfigInput(input: z.infer<typeof agentRuntimeConfigSchema>): Record<string, unknown>;
39
+ export declare function mapOutputConfigInput(input: z.infer<typeof agentOutputConfigSchema>): Record<string, unknown>;
40
+ export declare function mapPipelineCrmBehaviorInput(input: z.infer<typeof pipelineCrmBehaviorSchema>): Record<string, unknown>;
41
+ export declare function mapPipelineAutoFinishInput(input: z.infer<typeof pipelineAutoFinishSchema>): Record<string, unknown>;
42
+ export declare function mapPlatformAccessControlInput(input: z.infer<typeof platformAccessControlSchema>): Record<string, unknown>;
43
+ export declare function mapPlatformVariablesConfigInput(input: z.infer<typeof platformVariablesConfigSchema>): Record<string, unknown>;
44
+ export declare function mapPlatformCrmBehaviorInput(input: z.infer<typeof platformCrmBehaviorSchema>): Record<string, unknown>;
45
+ export declare function mapPlatformWidgetMarketingInput(input: z.infer<typeof platformWidgetMarketingSchema>): Record<string, unknown>;
46
+ export declare function mapPlatformInstagramCommentInput(input: z.infer<typeof platformInstagramCommentSchema>): Record<string, unknown>;
47
+ export declare function mapPlatformGeneralSettingsInput(input: z.infer<typeof platformGeneralSettingsSchema>): Record<string, unknown>;
48
+ export declare function mapPlatformSalebotSettingsInput(input: z.infer<typeof platformSalebotSettingsSchema>): Record<string, unknown>;
49
+ export declare function mapPlatformSmsgorodSettingsInput(input: z.infer<typeof platformSmsgorodSettingsSchema>): Record<string, unknown>;
50
+ export declare function mapPlatformBitrix24BotSettingsInput(input: z.infer<typeof platformBitrix24BotSettingsSchema>): Record<string, unknown>;
51
+ export declare function mapPlatformGetcourseSettingsInput(input: z.infer<typeof platformGetcourseSettingsSchema>): Record<string, unknown>;