@rubytech/create-realagent-code 0.1.573 → 0.1.575

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 (1001) hide show
  1. package/dist/index.js +14 -0
  2. package/package.json +1 -1
  3. package/payload/platform/lib/admins-write/__tests__/index.test.ts +97 -0
  4. package/payload/platform/lib/admins-write/dist/index.d.ts +12 -0
  5. package/payload/platform/lib/admins-write/dist/index.d.ts.map +1 -1
  6. package/payload/platform/lib/admins-write/dist/index.js +27 -5
  7. package/payload/platform/lib/admins-write/dist/index.js.map +1 -1
  8. package/payload/platform/lib/admins-write/src/index.ts +35 -5
  9. package/payload/platform/lib/admins-write/vitest.config.ts +14 -0
  10. package/payload/platform/lib/canonical-instant/dist/index.d.ts +57 -0
  11. package/payload/platform/lib/canonical-instant/dist/index.d.ts.map +1 -0
  12. package/payload/platform/lib/canonical-instant/dist/index.js +139 -0
  13. package/payload/platform/lib/canonical-instant/dist/index.js.map +1 -0
  14. package/payload/platform/lib/canonical-instant/src/__tests__/normalise-instant.test.ts +158 -0
  15. package/payload/platform/lib/canonical-instant/src/index.ts +147 -0
  16. package/payload/platform/lib/canonical-instant/tsconfig.json +9 -0
  17. package/payload/platform/lib/canonical-instant/vitest.config.ts +9 -0
  18. package/payload/platform/lib/dispatch-read/dist/geo.d.ts +34 -0
  19. package/payload/platform/lib/dispatch-read/dist/geo.d.ts.map +1 -0
  20. package/payload/platform/lib/dispatch-read/dist/geo.js +27 -0
  21. package/payload/platform/lib/dispatch-read/dist/geo.js.map +1 -0
  22. package/payload/platform/lib/dispatch-read/dist/index.d.ts +6 -2
  23. package/payload/platform/lib/dispatch-read/dist/index.d.ts.map +1 -1
  24. package/payload/platform/lib/dispatch-read/dist/index.js +21 -1
  25. package/payload/platform/lib/dispatch-read/dist/index.js.map +1 -1
  26. package/payload/platform/lib/dispatch-read/dist/keyboard.d.ts +66 -0
  27. package/payload/platform/lib/dispatch-read/dist/keyboard.d.ts.map +1 -0
  28. package/payload/platform/lib/dispatch-read/dist/keyboard.js +64 -0
  29. package/payload/platform/lib/dispatch-read/dist/keyboard.js.map +1 -0
  30. package/payload/platform/lib/dispatch-read/dist/read.d.ts +144 -9
  31. package/payload/platform/lib/dispatch-read/dist/read.d.ts.map +1 -1
  32. package/payload/platform/lib/dispatch-read/dist/read.js +437 -118
  33. package/payload/platform/lib/dispatch-read/dist/read.js.map +1 -1
  34. package/payload/platform/lib/dispatch-read/dist/session.d.ts.map +1 -1
  35. package/payload/platform/lib/dispatch-read/dist/session.js +19 -4
  36. package/payload/platform/lib/dispatch-read/dist/session.js.map +1 -1
  37. package/payload/platform/lib/dispatch-read/dist/types.d.ts +80 -11
  38. package/payload/platform/lib/dispatch-read/dist/types.d.ts.map +1 -1
  39. package/payload/platform/lib/dispatch-read/src/__tests__/geo.test.ts +86 -0
  40. package/payload/platform/lib/dispatch-read/src/__tests__/keyboard.test.ts +124 -0
  41. package/payload/platform/lib/dispatch-read/src/__tests__/previous-visit.test.ts +98 -0
  42. package/payload/platform/lib/dispatch-read/src/__tests__/read.test.ts +107 -8
  43. package/payload/platform/lib/dispatch-read/src/__tests__/session.test.ts +91 -0
  44. package/payload/platform/lib/dispatch-read/src/__tests__/worker-day.test.ts +215 -10
  45. package/payload/platform/lib/dispatch-read/src/geo.ts +56 -0
  46. package/payload/platform/lib/dispatch-read/src/index.ts +25 -1
  47. package/payload/platform/lib/dispatch-read/src/keyboard.ts +98 -0
  48. package/payload/platform/lib/dispatch-read/src/read.ts +522 -119
  49. package/payload/platform/lib/dispatch-read/src/session.ts +25 -6
  50. package/payload/platform/lib/dispatch-read/src/types.ts +83 -11
  51. package/payload/platform/lib/dispatch-write/dist/write.d.ts +14 -0
  52. package/payload/platform/lib/dispatch-write/dist/write.d.ts.map +1 -1
  53. package/payload/platform/lib/dispatch-write/dist/write.js +50 -11
  54. package/payload/platform/lib/dispatch-write/dist/write.js.map +1 -1
  55. package/payload/platform/lib/dispatch-write/src/__tests__/write.test.ts +72 -2
  56. package/payload/platform/lib/dispatch-write/src/write.ts +79 -14
  57. package/payload/platform/neo4j/schema.cypher +66 -1
  58. package/payload/platform/package.json +2 -2
  59. package/payload/platform/plugins/admin/.claude-plugin/plugin.json +1 -1
  60. package/payload/platform/plugins/admin/PLUGIN.md +11 -3
  61. package/payload/platform/plugins/admin/hooks/__tests__/fs-schema-guard-bash.test.sh +106 -0
  62. package/payload/platform/plugins/admin/hooks/__tests__/fs-schema-guard.test.sh +66 -0
  63. package/payload/platform/plugins/admin/hooks/__tests__/html-structure-gate.test.sh +264 -0
  64. package/payload/platform/plugins/admin/hooks/__tests__/quote-render-pdf-conformance.test.sh +122 -24
  65. package/payload/platform/plugins/admin/hooks/__tests__/specialist-dispatch-gate.test.sh +158 -0
  66. package/payload/platform/plugins/admin/hooks/fs-schema-guard-bash-post.sh +85 -12
  67. package/payload/platform/plugins/admin/hooks/fs-schema-guard.sh +18 -0
  68. package/payload/platform/plugins/admin/hooks/html-structure-gate.sh +165 -0
  69. package/payload/platform/plugins/admin/hooks/quote-render-pdf-conformance.sh +111 -19
  70. package/payload/platform/plugins/admin/hooks/specialist-dispatch-gate.sh +159 -0
  71. package/payload/platform/plugins/admin/mcp/dist/admin-bind-classify.d.ts +27 -0
  72. package/payload/platform/plugins/admin/mcp/dist/admin-bind-classify.d.ts.map +1 -0
  73. package/payload/platform/plugins/admin/mcp/dist/admin-bind-classify.js +29 -0
  74. package/payload/platform/plugins/admin/mcp/dist/admin-bind-classify.js.map +1 -0
  75. package/payload/platform/plugins/admin/mcp/dist/binding-validate.d.ts +11 -0
  76. package/payload/platform/plugins/admin/mcp/dist/binding-validate.d.ts.map +1 -0
  77. package/payload/platform/plugins/admin/mcp/dist/binding-validate.js +20 -0
  78. package/payload/platform/plugins/admin/mcp/dist/binding-validate.js.map +1 -0
  79. package/payload/platform/plugins/admin/mcp/dist/index.js +133 -1
  80. package/payload/platform/plugins/admin/mcp/dist/index.js.map +1 -1
  81. package/payload/platform/plugins/admin/skills/admin-user-management/SKILL.md +31 -2
  82. package/payload/platform/plugins/admin/skills/platform-architecture/SKILL.md +242 -61
  83. package/payload/platform/plugins/admin/skills/whats-new/SKILL.md +16 -0
  84. package/payload/platform/plugins/cloudflare/mcp/__tests__/portal-visits-scope.test.ts +130 -1
  85. package/payload/platform/plugins/cloudflare/skills/data-portal/schema.sql +63 -0
  86. package/payload/platform/plugins/cloudflare/skills/data-portal/template/functions/api/visits.ts +104 -3
  87. package/payload/platform/plugins/dispatch/.claude-plugin/plugin.json +1 -1
  88. package/payload/platform/plugins/dispatch/PLUGIN.md +49 -6
  89. package/payload/platform/plugins/dispatch/mcp/dist/index.js +200 -2
  90. package/payload/platform/plugins/dispatch/mcp/dist/index.js.map +1 -1
  91. package/payload/platform/plugins/dispatch/mcp/dist/lib/allocate.d.ts +22 -4
  92. package/payload/platform/plugins/dispatch/mcp/dist/lib/allocate.d.ts.map +1 -1
  93. package/payload/platform/plugins/dispatch/mcp/dist/lib/allocate.js +4 -0
  94. package/payload/platform/plugins/dispatch/mcp/dist/lib/allocate.js.map +1 -1
  95. package/payload/platform/plugins/dispatch/mcp/dist/lib/bot-token.d.ts +10 -0
  96. package/payload/platform/plugins/dispatch/mcp/dist/lib/bot-token.d.ts.map +1 -0
  97. package/payload/platform/plugins/dispatch/mcp/dist/lib/bot-token.js +47 -0
  98. package/payload/platform/plugins/dispatch/mcp/dist/lib/bot-token.js.map +1 -0
  99. package/payload/platform/plugins/dispatch/mcp/dist/lib/config.d.ts.map +1 -1
  100. package/payload/platform/plugins/dispatch/mcp/dist/lib/config.js +12 -0
  101. package/payload/platform/plugins/dispatch/mcp/dist/lib/config.js.map +1 -1
  102. package/payload/platform/plugins/dispatch/mcp/dist/lib/ids.d.ts +1 -0
  103. package/payload/platform/plugins/dispatch/mcp/dist/lib/ids.d.ts.map +1 -1
  104. package/payload/platform/plugins/dispatch/mcp/dist/lib/ids.js +1 -0
  105. package/payload/platform/plugins/dispatch/mcp/dist/lib/ids.js.map +1 -1
  106. package/payload/platform/plugins/dispatch/mcp/dist/lib/intake.d.ts +36 -0
  107. package/payload/platform/plugins/dispatch/mcp/dist/lib/intake.d.ts.map +1 -0
  108. package/payload/platform/plugins/dispatch/mcp/dist/lib/intake.js +36 -0
  109. package/payload/platform/plugins/dispatch/mcp/dist/lib/intake.js.map +1 -0
  110. package/payload/platform/plugins/dispatch/mcp/dist/lib/keyboard.d.ts +11 -0
  111. package/payload/platform/plugins/dispatch/mcp/dist/lib/keyboard.d.ts.map +1 -0
  112. package/payload/platform/plugins/dispatch/mcp/dist/lib/keyboard.js +10 -0
  113. package/payload/platform/plugins/dispatch/mcp/dist/lib/keyboard.js.map +1 -0
  114. package/payload/platform/plugins/dispatch/mcp/dist/lib/read.d.ts +2 -2
  115. package/payload/platform/plugins/dispatch/mcp/dist/lib/read.d.ts.map +1 -1
  116. package/payload/platform/plugins/dispatch/mcp/dist/lib/read.js +9 -1
  117. package/payload/platform/plugins/dispatch/mcp/dist/lib/read.js.map +1 -1
  118. package/payload/platform/plugins/dispatch/mcp/dist/lib/travel.d.ts +43 -0
  119. package/payload/platform/plugins/dispatch/mcp/dist/lib/travel.d.ts.map +1 -0
  120. package/payload/platform/plugins/dispatch/mcp/dist/lib/travel.js +53 -0
  121. package/payload/platform/plugins/dispatch/mcp/dist/lib/travel.js.map +1 -0
  122. package/payload/platform/plugins/dispatch/mcp/dist/lib/types.d.ts +13 -2
  123. package/payload/platform/plugins/dispatch/mcp/dist/lib/types.d.ts.map +1 -1
  124. package/payload/platform/plugins/dispatch/mcp/dist/scripts/converge-visit-instants.d.ts +6 -0
  125. package/payload/platform/plugins/dispatch/mcp/dist/scripts/converge-visit-instants.d.ts.map +1 -0
  126. package/payload/platform/plugins/dispatch/mcp/dist/scripts/converge-visit-instants.js +102 -0
  127. package/payload/platform/plugins/dispatch/mcp/dist/scripts/converge-visit-instants.js.map +1 -0
  128. package/payload/platform/plugins/dispatch/mcp/dist/tools/allocate.d.ts +18 -0
  129. package/payload/platform/plugins/dispatch/mcp/dist/tools/allocate.d.ts.map +1 -1
  130. package/payload/platform/plugins/dispatch/mcp/dist/tools/allocate.js +251 -40
  131. package/payload/platform/plugins/dispatch/mcp/dist/tools/allocate.js.map +1 -1
  132. package/payload/platform/plugins/dispatch/mcp/dist/tools/intake.d.ts +75 -0
  133. package/payload/platform/plugins/dispatch/mcp/dist/tools/intake.d.ts.map +1 -0
  134. package/payload/platform/plugins/dispatch/mcp/dist/tools/intake.js +194 -0
  135. package/payload/platform/plugins/dispatch/mcp/dist/tools/intake.js.map +1 -0
  136. package/payload/platform/plugins/dispatch/mcp/dist/tools/notify-worker.d.ts +61 -0
  137. package/payload/platform/plugins/dispatch/mcp/dist/tools/notify-worker.d.ts.map +1 -0
  138. package/payload/platform/plugins/dispatch/mcp/dist/tools/notify-worker.js +130 -0
  139. package/payload/platform/plugins/dispatch/mcp/dist/tools/notify-worker.js.map +1 -0
  140. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-location-set.d.ts +28 -0
  141. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-location-set.d.ts.map +1 -0
  142. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-location-set.js +44 -0
  143. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-location-set.js.map +1 -0
  144. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-upsert.d.ts +43 -0
  145. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-upsert.d.ts.map +1 -0
  146. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-upsert.js +139 -0
  147. package/payload/platform/plugins/dispatch/mcp/dist/tools/site-upsert.js.map +1 -0
  148. package/payload/platform/plugins/dispatch/skills/dispatch-page/SKILL.md +85 -0
  149. package/payload/platform/plugins/dispatch/skills/dispatch-page/template/planner.css +97 -0
  150. package/payload/platform/plugins/dispatch/skills/dispatch-page/template/planner.html +59 -0
  151. package/payload/platform/plugins/dispatch/skills/dispatch-page/template/planner.js +343 -0
  152. package/payload/platform/plugins/dispatch/skills/dispatch-setup/SKILL.md +9 -4
  153. package/payload/platform/plugins/docs/references/admin-ui.md +71 -31
  154. package/payload/platform/plugins/docs/references/channel-wake-and-prompt.md +29 -13
  155. package/payload/platform/plugins/docs/references/dispatch.md +94 -15
  156. package/payload/platform/plugins/docs/references/internals.md +6 -0
  157. package/payload/platform/plugins/docs/references/outlook-guide.md +31 -1
  158. package/payload/platform/plugins/docs/references/troubleshooting.md +10 -0
  159. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/dispatch-vertical-coverage.test.js +4 -1
  160. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/dispatch-vertical-coverage.test.js.map +1 -1
  161. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/relationship-patterns.test.js +24 -1
  162. package/payload/platform/plugins/memory/mcp/dist/lib/__tests__/relationship-patterns.test.js.map +1 -1
  163. package/payload/platform/plugins/memory/references/schema-dispatch.md +70 -4
  164. package/payload/platform/plugins/outlook/PLUGIN.md +3 -1
  165. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger-write-sites.test.d.ts +2 -0
  166. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger-write-sites.test.d.ts.map +1 -0
  167. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger-write-sites.test.js +177 -0
  168. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger-write-sites.test.js.map +1 -0
  169. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger.test.d.ts +2 -0
  170. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger.test.d.ts.map +1 -0
  171. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger.test.js +130 -0
  172. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-ledger.test.js.map +1 -0
  173. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-reconcile.test.d.ts +2 -0
  174. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-reconcile.test.d.ts.map +1 -0
  175. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-reconcile.test.js +162 -0
  176. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-reconcile.test.js.map +1 -0
  177. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-state-fields.test.d.ts +2 -0
  178. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-state-fields.test.d.ts.map +1 -0
  179. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-state-fields.test.js +168 -0
  180. package/payload/platform/plugins/outlook/mcp/dist/__tests__/draft-state-fields.test.js.map +1 -0
  181. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-ledger.d.ts +64 -0
  182. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-ledger.d.ts.map +1 -0
  183. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-ledger.js +110 -0
  184. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-ledger.js.map +1 -0
  185. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-reconcile.d.ts +119 -0
  186. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-reconcile.d.ts.map +1 -0
  187. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-reconcile.js +0 -0
  188. package/payload/platform/plugins/outlook/mcp/dist/lib/draft-reconcile.js.map +1 -0
  189. package/payload/platform/plugins/outlook/mcp/dist/scripts/draft-reconcile.d.ts +8 -0
  190. package/payload/platform/plugins/outlook/mcp/dist/scripts/draft-reconcile.d.ts.map +1 -0
  191. package/payload/platform/plugins/outlook/mcp/dist/scripts/draft-reconcile.js +247 -0
  192. package/payload/platform/plugins/outlook/mcp/dist/scripts/draft-reconcile.js.map +1 -0
  193. package/payload/platform/plugins/outlook/mcp/dist/tools/draft-send.d.ts.map +1 -1
  194. package/payload/platform/plugins/outlook/mcp/dist/tools/draft-send.js +10 -0
  195. package/payload/platform/plugins/outlook/mcp/dist/tools/draft-send.js.map +1 -1
  196. package/payload/platform/plugins/outlook/mcp/dist/tools/draft.d.ts.map +1 -1
  197. package/payload/platform/plugins/outlook/mcp/dist/tools/draft.js +21 -0
  198. package/payload/platform/plugins/outlook/mcp/dist/tools/draft.js.map +1 -1
  199. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-fetch-body.d.ts +16 -0
  200. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-fetch-body.d.ts.map +1 -1
  201. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-fetch-body.js +5 -1
  202. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-fetch-body.js.map +1 -1
  203. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-list.d.ts +4 -0
  204. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-list.d.ts.map +1 -1
  205. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-list.js +2 -1
  206. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-list.js.map +1 -1
  207. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-reply.d.ts.map +1 -1
  208. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-reply.js +24 -0
  209. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-reply.js.map +1 -1
  210. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-search.d.ts.map +1 -1
  211. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-search.js +2 -1
  212. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-search.js.map +1 -1
  213. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-send.d.ts.map +1 -1
  214. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-send.js +29 -0
  215. package/payload/platform/plugins/outlook/mcp/dist/tools/mail-send.js.map +1 -1
  216. package/payload/platform/plugins/scheduling/mcp/dist/__tests__/draft-reconcile-throttle.test.d.ts +2 -0
  217. package/payload/platform/plugins/scheduling/mcp/dist/__tests__/draft-reconcile-throttle.test.d.ts.map +1 -0
  218. package/payload/platform/plugins/scheduling/mcp/dist/__tests__/draft-reconcile-throttle.test.js +21 -0
  219. package/payload/platform/plugins/scheduling/mcp/dist/__tests__/draft-reconcile-throttle.test.js.map +1 -0
  220. package/payload/platform/plugins/scheduling/mcp/dist/lib/draft-reconcile-throttle.d.ts +13 -0
  221. package/payload/platform/plugins/scheduling/mcp/dist/lib/draft-reconcile-throttle.d.ts.map +1 -0
  222. package/payload/platform/plugins/scheduling/mcp/dist/lib/draft-reconcile-throttle.js +10 -0
  223. package/payload/platform/plugins/scheduling/mcp/dist/lib/draft-reconcile-throttle.js.map +1 -0
  224. package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.d.ts +2 -35
  225. package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.d.ts.map +1 -1
  226. package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.js +6 -114
  227. package/payload/platform/plugins/scheduling/mcp/dist/lib/time-format.js.map +1 -1
  228. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js +54 -0
  229. package/payload/platform/plugins/scheduling/mcp/dist/scripts/check-due-events.js.map +1 -1
  230. package/payload/platform/plugins/scheduling/mcp/dist/scripts/converge-startdate-utc.d.ts +1 -1
  231. package/payload/platform/plugins/scheduling/mcp/dist/scripts/converge-startdate-utc.js +3 -3
  232. package/payload/platform/plugins/scheduling/mcp/dist/scripts/converge-startdate-utc.js.map +1 -1
  233. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js +2 -2
  234. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-event.js.map +1 -1
  235. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.js +3 -3
  236. package/payload/platform/plugins/scheduling/mcp/dist/tools/schedule-update.js.map +1 -1
  237. package/payload/platform/services/claude-session-manager/dist/authored-specialist-tools.d.ts +32 -0
  238. package/payload/platform/services/claude-session-manager/dist/authored-specialist-tools.d.ts.map +1 -0
  239. package/payload/platform/services/claude-session-manager/dist/authored-specialist-tools.js +144 -0
  240. package/payload/platform/services/claude-session-manager/dist/authored-specialist-tools.js.map +1 -0
  241. package/payload/platform/services/claude-session-manager/dist/blocked-tool-census.d.ts +40 -6
  242. package/payload/platform/services/claude-session-manager/dist/blocked-tool-census.d.ts.map +1 -1
  243. package/payload/platform/services/claude-session-manager/dist/blocked-tool-census.js +116 -15
  244. package/payload/platform/services/claude-session-manager/dist/blocked-tool-census.js.map +1 -1
  245. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.d.ts.map +1 -1
  246. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js +7 -0
  247. package/payload/platform/services/claude-session-manager/dist/canonical-tool-names.generated.js.map +1 -1
  248. package/payload/platform/services/claude-session-manager/dist/html-structure-census.d.ts +44 -0
  249. package/payload/platform/services/claude-session-manager/dist/html-structure-census.d.ts.map +1 -0
  250. package/payload/platform/services/claude-session-manager/dist/html-structure-census.js +185 -0
  251. package/payload/platform/services/claude-session-manager/dist/html-structure-census.js.map +1 -0
  252. package/payload/platform/services/claude-session-manager/dist/index.js +125 -0
  253. package/payload/platform/services/claude-session-manager/dist/index.js.map +1 -1
  254. package/payload/platform/services/claude-session-manager/dist/quote-delivery-reconcile.d.ts.map +1 -1
  255. package/payload/platform/services/claude-session-manager/dist/quote-delivery-reconcile.js +7 -0
  256. package/payload/platform/services/claude-session-manager/dist/quote-delivery-reconcile.js.map +1 -1
  257. package/payload/platform/services/claude-session-manager/dist/quote-print-census.d.ts +42 -0
  258. package/payload/platform/services/claude-session-manager/dist/quote-print-census.d.ts.map +1 -0
  259. package/payload/platform/services/claude-session-manager/dist/quote-print-census.js +254 -0
  260. package/payload/platform/services/claude-session-manager/dist/quote-print-census.js.map +1 -0
  261. package/payload/platform/services/claude-session-manager/dist/specialist-census.d.ts +92 -0
  262. package/payload/platform/services/claude-session-manager/dist/specialist-census.d.ts.map +1 -0
  263. package/payload/platform/services/claude-session-manager/dist/specialist-census.js +227 -0
  264. package/payload/platform/services/claude-session-manager/dist/specialist-census.js.map +1 -0
  265. package/payload/platform/services/telegram-channel/dist/notification.d.ts +0 -12
  266. package/payload/platform/services/telegram-channel/dist/notification.d.ts.map +1 -1
  267. package/payload/platform/services/telegram-channel/dist/notification.js +8 -29
  268. package/payload/platform/services/telegram-channel/dist/notification.js.map +1 -1
  269. package/payload/platform/services/telegram-channel/dist/server.d.ts.map +1 -1
  270. package/payload/platform/services/telegram-channel/dist/server.js +8 -11
  271. package/payload/platform/services/telegram-channel/dist/server.js.map +1 -1
  272. package/payload/platform/templates/account-settings.json +8 -4
  273. package/payload/server/public/activity.html +7 -7
  274. package/payload/server/public/agents.html +6 -6
  275. package/payload/server/public/assets/AdminLoginScreens-BLGZEaKU.js +1 -0
  276. package/payload/server/public/assets/AdminLoginScreens-BLGZEaKU.js.br +0 -0
  277. package/payload/server/public/assets/AdminLoginScreens-BLGZEaKU.js.gz +0 -0
  278. package/payload/server/public/assets/AdminShell-C_M7YE5Z.js +3 -0
  279. package/payload/server/public/assets/AdminShell-C_M7YE5Z.js.br +0 -0
  280. package/payload/server/public/assets/AdminShell-C_M7YE5Z.js.gz +0 -0
  281. package/payload/server/public/assets/activity-BL6qbB9a.js +1 -0
  282. package/payload/server/public/assets/activity-BL6qbB9a.js.br +0 -0
  283. package/payload/server/public/assets/activity-BL6qbB9a.js.gz +0 -0
  284. package/payload/server/public/assets/admin-jnJ3P2u4.js +1 -0
  285. package/payload/server/public/assets/admin-jnJ3P2u4.js.br +0 -0
  286. package/payload/server/public/assets/admin-jnJ3P2u4.js.gz +0 -0
  287. package/payload/server/public/assets/agents-BzhfKZDN.js +1 -0
  288. package/payload/server/public/assets/agents-BzhfKZDN.js.br +0 -0
  289. package/payload/server/public/assets/agents-BzhfKZDN.js.gz +0 -0
  290. package/payload/server/public/assets/arc-Bge2fWf4.js +1 -0
  291. package/payload/server/public/assets/arc-Bge2fWf4.js.br +0 -0
  292. package/payload/server/public/assets/arc-Bge2fWf4.js.gz +0 -0
  293. package/payload/server/public/assets/architecture-YZFGNWBL-B9jqFTbw.js +1 -0
  294. package/payload/server/public/assets/architecture-YZFGNWBL-B9jqFTbw.js.br +0 -0
  295. package/payload/server/public/assets/architectureDiagram-Q4EWVU46-BRauf5b8.js +36 -0
  296. package/payload/server/public/assets/architectureDiagram-Q4EWVU46-BRauf5b8.js.br +0 -0
  297. package/payload/server/public/assets/architectureDiagram-Q4EWVU46-BRauf5b8.js.gz +0 -0
  298. package/payload/server/public/assets/blockDiagram-DXYQGD6D-CUJ554WZ.js +132 -0
  299. package/payload/server/public/assets/blockDiagram-DXYQGD6D-CUJ554WZ.js.br +0 -0
  300. package/payload/server/public/assets/blockDiagram-DXYQGD6D-CUJ554WZ.js.gz +0 -0
  301. package/payload/server/public/assets/browser-C-6io2B9.js +1 -0
  302. package/payload/server/public/assets/browser-C-6io2B9.js.br +0 -0
  303. package/payload/server/public/assets/browser-C-6io2B9.js.gz +0 -0
  304. package/payload/server/public/assets/c4Diagram-AHTNJAMY-CV9gKsKo.js +10 -0
  305. package/payload/server/public/assets/c4Diagram-AHTNJAMY-CV9gKsKo.js.br +0 -0
  306. package/payload/server/public/assets/c4Diagram-AHTNJAMY-CV9gKsKo.js.gz +0 -0
  307. package/payload/server/public/assets/calendar-Dt3gS88s.js +1 -0
  308. package/payload/server/public/assets/calendar-Dt3gS88s.js.br +0 -0
  309. package/payload/server/public/assets/calendar-Dt3gS88s.js.gz +0 -0
  310. package/payload/server/public/assets/channel-DUwJcjZw.js +1 -0
  311. package/payload/server/public/assets/channel-DUwJcjZw.js.br +0 -0
  312. package/payload/server/public/assets/chat-IUOvVkL-.js +1 -0
  313. package/payload/server/public/assets/chat-IUOvVkL-.js.br +1 -0
  314. package/payload/server/public/assets/chat-IUOvVkL-.js.gz +0 -0
  315. package/payload/server/public/assets/chevron-left-DSzR9zR7.js +1 -0
  316. package/payload/server/public/assets/chevron-left-DSzR9zR7.js.br +0 -0
  317. package/payload/server/public/assets/chunk-2KRD3SAO-HzWGrran.js +1 -0
  318. package/payload/server/public/assets/chunk-2KRD3SAO-HzWGrran.js.br +0 -0
  319. package/payload/server/public/assets/chunk-2KRD3SAO-HzWGrran.js.gz +0 -0
  320. package/payload/server/public/assets/chunk-336JU56O-ChGDYu_S.js +2 -0
  321. package/payload/server/public/assets/chunk-336JU56O-ChGDYu_S.js.br +0 -0
  322. package/payload/server/public/assets/chunk-336JU56O-ChGDYu_S.js.gz +0 -0
  323. package/payload/server/public/assets/chunk-426QAEUC-DLLi1nAr.js +1 -0
  324. package/payload/server/public/assets/chunk-426QAEUC-DLLi1nAr.js.br +0 -0
  325. package/payload/server/public/assets/chunk-426QAEUC-DLLi1nAr.js.gz +0 -0
  326. package/payload/server/public/assets/chunk-4BX2VUAB-BJunAy2u.js +1 -0
  327. package/payload/server/public/assets/chunk-4BX2VUAB-BJunAy2u.js.br +0 -0
  328. package/payload/server/public/assets/chunk-4BX2VUAB-BJunAy2u.js.gz +0 -0
  329. package/payload/server/public/assets/chunk-4TB4RGXK-Df9Ew0fN.js +206 -0
  330. package/payload/server/public/assets/chunk-4TB4RGXK-Df9Ew0fN.js.br +0 -0
  331. package/payload/server/public/assets/chunk-4TB4RGXK-Df9Ew0fN.js.gz +0 -0
  332. package/payload/server/public/assets/chunk-55IACEB6-DtquCg7p.js +1 -0
  333. package/payload/server/public/assets/chunk-55IACEB6-DtquCg7p.js.br +0 -0
  334. package/payload/server/public/assets/chunk-55IACEB6-DtquCg7p.js.gz +0 -0
  335. package/payload/server/public/assets/chunk-5FUZZQ4R-B3s1YuQa.js +62 -0
  336. package/payload/server/public/assets/chunk-5FUZZQ4R-B3s1YuQa.js.br +0 -0
  337. package/payload/server/public/assets/chunk-5FUZZQ4R-B3s1YuQa.js.gz +0 -0
  338. package/payload/server/public/assets/chunk-5PVQY5BW-C0bRnMKQ.js +2 -0
  339. package/payload/server/public/assets/chunk-5PVQY5BW-C0bRnMKQ.js.br +0 -0
  340. package/payload/server/public/assets/chunk-5PVQY5BW-C0bRnMKQ.js.gz +0 -0
  341. package/payload/server/public/assets/chunk-67CJDMHE-B9jxnEpu.js +1 -0
  342. package/payload/server/public/assets/chunk-67CJDMHE-B9jxnEpu.js.br +0 -0
  343. package/payload/server/public/assets/chunk-67CJDMHE-B9jxnEpu.js.gz +0 -0
  344. package/payload/server/public/assets/chunk-7N4EOEYR-DaimaIlO.js +1 -0
  345. package/payload/server/public/assets/chunk-7N4EOEYR-DaimaIlO.js.br +0 -0
  346. package/payload/server/public/assets/chunk-7N4EOEYR-DaimaIlO.js.gz +0 -0
  347. package/payload/server/public/assets/chunk-AA7GKIK3-htgz4y5z.js +1 -0
  348. package/payload/server/public/assets/chunk-AA7GKIK3-htgz4y5z.js.br +0 -0
  349. package/payload/server/public/assets/chunk-AA7GKIK3-htgz4y5z.js.gz +0 -0
  350. package/payload/server/public/assets/chunk-BSJP7CBP-0xBlnKJN.js +1 -0
  351. package/payload/server/public/assets/chunk-BSJP7CBP-0xBlnKJN.js.br +0 -0
  352. package/payload/server/public/assets/chunk-BSJP7CBP-0xBlnKJN.js.gz +0 -0
  353. package/payload/server/public/assets/chunk-CIAEETIT-HZOrcAzJ.js +1 -0
  354. package/payload/server/public/assets/chunk-CIAEETIT-HZOrcAzJ.js.br +0 -0
  355. package/payload/server/public/assets/chunk-CIAEETIT-HZOrcAzJ.js.gz +0 -0
  356. package/payload/server/public/assets/chunk-EDXVE4YY-CC8hCcuU.js +1 -0
  357. package/payload/server/public/assets/chunk-EDXVE4YY-CC8hCcuU.js.br +0 -0
  358. package/payload/server/public/assets/chunk-EDXVE4YY-CC8hCcuU.js.gz +0 -0
  359. package/payload/server/public/assets/chunk-ENJZ2VHE-BdPfdZYB.js +10 -0
  360. package/payload/server/public/assets/chunk-ENJZ2VHE-BdPfdZYB.js.br +0 -0
  361. package/payload/server/public/assets/chunk-ENJZ2VHE-BdPfdZYB.js.gz +0 -0
  362. package/payload/server/public/assets/chunk-FMBD7UC4-MHdn_KgF.js +15 -0
  363. package/payload/server/public/assets/chunk-FMBD7UC4-MHdn_KgF.js.br +0 -0
  364. package/payload/server/public/assets/chunk-FMBD7UC4-MHdn_KgF.js.gz +0 -0
  365. package/payload/server/public/assets/chunk-FOC6F5B3-Ti8BlQKX.js +1 -0
  366. package/payload/server/public/assets/chunk-FOC6F5B3-Ti8BlQKX.js.br +0 -0
  367. package/payload/server/public/assets/chunk-FOC6F5B3-Ti8BlQKX.js.gz +0 -0
  368. package/payload/server/public/assets/chunk-ICPOFSXX-BP8A8zb1.js +122 -0
  369. package/payload/server/public/assets/chunk-ICPOFSXX-BP8A8zb1.js.br +0 -0
  370. package/payload/server/public/assets/chunk-ICPOFSXX-BP8A8zb1.js.gz +0 -0
  371. package/payload/server/public/assets/chunk-K5T4RW27-F30EnSBL.js +94 -0
  372. package/payload/server/public/assets/chunk-K5T4RW27-F30EnSBL.js.br +0 -0
  373. package/payload/server/public/assets/chunk-K5T4RW27-F30EnSBL.js.gz +0 -0
  374. package/payload/server/public/assets/chunk-KGLVRYIC-DNSEkg2Q.js +1 -0
  375. package/payload/server/public/assets/chunk-KGLVRYIC-DNSEkg2Q.js.br +2 -0
  376. package/payload/server/public/assets/chunk-KGLVRYIC-DNSEkg2Q.js.gz +0 -0
  377. package/payload/server/public/assets/chunk-LIHQZDEY-DM7b0dec.js +1 -0
  378. package/payload/server/public/assets/chunk-LIHQZDEY-DM7b0dec.js.br +0 -0
  379. package/payload/server/public/assets/chunk-LIHQZDEY-DM7b0dec.js.gz +0 -0
  380. package/payload/server/public/assets/chunk-ORNJ4GCN-B0qoI_vp.js +1 -0
  381. package/payload/server/public/assets/chunk-ORNJ4GCN-B0qoI_vp.js.br +0 -0
  382. package/payload/server/public/assets/chunk-ORNJ4GCN-B0qoI_vp.js.gz +0 -0
  383. package/payload/server/public/assets/chunk-OYMX7WX6-Bfzo53eI.js +231 -0
  384. package/payload/server/public/assets/chunk-OYMX7WX6-Bfzo53eI.js.br +0 -0
  385. package/payload/server/public/assets/chunk-OYMX7WX6-Bfzo53eI.js.gz +0 -0
  386. package/payload/server/public/assets/chunk-QZHKN3VN-A6b8ZN9i.js +1 -0
  387. package/payload/server/public/assets/chunk-QZHKN3VN-A6b8ZN9i.js.br +0 -0
  388. package/payload/server/public/assets/chunk-QZHKN3VN-A6b8ZN9i.js.gz +0 -0
  389. package/payload/server/public/assets/chunk-U2HBQHQK-DcqGPXEy.js +70 -0
  390. package/payload/server/public/assets/chunk-U2HBQHQK-DcqGPXEy.js.br +0 -0
  391. package/payload/server/public/assets/chunk-U2HBQHQK-DcqGPXEy.js.gz +0 -0
  392. package/payload/server/public/assets/chunk-X2U36JSP-DtRi7n5Z.js +1 -0
  393. package/payload/server/public/assets/chunk-X2U36JSP-DtRi7n5Z.js.br +0 -0
  394. package/payload/server/public/assets/chunk-X2U36JSP-DtRi7n5Z.js.gz +0 -0
  395. package/payload/server/public/assets/chunk-XPW4576I-DmuDCcY3.js +32 -0
  396. package/payload/server/public/assets/chunk-XPW4576I-DmuDCcY3.js.br +0 -0
  397. package/payload/server/public/assets/chunk-XPW4576I-DmuDCcY3.js.gz +0 -0
  398. package/payload/server/public/assets/chunk-YZCP3GAM-oKk9Gv_e.js +1 -0
  399. package/payload/server/public/assets/chunk-YZCP3GAM-oKk9Gv_e.js.br +0 -0
  400. package/payload/server/public/assets/chunk-YZCP3GAM-oKk9Gv_e.js.gz +0 -0
  401. package/payload/server/public/assets/chunk-ZZ45TVLE-teET41Yh.js +1 -0
  402. package/payload/server/public/assets/chunk-ZZ45TVLE-teET41Yh.js.br +0 -0
  403. package/payload/server/public/assets/chunk-ZZ45TVLE-teET41Yh.js.gz +0 -0
  404. package/payload/server/public/assets/classDiagram-6PBFFD2Q-CMXajSzA.js +1 -0
  405. package/payload/server/public/assets/classDiagram-6PBFFD2Q-CMXajSzA.js.br +0 -0
  406. package/payload/server/public/assets/classDiagram-6PBFFD2Q-CMXajSzA.js.gz +0 -0
  407. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-Cz5Kib2r.js +1 -0
  408. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-Cz5Kib2r.js.br +0 -0
  409. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-Cz5Kib2r.js.gz +0 -0
  410. package/payload/server/public/assets/clock-C5xE5p2I.js +1 -0
  411. package/payload/server/public/assets/clock-C5xE5p2I.js.br +0 -0
  412. package/payload/server/public/assets/clone-BORhq8On.js +1 -0
  413. package/payload/server/public/assets/clone-BORhq8On.js.br +0 -0
  414. package/payload/server/public/assets/copy-TkPJgllS.js +1 -0
  415. package/payload/server/public/assets/copy-TkPJgllS.js.br +0 -0
  416. package/payload/server/public/assets/copy-TkPJgllS.js.gz +0 -0
  417. package/payload/server/public/assets/cose-bilkent-S5V4N54A-D1xLpHGm.js +1 -0
  418. package/payload/server/public/assets/cose-bilkent-S5V4N54A-D1xLpHGm.js.br +0 -0
  419. package/payload/server/public/assets/cose-bilkent-S5V4N54A-D1xLpHGm.js.gz +0 -0
  420. package/payload/server/public/assets/dagre-KV5264BT-Byl65NKT.js +4 -0
  421. package/payload/server/public/assets/dagre-KV5264BT-Byl65NKT.js.br +0 -0
  422. package/payload/server/public/assets/dagre-KV5264BT-Byl65NKT.js.gz +0 -0
  423. package/payload/server/public/assets/dagre-ZzXkSDir.js +1 -0
  424. package/payload/server/public/assets/dagre-ZzXkSDir.js.br +0 -0
  425. package/payload/server/public/assets/dagre-ZzXkSDir.js.gz +0 -0
  426. package/payload/server/public/assets/data-Bhv0Pvfl.js +1 -0
  427. package/payload/server/public/assets/data-Bhv0Pvfl.js.br +0 -0
  428. package/payload/server/public/assets/data-Bhv0Pvfl.js.gz +0 -0
  429. package/payload/server/public/assets/diagram-5BDNPKRD-BFNkV5GK.js +10 -0
  430. package/payload/server/public/assets/diagram-5BDNPKRD-BFNkV5GK.js.br +0 -0
  431. package/payload/server/public/assets/diagram-5BDNPKRD-BFNkV5GK.js.gz +0 -0
  432. package/payload/server/public/assets/diagram-G4DWMVQ6-1n6vHXzR.js +24 -0
  433. package/payload/server/public/assets/diagram-G4DWMVQ6-1n6vHXzR.js.br +0 -0
  434. package/payload/server/public/assets/diagram-G4DWMVQ6-1n6vHXzR.js.gz +0 -0
  435. package/payload/server/public/assets/diagram-MMDJMWI5-D4QOzaw0.js +43 -0
  436. package/payload/server/public/assets/diagram-MMDJMWI5-D4QOzaw0.js.br +0 -0
  437. package/payload/server/public/assets/diagram-MMDJMWI5-D4QOzaw0.js.gz +0 -0
  438. package/payload/server/public/assets/diagram-TYMM5635-z8lBRsaV.js +24 -0
  439. package/payload/server/public/assets/diagram-TYMM5635-z8lBRsaV.js.br +0 -0
  440. package/payload/server/public/assets/diagram-TYMM5635-z8lBRsaV.js.gz +0 -0
  441. package/payload/server/public/assets/dist-DjYA4E4S.js +1 -0
  442. package/payload/server/public/assets/dist-DjYA4E4S.js.br +0 -0
  443. package/payload/server/public/assets/dist-DjYA4E4S.js.gz +0 -0
  444. package/payload/server/public/assets/erDiagram-SMLLAGMA-CXj3tbtX.js +85 -0
  445. package/payload/server/public/assets/erDiagram-SMLLAGMA-CXj3tbtX.js.br +0 -0
  446. package/payload/server/public/assets/erDiagram-SMLLAGMA-CXj3tbtX.js.gz +0 -0
  447. package/payload/server/public/assets/field-B490-evJ.js +1 -0
  448. package/payload/server/public/assets/field-B490-evJ.js.br +0 -0
  449. package/payload/server/public/assets/field-B490-evJ.js.gz +0 -0
  450. package/payload/server/public/assets/file-text-DyAL2DCh.js +1 -0
  451. package/payload/server/public/assets/file-text-DyAL2DCh.js.br +0 -0
  452. package/payload/server/public/assets/file-text-DyAL2DCh.js.gz +0 -0
  453. package/payload/server/public/assets/flatten-UdUTbm8v.js +1 -0
  454. package/payload/server/public/assets/flatten-UdUTbm8v.js.br +0 -0
  455. package/payload/server/public/assets/flatten-UdUTbm8v.js.gz +0 -0
  456. package/payload/server/public/assets/flowDiagram-DWJPFMVM-DnySI-I4.js +162 -0
  457. package/payload/server/public/assets/flowDiagram-DWJPFMVM-DnySI-I4.js.br +0 -0
  458. package/payload/server/public/assets/flowDiagram-DWJPFMVM-DnySI-I4.js.gz +0 -0
  459. package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-BIE2Q78F.js +292 -0
  460. package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-BIE2Q78F.js.br +0 -0
  461. package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-BIE2Q78F.js.gz +0 -0
  462. package/payload/server/public/assets/gitGraph-7Q5UKJZL-Ua2z-DNt.js +1 -0
  463. package/payload/server/public/assets/gitGraph-7Q5UKJZL-Ua2z-DNt.js.br +0 -0
  464. package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-B2RTRpyG.js +106 -0
  465. package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-B2RTRpyG.js.br +0 -0
  466. package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-B2RTRpyG.js.gz +0 -0
  467. package/payload/server/public/assets/graph-PiNIcCfX.js +51 -0
  468. package/payload/server/public/assets/graph-PiNIcCfX.js.br +0 -0
  469. package/payload/server/public/assets/graph-PiNIcCfX.js.gz +0 -0
  470. package/payload/server/public/assets/graph-labels-8jKFrLHn.js +1 -0
  471. package/payload/server/public/assets/graph-labels-8jKFrLHn.js.br +0 -0
  472. package/payload/server/public/assets/graph-labels-8jKFrLHn.js.gz +0 -0
  473. package/payload/server/public/assets/graphlib-SOh92ucm.js +1 -0
  474. package/payload/server/public/assets/graphlib-SOh92ucm.js.br +0 -0
  475. package/payload/server/public/assets/graphlib-SOh92ucm.js.gz +0 -0
  476. package/payload/server/public/assets/info-OMHHGYJF-CNYp42iX.js +1 -0
  477. package/payload/server/public/assets/info-OMHHGYJF-CNYp42iX.js.br +0 -0
  478. package/payload/server/public/assets/infoDiagram-42DDH7IO-DklHffYr.js +2 -0
  479. package/payload/server/public/assets/infoDiagram-42DDH7IO-DklHffYr.js.br +0 -0
  480. package/payload/server/public/assets/infoDiagram-42DDH7IO-DklHffYr.js.gz +0 -0
  481. package/payload/server/public/assets/isEmpty-DY_Xp9Na.js +1 -0
  482. package/payload/server/public/assets/isEmpty-DY_Xp9Na.js.br +0 -0
  483. package/payload/server/public/assets/isEmpty-DY_Xp9Na.js.gz +0 -0
  484. package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-KAC06i3M.js +70 -0
  485. package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-KAC06i3M.js.br +0 -0
  486. package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-KAC06i3M.js.gz +0 -0
  487. package/payload/server/public/assets/journeyDiagram-VCZTEJTY-cA37ob8S.js +139 -0
  488. package/payload/server/public/assets/journeyDiagram-VCZTEJTY-cA37ob8S.js.br +0 -0
  489. package/payload/server/public/assets/journeyDiagram-VCZTEJTY-cA37ob8S.js.gz +0 -0
  490. package/payload/server/public/assets/jsx-runtime-ChVh0xOm.css +1 -0
  491. package/payload/server/public/assets/jsx-runtime-ChVh0xOm.css.br +0 -0
  492. package/payload/server/public/assets/jsx-runtime-ChVh0xOm.css.gz +0 -0
  493. package/payload/server/public/assets/jsx-runtime-YcUntiud.js +9 -0
  494. package/payload/server/public/assets/jsx-runtime-YcUntiud.js.br +0 -0
  495. package/payload/server/public/assets/jsx-runtime-YcUntiud.js.gz +0 -0
  496. package/payload/server/public/assets/kanban-definition-6JOO6SKY-CBjL70wU.js +89 -0
  497. package/payload/server/public/assets/kanban-definition-6JOO6SKY-CBjL70wU.js.br +0 -0
  498. package/payload/server/public/assets/kanban-definition-6JOO6SKY-CBjL70wU.js.gz +0 -0
  499. package/payload/server/public/assets/line-K8229GLG.js +1 -0
  500. package/payload/server/public/assets/line-K8229GLG.js.br +0 -0
  501. package/payload/server/public/assets/line-K8229GLG.js.gz +0 -0
  502. package/payload/server/public/assets/linear-DeX7Wdt6.js +1 -0
  503. package/payload/server/public/assets/linear-DeX7Wdt6.js.br +0 -0
  504. package/payload/server/public/assets/linear-DeX7Wdt6.js.gz +0 -0
  505. package/payload/server/public/assets/mermaid-parser.core-OnNOAzPX.js +4 -0
  506. package/payload/server/public/assets/mermaid-parser.core-OnNOAzPX.js.br +0 -0
  507. package/payload/server/public/assets/mermaid-parser.core-OnNOAzPX.js.gz +0 -0
  508. package/payload/server/public/assets/mermaid.core-DA-Gezeo.js +11 -0
  509. package/payload/server/public/assets/mermaid.core-DA-Gezeo.js.br +0 -0
  510. package/payload/server/public/assets/mermaid.core-DA-Gezeo.js.gz +0 -0
  511. package/payload/server/public/assets/mindmap-definition-QFDTVHPH-C24TcDyS.js +96 -0
  512. package/payload/server/public/assets/mindmap-definition-QFDTVHPH-C24TcDyS.js.br +0 -0
  513. package/payload/server/public/assets/mindmap-definition-QFDTVHPH-C24TcDyS.js.gz +0 -0
  514. package/payload/server/public/assets/operator-DKGKGzrb.js +1 -0
  515. package/payload/server/public/assets/operator-DKGKGzrb.js.br +0 -0
  516. package/payload/server/public/assets/operator-DKGKGzrb.js.gz +0 -0
  517. package/payload/server/public/assets/ordinal-gnpqfIHn.js +1 -0
  518. package/payload/server/public/assets/ordinal-gnpqfIHn.js.br +0 -0
  519. package/payload/server/public/assets/ordinal-gnpqfIHn.js.gz +0 -0
  520. package/payload/server/public/assets/packet-4T2RLAQJ-B3ZAElsg.js +1 -0
  521. package/payload/server/public/assets/packet-4T2RLAQJ-B3ZAElsg.js.br +0 -0
  522. package/payload/server/public/assets/page-BU5vlY9Y.js +1 -0
  523. package/payload/server/public/assets/page-BU5vlY9Y.js.br +0 -0
  524. package/payload/server/public/assets/page-BU5vlY9Y.js.gz +0 -0
  525. package/payload/server/public/assets/page-DXz_K10G.js +32 -0
  526. package/payload/server/public/assets/page-DXz_K10G.js.br +0 -0
  527. package/payload/server/public/assets/page-DXz_K10G.js.gz +0 -0
  528. package/payload/server/public/assets/pdf-render-B5af7vu1.js +11 -0
  529. package/payload/server/public/assets/pdf-render-B5af7vu1.js.br +0 -0
  530. package/payload/server/public/assets/pdf-render-B5af7vu1.js.gz +0 -0
  531. package/payload/server/public/assets/pie-ZZUOXDRM-BWsRCj8p.js +1 -0
  532. package/payload/server/public/assets/pie-ZZUOXDRM-BWsRCj8p.js.br +0 -0
  533. package/payload/server/public/assets/pieDiagram-DEJITSTG-ChS9jalQ.js +30 -0
  534. package/payload/server/public/assets/pieDiagram-DEJITSTG-ChS9jalQ.js.br +0 -0
  535. package/payload/server/public/assets/pieDiagram-DEJITSTG-ChS9jalQ.js.gz +0 -0
  536. package/payload/server/public/assets/play-CmSyYrB6.js +1 -0
  537. package/payload/server/public/assets/play-CmSyYrB6.js.br +0 -0
  538. package/payload/server/public/assets/play-CmSyYrB6.js.gz +0 -0
  539. package/payload/server/public/assets/public-BmA3-jLj.js +1 -0
  540. package/payload/server/public/assets/public-BmA3-jLj.js.br +0 -0
  541. package/payload/server/public/assets/public-BmA3-jLj.js.gz +0 -0
  542. package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-BxLfRK0z.js +7 -0
  543. package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-BxLfRK0z.js.br +0 -0
  544. package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-BxLfRK0z.js.gz +0 -0
  545. package/payload/server/public/assets/radar-PYXPWWZC-Gxbt2rGT.js +1 -0
  546. package/payload/server/public/assets/radar-PYXPWWZC-Gxbt2rGT.js.br +0 -0
  547. package/payload/server/public/assets/reduce-BvezuHIe.js +1 -0
  548. package/payload/server/public/assets/reduce-BvezuHIe.js.br +0 -0
  549. package/payload/server/public/assets/reduce-BvezuHIe.js.gz +0 -0
  550. package/payload/server/public/assets/requirementDiagram-MS252O5E-CWy48VI3.js +84 -0
  551. package/payload/server/public/assets/requirementDiagram-MS252O5E-CWy48VI3.js.br +0 -0
  552. package/payload/server/public/assets/requirementDiagram-MS252O5E-CWy48VI3.js.gz +0 -0
  553. package/payload/server/public/assets/rotate-ccw-fCH0LSMq.js +1 -0
  554. package/payload/server/public/assets/rotate-ccw-fCH0LSMq.js.br +0 -0
  555. package/payload/server/public/assets/rotate-ccw-fCH0LSMq.js.gz +0 -0
  556. package/payload/server/public/assets/routines-BeFrmkls.js +2 -0
  557. package/payload/server/public/assets/routines-BeFrmkls.js.br +0 -0
  558. package/payload/server/public/assets/routines-BeFrmkls.js.gz +0 -0
  559. package/payload/server/public/assets/sankeyDiagram-XADWPNL6-BBCLEJA3.js +10 -0
  560. package/payload/server/public/assets/sankeyDiagram-XADWPNL6-BBCLEJA3.js.br +0 -0
  561. package/payload/server/public/assets/sankeyDiagram-XADWPNL6-BBCLEJA3.js.gz +0 -0
  562. package/payload/server/public/assets/sequenceDiagram-FGHM5R23-wu64F04G.js +157 -0
  563. package/payload/server/public/assets/sequenceDiagram-FGHM5R23-wu64F04G.js.br +0 -0
  564. package/payload/server/public/assets/sequenceDiagram-FGHM5R23-wu64F04G.js.gz +0 -0
  565. package/payload/server/public/assets/skills-mjls5HBa.js +1 -0
  566. package/payload/server/public/assets/skills-mjls5HBa.js.br +0 -0
  567. package/payload/server/public/assets/skills-mjls5HBa.js.gz +0 -0
  568. package/payload/server/public/assets/src-BvINb2fL.js +1 -0
  569. package/payload/server/public/assets/src-BvINb2fL.js.br +0 -0
  570. package/payload/server/public/assets/src-BvINb2fL.js.gz +0 -0
  571. package/payload/server/public/assets/stateDiagram-FHFEXIEX-Bq6BFFDC.js +1 -0
  572. package/payload/server/public/assets/stateDiagram-FHFEXIEX-Bq6BFFDC.js.br +0 -0
  573. package/payload/server/public/assets/stateDiagram-FHFEXIEX-Bq6BFFDC.js.gz +0 -0
  574. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-PxPsWt1r.js +1 -0
  575. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-PxPsWt1r.js.br +0 -0
  576. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-PxPsWt1r.js.gz +0 -0
  577. package/payload/server/public/assets/tasks-p6puHHD0.js +3 -0
  578. package/payload/server/public/assets/tasks-p6puHHD0.js.br +0 -0
  579. package/payload/server/public/assets/tasks-p6puHHD0.js.gz +0 -0
  580. package/payload/server/public/assets/timeline-definition-GMOUNBTQ-DTdvVZp-.js +120 -0
  581. package/payload/server/public/assets/timeline-definition-GMOUNBTQ-DTdvVZp-.js.br +0 -0
  582. package/payload/server/public/assets/timeline-definition-GMOUNBTQ-DTdvVZp-.js.gz +0 -0
  583. package/payload/server/public/assets/treeView-SZITEDCU-Bl-aPmE3.js +1 -0
  584. package/payload/server/public/assets/treeView-SZITEDCU-Bl-aPmE3.js.br +0 -0
  585. package/payload/server/public/assets/treemap-W4RFUUIX-CUxE8Ofg.js +1 -0
  586. package/payload/server/public/assets/treemap-W4RFUUIX-CUxE8Ofg.js.br +0 -0
  587. package/payload/server/public/assets/triangle-alert-CrZ1ewbd.js +1 -0
  588. package/payload/server/public/assets/triangle-alert-CrZ1ewbd.js.br +0 -0
  589. package/payload/server/public/assets/triangle-alert-CrZ1ewbd.js.gz +0 -0
  590. package/payload/server/public/assets/useCopyFeedback-zOQNrIwd.js +1 -0
  591. package/payload/server/public/assets/useCopyFeedback-zOQNrIwd.js.br +0 -0
  592. package/payload/server/public/assets/useCopyFeedback-zOQNrIwd.js.gz +0 -0
  593. package/payload/server/public/assets/useMediaQuery-BmG090FR.js +6 -0
  594. package/payload/server/public/assets/useMediaQuery-BmG090FR.js.br +0 -0
  595. package/payload/server/public/assets/useMediaQuery-BmG090FR.js.gz +0 -0
  596. package/payload/server/public/assets/useVoiceRecorder-9pf6FFJ-.js +2 -0
  597. package/payload/server/public/assets/useVoiceRecorder-9pf6FFJ-.js.br +0 -0
  598. package/payload/server/public/assets/useVoiceRecorder-9pf6FFJ-.js.gz +0 -0
  599. package/payload/server/public/assets/vennDiagram-DHZGUBPP-CigqIBdl.js +34 -0
  600. package/payload/server/public/assets/vennDiagram-DHZGUBPP-CigqIBdl.js.br +0 -0
  601. package/payload/server/public/assets/vennDiagram-DHZGUBPP-CigqIBdl.js.gz +0 -0
  602. package/payload/server/public/assets/wardley-RL74JXVD-DPB13D22.js +1 -0
  603. package/payload/server/public/assets/wardley-RL74JXVD-DPB13D22.js.br +0 -0
  604. package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-VhV1plUD.js +20 -0
  605. package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-VhV1plUD.js.br +0 -0
  606. package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-VhV1plUD.js.gz +0 -0
  607. package/payload/server/public/assets/wrench-k4GYG5rc.js +1 -0
  608. package/payload/server/public/assets/wrench-k4GYG5rc.js.br +0 -0
  609. package/payload/server/public/assets/wrench-k4GYG5rc.js.gz +0 -0
  610. package/payload/server/public/assets/xychartDiagram-5P7HB3ND-DGkkNLZt.js +7 -0
  611. package/payload/server/public/assets/xychartDiagram-5P7HB3ND-DGkkNLZt.js.br +0 -0
  612. package/payload/server/public/assets/xychartDiagram-5P7HB3ND-DGkkNLZt.js.gz +0 -0
  613. package/payload/server/public/browser.html +6 -6
  614. package/payload/server/public/calendar.html +9 -9
  615. package/payload/server/public/chat.html +16 -16
  616. package/payload/server/public/data.html +15 -15
  617. package/payload/server/public/field.html +4 -4
  618. package/payload/server/public/graph.html +11 -11
  619. package/payload/server/public/index.html +17 -17
  620. package/payload/server/public/operator.html +17 -17
  621. package/payload/server/public/public.html +16 -16
  622. package/payload/server/public/routines.html +10 -10
  623. package/payload/server/public/skills.html +7 -7
  624. package/payload/server/public/tasks.html +8 -8
  625. package/payload/server/server.js +2894 -1985
  626. package/payload/platform/lib/dispatch-read/src/config.d.ts +0 -26
  627. package/payload/platform/lib/dispatch-read/src/types.d.ts +0 -143
  628. package/payload/server/public/assets/AdminLoginScreens-Dp6k1XgD.js +0 -1
  629. package/payload/server/public/assets/AdminLoginScreens-Dp6k1XgD.js.br +0 -0
  630. package/payload/server/public/assets/AdminLoginScreens-Dp6k1XgD.js.gz +0 -0
  631. package/payload/server/public/assets/AdminShell-D-wB90c3.js +0 -3
  632. package/payload/server/public/assets/AdminShell-D-wB90c3.js.br +0 -0
  633. package/payload/server/public/assets/AdminShell-D-wB90c3.js.gz +0 -0
  634. package/payload/server/public/assets/activity-BJxhblz-.js +0 -1
  635. package/payload/server/public/assets/activity-BJxhblz-.js.br +0 -0
  636. package/payload/server/public/assets/activity-BJxhblz-.js.gz +0 -0
  637. package/payload/server/public/assets/admin-DzEi8shs.js +0 -1
  638. package/payload/server/public/assets/admin-DzEi8shs.js.br +0 -0
  639. package/payload/server/public/assets/admin-DzEi8shs.js.gz +0 -0
  640. package/payload/server/public/assets/agents-DTL8kjfD.js +0 -1
  641. package/payload/server/public/assets/agents-DTL8kjfD.js.br +0 -0
  642. package/payload/server/public/assets/agents-DTL8kjfD.js.gz +0 -0
  643. package/payload/server/public/assets/arc-CWXBKNZd.js +0 -1
  644. package/payload/server/public/assets/arc-CWXBKNZd.js.br +0 -0
  645. package/payload/server/public/assets/arc-CWXBKNZd.js.gz +0 -0
  646. package/payload/server/public/assets/architecture-YZFGNWBL-CIL4I0fc.js +0 -1
  647. package/payload/server/public/assets/architecture-YZFGNWBL-CIL4I0fc.js.br +0 -0
  648. package/payload/server/public/assets/architectureDiagram-Q4EWVU46-C-KPMyG4.js +0 -36
  649. package/payload/server/public/assets/architectureDiagram-Q4EWVU46-C-KPMyG4.js.br +0 -0
  650. package/payload/server/public/assets/architectureDiagram-Q4EWVU46-C-KPMyG4.js.gz +0 -0
  651. package/payload/server/public/assets/blockDiagram-DXYQGD6D-DkYbV9Sf.js +0 -132
  652. package/payload/server/public/assets/blockDiagram-DXYQGD6D-DkYbV9Sf.js.br +0 -0
  653. package/payload/server/public/assets/blockDiagram-DXYQGD6D-DkYbV9Sf.js.gz +0 -0
  654. package/payload/server/public/assets/browser-UZp75zhx.js +0 -1
  655. package/payload/server/public/assets/browser-UZp75zhx.js.br +0 -0
  656. package/payload/server/public/assets/browser-UZp75zhx.js.gz +0 -0
  657. package/payload/server/public/assets/c4Diagram-AHTNJAMY-EYW4kdlx.js +0 -10
  658. package/payload/server/public/assets/c4Diagram-AHTNJAMY-EYW4kdlx.js.br +0 -0
  659. package/payload/server/public/assets/c4Diagram-AHTNJAMY-EYW4kdlx.js.gz +0 -0
  660. package/payload/server/public/assets/calendar-Dfo0O2K_.js +0 -1
  661. package/payload/server/public/assets/calendar-Dfo0O2K_.js.br +0 -0
  662. package/payload/server/public/assets/calendar-Dfo0O2K_.js.gz +0 -0
  663. package/payload/server/public/assets/channel-CbHmRjy_.js +0 -1
  664. package/payload/server/public/assets/channel-CbHmRjy_.js.br +0 -0
  665. package/payload/server/public/assets/chat-ByJAvEWZ.js +0 -1
  666. package/payload/server/public/assets/chat-ByJAvEWZ.js.br +0 -0
  667. package/payload/server/public/assets/chat-ByJAvEWZ.js.gz +0 -0
  668. package/payload/server/public/assets/chevron-left-iG7sYNm7.js +0 -1
  669. package/payload/server/public/assets/chevron-left-iG7sYNm7.js.br +0 -0
  670. package/payload/server/public/assets/chunk-2KRD3SAO-CmAF1UmH.js +0 -1
  671. package/payload/server/public/assets/chunk-2KRD3SAO-CmAF1UmH.js.br +0 -0
  672. package/payload/server/public/assets/chunk-2KRD3SAO-CmAF1UmH.js.gz +0 -0
  673. package/payload/server/public/assets/chunk-336JU56O-CyhmJeMM.js +0 -2
  674. package/payload/server/public/assets/chunk-336JU56O-CyhmJeMM.js.br +0 -0
  675. package/payload/server/public/assets/chunk-336JU56O-CyhmJeMM.js.gz +0 -0
  676. package/payload/server/public/assets/chunk-426QAEUC-C2tnHCM7.js +0 -1
  677. package/payload/server/public/assets/chunk-426QAEUC-C2tnHCM7.js.br +0 -0
  678. package/payload/server/public/assets/chunk-426QAEUC-C2tnHCM7.js.gz +0 -0
  679. package/payload/server/public/assets/chunk-4BX2VUAB-DCzC40-Y.js +0 -1
  680. package/payload/server/public/assets/chunk-4BX2VUAB-DCzC40-Y.js.br +0 -0
  681. package/payload/server/public/assets/chunk-4BX2VUAB-DCzC40-Y.js.gz +0 -0
  682. package/payload/server/public/assets/chunk-4TB4RGXK-D9BXrSA_.js +0 -206
  683. package/payload/server/public/assets/chunk-4TB4RGXK-D9BXrSA_.js.br +0 -0
  684. package/payload/server/public/assets/chunk-4TB4RGXK-D9BXrSA_.js.gz +0 -0
  685. package/payload/server/public/assets/chunk-55IACEB6-BwXC-qTZ.js +0 -1
  686. package/payload/server/public/assets/chunk-55IACEB6-BwXC-qTZ.js.br +0 -0
  687. package/payload/server/public/assets/chunk-55IACEB6-BwXC-qTZ.js.gz +0 -0
  688. package/payload/server/public/assets/chunk-5FUZZQ4R-De7QtXxM.js +0 -62
  689. package/payload/server/public/assets/chunk-5FUZZQ4R-De7QtXxM.js.br +0 -0
  690. package/payload/server/public/assets/chunk-5FUZZQ4R-De7QtXxM.js.gz +0 -0
  691. package/payload/server/public/assets/chunk-5PVQY5BW-B5tsJiCq.js +0 -2
  692. package/payload/server/public/assets/chunk-5PVQY5BW-B5tsJiCq.js.br +0 -0
  693. package/payload/server/public/assets/chunk-5PVQY5BW-B5tsJiCq.js.gz +0 -0
  694. package/payload/server/public/assets/chunk-67CJDMHE-BjTh9STV.js +0 -1
  695. package/payload/server/public/assets/chunk-67CJDMHE-BjTh9STV.js.br +0 -0
  696. package/payload/server/public/assets/chunk-67CJDMHE-BjTh9STV.js.gz +0 -0
  697. package/payload/server/public/assets/chunk-7N4EOEYR-91klRswn.js +0 -1
  698. package/payload/server/public/assets/chunk-7N4EOEYR-91klRswn.js.br +0 -0
  699. package/payload/server/public/assets/chunk-7N4EOEYR-91klRswn.js.gz +0 -0
  700. package/payload/server/public/assets/chunk-AA7GKIK3-XFPGEoBu.js +0 -1
  701. package/payload/server/public/assets/chunk-AA7GKIK3-XFPGEoBu.js.br +0 -3
  702. package/payload/server/public/assets/chunk-AA7GKIK3-XFPGEoBu.js.gz +0 -0
  703. package/payload/server/public/assets/chunk-BSJP7CBP-B7wgMyWq.js +0 -1
  704. package/payload/server/public/assets/chunk-BSJP7CBP-B7wgMyWq.js.br +0 -0
  705. package/payload/server/public/assets/chunk-BSJP7CBP-B7wgMyWq.js.gz +0 -0
  706. package/payload/server/public/assets/chunk-CIAEETIT-WPy9vcOo.js +0 -1
  707. package/payload/server/public/assets/chunk-CIAEETIT-WPy9vcOo.js.br +0 -0
  708. package/payload/server/public/assets/chunk-CIAEETIT-WPy9vcOo.js.gz +0 -0
  709. package/payload/server/public/assets/chunk-EDXVE4YY-D_2JIFFG.js +0 -1
  710. package/payload/server/public/assets/chunk-EDXVE4YY-D_2JIFFG.js.br +0 -0
  711. package/payload/server/public/assets/chunk-EDXVE4YY-D_2JIFFG.js.gz +0 -0
  712. package/payload/server/public/assets/chunk-ENJZ2VHE-xORReRt0.js +0 -10
  713. package/payload/server/public/assets/chunk-ENJZ2VHE-xORReRt0.js.br +0 -0
  714. package/payload/server/public/assets/chunk-ENJZ2VHE-xORReRt0.js.gz +0 -0
  715. package/payload/server/public/assets/chunk-FMBD7UC4-BZsDu4nl.js +0 -15
  716. package/payload/server/public/assets/chunk-FMBD7UC4-BZsDu4nl.js.br +0 -0
  717. package/payload/server/public/assets/chunk-FMBD7UC4-BZsDu4nl.js.gz +0 -0
  718. package/payload/server/public/assets/chunk-FOC6F5B3-QzUp8wXX.js +0 -1
  719. package/payload/server/public/assets/chunk-FOC6F5B3-QzUp8wXX.js.br +0 -0
  720. package/payload/server/public/assets/chunk-FOC6F5B3-QzUp8wXX.js.gz +0 -0
  721. package/payload/server/public/assets/chunk-ICPOFSXX-B64S7i7x.js +0 -122
  722. package/payload/server/public/assets/chunk-ICPOFSXX-B64S7i7x.js.br +0 -0
  723. package/payload/server/public/assets/chunk-ICPOFSXX-B64S7i7x.js.gz +0 -0
  724. package/payload/server/public/assets/chunk-K5T4RW27-DzPc6X1_.js +0 -94
  725. package/payload/server/public/assets/chunk-K5T4RW27-DzPc6X1_.js.br +0 -0
  726. package/payload/server/public/assets/chunk-K5T4RW27-DzPc6X1_.js.gz +0 -0
  727. package/payload/server/public/assets/chunk-KGLVRYIC-A2rPnD7k.js +0 -1
  728. package/payload/server/public/assets/chunk-KGLVRYIC-A2rPnD7k.js.br +0 -1
  729. package/payload/server/public/assets/chunk-KGLVRYIC-A2rPnD7k.js.gz +0 -0
  730. package/payload/server/public/assets/chunk-LIHQZDEY-CaWX327m.js +0 -1
  731. package/payload/server/public/assets/chunk-LIHQZDEY-CaWX327m.js.br +0 -0
  732. package/payload/server/public/assets/chunk-LIHQZDEY-CaWX327m.js.gz +0 -0
  733. package/payload/server/public/assets/chunk-ORNJ4GCN-zrWhdmnc.js +0 -1
  734. package/payload/server/public/assets/chunk-ORNJ4GCN-zrWhdmnc.js.br +0 -0
  735. package/payload/server/public/assets/chunk-ORNJ4GCN-zrWhdmnc.js.gz +0 -0
  736. package/payload/server/public/assets/chunk-OYMX7WX6-B_2qQir6.js +0 -231
  737. package/payload/server/public/assets/chunk-OYMX7WX6-B_2qQir6.js.br +0 -0
  738. package/payload/server/public/assets/chunk-OYMX7WX6-B_2qQir6.js.gz +0 -0
  739. package/payload/server/public/assets/chunk-QZHKN3VN-BzgrgCTo.js +0 -1
  740. package/payload/server/public/assets/chunk-QZHKN3VN-BzgrgCTo.js.br +0 -0
  741. package/payload/server/public/assets/chunk-QZHKN3VN-BzgrgCTo.js.gz +0 -0
  742. package/payload/server/public/assets/chunk-U2HBQHQK-B-IYgxsc.js +0 -70
  743. package/payload/server/public/assets/chunk-U2HBQHQK-B-IYgxsc.js.br +0 -0
  744. package/payload/server/public/assets/chunk-U2HBQHQK-B-IYgxsc.js.gz +0 -0
  745. package/payload/server/public/assets/chunk-X2U36JSP-Y9Y1_EuG.js +0 -1
  746. package/payload/server/public/assets/chunk-X2U36JSP-Y9Y1_EuG.js.br +0 -0
  747. package/payload/server/public/assets/chunk-X2U36JSP-Y9Y1_EuG.js.gz +0 -0
  748. package/payload/server/public/assets/chunk-XPW4576I-C-6yETG_.js +0 -32
  749. package/payload/server/public/assets/chunk-XPW4576I-C-6yETG_.js.br +0 -0
  750. package/payload/server/public/assets/chunk-XPW4576I-C-6yETG_.js.gz +0 -0
  751. package/payload/server/public/assets/chunk-YZCP3GAM-KAuQIU5n.js +0 -1
  752. package/payload/server/public/assets/chunk-YZCP3GAM-KAuQIU5n.js.br +0 -0
  753. package/payload/server/public/assets/chunk-YZCP3GAM-KAuQIU5n.js.gz +0 -0
  754. package/payload/server/public/assets/chunk-ZZ45TVLE-BJcH3KDH.js +0 -1
  755. package/payload/server/public/assets/chunk-ZZ45TVLE-BJcH3KDH.js.br +0 -0
  756. package/payload/server/public/assets/chunk-ZZ45TVLE-BJcH3KDH.js.gz +0 -0
  757. package/payload/server/public/assets/classDiagram-6PBFFD2Q-BxvqeBEj.js +0 -1
  758. package/payload/server/public/assets/classDiagram-6PBFFD2Q-BxvqeBEj.js.br +0 -0
  759. package/payload/server/public/assets/classDiagram-6PBFFD2Q-BxvqeBEj.js.gz +0 -0
  760. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-R3-NzMRG.js +0 -1
  761. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-R3-NzMRG.js.br +0 -0
  762. package/payload/server/public/assets/classDiagram-v2-HSJHXN6E-R3-NzMRG.js.gz +0 -0
  763. package/payload/server/public/assets/clock-xSs0UF10.js +0 -1
  764. package/payload/server/public/assets/clock-xSs0UF10.js.br +0 -0
  765. package/payload/server/public/assets/clock-xSs0UF10.js.gz +0 -0
  766. package/payload/server/public/assets/clone-QdOE5SXR.js +0 -1
  767. package/payload/server/public/assets/copy-CGI2jioK.js +0 -1
  768. package/payload/server/public/assets/copy-CGI2jioK.js.br +0 -0
  769. package/payload/server/public/assets/copy-CGI2jioK.js.gz +0 -0
  770. package/payload/server/public/assets/cose-bilkent-S5V4N54A-CcXj8vHa.js +0 -1
  771. package/payload/server/public/assets/cose-bilkent-S5V4N54A-CcXj8vHa.js.br +0 -0
  772. package/payload/server/public/assets/cose-bilkent-S5V4N54A-CcXj8vHa.js.gz +0 -0
  773. package/payload/server/public/assets/dagre-DOtq9kYX.js +0 -1
  774. package/payload/server/public/assets/dagre-DOtq9kYX.js.br +0 -0
  775. package/payload/server/public/assets/dagre-DOtq9kYX.js.gz +0 -0
  776. package/payload/server/public/assets/dagre-KV5264BT-BOhQs4rS.js +0 -4
  777. package/payload/server/public/assets/dagre-KV5264BT-BOhQs4rS.js.br +0 -0
  778. package/payload/server/public/assets/dagre-KV5264BT-BOhQs4rS.js.gz +0 -0
  779. package/payload/server/public/assets/data-dvwK4BcP.js +0 -1
  780. package/payload/server/public/assets/data-dvwK4BcP.js.br +0 -0
  781. package/payload/server/public/assets/data-dvwK4BcP.js.gz +0 -0
  782. package/payload/server/public/assets/diagram-5BDNPKRD-CqJFt5ZM.js +0 -10
  783. package/payload/server/public/assets/diagram-5BDNPKRD-CqJFt5ZM.js.br +0 -0
  784. package/payload/server/public/assets/diagram-5BDNPKRD-CqJFt5ZM.js.gz +0 -0
  785. package/payload/server/public/assets/diagram-G4DWMVQ6-WQIyAZMn.js +0 -24
  786. package/payload/server/public/assets/diagram-G4DWMVQ6-WQIyAZMn.js.br +0 -0
  787. package/payload/server/public/assets/diagram-G4DWMVQ6-WQIyAZMn.js.gz +0 -0
  788. package/payload/server/public/assets/diagram-MMDJMWI5-jcKc4a2w.js +0 -43
  789. package/payload/server/public/assets/diagram-MMDJMWI5-jcKc4a2w.js.br +0 -0
  790. package/payload/server/public/assets/diagram-MMDJMWI5-jcKc4a2w.js.gz +0 -0
  791. package/payload/server/public/assets/diagram-TYMM5635-Bbt2KuWe.js +0 -24
  792. package/payload/server/public/assets/diagram-TYMM5635-Bbt2KuWe.js.br +0 -0
  793. package/payload/server/public/assets/diagram-TYMM5635-Bbt2KuWe.js.gz +0 -0
  794. package/payload/server/public/assets/dispatch-Dx9-ty1K.js +0 -1
  795. package/payload/server/public/assets/dispatch-Dx9-ty1K.js.br +0 -0
  796. package/payload/server/public/assets/dispatch-Dx9-ty1K.js.gz +0 -0
  797. package/payload/server/public/assets/dist-9RiN6lky.js +0 -1
  798. package/payload/server/public/assets/dist-9RiN6lky.js.br +0 -0
  799. package/payload/server/public/assets/dist-9RiN6lky.js.gz +0 -0
  800. package/payload/server/public/assets/erDiagram-SMLLAGMA-BBm6azPJ.js +0 -85
  801. package/payload/server/public/assets/erDiagram-SMLLAGMA-BBm6azPJ.js.br +0 -0
  802. package/payload/server/public/assets/erDiagram-SMLLAGMA-BBm6azPJ.js.gz +0 -0
  803. package/payload/server/public/assets/field-D-P6CsWA.js +0 -1
  804. package/payload/server/public/assets/field-D-P6CsWA.js.br +0 -0
  805. package/payload/server/public/assets/field-D-P6CsWA.js.gz +0 -0
  806. package/payload/server/public/assets/file-text-RWintp9q.js +0 -1
  807. package/payload/server/public/assets/file-text-RWintp9q.js.br +0 -0
  808. package/payload/server/public/assets/file-text-RWintp9q.js.gz +0 -0
  809. package/payload/server/public/assets/flatten-BurGKeIy.js +0 -1
  810. package/payload/server/public/assets/flatten-BurGKeIy.js.br +0 -0
  811. package/payload/server/public/assets/flatten-BurGKeIy.js.gz +0 -0
  812. package/payload/server/public/assets/flowDiagram-DWJPFMVM-_r45DYJ8.js +0 -162
  813. package/payload/server/public/assets/flowDiagram-DWJPFMVM-_r45DYJ8.js.br +0 -0
  814. package/payload/server/public/assets/flowDiagram-DWJPFMVM-_r45DYJ8.js.gz +0 -0
  815. package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-Bjgj9Bej.js +0 -292
  816. package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-Bjgj9Bej.js.br +0 -0
  817. package/payload/server/public/assets/ganttDiagram-T4ZO3ILL-Bjgj9Bej.js.gz +0 -0
  818. package/payload/server/public/assets/gitGraph-7Q5UKJZL-DdbK59od.js +0 -1
  819. package/payload/server/public/assets/gitGraph-7Q5UKJZL-DdbK59od.js.br +0 -0
  820. package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-DTRdhGJA.js +0 -106
  821. package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-DTRdhGJA.js.br +0 -0
  822. package/payload/server/public/assets/gitGraphDiagram-UUTBAWPF-DTRdhGJA.js.gz +0 -0
  823. package/payload/server/public/assets/graph-CpBlfYrJ.js +0 -51
  824. package/payload/server/public/assets/graph-CpBlfYrJ.js.br +0 -0
  825. package/payload/server/public/assets/graph-CpBlfYrJ.js.gz +0 -0
  826. package/payload/server/public/assets/graph-labels-BOMyPppX.js +0 -1
  827. package/payload/server/public/assets/graph-labels-BOMyPppX.js.br +0 -0
  828. package/payload/server/public/assets/graph-labels-BOMyPppX.js.gz +0 -0
  829. package/payload/server/public/assets/graphlib-DT4h6-4N.js +0 -1
  830. package/payload/server/public/assets/graphlib-DT4h6-4N.js.br +0 -0
  831. package/payload/server/public/assets/graphlib-DT4h6-4N.js.gz +0 -0
  832. package/payload/server/public/assets/info-OMHHGYJF-BR8gm0wj.js +0 -1
  833. package/payload/server/public/assets/info-OMHHGYJF-BR8gm0wj.js.br +0 -0
  834. package/payload/server/public/assets/infoDiagram-42DDH7IO-Cr3Efss6.js +0 -2
  835. package/payload/server/public/assets/infoDiagram-42DDH7IO-Cr3Efss6.js.br +0 -0
  836. package/payload/server/public/assets/infoDiagram-42DDH7IO-Cr3Efss6.js.gz +0 -0
  837. package/payload/server/public/assets/isEmpty-C5v0-EY7.js +0 -1
  838. package/payload/server/public/assets/isEmpty-C5v0-EY7.js.br +0 -0
  839. package/payload/server/public/assets/isEmpty-C5v0-EY7.js.gz +0 -0
  840. package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-BklHzVHm.js +0 -70
  841. package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-BklHzVHm.js.br +0 -0
  842. package/payload/server/public/assets/ishikawaDiagram-UXIWVN3A-BklHzVHm.js.gz +0 -0
  843. package/payload/server/public/assets/journeyDiagram-VCZTEJTY-Ckxx2CmV.js +0 -139
  844. package/payload/server/public/assets/journeyDiagram-VCZTEJTY-Ckxx2CmV.js.br +0 -0
  845. package/payload/server/public/assets/journeyDiagram-VCZTEJTY-Ckxx2CmV.js.gz +0 -0
  846. package/payload/server/public/assets/jsx-runtime-5lmxFBIw.js +0 -9
  847. package/payload/server/public/assets/jsx-runtime-5lmxFBIw.js.br +0 -0
  848. package/payload/server/public/assets/jsx-runtime-5lmxFBIw.js.gz +0 -0
  849. package/payload/server/public/assets/jsx-runtime-DxsQ5Y-z.css +0 -1
  850. package/payload/server/public/assets/jsx-runtime-DxsQ5Y-z.css.br +0 -0
  851. package/payload/server/public/assets/jsx-runtime-DxsQ5Y-z.css.gz +0 -0
  852. package/payload/server/public/assets/kanban-definition-6JOO6SKY-BLELXpqn.js +0 -89
  853. package/payload/server/public/assets/kanban-definition-6JOO6SKY-BLELXpqn.js.br +0 -0
  854. package/payload/server/public/assets/kanban-definition-6JOO6SKY-BLELXpqn.js.gz +0 -0
  855. package/payload/server/public/assets/line-BkI5icOY.js +0 -1
  856. package/payload/server/public/assets/line-BkI5icOY.js.br +0 -0
  857. package/payload/server/public/assets/line-BkI5icOY.js.gz +0 -0
  858. package/payload/server/public/assets/linear-B64ANRVs.js +0 -1
  859. package/payload/server/public/assets/linear-B64ANRVs.js.br +0 -0
  860. package/payload/server/public/assets/linear-B64ANRVs.js.gz +0 -0
  861. package/payload/server/public/assets/mermaid-parser.core-qXPKkdJe.js +0 -4
  862. package/payload/server/public/assets/mermaid-parser.core-qXPKkdJe.js.br +0 -0
  863. package/payload/server/public/assets/mermaid-parser.core-qXPKkdJe.js.gz +0 -0
  864. package/payload/server/public/assets/mermaid.core-BMsz65Wy.js +0 -11
  865. package/payload/server/public/assets/mermaid.core-BMsz65Wy.js.br +0 -0
  866. package/payload/server/public/assets/mermaid.core-BMsz65Wy.js.gz +0 -0
  867. package/payload/server/public/assets/mindmap-definition-QFDTVHPH-DhFTS2sx.js +0 -96
  868. package/payload/server/public/assets/mindmap-definition-QFDTVHPH-DhFTS2sx.js.br +0 -0
  869. package/payload/server/public/assets/mindmap-definition-QFDTVHPH-DhFTS2sx.js.gz +0 -0
  870. package/payload/server/public/assets/operator-DFgW6GiH.js +0 -1
  871. package/payload/server/public/assets/operator-DFgW6GiH.js.br +0 -0
  872. package/payload/server/public/assets/operator-DFgW6GiH.js.gz +0 -0
  873. package/payload/server/public/assets/ordinal-CJ_pL32Z.js +0 -1
  874. package/payload/server/public/assets/ordinal-CJ_pL32Z.js.br +0 -0
  875. package/payload/server/public/assets/ordinal-CJ_pL32Z.js.gz +0 -0
  876. package/payload/server/public/assets/packet-4T2RLAQJ-B31PbAeA.js +0 -1
  877. package/payload/server/public/assets/packet-4T2RLAQJ-B31PbAeA.js.br +0 -0
  878. package/payload/server/public/assets/page-BRShHSH0.js +0 -1
  879. package/payload/server/public/assets/page-BRShHSH0.js.br +0 -0
  880. package/payload/server/public/assets/page-BRShHSH0.js.gz +0 -0
  881. package/payload/server/public/assets/page-BbBCu9iP.js +0 -32
  882. package/payload/server/public/assets/page-BbBCu9iP.js.br +0 -0
  883. package/payload/server/public/assets/page-BbBCu9iP.js.gz +0 -0
  884. package/payload/server/public/assets/pdf-render-ynIPXfRA.js +0 -11
  885. package/payload/server/public/assets/pdf-render-ynIPXfRA.js.br +0 -0
  886. package/payload/server/public/assets/pdf-render-ynIPXfRA.js.gz +0 -0
  887. package/payload/server/public/assets/pie-ZZUOXDRM-BbSc1VXl.js +0 -1
  888. package/payload/server/public/assets/pie-ZZUOXDRM-BbSc1VXl.js.br +0 -0
  889. package/payload/server/public/assets/pieDiagram-DEJITSTG-B2TxkbHK.js +0 -30
  890. package/payload/server/public/assets/pieDiagram-DEJITSTG-B2TxkbHK.js.br +0 -0
  891. package/payload/server/public/assets/pieDiagram-DEJITSTG-B2TxkbHK.js.gz +0 -0
  892. package/payload/server/public/assets/play-BJxUaf6-.js +0 -1
  893. package/payload/server/public/assets/play-BJxUaf6-.js.br +0 -0
  894. package/payload/server/public/assets/play-BJxUaf6-.js.gz +0 -0
  895. package/payload/server/public/assets/public-DkObqkzL.js +0 -1
  896. package/payload/server/public/assets/public-DkObqkzL.js.br +0 -0
  897. package/payload/server/public/assets/public-DkObqkzL.js.gz +0 -0
  898. package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-GsMxIJuS.js +0 -7
  899. package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-GsMxIJuS.js.br +0 -0
  900. package/payload/server/public/assets/quadrantDiagram-34T5L4WZ-GsMxIJuS.js.gz +0 -0
  901. package/payload/server/public/assets/radar-PYXPWWZC-B0La8_mZ.js +0 -1
  902. package/payload/server/public/assets/radar-PYXPWWZC-B0La8_mZ.js.br +0 -0
  903. package/payload/server/public/assets/reduce-CfkEiHc9.js +0 -1
  904. package/payload/server/public/assets/reduce-CfkEiHc9.js.br +0 -0
  905. package/payload/server/public/assets/reduce-CfkEiHc9.js.gz +0 -0
  906. package/payload/server/public/assets/requirementDiagram-MS252O5E-DqNprm-1.js +0 -84
  907. package/payload/server/public/assets/requirementDiagram-MS252O5E-DqNprm-1.js.br +0 -0
  908. package/payload/server/public/assets/requirementDiagram-MS252O5E-DqNprm-1.js.gz +0 -0
  909. package/payload/server/public/assets/rotate-ccw-DgMO69nh.js +0 -1
  910. package/payload/server/public/assets/rotate-ccw-DgMO69nh.js.br +0 -0
  911. package/payload/server/public/assets/rotate-ccw-DgMO69nh.js.gz +0 -0
  912. package/payload/server/public/assets/routines-D9kvg_Xu.js +0 -2
  913. package/payload/server/public/assets/routines-D9kvg_Xu.js.br +0 -0
  914. package/payload/server/public/assets/routines-D9kvg_Xu.js.gz +0 -0
  915. package/payload/server/public/assets/sankeyDiagram-XADWPNL6-B-kRuiuz.js +0 -10
  916. package/payload/server/public/assets/sankeyDiagram-XADWPNL6-B-kRuiuz.js.br +0 -0
  917. package/payload/server/public/assets/sankeyDiagram-XADWPNL6-B-kRuiuz.js.gz +0 -0
  918. package/payload/server/public/assets/sequenceDiagram-FGHM5R23-DEhL9g3K.js +0 -157
  919. package/payload/server/public/assets/sequenceDiagram-FGHM5R23-DEhL9g3K.js.br +0 -0
  920. package/payload/server/public/assets/sequenceDiagram-FGHM5R23-DEhL9g3K.js.gz +0 -0
  921. package/payload/server/public/assets/skills-l5I9HZ3D.js +0 -1
  922. package/payload/server/public/assets/skills-l5I9HZ3D.js.br +0 -0
  923. package/payload/server/public/assets/skills-l5I9HZ3D.js.gz +0 -0
  924. package/payload/server/public/assets/src-BrAT6wKv.js +0 -1
  925. package/payload/server/public/assets/src-BrAT6wKv.js.br +0 -0
  926. package/payload/server/public/assets/src-BrAT6wKv.js.gz +0 -0
  927. package/payload/server/public/assets/stateDiagram-FHFEXIEX-Q-g6BHdz.js +0 -1
  928. package/payload/server/public/assets/stateDiagram-FHFEXIEX-Q-g6BHdz.js.br +0 -0
  929. package/payload/server/public/assets/stateDiagram-FHFEXIEX-Q-g6BHdz.js.gz +0 -0
  930. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-ssRWItVj.js +0 -1
  931. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-ssRWItVj.js.br +0 -0
  932. package/payload/server/public/assets/stateDiagram-v2-QKLJ7IA2-ssRWItVj.js.gz +0 -0
  933. package/payload/server/public/assets/tasks-C2qJMv6i.js +0 -3
  934. package/payload/server/public/assets/tasks-C2qJMv6i.js.br +0 -0
  935. package/payload/server/public/assets/tasks-C2qJMv6i.js.gz +0 -0
  936. package/payload/server/public/assets/timeline-definition-GMOUNBTQ-B3-52q4Q.js +0 -120
  937. package/payload/server/public/assets/timeline-definition-GMOUNBTQ-B3-52q4Q.js.br +0 -0
  938. package/payload/server/public/assets/timeline-definition-GMOUNBTQ-B3-52q4Q.js.gz +0 -0
  939. package/payload/server/public/assets/treeView-SZITEDCU-BBR3hu9P.js +0 -1
  940. package/payload/server/public/assets/treeView-SZITEDCU-BBR3hu9P.js.br +0 -0
  941. package/payload/server/public/assets/treemap-W4RFUUIX-wSQMuzBT.js +0 -1
  942. package/payload/server/public/assets/treemap-W4RFUUIX-wSQMuzBT.js.br +0 -0
  943. package/payload/server/public/assets/triangle-alert-BnC67uSs.js +0 -1
  944. package/payload/server/public/assets/triangle-alert-BnC67uSs.js.br +0 -0
  945. package/payload/server/public/assets/triangle-alert-BnC67uSs.js.gz +0 -0
  946. package/payload/server/public/assets/useCopyFeedback-1RmgkTFh.js +0 -1
  947. package/payload/server/public/assets/useCopyFeedback-1RmgkTFh.js.br +0 -0
  948. package/payload/server/public/assets/useCopyFeedback-1RmgkTFh.js.gz +0 -0
  949. package/payload/server/public/assets/useMediaQuery-BQslddHQ.js +0 -6
  950. package/payload/server/public/assets/useMediaQuery-BQslddHQ.js.br +0 -0
  951. package/payload/server/public/assets/useMediaQuery-BQslddHQ.js.gz +0 -0
  952. package/payload/server/public/assets/useVoiceRecorder-BeZNQEC4.js +0 -2
  953. package/payload/server/public/assets/useVoiceRecorder-BeZNQEC4.js.br +0 -0
  954. package/payload/server/public/assets/useVoiceRecorder-BeZNQEC4.js.gz +0 -0
  955. package/payload/server/public/assets/vennDiagram-DHZGUBPP-Bzm1VDi1.js +0 -34
  956. package/payload/server/public/assets/vennDiagram-DHZGUBPP-Bzm1VDi1.js.br +0 -0
  957. package/payload/server/public/assets/vennDiagram-DHZGUBPP-Bzm1VDi1.js.gz +0 -0
  958. package/payload/server/public/assets/wardley-RL74JXVD-3QaECtQN.js +0 -1
  959. package/payload/server/public/assets/wardley-RL74JXVD-3QaECtQN.js.br +0 -0
  960. package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-DIqGZr4v.js +0 -20
  961. package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-DIqGZr4v.js.br +0 -0
  962. package/payload/server/public/assets/wardleyDiagram-NUSXRM2D-DIqGZr4v.js.gz +0 -0
  963. package/payload/server/public/assets/wrench-D4ufQG6C.js +0 -1
  964. package/payload/server/public/assets/wrench-D4ufQG6C.js.br +0 -0
  965. package/payload/server/public/assets/wrench-D4ufQG6C.js.gz +0 -0
  966. package/payload/server/public/assets/xychartDiagram-5P7HB3ND-0W2L2hQA.js +0 -7
  967. package/payload/server/public/assets/xychartDiagram-5P7HB3ND-0W2L2hQA.js.br +0 -0
  968. package/payload/server/public/assets/xychartDiagram-5P7HB3ND-0W2L2hQA.js.gz +0 -0
  969. package/payload/server/public/dispatch.html +0 -20
  970. /package/payload/server/public/assets/{_baseFor-D1duyODO.js → _baseFor-BApe6Tla.js} +0 -0
  971. /package/payload/server/public/assets/{_baseFor-D1duyODO.js.br → _baseFor-BApe6Tla.js.br} +0 -0
  972. /package/payload/server/public/assets/{_baseFor-D1duyODO.js.gz → _baseFor-BApe6Tla.js.gz} +0 -0
  973. /package/payload/server/public/assets/{array-j7Xa9Fap.js → array-eiH4WfvY.js} +0 -0
  974. /package/payload/server/public/assets/{array-j7Xa9Fap.js.br → array-eiH4WfvY.js.br} +0 -0
  975. /package/payload/server/public/assets/{chunk-DlZTsV_O.js → chunk-BycB0eMI.js} +0 -0
  976. /package/payload/server/public/assets/{chunk-DlZTsV_O.js.br → chunk-BycB0eMI.js.br} +0 -0
  977. /package/payload/server/public/assets/{chunk-DlZTsV_O.js.gz → chunk-BycB0eMI.js.gz} +0 -0
  978. /package/payload/server/public/assets/{cytoscape.esm-Dob3eilA.js → cytoscape.esm-BZ6NYo0w.js} +0 -0
  979. /package/payload/server/public/assets/{cytoscape.esm-Dob3eilA.js.br → cytoscape.esm-BZ6NYo0w.js.br} +0 -0
  980. /package/payload/server/public/assets/{cytoscape.esm-Dob3eilA.js.gz → cytoscape.esm-BZ6NYo0w.js.gz} +0 -0
  981. /package/payload/server/public/assets/{defaultLocale-BNILPWh2.js → defaultLocale-DWHqsa6O.js} +0 -0
  982. /package/payload/server/public/assets/{defaultLocale-BNILPWh2.js.br → defaultLocale-DWHqsa6O.js.br} +0 -0
  983. /package/payload/server/public/assets/{defaultLocale-BNILPWh2.js.gz → defaultLocale-DWHqsa6O.js.gz} +0 -0
  984. /package/payload/server/public/assets/{file-download-CN4H4Eih.js → file-download-B7zwa78w.js} +0 -0
  985. /package/payload/server/public/assets/{file-download-CN4H4Eih.js.br → file-download-B7zwa78w.js.br} +0 -0
  986. /package/payload/server/public/assets/{file-download-CN4H4Eih.js.gz → file-download-B7zwa78w.js.gz} +0 -0
  987. /package/payload/server/public/assets/{init-ve51bpJo.js → init-BdkYWjJJ.js} +0 -0
  988. /package/payload/server/public/assets/{init-ve51bpJo.js.br → init-BdkYWjJJ.js.br} +0 -0
  989. /package/payload/server/public/assets/{init-ve51bpJo.js.gz → init-BdkYWjJJ.js.gz} +0 -0
  990. /package/payload/server/public/assets/{katex-CJNaolDQ.js → katex-BCzoGtFh.js} +0 -0
  991. /package/payload/server/public/assets/{katex-CJNaolDQ.js.br → katex-BCzoGtFh.js.br} +0 -0
  992. /package/payload/server/public/assets/{katex-CJNaolDQ.js.gz → katex-BCzoGtFh.js.gz} +0 -0
  993. /package/payload/server/public/assets/{path-B4emajHp.js → path-DY2qBuPM.js} +0 -0
  994. /package/payload/server/public/assets/{path-B4emajHp.js.br → path-DY2qBuPM.js.br} +0 -0
  995. /package/payload/server/public/assets/{path-B4emajHp.js.gz → path-DY2qBuPM.js.gz} +0 -0
  996. /package/payload/server/public/assets/{preload-helper-3YNEDsJZ.js → preload-helper-eAV8hweq.js} +0 -0
  997. /package/payload/server/public/assets/{preload-helper-3YNEDsJZ.js.br → preload-helper-eAV8hweq.js.br} +0 -0
  998. /package/payload/server/public/assets/{preload-helper-3YNEDsJZ.js.gz → preload-helper-eAV8hweq.js.gz} +0 -0
  999. /package/payload/server/public/assets/{rough.esm-zabqYs6f.js → rough.esm-ec8xsRC7.js} +0 -0
  1000. /package/payload/server/public/assets/{rough.esm-zabqYs6f.js.br → rough.esm-ec8xsRC7.js.br} +0 -0
  1001. /package/payload/server/public/assets/{rough.esm-zabqYs6f.js.gz → rough.esm-ec8xsRC7.js.gz} +0 -0
@@ -0,0 +1,159 @@
1
+ #!/usr/bin/env bash
2
+ # specialist-dispatch-gate — PreToolUse gate on every tool.
3
+ #
4
+ # An account's own specialists own their tools. This gate refuses the main
5
+ # conversation a tool one of the account's authored cards declares, and names the
6
+ # specialist to dispatch instead. It exists because skipped delegation writes no
7
+ # record: an inline draft logs an ordinary success, so nothing in any log
8
+ # separates "the clerk did it" from "the admin did it by hand". On one account
9
+ # four authored clerks owned email, works orders, invoices and quotes while the
10
+ # admin produced all of them inline for three days.
11
+ #
12
+ # Two narrowings, both load-bearing.
13
+ #
14
+ # Card axis — the account's OWN cards only. Provisioning copies every shipped
15
+ # template into each account, and one of them declares roughly 130 tools
16
+ # including the whole email, WhatsApp, calendar and browser surfaces, so reading
17
+ # every card would refuse the admin nearly its entire seat. A card is the
18
+ # account's own when its filename appears in none of the shipped roots. The
19
+ # account's own plugin root is deliberately NOT one of those: a card filed there
20
+ # is that account's durable copy, not something we ship.
21
+ #
22
+ # Tool axis — native tools are never gated. Every card declares some of Bash,
23
+ # Read, Write and Edit, and refusing those would brick the seat. The NATIVE set
24
+ # below mirrors CC_NATIVE_TOOLS in the session manager, which a bash hook cannot
25
+ # import; the gate's own test compares the two sets rather than trusting them to
26
+ # stay equal.
27
+ #
28
+ # Caller identity is `agent_type` from the hook envelope, which Claude Code sets
29
+ # when a hook fires inside a subagent. A non-empty value exits 0 unconditionally:
30
+ # this gate must never filter a subagent's tool surface, which is the failure an
31
+ # inherited CLI deny produced when it stripped the writers from a specialist's
32
+ # own frontmatter. The MAXY_SPECIALIST env is not usable — it is stamped only for
33
+ # a specialist spawned as its own PTY process, and native Agent-tool subagents
34
+ # inherit the admin process env.
35
+ #
36
+ # Exit codes: 0 = allow, 2 = block (stderr shown to the agent). Fail OPEN on an
37
+ # uninspectable envelope, and say so with op=degraded when the card set cannot be
38
+ # read: failing open is fine, failing open silently is the fault. No task numbers
39
+ # or internal refs in any operator-visible string.
40
+
41
+ set -uo pipefail
42
+
43
+ # No envelope (tty or empty stdin) → allow: cannot inspect, must not brick tools.
44
+ if [ -t 0 ]; then exit 0; fi
45
+ INPUT=$(cat)
46
+ [ -z "$INPUT" ] && exit 0
47
+
48
+ # Prints nothing for an out-of-scope call, "block <specialist>" for a refusal, or
49
+ # "degraded <reason>" when the card set could not be read.
50
+ DECISION=$(INPUT="$INPUT" python3 - <<'PY' 2>/dev/null || true
51
+ import os, json, re, sys, glob
52
+
53
+ # Mirrors CC_NATIVE_TOOLS (claude-session-manager/src/specialist-drift.ts). A
54
+ # card that declares these declares them for its own use; they are the admin's
55
+ # too, and gating them would refuse the seat its own disk and shell.
56
+ NATIVE = {
57
+ "Read", "Write", "Edit", "MultiEdit", "Glob", "Grep", "LS", "Bash",
58
+ "BashOutput", "KillShell", "Skill", "WebSearch", "WebFetch", "Task",
59
+ "TodoWrite", "NotebookEdit", "NotebookRead", "AskUserQuestion",
60
+ }
61
+
62
+ try:
63
+ d = json.loads(os.environ["INPUT"])
64
+ except Exception:
65
+ sys.exit(0)
66
+
67
+ tool = (d.get("tool_name", "") or "").strip()
68
+ if not tool or tool in NATIVE:
69
+ sys.exit(0)
70
+
71
+ # A subagent is never filtered. This is the whole reason the gate can be broad:
72
+ # it constrains one seat, not a tool surface.
73
+ if (d.get("agent_type") or "").strip():
74
+ sys.exit(0)
75
+
76
+ agents_dir = os.path.join(os.getcwd(), "specialists", "agents")
77
+ platform_root = os.environ.get("PLATFORM_ROOT", "")
78
+
79
+ shipped = set()
80
+ try:
81
+ if platform_root:
82
+ for f in glob.glob(os.path.join(platform_root, "templates", "specialists", "agents", "*.md")):
83
+ shipped.add(os.path.basename(f))
84
+ for f in glob.glob(os.path.join(platform_root, "plugins", "*", "agents", "*.md")):
85
+ shipped.add(os.path.basename(f))
86
+ premium = os.path.join(os.path.dirname(platform_root), "premium-plugins")
87
+ for f in glob.glob(os.path.join(premium, "*", "agents", "*.md")):
88
+ shipped.add(os.path.basename(f))
89
+ if not os.path.isdir(agents_dir):
90
+ # An account with no specialists directory is normal, not degraded.
91
+ sys.exit(0)
92
+ cards = sorted(os.listdir(agents_dir))
93
+ except Exception as err:
94
+ print("degraded %s" % type(err).__name__)
95
+ sys.exit(0)
96
+
97
+
98
+ def fields(path):
99
+ """(name, tools) from a card's frontmatter, or None when there is none."""
100
+ try:
101
+ with open(path, encoding="utf-8") as fh:
102
+ lines = fh.read().split("\n")
103
+ except Exception:
104
+ return None
105
+ if not lines or lines[0].strip() != "---":
106
+ return None
107
+ name = tools = None
108
+ for line in lines[1:]:
109
+ if line.strip() == "---":
110
+ break
111
+ m = re.match(r'^name:\s*(.+?)\s*$', line)
112
+ if m:
113
+ name = m.group(1).strip().strip('"').strip("'")
114
+ m = re.match(r'^tools:\s*(.+?)\s*$', line)
115
+ if m:
116
+ tools = m.group(1)
117
+ return (name, tools)
118
+
119
+
120
+ for filename in cards:
121
+ if not filename.endswith(".md"):
122
+ continue
123
+ if filename in shipped:
124
+ continue
125
+ got = fields(os.path.join(agents_dir, filename))
126
+ if not got:
127
+ continue
128
+ name, tools = got
129
+ if not name or not tools:
130
+ continue
131
+ # Match the tool itself, never a substring of a longer name.
132
+ for declared in tools.split(","):
133
+ declared = declared.strip()
134
+ if not declared or declared in NATIVE:
135
+ continue
136
+ if declared == tool:
137
+ print("block %s" % name)
138
+ sys.exit(0)
139
+ PY
140
+ )
141
+
142
+ [ -z "$DECISION" ] && exit 0
143
+
144
+ VERB=${DECISION%% *}
145
+ ARG=${DECISION#* }
146
+
147
+ if [ "$VERB" = "degraded" ]; then
148
+ echo "[specialist-gate] op=degraded reason=$ARG" >&2
149
+ exit 0
150
+ fi
151
+
152
+ ACCOUNT_ID8=$(basename "$PWD" | cut -c1-8)
153
+ TOOL=$(printf '%s' "$INPUT" \
154
+ | python3 -c 'import sys,json;print(json.load(sys.stdin).get("tool_name",""))' 2>/dev/null \
155
+ || echo "")
156
+
157
+ echo "[specialist-gate] op=refuse account=$ACCOUNT_ID8 tool=$TOOL specialist=$ARG" >&2
158
+ echo "Blocked: this tool belongs to your $ARG. Dispatch that specialist with the Agent tool and let it do the work — it holds the tool and the standards that go with it." >&2
159
+ exit 2
@@ -0,0 +1,27 @@
1
+ export type AdminBindVerdict = {
2
+ kind: "ok";
3
+ pin: string;
4
+ } | {
5
+ kind: "nothing-to-set";
6
+ } | {
7
+ kind: "bad-phone";
8
+ } | {
9
+ kind: "bad-telegram";
10
+ } | {
11
+ kind: "no-such-user";
12
+ } | {
13
+ kind: "not-an-admin";
14
+ };
15
+ export declare function classifyAdminBind(input: {
16
+ userId: string;
17
+ phone?: string;
18
+ telegram?: string;
19
+ users: ReadonlyArray<{
20
+ userId: string;
21
+ pin: string;
22
+ }>;
23
+ admins: ReadonlyArray<{
24
+ userId: string;
25
+ }>;
26
+ }): AdminBindVerdict;
27
+ //# sourceMappingURL=admin-bind-classify.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-bind-classify.d.ts","sourceRoot":"","sources":["../src/admin-bind-classify.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,gBAAgB,GACxB;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC3B;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAC1B;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxB;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxB;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,CAAC;AAE7B,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,aAAa,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtD,MAAM,EAAE,aAAa,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC3C,GAAG,gBAAgB,CAUnB"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Task 2531 — the pure refusal policy for `admin-bind`, split from the IO
3
+ * wrapper for the same reason `resolve-admin-userid.ts` splits its picker: every
4
+ * refusal is then unit-testable without a filesystem, and the policy cannot
5
+ * drift from the tool that enforces it.
6
+ *
7
+ * Never infers a userId. `addAdminPhone` takes an account directory and a phone
8
+ * with no userId, which is exactly why it cannot write a binding: the allowlist
9
+ * knows a number, not a person. Binding runs the other way, so the caller names
10
+ * whom and an unknown userId is refused rather than guessed at.
11
+ */
12
+ import { isE164, isTelegramChatId } from "./binding-validate.js";
13
+ export function classifyAdminBind(input) {
14
+ if (input.phone === undefined && input.telegram === undefined)
15
+ return { kind: "nothing-to-set" };
16
+ if (input.phone !== undefined && !isE164(input.phone))
17
+ return { kind: "bad-phone" };
18
+ if (input.telegram !== undefined && !isTelegramChatId(input.telegram))
19
+ return { kind: "bad-telegram" };
20
+ const row = input.users.find(u => u.userId === input.userId);
21
+ if (!row)
22
+ return { kind: "no-such-user" };
23
+ if (!input.admins.some(a => a.userId === input.userId))
24
+ return { kind: "not-an-admin" };
25
+ // The existing hash, returned so the caller can route through writeAdminEntry
26
+ // (which requires a pin) without rotating the credential it is not touching.
27
+ return { kind: "ok", pin: row.pin };
28
+ }
29
+ //# sourceMappingURL=admin-bind-classify.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admin-bind-classify.js","sourceRoot":"","sources":["../src/admin-bind-classify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAUjE,MAAM,UAAU,iBAAiB,CAAC,KAMjC;IACC,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACjG,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IACpF,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;IACvG,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7D,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;IAC1C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;IACxF,8EAA8E;IAC9E,6EAA6E;IAC7E,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;AACtC,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Task 2531 — the two channel-binding shapes, in one place.
3
+ *
4
+ * Imported by `index.ts` (admin-add's own validation) and by
5
+ * `admin-bind-classify.ts` (admin-bind's refusal policy), so the tool and the
6
+ * policy cannot disagree about what a valid binding is. Two copies of a
7
+ * validation rule drift the same way two copies of the record type did.
8
+ */
9
+ export declare function isE164(v: string): boolean;
10
+ export declare function isTelegramChatId(v: string): boolean;
11
+ //# sourceMappingURL=binding-validate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binding-validate.d.ts","sourceRoot":"","sources":["../src/binding-validate.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAEzC;AAMD,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAEnD"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Task 2531 — the two channel-binding shapes, in one place.
3
+ *
4
+ * Imported by `index.ts` (admin-add's own validation) and by
5
+ * `admin-bind-classify.ts` (admin-bind's refusal policy), so the tool and the
6
+ * policy cannot disagree about what a valid binding is. Two copies of a
7
+ * validation rule drift the same way two copies of the record type did.
8
+ */
9
+ /** E.164, the same shape `config-persist.ts` enforces for `adminPhones`. */
10
+ const E164 = /^\+[1-9]\d{1,14}$/;
11
+ export function isE164(v) {
12
+ return E164.test(v);
13
+ }
14
+ /** A Telegram chat id is an integer. A group chat's is negative, so the leading
15
+ * minus is legal and refusing it would reject a real binding. */
16
+ const TG_CHAT_ID = /^-?\d+$/;
17
+ export function isTelegramChatId(v) {
18
+ return TG_CHAT_ID.test(v);
19
+ }
20
+ //# sourceMappingURL=binding-validate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binding-validate.js","sourceRoot":"","sources":["../src/binding-validate.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,4EAA4E;AAC5E,MAAM,IAAI,GAAG,mBAAmB,CAAC;AAEjC,MAAM,UAAU,MAAM,CAAC,CAAS;IAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACtB,CAAC;AAED;kEACkE;AAClE,MAAM,UAAU,GAAG,SAAS,CAAC;AAE7B,MAAM,UAAU,gBAAgB,CAAC,CAAS;IACxC,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC5B,CAAC"}
@@ -9,6 +9,8 @@ import { appendFileSync, cpSync, existsSync, mkdirSync, readdirSync, readFileSyn
9
9
  import { writeAdminEntry, removeAdminFromAccount, logUsersAudit, formatAuditRowIds } from "../../../../lib/admins-write/dist/index.js";
10
10
  import { setAccessPassword as setAccessPasswordHash, clearAccessPassword as clearAccessPasswordHash, accessPasswordCollides } from "../../../../lib/admin-access-password/dist/index.js";
11
11
  import { resolveCredentialTarget } from "./credential-identity.js";
12
+ import { isE164, isTelegramChatId } from "./binding-validate.js";
13
+ import { classifyAdminBind } from "./admin-bind-classify.js";
12
14
  import { embed } from "../../../../lib/embed-client/dist/index.js";
13
15
  import { requirePortEnv } from "../../../../lib/require-port-env/dist/index.js";
14
16
  import { deviceUrlBlock } from "../../../../lib/device-url/dist/index.js";
@@ -286,6 +288,32 @@ function readUsersJson() {
286
288
  function writeUsersJson(users) {
287
289
  writeFileSync(USERS_FILE, JSON.stringify(users, null, 2) + "\n", "utf-8");
288
290
  }
291
+ /**
292
+ * Task 2531 — re-read users.json after a binding write and report what is
293
+ * actually on disk.
294
+ *
295
+ * "Called the writer" is not evidence the field landed. The whole reason a
296
+ * missing binding went unnoticed for the life of this install is that nothing
297
+ * ever checked the post-condition; the boot-time drift check reports it, but
298
+ * only on the NEXT boot. This closes that gap at the moment of the write.
299
+ * Returns the observed verdict and logs it either way.
300
+ */
301
+ function verifyBindingWrite(tag, userId, want) {
302
+ let ok = false;
303
+ try {
304
+ const row = readUsersJson().find(u => u.userId === userId);
305
+ ok =
306
+ !!row &&
307
+ (want.phone === undefined || row.phone === want.phone) &&
308
+ (want.telegram === undefined || row.telegram === want.telegram);
309
+ }
310
+ catch {
311
+ ok = false;
312
+ }
313
+ const state = (v) => (v === undefined ? "absent" : "set");
314
+ console.error(`${tag} op=binding-write userId=${userId.slice(0, 8)} phone=${state(want.phone)} telegram=${state(want.telegram)} verified=${ok}`);
315
+ return ok;
316
+ }
289
317
  function generateUniquePin(users, maxRetries = 10) {
290
318
  const existingPins = new Set(users.map(u => u.pin));
291
319
  for (let i = 0; i < maxRetries; i++) {
@@ -965,7 +993,9 @@ lifelineTool(server, "plugin-toggle-enabled", "Enable or disable a plugin in thi
965
993
  eagerTool(server, "admin-add", "Add a new admin user to this account. Creates a device-level user entry (users.json) and adds them to this account's admins list (account.json). PIN must be at least 4 digits. If no PIN is provided, a unique 4-digit PIN is generated. Returns the userId and PIN to share with the new admin.\n\nIMPORTANT — retry behaviour: if the user already stated a specific PIN earlier in the conversation and a first admin-add call failed (e.g. tier cap reached, PIN collision), every retry MUST re-pass that PIN as the `pin` parameter. Omitting `pin` on the retry auto-generates a different 4-digit PIN, silently substituting what the user asked for.", {
966
994
  name: z.string().describe("Display name for the new admin (stored on the AdminUser node in Neo4j)."),
967
995
  pin: z.string().optional().describe("Optional PIN (minimum 4 digits). If omitted, a unique 4-digit PIN is generated."),
968
- }, async ({ name, pin: rawPin }) => {
996
+ phone: z.string().optional().describe("E.164 phone (e.g. +441234567890) binding this admin to their WhatsApp sender. Without it a WhatsApp turn from this person resolves to no admin. Settable later with admin-bind."),
997
+ telegram: z.string().optional().describe("Telegram chat id binding this admin to their Telegram chat (negative for a group). Without it a Telegram turn from this person resolves to no admin. Settable later with admin-bind."),
998
+ }, async ({ name, pin: rawPin, phone, telegram }) => {
969
999
  if (!ACCOUNT_ID)
970
1000
  return refuseNoAccount("admin-add");
971
1001
  const TAG = "[admin]";
@@ -984,6 +1014,16 @@ eagerTool(server, "admin-add", "Add a new admin user to this account. Creates a
984
1014
  process.stderr.write(`[admin-add] op=refused reason=no-name\n`);
985
1015
  return { content: [{ type: "text", text: `${TAG} A real name is required (it cannot be blank or the placeholder "Owner").` }], isError: true };
986
1016
  }
1017
+ // Task 2531 — validate the bindings before any store write, so a malformed
1018
+ // one cannot land a half-created admin.
1019
+ if (phone !== undefined && !isE164(phone)) {
1020
+ process.stderr.write(`[admin-add] op=refused reason=bad-phone\n`);
1021
+ return { content: [{ type: "text", text: `${TAG} phone must be E.164, e.g. +441234567890.` }], isError: true };
1022
+ }
1023
+ if (telegram !== undefined && !isTelegramChatId(telegram)) {
1024
+ process.stderr.write(`[admin-add] op=refused reason=bad-telegram\n`);
1025
+ return { content: [{ type: "text", text: `${TAG} telegram must be a chat id (digits, optionally negative for a group).` }], isError: true };
1026
+ }
987
1027
  let users;
988
1028
  try {
989
1029
  users = readUsersJson();
@@ -1053,11 +1093,20 @@ eagerTool(server, "admin-add", "Add a new admin user to this account. Creates a
1053
1093
  accountDir: getAccountDir(),
1054
1094
  caller: "admin-add",
1055
1095
  audit: { actor: callerUserId ?? "unknown", session: process.env.SESSION_NODE_ID, logFile: USERS_AUDIT_LOG },
1096
+ // Task 2531 — the channel bindings, written by the same chokepoint as the
1097
+ // PIN so a new admin can be born reachable on their own channels.
1098
+ phone,
1099
+ telegram,
1056
1100
  });
1057
1101
  console.error(`[admin-auth-store] action=add userId=${userIdShort} result=${authResult.usersJsonResult} store=users${authResult.usersError ? ` error=${authResult.usersError}` : ""}`);
1058
1102
  if (authResult.usersJsonResult !== "ok") {
1059
1103
  return { content: [{ type: "text", text: `${TAG} Failed to write users.json: ${authResult.usersError ?? "unknown error"}` }], isError: true };
1060
1104
  }
1105
+ // Task 2531 — the observed post-condition, re-read from disk. A binding that
1106
+ // silently failed to land looks identical to one that was never asked for.
1107
+ if (phone !== undefined || telegram !== undefined) {
1108
+ verifyBindingWrite("[admin-add]", userId, { phone, telegram });
1109
+ }
1061
1110
  console.error(`[admin-auth-store] action=add userId=${userIdShort} result=${authResult.accountJsonResult} store=account${authResult.accountError ? ` error=${authResult.accountError}` : ""}`);
1062
1111
  if (authResult.accountJsonResult === "fail") {
1063
1112
  return { content: [{ type: "text", text: `${TAG} users.json updated; account.json write FAILED — manual reconciliation needed: ${authResult.accountError ?? "unknown error"}` }], isError: true };
@@ -1388,6 +1437,89 @@ eagerTool(server, "admin-update-pin", "Update an existing admin user's PIN. Defa
1388
1437
  content: [{ type: "text", text: `PIN updated${self ? "" : ` for userId ${userId}`}. The new PIN takes effect on the next login.` }],
1389
1438
  };
1390
1439
  });
1440
+ lifelineTool(server, "admin-bind", "Bind an admin to their channels by setting the phone and/or Telegram chat id on their users.json entry. This is what makes an inbound turn resolve AS that person: without it a WhatsApp or Telegram turn from them resolves to no admin. It does not affect where an answer goes, which is always the door the message arrived on. Defaults to the calling admin; pass userId (from admin-list) to bind someone else, which additionally requires confirm=true because a binding decides whose identity an inbound resolves to. Sets only the fields supplied; an omitted field is left untouched. A new admin can be born bound by passing the same fields to admin-add.", {
1441
+ userId: z.string().optional().describe("The userId of the admin to bind. Defaults to the caller (the admin invoking this tool)."),
1442
+ phone: z.string().optional().describe("E.164 phone (e.g. +441234567890) binding this admin to their WhatsApp sender."),
1443
+ telegram: z.string().optional().describe("Telegram chat id binding this admin to their Telegram chat (negative for a group)."),
1444
+ confirm: z.boolean().optional().describe("Required (true) only when userId names a DIFFERENT admin than the caller — confirms a deliberate cross-identity binding."),
1445
+ }, async ({ userId: targetUserId, phone, telegram, confirm }) => {
1446
+ if (!ACCOUNT_ID)
1447
+ return refuseNoAccount("admin-bind");
1448
+ const TAG = "[admin-bind]";
1449
+ // A binding decides which sender resolves AS this person, so it is a
1450
+ // credential-class write: the same Task 1573 gate the PIN tools use. Without
1451
+ // it any admin could point their own number at another admin's userId and
1452
+ // have their inbound turns attributed to that person.
1453
+ const callerUserId = verifiedCaller();
1454
+ const resolved = resolveCredentialTarget({ explicitUserId: targetUserId, callerUserId, confirm });
1455
+ if (!resolved.ok) {
1456
+ console.error(`${TAG} result=refused reason=${resolved.error.split(":")[0]}`);
1457
+ return { content: [{ type: "text", text: `${TAG} ${resolved.error}` }], isError: true };
1458
+ }
1459
+ const userId = resolved.target;
1460
+ const label = userId.slice(0, 8);
1461
+ const refuse = (reason, message) => {
1462
+ console.error(`${TAG} userId=${label} result=refused reason=${reason}`);
1463
+ return { content: [{ type: "text", text: `${TAG} ${message}` }], isError: true };
1464
+ };
1465
+ let users;
1466
+ try {
1467
+ users = readUsersJson();
1468
+ }
1469
+ catch (err) {
1470
+ return refuse("users-json-read-failed", err instanceof Error ? err.message : String(err));
1471
+ }
1472
+ let admins;
1473
+ try {
1474
+ const config = await readAccountConfig();
1475
+ admins = (config.admins ?? []);
1476
+ }
1477
+ catch (err) {
1478
+ return refuse("account-config-read-failed", err instanceof Error ? err.message : String(err));
1479
+ }
1480
+ const verdict = classifyAdminBind({ userId, phone, telegram, users, admins });
1481
+ if (verdict.kind !== "ok") {
1482
+ const message = {
1483
+ "nothing-to-set": "Supply phone, telegram, or both.",
1484
+ "bad-phone": "phone must be E.164, e.g. +441234567890.",
1485
+ "bad-telegram": "telegram must be a chat id (digits, optionally negative for a group).",
1486
+ "no-such-user": `User ${userId} not found in users.json.`,
1487
+ "not-an-admin": `User ${userId} is not an admin of this account.`,
1488
+ };
1489
+ return refuse(verdict.kind, message[verdict.kind]);
1490
+ }
1491
+ // The one chokepoint, same as admin-add. `verdict.pin` is the existing hash,
1492
+ // so the credential is carried through untouched rather than rotated.
1493
+ const result = writeAdminEntry({
1494
+ userId,
1495
+ pin: verdict.pin,
1496
+ role: "admin",
1497
+ usersFile: USERS_FILE,
1498
+ accountDir: getAccountDir(),
1499
+ caller: "admin-bind",
1500
+ audit: {
1501
+ actor: callerUserId ?? "unknown",
1502
+ session: process.env.SESSION_NODE_ID,
1503
+ logFile: USERS_AUDIT_LOG,
1504
+ target: userId,
1505
+ explicitUserId: resolved.isCrossIdentity,
1506
+ },
1507
+ phone,
1508
+ telegram,
1509
+ });
1510
+ if (result.usersJsonResult !== "ok") {
1511
+ return refuse("write-failed", `Failed to write users.json: ${result.usersError ?? "unknown error"}`);
1512
+ }
1513
+ if (!verifyBindingWrite(TAG, userId, { phone, telegram })) {
1514
+ return refuse("not-verified", "The write reported success but the value is not on disk.");
1515
+ }
1516
+ const set = [phone !== undefined ? "phone" : null, telegram !== undefined ? "telegram" : null]
1517
+ .filter(Boolean)
1518
+ .join(" and ");
1519
+ return {
1520
+ content: [{ type: "text", text: `${TAG} Bound ${set} for ${label}. A turn from this person now reaches every channel they hold, not only the one it arrived on.` }],
1521
+ };
1522
+ });
1391
1523
  lifelineTool(server, "agent-image", "Upload, update, or remove an agent's image. action=set: copy the file at filePath to the agent's assets directory and update config.json with image URL and shape. action=remove: delete the image file and clear the image fields from config.json. imageShape: 'circle' for avatars/icons, 'rounded' for logos.", {
1392
1524
  agentSlug: z.string().describe("Agent slug (e.g. 'coaching', 'sales')"),
1393
1525
  action: z.enum(["set", "remove"]),