libre-webui 0.25.0 → 0.27.0

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 (588) hide show
  1. package/README.md +32 -22
  2. package/backend/dist/index.d.ts.map +1 -1
  3. package/backend/dist/index.js +33 -4
  4. package/backend/dist/index.js.map +1 -1
  5. package/backend/dist/middleware/auth.d.ts +7 -0
  6. package/backend/dist/middleware/auth.d.ts.map +1 -1
  7. package/backend/dist/middleware/auth.js +26 -0
  8. package/backend/dist/middleware/auth.js.map +1 -1
  9. package/backend/dist/middleware/index.d.ts +20 -0
  10. package/backend/dist/middleware/index.d.ts.map +1 -1
  11. package/backend/dist/middleware/index.js +105 -2
  12. package/backend/dist/middleware/index.js.map +1 -1
  13. package/backend/dist/models/personaModel.d.ts.map +1 -1
  14. package/backend/dist/models/personaModel.js +2 -0
  15. package/backend/dist/models/personaModel.js.map +1 -1
  16. package/backend/dist/observability/otel.d.ts +40 -0
  17. package/backend/dist/observability/otel.d.ts.map +1 -0
  18. package/backend/dist/observability/otel.js +337 -0
  19. package/backend/dist/observability/otel.js.map +1 -0
  20. package/backend/dist/observability/requestContext.d.ts +14 -0
  21. package/backend/dist/observability/requestContext.d.ts.map +1 -0
  22. package/backend/dist/observability/requestContext.js +21 -0
  23. package/backend/dist/observability/requestContext.js.map +1 -0
  24. package/backend/dist/persistence/chatGenerationTypes.d.ts +9 -0
  25. package/backend/dist/persistence/chatGenerationTypes.d.ts.map +1 -1
  26. package/backend/dist/persistence/extensionTypes.d.ts +13 -0
  27. package/backend/dist/persistence/extensionTypes.d.ts.map +1 -1
  28. package/backend/dist/persistence/extensionTypes.js.map +1 -1
  29. package/backend/dist/persistence/index.d.ts +1 -1
  30. package/backend/dist/persistence/index.d.ts.map +1 -1
  31. package/backend/dist/persistence/index.js.map +1 -1
  32. package/backend/dist/persistence/postgresAgentFoundationMigration.d.ts +9 -0
  33. package/backend/dist/persistence/postgresAgentFoundationMigration.d.ts.map +1 -0
  34. package/backend/dist/persistence/postgresAgentFoundationMigration.js +164 -0
  35. package/backend/dist/persistence/postgresAgentFoundationMigration.js.map +1 -0
  36. package/backend/dist/persistence/postgresExtensionRepositories.d.ts.map +1 -1
  37. package/backend/dist/persistence/postgresExtensionRepositories.js +46 -2
  38. package/backend/dist/persistence/postgresExtensionRepositories.js.map +1 -1
  39. package/backend/dist/persistence/postgresMediaEnterpriseOpsMigration.d.ts +10 -0
  40. package/backend/dist/persistence/postgresMediaEnterpriseOpsMigration.d.ts.map +1 -0
  41. package/backend/dist/persistence/postgresMediaEnterpriseOpsMigration.js +148 -0
  42. package/backend/dist/persistence/postgresMediaEnterpriseOpsMigration.js.map +1 -0
  43. package/backend/dist/persistence/postgresMfaPushRecoveryMigration.d.ts +9 -0
  44. package/backend/dist/persistence/postgresMfaPushRecoveryMigration.d.ts.map +1 -0
  45. package/backend/dist/persistence/postgresMfaPushRecoveryMigration.js +107 -0
  46. package/backend/dist/persistence/postgresMfaPushRecoveryMigration.js.map +1 -0
  47. package/backend/dist/persistence/postgresMigrationRegistry.d.ts.map +1 -1
  48. package/backend/dist/persistence/postgresMigrationRegistry.js +12 -0
  49. package/backend/dist/persistence/postgresMigrationRegistry.js.map +1 -1
  50. package/backend/dist/persistence/postgresNotesV2Migration.d.ts +4 -0
  51. package/backend/dist/persistence/postgresNotesV2Migration.d.ts.map +1 -0
  52. package/backend/dist/persistence/postgresNotesV2Migration.js +57 -0
  53. package/backend/dist/persistence/postgresNotesV2Migration.js.map +1 -0
  54. package/backend/dist/persistence/postgresResourceRepositories.d.ts.map +1 -1
  55. package/backend/dist/persistence/postgresResourceRepositories.js +1930 -133
  56. package/backend/dist/persistence/postgresResourceRepositories.js.map +1 -1
  57. package/backend/dist/persistence/postgresSecurityRepositories.d.ts.map +1 -1
  58. package/backend/dist/persistence/postgresSecurityRepositories.js +150 -0
  59. package/backend/dist/persistence/postgresSecurityRepositories.js.map +1 -1
  60. package/backend/dist/persistence/postgresSkillFilesMigration.d.ts +9 -0
  61. package/backend/dist/persistence/postgresSkillFilesMigration.d.ts.map +1 -0
  62. package/backend/dist/persistence/postgresSkillFilesMigration.js +50 -0
  63. package/backend/dist/persistence/postgresSkillFilesMigration.js.map +1 -0
  64. package/backend/dist/persistence/postgresTeamCollaborationMigration.d.ts +10 -0
  65. package/backend/dist/persistence/postgresTeamCollaborationMigration.d.ts.map +1 -0
  66. package/backend/dist/persistence/postgresTeamCollaborationMigration.js +161 -0
  67. package/backend/dist/persistence/postgresTeamCollaborationMigration.js.map +1 -0
  68. package/backend/dist/persistence/resourceTypes.d.ts +600 -3
  69. package/backend/dist/persistence/resourceTypes.d.ts.map +1 -1
  70. package/backend/dist/persistence/resourceTypes.js.map +1 -1
  71. package/backend/dist/persistence/securityTypes.d.ts +59 -0
  72. package/backend/dist/persistence/securityTypes.d.ts.map +1 -1
  73. package/backend/dist/persistence/sqliteExtensionRepositories.d.ts.map +1 -1
  74. package/backend/dist/persistence/sqliteExtensionRepositories.js +26 -4
  75. package/backend/dist/persistence/sqliteExtensionRepositories.js.map +1 -1
  76. package/backend/dist/persistence/sqliteMigrations.d.ts +10 -0
  77. package/backend/dist/persistence/sqliteMigrations.d.ts.map +1 -1
  78. package/backend/dist/persistence/sqliteMigrations.js +1492 -131
  79. package/backend/dist/persistence/sqliteMigrations.js.map +1 -1
  80. package/backend/dist/persistence/sqliteResourceRepositories.d.ts.map +1 -1
  81. package/backend/dist/persistence/sqliteResourceRepositories.js +1657 -134
  82. package/backend/dist/persistence/sqliteResourceRepositories.js.map +1 -1
  83. package/backend/dist/persistence/sqliteSecurityRepositories.d.ts.map +1 -1
  84. package/backend/dist/persistence/sqliteSecurityRepositories.js +134 -0
  85. package/backend/dist/persistence/sqliteSecurityRepositories.js.map +1 -1
  86. package/backend/dist/persistence/sqliteToPostgresMigration.d.ts.map +1 -1
  87. package/backend/dist/persistence/sqliteToPostgresMigration.js +302 -3
  88. package/backend/dist/persistence/sqliteToPostgresMigration.js.map +1 -1
  89. package/backend/dist/platform/jobs/domainJobContracts.d.ts +10 -0
  90. package/backend/dist/platform/jobs/domainJobContracts.d.ts.map +1 -1
  91. package/backend/dist/platform/jobs/domainJobContracts.js +10 -0
  92. package/backend/dist/platform/jobs/domainJobContracts.js.map +1 -1
  93. package/backend/dist/platform/jobs/domainJobHandlers.d.ts.map +1 -1
  94. package/backend/dist/platform/jobs/domainJobHandlers.js +374 -4
  95. package/backend/dist/platform/jobs/domainJobHandlers.js.map +1 -1
  96. package/backend/dist/platform/jobs/embeddedDurableJobWorker.d.ts.map +1 -1
  97. package/backend/dist/platform/jobs/embeddedDurableJobWorker.js +4 -2
  98. package/backend/dist/platform/jobs/embeddedDurableJobWorker.js.map +1 -1
  99. package/backend/dist/platform/jobs/postgresDurableJobWorker.d.ts.map +1 -1
  100. package/backend/dist/platform/jobs/postgresDurableJobWorker.js +4 -2
  101. package/backend/dist/platform/jobs/postgresDurableJobWorker.js.map +1 -1
  102. package/backend/dist/platform/storage/pgVectorStore.d.ts +2 -1
  103. package/backend/dist/platform/storage/pgVectorStore.d.ts.map +1 -1
  104. package/backend/dist/platform/storage/pgVectorStore.js +51 -0
  105. package/backend/dist/platform/storage/pgVectorStore.js.map +1 -1
  106. package/backend/dist/platform/storage/platformDomainRepositories.d.ts +8 -2
  107. package/backend/dist/platform/storage/platformDomainRepositories.d.ts.map +1 -1
  108. package/backend/dist/platform/storage/postgresPlatformDomainRepositories.d.ts.map +1 -1
  109. package/backend/dist/platform/storage/postgresPlatformDomainRepositories.js +25 -4
  110. package/backend/dist/platform/storage/postgresPlatformDomainRepositories.js.map +1 -1
  111. package/backend/dist/platform/storage/sqliteEncryptedVectorStore.d.ts +2 -1
  112. package/backend/dist/platform/storage/sqliteEncryptedVectorStore.d.ts.map +1 -1
  113. package/backend/dist/platform/storage/sqliteEncryptedVectorStore.js +35 -0
  114. package/backend/dist/platform/storage/sqliteEncryptedVectorStore.js.map +1 -1
  115. package/backend/dist/platform/storage/sqlitePlatformDomainRepositories.d.ts.map +1 -1
  116. package/backend/dist/platform/storage/sqlitePlatformDomainRepositories.js +26 -3
  117. package/backend/dist/platform/storage/sqlitePlatformDomainRepositories.js.map +1 -1
  118. package/backend/dist/platform/storage/vectorStore.d.ts +14 -0
  119. package/backend/dist/platform/storage/vectorStore.d.ts.map +1 -1
  120. package/backend/dist/platform/storage/vectorStore.js.map +1 -1
  121. package/backend/dist/routes/access.d.ts.map +1 -1
  122. package/backend/dist/routes/access.js +84 -3
  123. package/backend/dist/routes/access.js.map +1 -1
  124. package/backend/dist/routes/auth.d.ts.map +1 -1
  125. package/backend/dist/routes/auth.js +419 -1
  126. package/backend/dist/routes/auth.js.map +1 -1
  127. package/backend/dist/routes/calendar.d.ts.map +1 -1
  128. package/backend/dist/routes/calendar.js +125 -22
  129. package/backend/dist/routes/calendar.js.map +1 -1
  130. package/backend/dist/routes/channels.d.ts +3 -0
  131. package/backend/dist/routes/channels.d.ts.map +1 -0
  132. package/backend/dist/routes/channels.js +447 -0
  133. package/backend/dist/routes/channels.js.map +1 -0
  134. package/backend/dist/routes/chat.d.ts.map +1 -1
  135. package/backend/dist/routes/chat.js +195 -7
  136. package/backend/dist/routes/chat.js.map +1 -1
  137. package/backend/dist/routes/costs.d.ts +3 -0
  138. package/backend/dist/routes/costs.d.ts.map +1 -0
  139. package/backend/dist/routes/costs.js +191 -0
  140. package/backend/dist/routes/costs.js.map +1 -0
  141. package/backend/dist/routes/documents.d.ts.map +1 -1
  142. package/backend/dist/routes/documents.js +68 -21
  143. package/backend/dist/routes/documents.js.map +1 -1
  144. package/backend/dist/routes/evaluations.d.ts +3 -0
  145. package/backend/dist/routes/evaluations.d.ts.map +1 -0
  146. package/backend/dist/routes/evaluations.js +352 -0
  147. package/backend/dist/routes/evaluations.js.map +1 -0
  148. package/backend/dist/routes/imageGen.d.ts.map +1 -1
  149. package/backend/dist/routes/imageGen.js +2 -1
  150. package/backend/dist/routes/imageGen.js.map +1 -1
  151. package/backend/dist/routes/media.d.ts.map +1 -1
  152. package/backend/dist/routes/media.js +228 -7
  153. package/backend/dist/routes/media.js.map +1 -1
  154. package/backend/dist/routes/notes.d.ts.map +1 -1
  155. package/backend/dist/routes/notes.js +149 -36
  156. package/backend/dist/routes/notes.js.map +1 -1
  157. package/backend/dist/routes/notifications.d.ts +3 -0
  158. package/backend/dist/routes/notifications.d.ts.map +1 -0
  159. package/backend/dist/routes/notifications.js +213 -0
  160. package/backend/dist/routes/notifications.js.map +1 -0
  161. package/backend/dist/routes/openaiCompat.d.ts +3 -0
  162. package/backend/dist/routes/openaiCompat.d.ts.map +1 -0
  163. package/backend/dist/routes/openaiCompat.js +314 -0
  164. package/backend/dist/routes/openaiCompat.js.map +1 -0
  165. package/backend/dist/routes/personas.js +1 -1
  166. package/backend/dist/routes/personas.js.map +1 -1
  167. package/backend/dist/routes/prompts.d.ts +3 -0
  168. package/backend/dist/routes/prompts.d.ts.map +1 -0
  169. package/backend/dist/routes/prompts.js +173 -0
  170. package/backend/dist/routes/prompts.js.map +1 -0
  171. package/backend/dist/routes/push.d.ts +3 -0
  172. package/backend/dist/routes/push.d.ts.map +1 -0
  173. package/backend/dist/routes/push.js +105 -0
  174. package/backend/dist/routes/push.js.map +1 -0
  175. package/backend/dist/routes/recovery.d.ts +3 -0
  176. package/backend/dist/routes/recovery.d.ts.map +1 -0
  177. package/backend/dist/routes/recovery.js +83 -0
  178. package/backend/dist/routes/recovery.js.map +1 -0
  179. package/backend/dist/routes/search.d.ts.map +1 -1
  180. package/backend/dist/routes/search.js +29 -1
  181. package/backend/dist/routes/search.js.map +1 -1
  182. package/backend/dist/routes/skills.d.ts +3 -0
  183. package/backend/dist/routes/skills.d.ts.map +1 -0
  184. package/backend/dist/routes/skills.js +246 -0
  185. package/backend/dist/routes/skills.js.map +1 -0
  186. package/backend/dist/routes/stt.d.ts.map +1 -1
  187. package/backend/dist/routes/stt.js +2 -1
  188. package/backend/dist/routes/stt.js.map +1 -1
  189. package/backend/dist/routes/tools.d.ts +3 -0
  190. package/backend/dist/routes/tools.d.ts.map +1 -0
  191. package/backend/dist/routes/tools.js +359 -0
  192. package/backend/dist/routes/tools.js.map +1 -0
  193. package/backend/dist/routes/tts.d.ts.map +1 -1
  194. package/backend/dist/routes/tts.js +63 -8
  195. package/backend/dist/routes/tts.js.map +1 -1
  196. package/backend/dist/routes/users.d.ts.map +1 -1
  197. package/backend/dist/routes/users.js +35 -0
  198. package/backend/dist/routes/users.js.map +1 -1
  199. package/backend/dist/routes/voiceAccess.d.ts +3 -0
  200. package/backend/dist/routes/voiceAccess.d.ts.map +1 -0
  201. package/backend/dist/routes/voiceAccess.js +102 -0
  202. package/backend/dist/routes/voiceAccess.js.map +1 -0
  203. package/backend/dist/services/apiTokenService.d.ts +2 -2
  204. package/backend/dist/services/apiTokenService.d.ts.map +1 -1
  205. package/backend/dist/services/apiTokenService.js +7 -0
  206. package/backend/dist/services/apiTokenService.js.map +1 -1
  207. package/backend/dist/services/authService.d.ts +6 -0
  208. package/backend/dist/services/authService.d.ts.map +1 -1
  209. package/backend/dist/services/authService.js +9 -0
  210. package/backend/dist/services/authService.js.map +1 -1
  211. package/backend/dist/services/authorizationService.d.ts +8 -4
  212. package/backend/dist/services/authorizationService.d.ts.map +1 -1
  213. package/backend/dist/services/authorizationService.js +31 -1
  214. package/backend/dist/services/authorizationService.js.map +1 -1
  215. package/backend/dist/services/automationSchedulerService.d.ts.map +1 -1
  216. package/backend/dist/services/automationSchedulerService.js +40 -3
  217. package/backend/dist/services/automationSchedulerService.js.map +1 -1
  218. package/backend/dist/services/automationService.d.ts +4 -1
  219. package/backend/dist/services/automationService.d.ts.map +1 -1
  220. package/backend/dist/services/automationService.js +25 -2
  221. package/backend/dist/services/automationService.js.map +1 -1
  222. package/backend/dist/services/builtinToolsService.d.ts +20 -0
  223. package/backend/dist/services/builtinToolsService.d.ts.map +1 -0
  224. package/backend/dist/services/builtinToolsService.js +661 -0
  225. package/backend/dist/services/builtinToolsService.js.map +1 -0
  226. package/backend/dist/services/calendarService.d.ts +74 -0
  227. package/backend/dist/services/calendarService.d.ts.map +1 -0
  228. package/backend/dist/services/calendarService.js +339 -0
  229. package/backend/dist/services/calendarService.js.map +1 -0
  230. package/backend/dist/services/channelService.d.ts +195 -0
  231. package/backend/dist/services/channelService.d.ts.map +1 -0
  232. package/backend/dist/services/channelService.js +1057 -0
  233. package/backend/dist/services/channelService.js.map +1 -0
  234. package/backend/dist/services/chatRequestService.d.ts.map +1 -1
  235. package/backend/dist/services/chatRequestService.js +29 -1
  236. package/backend/dist/services/chatRequestService.js.map +1 -1
  237. package/backend/dist/services/chatService.d.ts +61 -1
  238. package/backend/dist/services/chatService.d.ts.map +1 -1
  239. package/backend/dist/services/chatService.js +218 -1
  240. package/backend/dist/services/chatService.js.map +1 -1
  241. package/backend/dist/services/chatToolRuntimeService.d.ts +55 -0
  242. package/backend/dist/services/chatToolRuntimeService.d.ts.map +1 -0
  243. package/backend/dist/services/chatToolRuntimeService.js +389 -0
  244. package/backend/dist/services/chatToolRuntimeService.js.map +1 -0
  245. package/backend/dist/services/costGovernanceService.d.ts +102 -0
  246. package/backend/dist/services/costGovernanceService.d.ts.map +1 -0
  247. package/backend/dist/services/costGovernanceService.js +463 -0
  248. package/backend/dist/services/costGovernanceService.js.map +1 -0
  249. package/backend/dist/services/dataArchiveService.d.ts +6 -0
  250. package/backend/dist/services/dataArchiveService.d.ts.map +1 -1
  251. package/backend/dist/services/dataArchiveService.js +26 -4
  252. package/backend/dist/services/dataArchiveService.js.map +1 -1
  253. package/backend/dist/services/documentMediaExtractionService.d.ts +40 -0
  254. package/backend/dist/services/documentMediaExtractionService.d.ts.map +1 -0
  255. package/backend/dist/services/documentMediaExtractionService.js +157 -0
  256. package/backend/dist/services/documentMediaExtractionService.js.map +1 -0
  257. package/backend/dist/services/documentService.d.ts +64 -1
  258. package/backend/dist/services/documentService.d.ts.map +1 -1
  259. package/backend/dist/services/documentService.js +342 -83
  260. package/backend/dist/services/documentService.js.map +1 -1
  261. package/backend/dist/services/durableChatGenerationService.d.ts +9 -0
  262. package/backend/dist/services/durableChatGenerationService.d.ts.map +1 -1
  263. package/backend/dist/services/durableChatGenerationService.js +152 -11
  264. package/backend/dist/services/durableChatGenerationService.js.map +1 -1
  265. package/backend/dist/services/encryptionService.d.ts +6 -0
  266. package/backend/dist/services/encryptionService.d.ts.map +1 -1
  267. package/backend/dist/services/encryptionService.js +12 -0
  268. package/backend/dist/services/encryptionService.js.map +1 -1
  269. package/backend/dist/services/evaluationService.d.ts +111 -0
  270. package/backend/dist/services/evaluationService.d.ts.map +1 -0
  271. package/backend/dist/services/evaluationService.js +403 -0
  272. package/backend/dist/services/evaluationService.js.map +1 -0
  273. package/backend/dist/services/galleryService.d.ts +6 -0
  274. package/backend/dist/services/galleryService.d.ts.map +1 -1
  275. package/backend/dist/services/galleryService.js +26 -0
  276. package/backend/dist/services/galleryService.js.map +1 -1
  277. package/backend/dist/services/mcpClientService.d.ts +29 -0
  278. package/backend/dist/services/mcpClientService.d.ts.map +1 -0
  279. package/backend/dist/services/mcpClientService.js +189 -0
  280. package/backend/dist/services/mcpClientService.js.map +1 -0
  281. package/backend/dist/services/mfaService.d.ts +64 -0
  282. package/backend/dist/services/mfaService.d.ts.map +1 -0
  283. package/backend/dist/services/mfaService.js +263 -0
  284. package/backend/dist/services/mfaService.js.map +1 -0
  285. package/backend/dist/services/noteService.d.ts +71 -0
  286. package/backend/dist/services/noteService.d.ts.map +1 -0
  287. package/backend/dist/services/noteService.js +397 -0
  288. package/backend/dist/services/noteService.js.map +1 -0
  289. package/backend/dist/services/notificationService.d.ts +60 -0
  290. package/backend/dist/services/notificationService.d.ts.map +1 -0
  291. package/backend/dist/services/notificationService.js +340 -0
  292. package/backend/dist/services/notificationService.js.map +1 -0
  293. package/backend/dist/services/openApiToolService.d.ts +38 -0
  294. package/backend/dist/services/openApiToolService.d.ts.map +1 -0
  295. package/backend/dist/services/openApiToolService.js +254 -0
  296. package/backend/dist/services/openApiToolService.js.map +1 -0
  297. package/backend/dist/services/personaService.d.ts +18 -2
  298. package/backend/dist/services/personaService.d.ts.map +1 -1
  299. package/backend/dist/services/personaService.js +113 -4
  300. package/backend/dist/services/personaService.js.map +1 -1
  301. package/backend/dist/services/pluginImageGenerationService.d.ts +19 -0
  302. package/backend/dist/services/pluginImageGenerationService.d.ts.map +1 -1
  303. package/backend/dist/services/pluginImageGenerationService.js +121 -0
  304. package/backend/dist/services/pluginImageGenerationService.js.map +1 -1
  305. package/backend/dist/services/pluginService.d.ts +7 -0
  306. package/backend/dist/services/pluginService.d.ts.map +1 -1
  307. package/backend/dist/services/pluginService.js +8 -2
  308. package/backend/dist/services/pluginService.js.map +1 -1
  309. package/backend/dist/services/preferencesService.d.ts +1 -1
  310. package/backend/dist/services/preferencesService.d.ts.map +1 -1
  311. package/backend/dist/services/preferencesService.js +1 -0
  312. package/backend/dist/services/preferencesService.js.map +1 -1
  313. package/backend/dist/services/promptService.d.ts +74 -0
  314. package/backend/dist/services/promptService.d.ts.map +1 -0
  315. package/backend/dist/services/promptService.js +513 -0
  316. package/backend/dist/services/promptService.js.map +1 -0
  317. package/backend/dist/services/recoveryDrillService.d.ts +57 -0
  318. package/backend/dist/services/recoveryDrillService.d.ts.map +1 -0
  319. package/backend/dist/services/recoveryDrillService.js +363 -0
  320. package/backend/dist/services/recoveryDrillService.js.map +1 -0
  321. package/backend/dist/services/resourceGrantService.d.ts.map +1 -1
  322. package/backend/dist/services/resourceGrantService.js +62 -17
  323. package/backend/dist/services/resourceGrantService.js.map +1 -1
  324. package/backend/dist/services/searchService.d.ts +29 -0
  325. package/backend/dist/services/searchService.d.ts.map +1 -0
  326. package/backend/dist/services/searchService.js +0 -0
  327. package/backend/dist/services/searchService.js.map +1 -0
  328. package/backend/dist/services/securityAuditService.d.ts.map +1 -1
  329. package/backend/dist/services/securityAuditService.js +2 -1
  330. package/backend/dist/services/securityAuditService.js.map +1 -1
  331. package/backend/dist/services/sharedResourceAccess.d.ts +25 -0
  332. package/backend/dist/services/sharedResourceAccess.d.ts.map +1 -0
  333. package/backend/dist/services/sharedResourceAccess.js +59 -0
  334. package/backend/dist/services/sharedResourceAccess.js.map +1 -0
  335. package/backend/dist/services/skillService.d.ts +137 -0
  336. package/backend/dist/services/skillService.d.ts.map +1 -0
  337. package/backend/dist/services/skillService.js +852 -0
  338. package/backend/dist/services/skillService.js.map +1 -0
  339. package/backend/dist/services/toolAccessService.d.ts +9 -0
  340. package/backend/dist/services/toolAccessService.d.ts.map +1 -0
  341. package/backend/dist/services/toolAccessService.js +60 -0
  342. package/backend/dist/services/toolAccessService.js.map +1 -0
  343. package/backend/dist/services/toolApprovalService.d.ts +34 -0
  344. package/backend/dist/services/toolApprovalService.d.ts.map +1 -0
  345. package/backend/dist/services/toolApprovalService.js +188 -0
  346. package/backend/dist/services/toolApprovalService.js.map +1 -0
  347. package/backend/dist/services/toolGatewayService.d.ts +53 -0
  348. package/backend/dist/services/toolGatewayService.d.ts.map +1 -0
  349. package/backend/dist/services/toolGatewayService.js +249 -0
  350. package/backend/dist/services/toolGatewayService.js.map +1 -0
  351. package/backend/dist/services/toolServerService.d.ts +57 -0
  352. package/backend/dist/services/toolServerService.d.ts.map +1 -0
  353. package/backend/dist/services/toolServerService.js +521 -0
  354. package/backend/dist/services/toolServerService.js.map +1 -0
  355. package/backend/dist/services/voiceAccessService.d.ts +10 -0
  356. package/backend/dist/services/voiceAccessService.d.ts.map +1 -0
  357. package/backend/dist/services/voiceAccessService.js +74 -0
  358. package/backend/dist/services/voiceAccessService.js.map +1 -0
  359. package/backend/dist/services/voiceProfileService.d.ts +20 -0
  360. package/backend/dist/services/voiceProfileService.d.ts.map +1 -1
  361. package/backend/dist/services/voiceProfileService.js +60 -0
  362. package/backend/dist/services/voiceProfileService.js.map +1 -1
  363. package/backend/dist/services/webPushService.d.ts +71 -0
  364. package/backend/dist/services/webPushService.d.ts.map +1 -0
  365. package/backend/dist/services/webPushService.js +328 -0
  366. package/backend/dist/services/webPushService.js.map +1 -0
  367. package/backend/dist/services/webauthnService.d.ts +58 -0
  368. package/backend/dist/services/webauthnService.d.ts.map +1 -0
  369. package/backend/dist/services/webauthnService.js +300 -0
  370. package/backend/dist/services/webauthnService.js.map +1 -0
  371. package/backend/dist/storage.d.ts +28 -1
  372. package/backend/dist/storage.d.ts.map +1 -1
  373. package/backend/dist/storage.js +100 -1
  374. package/backend/dist/storage.js.map +1 -1
  375. package/backend/dist/storageMappers.d.ts +2 -2
  376. package/backend/dist/storageMappers.d.ts.map +1 -1
  377. package/backend/dist/storageMappers.js.map +1 -1
  378. package/backend/dist/types/index.d.ts +199 -3
  379. package/backend/dist/types/index.d.ts.map +1 -1
  380. package/backend/dist/types/index.js.map +1 -1
  381. package/backend/dist/types/tools.d.ts +137 -0
  382. package/backend/dist/types/tools.d.ts.map +1 -0
  383. package/backend/dist/types/tools.js +25 -0
  384. package/backend/dist/types/tools.js.map +1 -0
  385. package/backend/dist/utils/chatDocumentContext.d.ts +26 -1
  386. package/backend/dist/utils/chatDocumentContext.d.ts.map +1 -1
  387. package/backend/dist/utils/chatDocumentContext.js +87 -18
  388. package/backend/dist/utils/chatDocumentContext.js.map +1 -1
  389. package/backend/dist/utils/documentExtraction.d.ts +97 -0
  390. package/backend/dist/utils/documentExtraction.d.ts.map +1 -0
  391. package/backend/dist/utils/documentExtraction.js +651 -0
  392. package/backend/dist/utils/documentExtraction.js.map +1 -0
  393. package/backend/dist/utils/hybridRetrieval.d.ts +34 -0
  394. package/backend/dist/utils/hybridRetrieval.d.ts.map +1 -0
  395. package/backend/dist/utils/hybridRetrieval.js +119 -0
  396. package/backend/dist/utils/hybridRetrieval.js.map +1 -0
  397. package/backend/dist/utils/icsCalendar.d.ts +27 -0
  398. package/backend/dist/utils/icsCalendar.d.ts.map +1 -0
  399. package/backend/dist/utils/icsCalendar.js +313 -0
  400. package/backend/dist/utils/icsCalendar.js.map +1 -0
  401. package/backend/dist/utils/imageEditUpload.d.ts +29 -0
  402. package/backend/dist/utils/imageEditUpload.d.ts.map +1 -0
  403. package/backend/dist/utils/imageEditUpload.js +82 -0
  404. package/backend/dist/utils/imageEditUpload.js.map +1 -0
  405. package/backend/dist/utils/logRedaction.d.ts +2 -0
  406. package/backend/dist/utils/logRedaction.d.ts.map +1 -0
  407. package/backend/dist/utils/logRedaction.js +66 -0
  408. package/backend/dist/utils/logRedaction.js.map +1 -0
  409. package/backend/dist/utils/logger.d.ts +3 -0
  410. package/backend/dist/utils/logger.d.ts.map +1 -1
  411. package/backend/dist/utils/logger.js +63 -20
  412. package/backend/dist/utils/logger.js.map +1 -1
  413. package/backend/dist/utils/pluginChatAdapter.d.ts +5 -1
  414. package/backend/dist/utils/pluginChatAdapter.d.ts.map +1 -1
  415. package/backend/dist/utils/pluginChatAdapter.js +83 -0
  416. package/backend/dist/utils/pluginChatAdapter.js.map +1 -1
  417. package/backend/dist/utils/pluginDefinitionTrust.js +1 -1
  418. package/backend/dist/utils/resourceLimits.d.ts +61 -2
  419. package/backend/dist/utils/resourceLimits.d.ts.map +1 -1
  420. package/backend/dist/utils/resourceLimits.js +59 -0
  421. package/backend/dist/utils/resourceLimits.js.map +1 -1
  422. package/backend/dist/utils/toolEgress.d.ts +23 -0
  423. package/backend/dist/utils/toolEgress.d.ts.map +1 -0
  424. package/backend/dist/utils/toolEgress.js +169 -0
  425. package/backend/dist/utils/toolEgress.js.map +1 -0
  426. package/backend/dist/utils/totp.d.ts +19 -0
  427. package/backend/dist/utils/totp.d.ts.map +1 -0
  428. package/backend/dist/utils/totp.js +117 -0
  429. package/backend/dist/utils/totp.js.map +1 -0
  430. package/backend/dist/utils/webauthn.d.ts +43 -0
  431. package/backend/dist/utils/webauthn.d.ts.map +1 -0
  432. package/backend/dist/utils/webauthn.js +294 -0
  433. package/backend/dist/utils/webauthn.js.map +1 -0
  434. package/backend/dist/utils/websocketMessages.d.ts +6 -0
  435. package/backend/dist/utils/websocketMessages.d.ts.map +1 -1
  436. package/backend/dist/utils/websocketMessages.js +8 -0
  437. package/backend/dist/utils/websocketMessages.js.map +1 -1
  438. package/backend/dist/utils/zipArchive.d.ts +32 -0
  439. package/backend/dist/utils/zipArchive.d.ts.map +1 -0
  440. package/backend/dist/utils/zipArchive.js +171 -0
  441. package/backend/dist/utils/zipArchive.js.map +1 -0
  442. package/backend/dist/websocketServer.d.ts.map +1 -1
  443. package/backend/dist/websocketServer.js +142 -35
  444. package/backend/dist/websocketServer.js.map +1 -1
  445. package/backend/package.json +1 -1
  446. package/frontend/dist/artifact-runtime/.build-fingerprint +1 -1
  447. package/frontend/dist/assets/index-DBAf_VaS.js +47 -0
  448. package/frontend/dist/assets/index-kn_Axjts.css +1 -0
  449. package/frontend/dist/fonts/jetbrains-mono-latin-400-normal.woff2 +0 -0
  450. package/frontend/dist/fonts/jetbrains-mono-latin-700-normal.woff2 +0 -0
  451. package/frontend/dist/fonts/jetbrains-mono.css +24 -0
  452. package/frontend/dist/index.html +27 -20
  453. package/frontend/dist/js/ArtifactContainer-C9zNtCay.js +1 -0
  454. package/frontend/dist/js/{ArtifactDemoPage-BeNs3gHp.js → ArtifactDemoPage-C-EBFBCt.js} +1 -1
  455. package/frontend/dist/js/ArtifactSandboxFrame-CTA1j_d1.js +111 -0
  456. package/frontend/dist/js/ArtifactSlideOutPanel-BOENbOiv.js +1 -0
  457. package/frontend/dist/js/AutomationsPage-C58MQ4te.js +1 -0
  458. package/frontend/dist/js/{Button-BPf_pOxH.js → Button-C0r3J9G_.js} +1 -1
  459. package/frontend/dist/js/CalendarPage-BcdAZ292.js +1 -0
  460. package/frontend/dist/js/ChannelsPage-DPr9Yajs.js +1 -0
  461. package/frontend/dist/js/ChatPage-DsbB748s.js +14 -0
  462. package/frontend/dist/js/EvaluationsPage-FWIJu2fI.js +2 -0
  463. package/frontend/dist/js/FirstTimeSetup-Cy-w6xko.js +1 -0
  464. package/frontend/dist/js/GalleryPage-DDAtxM-x.js +1 -0
  465. package/frontend/dist/js/HomePage-DLKwmE7n.js +1 -0
  466. package/frontend/dist/js/LibreClawPage-vKOj-9w9.js +1 -0
  467. package/frontend/dist/js/{ModelManagerModals-DcLGYN3l.js → ModelManagerModals-BY5TK38_.js} +1 -1
  468. package/frontend/dist/js/ModelSelector-CoCS6MZ9.js +1 -0
  469. package/frontend/dist/js/NotesPage-BElIpXgA.js +3 -0
  470. package/frontend/dist/js/OptimizedSyntaxHighlighter-xgyE3dRA.js +1 -0
  471. package/frontend/dist/js/PersonasPage-P40jVbfU.js +13 -0
  472. package/frontend/dist/js/PluginUsagePage-CKUEPCJN.js +1 -0
  473. package/frontend/dist/js/RichMessageContent-Bm2WaEGi.js +3 -0
  474. package/frontend/dist/js/SettingsModal-DxSGzx9A.js +19 -0
  475. package/frontend/dist/js/{SettingsToggle-woG_WebF.js → SettingsToggle-BIVyfGjl.js} +1 -1
  476. package/frontend/dist/js/SystemPage-BT07dTMT.js +1 -0
  477. package/frontend/dist/js/UserManagementPage-B9Vz5cm3.js +1 -0
  478. package/frontend/dist/js/WorkPage-qoN_e_jK.js +6 -0
  479. package/frontend/dist/js/api-D7Ff5M2Q.js +14 -0
  480. package/frontend/dist/js/appStore-DmV5wqDz.js +2 -0
  481. package/frontend/dist/js/ar-YHHTVP8f.js +2 -0
  482. package/frontend/dist/js/artifactHtml-DDmfpcB0.js +41 -0
  483. package/frontend/dist/js/{authStore-DbMdvNgJ.js → authStore-BYW8-kP6.js} +3 -3
  484. package/frontend/dist/js/{babel-BsYoxD-7.js → babel-DSqqk5kt.js} +1 -1
  485. package/frontend/dist/js/bn-C8VTxBVl.js +2 -0
  486. package/frontend/dist/js/chatStore-D-NTlArO.js +3 -0
  487. package/frontend/dist/js/{config-DSOYQ9a3.js → config-BqZ5304Q.js} +1 -1
  488. package/frontend/dist/js/cs-CCngB5fC.js +2 -0
  489. package/frontend/dist/js/da-CM2PP2ma.js +2 -0
  490. package/frontend/dist/js/de-BqVkD-dw.js +2 -0
  491. package/frontend/dist/js/es-BtWsWBjZ.js +2 -0
  492. package/frontend/dist/js/{estree-BcnBcOAx.js → estree-DPkpBuOU.js} +3 -3
  493. package/frontend/dist/js/evaluationsApi-Dnf2dTd-.js +1 -0
  494. package/frontend/dist/js/fr-C68w9abT.js +2 -0
  495. package/frontend/dist/js/hi-DtBlcyXZ.js +2 -0
  496. package/frontend/dist/js/{html-DkY55Jys.js → html-BpGUXG8E.js} +2 -2
  497. package/frontend/dist/js/id-BWzIu8tn.js +2 -0
  498. package/frontend/dist/js/is-yeFwu4dJ.js +2 -0
  499. package/frontend/dist/js/it-AxEMG8Jg.js +2 -0
  500. package/frontend/dist/js/ja-B-VyokB8.js +2 -0
  501. package/frontend/dist/js/ko-CvwzYr9k.js +2 -0
  502. package/frontend/dist/js/{markdown-IZSI9DXw.js → markdown-DCBRWJSK.js} +3 -3
  503. package/frontend/dist/js/markdown-core-BK7WVOb7.js +32 -0
  504. package/frontend/dist/js/{markdown-math-DK846gXU.js → markdown-math-e1ByS3KY.js} +5 -5
  505. package/frontend/dist/js/messageCodeStyles-BQwf7sSz.js +2 -0
  506. package/frontend/dist/js/ms-BhEwb4b7.js +2 -0
  507. package/frontend/dist/js/nl-Dq-QRx1L.js +2 -0
  508. package/frontend/dist/js/pl-BNEy8mQm.js +2 -0
  509. package/frontend/dist/js/{postcss-BJ0okz7n.js → postcss-Bg15EcFE.js} +1 -1
  510. package/frontend/dist/js/pt-_3Jl3FdY.js +2 -0
  511. package/frontend/dist/js/{react-vendor-C5yShNlM.js → react-vendor-BG_HPV6X.js} +1 -1
  512. package/frontend/dist/js/router-vendor-CbexJIsv.js +1 -0
  513. package/frontend/dist/js/ru-IhQiJ8ta.js +2 -0
  514. package/frontend/dist/js/{standalone-Csw3jfJ_.js → standalone-BFrK0R2A.js} +3 -3
  515. package/frontend/dist/js/sv-DWunXUNz.js +2 -0
  516. package/frontend/dist/js/{syntax-highlight-3EEX6CGL.js → syntax-highlight-P2zo9o06.js} +4 -4
  517. package/frontend/dist/js/th-DVnW2yyh.js +2 -0
  518. package/frontend/dist/js/tr-Do8CFmhR.js +2 -0
  519. package/frontend/dist/js/{typescript-CnF4UVx7.js → typescript-DYVyvmm_.js} +1 -1
  520. package/frontend/dist/js/ui-db9meqAB.js +2 -0
  521. package/frontend/dist/js/ui-vendor-C0DZ8-Cm.js +177 -0
  522. package/frontend/dist/js/uk-BNPKIZga.js +2 -0
  523. package/frontend/dist/js/{useTranslation-Bho4HCyg.js → useTranslation-5b5UhAc9.js} +1 -1
  524. package/frontend/dist/js/{utils-D9W1Lnkn.js → utils-BGrdX9ie.js} +1 -1
  525. package/frontend/dist/js/{utils-vendor-DWh39_3x.js → utils-vendor-9bQ62WeD.js} +1 -1
  526. package/frontend/dist/js/vi-CZMFo9je.js +2 -0
  527. package/frontend/dist/js/{workApi-C3uy9EDT.js → workApi-CcprMH_1.js} +3 -3
  528. package/frontend/dist/js/{yaml-DzT5hBSH.js → yaml-DUeWcOOH.js} +2 -2
  529. package/frontend/dist/js/zh-Pg0881v0.js +2 -0
  530. package/frontend/dist/manifest.webmanifest +32 -0
  531. package/frontend/dist/sw.js +125 -0
  532. package/package.json +2 -2
  533. package/plugins/openai.json +52 -9
  534. package/frontend/dist/assets/index-6o-Hc2wS.js +0 -41
  535. package/frontend/dist/assets/index-D-pM957b.css +0 -1
  536. package/frontend/dist/js/ArtifactContainer-CpUi6ekF.js +0 -1
  537. package/frontend/dist/js/ArtifactSandboxFrame-qsj_Y3LV.js +0 -151
  538. package/frontend/dist/js/ArtifactSlideOutPanel-CSFRluWA.js +0 -1
  539. package/frontend/dist/js/AutomationsPage-KUeWoZNv.js +0 -1
  540. package/frontend/dist/js/CalendarPage-D9I972w8.js +0 -1
  541. package/frontend/dist/js/ChatPage-CmBx4oAL.js +0 -16
  542. package/frontend/dist/js/FirstTimeSetup-Df0YJni3.js +0 -1
  543. package/frontend/dist/js/GalleryPage-bLCrdJN_.js +0 -1
  544. package/frontend/dist/js/HomePage-Uc6PEg-U.js +0 -1
  545. package/frontend/dist/js/LibreClawPage-CG63DHg1.js +0 -1
  546. package/frontend/dist/js/ModelSelector-yxJC64rM.js +0 -1
  547. package/frontend/dist/js/ModelsPage-1R_TxgmJ.js +0 -2
  548. package/frontend/dist/js/NotesPage-L65j5HoW.js +0 -1
  549. package/frontend/dist/js/OptimizedSyntaxHighlighter-Dz7D1LPB.js +0 -1
  550. package/frontend/dist/js/PersonasPage-CKeBpHIH.js +0 -13
  551. package/frontend/dist/js/PluginUsagePage-BX1SKMbW.js +0 -1
  552. package/frontend/dist/js/RichMessageContent-DiySVYGB.js +0 -3
  553. package/frontend/dist/js/SettingsModal-68SG1uZ2.js +0 -1
  554. package/frontend/dist/js/SystemPage-CytpZiQV.js +0 -1
  555. package/frontend/dist/js/UserManagementPage-BzJBvZiS.js +0 -1
  556. package/frontend/dist/js/WorkPage-C8gr0QJe.js +0 -6
  557. package/frontend/dist/js/api-BDtqBtqw.js +0 -14
  558. package/frontend/dist/js/appStore-0JnCUlEq.js +0 -2
  559. package/frontend/dist/js/ar-CSpi37Gr.js +0 -2
  560. package/frontend/dist/js/bn-CyH1BeDD.js +0 -2
  561. package/frontend/dist/js/chatStore-CHQ2uINS.js +0 -3
  562. package/frontend/dist/js/cs-Cv2NfRK5.js +0 -2
  563. package/frontend/dist/js/da-D6D6IvPK.js +0 -2
  564. package/frontend/dist/js/de-BNoJJTrT.js +0 -2
  565. package/frontend/dist/js/es-kzo9C7q_.js +0 -2
  566. package/frontend/dist/js/fr-CjHYvJRp.js +0 -2
  567. package/frontend/dist/js/hi-BU98AdCQ.js +0 -2
  568. package/frontend/dist/js/id-CpdedejX.js +0 -2
  569. package/frontend/dist/js/is-Cp5dDWBH.js +0 -2
  570. package/frontend/dist/js/it-CuH_cK4U.js +0 -2
  571. package/frontend/dist/js/ja-BWXXXiHn.js +0 -2
  572. package/frontend/dist/js/ko-DQgv2M1t.js +0 -2
  573. package/frontend/dist/js/markdown-core-BmPPZiuD.js +0 -31
  574. package/frontend/dist/js/messageCodeStyles-BFNR9Wv6.js +0 -2
  575. package/frontend/dist/js/ms-DCcRoIcX.js +0 -2
  576. package/frontend/dist/js/nl-CbKR1_EU.js +0 -2
  577. package/frontend/dist/js/pl-CRyJZccn.js +0 -2
  578. package/frontend/dist/js/pt-BXYmHFGH.js +0 -2
  579. package/frontend/dist/js/router-vendor-DGFGM3EP.js +0 -1
  580. package/frontend/dist/js/ru-M9SyZG4b.js +0 -2
  581. package/frontend/dist/js/sv-DJ486LTU.js +0 -2
  582. package/frontend/dist/js/th-Ch7gKtZv.js +0 -2
  583. package/frontend/dist/js/tr-ClehWhSC.js +0 -2
  584. package/frontend/dist/js/ui-CC-K19wO.js +0 -2
  585. package/frontend/dist/js/ui-vendor-B1UgO3vd.js +0 -177
  586. package/frontend/dist/js/uk-BqAd5zHF.js +0 -2
  587. package/frontend/dist/js/vi-D9gjlDVB.js +0 -2
  588. package/frontend/dist/js/zh-DKTyHkiR.js +0 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channelService.js","sourceRoot":"","sources":["../../src/services/channelService.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"chatRequestService.d.ts","sourceRoot":"","sources":["../../src/services/chatRequestService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatRequestService.d.ts","sourceRoot":"","sources":["../../src/services/chatRequestService.ts"],"names":[],"mappings":"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"}
@@ -85,7 +85,35 @@ export class ChatRequestService {
85
85
  }
86
86
  try {
87
87
  const persona = await this.personaService.getPersonaById(session.personaId, userId);
88
- return persona?.parameters?.system_prompt?.trim() || undefined;
88
+ const parts = [];
89
+ // An assistant profile can bind a library prompt; it leads the persona's
90
+ // own system prompt. A missing or inaccessible binding degrades to the
91
+ // persona prompt instead of failing the turn.
92
+ const promptId = persona?.bindings?.prompt_id;
93
+ if (promptId) {
94
+ try {
95
+ const { getPrompt, renderPrompt } = await import('./promptService.js');
96
+ const boundPrompt = await getPrompt(promptId, { userId });
97
+ if (boundPrompt) {
98
+ let rendered = boundPrompt.content;
99
+ try {
100
+ rendered = renderPrompt(boundPrompt.content, boundPrompt.variables, {});
101
+ }
102
+ catch {
103
+ // Prompts with required variables serve their raw content here.
104
+ }
105
+ if (rendered.trim())
106
+ parts.push(rendered.trim());
107
+ }
108
+ }
109
+ catch (error) {
110
+ logger.error('Error loading bound profile prompt:', error);
111
+ }
112
+ }
113
+ const own = persona?.parameters?.system_prompt?.trim();
114
+ if (own)
115
+ parts.push(own);
116
+ return parts.length > 0 ? parts.join('\n\n') : undefined;
89
117
  }
90
118
  catch (error) {
91
119
  logger.error('Error loading persona system prompt:', error);
@@ -1 +1 @@
1
- {"version":3,"file":"chatRequestService.js","sourceRoot":"","sources":["../../src/services/chatRequestService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatRequestService.js","sourceRoot":"","sources":["../../src/services/chatRequestService.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
- import { ChatSession, ChatMessage, ChatProviderSelection, SessionFolder } from '../types/index.js';
1
+ import { ChatSession, ChatMessage, ChatProviderSelection, PromptQueueEntry, SessionFolder } from '../types/index.js';
2
+ import { type SharedResourceMeta } from './sharedResourceAccess.js';
3
+ import type { AuthzActor } from './authorizationService.js';
2
4
  import type { DurableJobEventAppendInput, DurableJobLeaseIdentity } from '../platform/jobs/durableJobTypes.js';
3
5
  export interface ChatMessagePersistenceOptions {
4
6
  /**
@@ -20,7 +22,54 @@ declare class ChatService {
20
22
  createSession(model: string, title?: string, userId?: string, personaId?: string, providerSelection?: ChatProviderSelection): Promise<ChatSession>;
21
23
  getSession(sessionId: string, userId?: string): Promise<ChatSession | undefined>;
22
24
  getAllSessions(userId?: string): Promise<ChatSession[]>;
25
+ /**
26
+ * Loads a session the actor may read: their own, or one shared with them
27
+ * through a grant. Shared results carry `shared` metadata and are
28
+ * read-only surfaces — every mutation path stays owner-scoped.
29
+ */
30
+ getSessionShared(sessionId: string, actor: AuthzActor): Promise<{
31
+ session: ChatSession;
32
+ shared?: SharedResourceMeta;
33
+ } | undefined>;
34
+ /** Own sessions followed by sessions shared with the actor. */
35
+ getAllSessionsWithShared(actor: AuthzActor): Promise<Array<ChatSession & {
36
+ shared?: SharedResourceMeta;
37
+ }>>;
23
38
  updateSession(sessionId: string, updates: Partial<ChatSession>, userId?: string): Promise<ChatSession | undefined>;
39
+ /**
40
+ * Whole-chat fork: copies the conversation up to (and including) one
41
+ * message into a new session with fresh identities. Every internal
42
+ * reference — variant parents and compaction provenance — is remapped so
43
+ * the fork and the original never share message ids, and the fork records
44
+ * where it came from in its settings.
45
+ */
46
+ forkSession(sessionId: string, userId: string, options?: {
47
+ messageId?: string;
48
+ title?: string;
49
+ }): Promise<ChatSession | undefined>;
50
+ /**
51
+ * Atomic prompt-queue mutation under the session write lease, so two
52
+ * tabs (or a removal racing a drain) never resurrect or double-claim an
53
+ * entry through a stale whole-settings write.
54
+ */
55
+ private mutatePromptQueue;
56
+ enqueuePrompt(sessionId: string, userId: string, content: string): Promise<PromptQueueEntry[] | undefined>;
57
+ updateQueuedPrompt(sessionId: string, userId: string, entryId: string, content: string): Promise<PromptQueueEntry[] | undefined>;
58
+ /**
59
+ * Reorders known entries by the given id order. Entries missing from the
60
+ * order (raced in by another tab) keep their relative position at the end
61
+ * instead of being dropped.
62
+ */
63
+ reorderPromptQueue(sessionId: string, userId: string, order: readonly string[]): Promise<PromptQueueEntry[] | undefined>;
64
+ /**
65
+ * Removes one entry and returns it. Drains use this claim semantic: only
66
+ * the caller whose removal succeeded may send the entry, so concurrent
67
+ * clients cannot double-send.
68
+ */
69
+ claimQueuedPrompt(sessionId: string, userId: string, entryId: string): Promise<{
70
+ entry: PromptQueueEntry;
71
+ queue: PromptQueueEntry[];
72
+ } | undefined>;
24
73
  private updateSessionWithLeaseHeld;
25
74
  addMessage(sessionId: string, message: Omit<ChatMessage, 'id' | 'timestamp'> & {
26
75
  id?: string;
@@ -36,8 +85,19 @@ declare class ChatService {
36
85
  images?: string[];
37
86
  options?: Record<string, unknown>;
38
87
  webSearch?: boolean;
88
+ tools?: boolean;
89
+ toolSelection?: {
90
+ builtinTools?: readonly string[];
91
+ serverIds?: readonly string[];
92
+ };
39
93
  regenerate?: boolean;
40
94
  originalMessageId?: string;
95
+ modelOverride?: {
96
+ model: string;
97
+ providerType?: string | null;
98
+ providerId?: string | null;
99
+ };
100
+ compare?: boolean;
41
101
  }): Promise<{
42
102
  userMessage: ChatMessage;
43
103
  jobId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"chatService.d.ts","sourceRoot":"","sources":["../../src/services/chatService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatService.d.ts","sourceRoot":"","sources":["../../src/services/chatService.ts"],"names":[],"mappings":"AAiBA,OAAO,EACL,WAAW,EACX,WAAW,EACX,qBAAqB,EAGrB,gBAAgB,EAChB,aAAa,EACd,MAAM,mBAAmB,CAAC;AA6B3B,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAO5D,OAAO,KAAK,EACV,0BAA0B,EAC1B,uBAAuB,EACxB,MAAM,qCAAqC,CAAC;AAI7C,MAAM,WAAW,6BAA6B;IAC5C;;;;OAIG;IACH,wBAAwB,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvD;AAED,qBAAa,iCAAkC,SAAQ,KAAK;IAExD,QAAQ,CAAC,iBAAiB,EAAE,OAAO;IACnC,QAAQ,CAAC,iBAAiB,EAAE,OAAO;IAFrC,YACW,iBAAiB,EAAE,OAAO,EAC1B,iBAAiB,EAAE,OAAO,EAIpC;CACF;AAED,cAAM,WAAW;IACf,OAAO,CAAC,QAAQ,CAAuC;YAEzC,qBAAqB;YA2DrB,YAAY;IAYpB,aAAa,CACjB,KAAK,EAAE,MAAM,EACb,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,GAAE,MAAkB,EAC1B,SAAS,CAAC,EAAE,MAAM,EAClB,iBAAiB,CAAC,EAAE,qBAAqB,GACxC,OAAO,CAAC,WAAW,CAAC,CAkEtB;IAEK,UAAU,CACd,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,MAAkB,GACzB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAOlC;IAEK,cAAc,CAAC,MAAM,GAAE,MAAkB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAWvE;IAED;;;;OAIG;IACG,gBAAgB,CACpB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,UAAU,GAChB,OAAO,CACR;QAAE,OAAO,EAAE,WAAW,CAAC;QAAC,MAAM,CAAC,EAAE,kBAAkB,CAAA;KAAE,GAAG,SAAS,CAClE,CAiBA;IAED,+DAA+D;IACzD,wBAAwB,CAC5B,KAAK,EAAE,UAAU,GAChB,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG;QAAE,MAAM,CAAC,EAAE,kBAAkB,CAAA;KAAE,CAAC,CAAC,CAgB/D;IAEK,aAAa,CACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,MAAM,GAAE,MAAkB,GACzB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAIlC;IAED;;;;;;OAMG;IACG,WAAW,CACf,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO,GACnD,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAmElC;IAED;;;;OAIG;YACW,iBAAiB;IA2BzB,aAAa,CACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,gBAAgB,EAAE,GAAG,SAAS,CAAC,CAoBzC;IAEK,kBAAkB,CACtB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,gBAAgB,EAAE,GAAG,SAAS,CAAC,CAgBzC;IAED;;;;OAIG;IACG,kBAAkB,CACtB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,SAAS,MAAM,EAAE,GACvB,OAAO,CAAC,gBAAgB,EAAE,GAAG,SAAS,CAAC,CAczC;IAED;;;;OAIG;IACG,iBAAiB,CACrB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,OAAO,CACR;QAAE,KAAK,EAAE,gBAAgB,CAAC;QAAC,KAAK,EAAE,gBAAgB,EAAE,CAAA;KAAE,GAAG,SAAS,CACnE,CAOA;YAEa,0BAA0B;IAmElC,UAAU,CACd,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,WAAW,CAAC,GAAG;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,EAChE,MAAM,GAAE,MAAkB,EAC1B,OAAO,GAAE,6BAAkC,GAC1C,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAUlC;YAEa,uBAAuB;IAwIrC,sEAAsE;IAChE,sBAAsB,CAAC,KAAK,EAAE;QAClC,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,EAAE,MAAM,CAAC;QACtB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClC,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,aAAa,CAAC,EAAE;YACd,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;YACjC,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;SAC/B,CAAC;QACF,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,aAAa,CAAC,EAAE;YACd,KAAK,EAAE,MAAM,CAAC;YACd,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC7B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;SAC5B,CAAC;QACF,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,GAAG,OAAO,CAAC;QAAE,WAAW,EAAE,WAAW,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC,CAkMnE;IAED;;;;OAIG;IACG,4BAA4B,CAAC,KAAK,EAAE;QACxC,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,WAAW,GAAG;YAAE,IAAI,EAAE,WAAW,CAAA;SAAE,CAAC;QAC7C,KAAK,EAAE,uBAAuB,CAAC;QAC/B,eAAe,EAAE,MAAM,CAAC;QACxB,KAAK,EAAE,0BAA0B,CAAC;KACnC,GAAG,OAAO,CAAC,MAAM,CAAC,CAyClB;IAEK,aAAa,CACjB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,EAC7B,MAAM,GAAE,MAAkB,GACzB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAUlC;YAEa,0BAA0B;IAiDlC,oBAAoB,CACxB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,MAAkB,GACzB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CA0BlC;IAEK,aAAa,CACjB,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,MAAkB,GACzB,OAAO,CAAC,OAAO,CAAC,CAYlB;YAEa,0BAA0B;IA8BlC,iBAAiB,CACrB,MAAM,GAAE,MAAkB,GACzB,OAAO,CAAC,aAAa,EAAE,CAAC,CAE1B;IAEK,mBAAmB,CACvB,IAAI,EAAE,OAAO,EACb,MAAM,GAAE,MAAkB,GACzB,OAAO,CAAC,aAAa,CAAC,CAWxB;IAEK,mBAAmB,CACvB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,EACb,MAAM,GAAE,MAAkB,GACzB,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CASpC;IAED,OAAO,CAAC,0BAA0B;IAc5B,mBAAmB,CACvB,QAAQ,EAAE,MAAM,EAChB,MAAM,GAAE,MAAkB,GACzB,OAAO,CAAC,OAAO,CAAC,CAWlB;IAEK,gBAAgB,CAAC,MAAM,GAAE,MAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBhE;IAEK,qBAAqB,CACzB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,SAAK,EAChB,MAAM,CAAC,EAAE,WAAW,EAGpB,cAAc,UAAQ,GACrB,OAAO,CAAC,WAAW,EAAE,CAAC,CAuCxB;IAED;;;;OAIG;YACW,sBAAsB;IAyCpC;;;;;OAKG;IACG,iBAAiB,CACrB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAmC7B;YAEa,6BAA6B;YA6B7B,4BAA4B;IAS1C,OAAO,CAAC,oBAAoB;IAgC5B;;OAEG;YACW,iCAAiC;IAuE/C;;OAEG;YACW,+BAA+B;IAyG7C;;OAEG;YACW,8BAA8B;IAuC5C;;;OAGG;IACG,mBAAmB,CACvB,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,MAAM,EACzB,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,WAAW,CAAC,GAAG;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,EACnE,MAAM,GAAE,MAAkB,GACzB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAUlC;YAEa,gCAAgC;IAuD9C;;OAEG;IACG,mBAAmB,CACvB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,MAAM,EACzB,MAAM,GAAE,MAAkB,GACzB,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAUlC;YAEa,gCAAgC;IAoC9C;;OAEG;IACG,kBAAkB,CACtB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,MAAkB,GACzB,OAAO,CAAC,WAAW,EAAE,CAAC,CAaxB;CACF"}
@@ -23,10 +23,13 @@ import { mutationEngineService } from './mutationEngineService.js';
23
23
  import { createLogger } from '../utils/logger.js';
24
24
  import { normalizeChatProviderSelection } from '../utils/chatProviderSelection.js';
25
25
  import { sanitizeChatMessageProviderState, selectChatMessagesForContext, } from '../utils/chatContext.js';
26
- import { MAX_SESSION_FOLDER_NAME_LENGTH, ResourcePolicyError, } from '../utils/resourceLimits.js';
26
+ import { MAX_PROMPT_QUEUE_CONTENT_LENGTH, MAX_PROMPT_QUEUE_ENTRIES, MAX_SESSION_FOLDER_NAME_LENGTH, ResourcePolicyError, } from '../utils/resourceLimits.js';
27
27
  import { getCoordinator } from '../platform/coordination/service.js';
28
28
  import { COMPACTION_SUMMARY_PREFIX, getCompactionConfig, planCompaction, } from './contextCompactionService.js';
29
29
  import { transactionalChatGenerationEnqueuer } from '../platform/jobs/chatGenerationEnqueuer.js';
30
+ import { getPersistence } from '../persistence/index.js';
31
+ import { encryptionService } from './encryptionService.js';
32
+ import { grantedResourceIdsFor, sharedMetaFor, } from './sharedResourceAccess.js';
30
33
  import { CHAT_GENERATE_JOB_TYPE, chatEventStreamId, chatGenerationIdempotencyScope, } from '../platform/jobs/domainJobContracts.js';
31
34
  import { getDurableJobRuntime } from '../platform/jobs/durableJobRuntime.js';
32
35
  const logger = createLogger('chat-service');
@@ -182,9 +185,203 @@ class ChatService {
182
185
  });
183
186
  return sessionsArray;
184
187
  }
188
+ /**
189
+ * Loads a session the actor may read: their own, or one shared with them
190
+ * through a grant. Shared results carry `shared` metadata and are
191
+ * read-only surfaces — every mutation path stays owner-scoped.
192
+ */
193
+ async getSessionShared(sessionId, actor) {
194
+ const own = await this.getSession(sessionId, actor.userId);
195
+ if (own)
196
+ return { session: own };
197
+ const ownerUserId = await getPersistence(encryptionService).repositories.resources.archive.ownerOf('session', sessionId);
198
+ if (!ownerUserId || ownerUserId === actor.userId)
199
+ return undefined;
200
+ const shared = await sharedMetaFor(actor, 'session', sessionId, ownerUserId);
201
+ if (!shared)
202
+ return undefined;
203
+ const session = await storageService.getSession(sessionId, ownerUserId);
204
+ if (!session)
205
+ return undefined;
206
+ return { session, shared };
207
+ }
208
+ /** Own sessions followed by sessions shared with the actor. */
209
+ async getAllSessionsWithShared(actor) {
210
+ const own = await this.getAllSessions(actor.userId);
211
+ const sharedIds = await grantedResourceIdsFor(actor, 'session', new Set(own.map(session => session.id)));
212
+ const shared = [];
213
+ for (const sessionId of sharedIds) {
214
+ const found = await this.getSessionShared(sessionId, actor);
215
+ if (!found || !found.shared)
216
+ continue;
217
+ shared.push({ ...found.session, shared: found.shared });
218
+ }
219
+ shared.sort((left, right) => right.updatedAt - left.updatedAt);
220
+ return [...own, ...shared];
221
+ }
185
222
  async updateSession(sessionId, updates, userId = 'default') {
186
223
  return this.withSessionWriteLease(sessionId, userId, assertHeld => this.updateSessionWithLeaseHeld(sessionId, updates, userId, assertHeld));
187
224
  }
225
+ /**
226
+ * Whole-chat fork: copies the conversation up to (and including) one
227
+ * message into a new session with fresh identities. Every internal
228
+ * reference — variant parents and compaction provenance — is remapped so
229
+ * the fork and the original never share message ids, and the fork records
230
+ * where it came from in its settings.
231
+ */
232
+ async forkSession(sessionId, userId, options = {}) {
233
+ const source = await this.getSession(sessionId, userId);
234
+ if (!source)
235
+ return undefined;
236
+ let cutoff = source.messages.length - 1;
237
+ if (options.messageId) {
238
+ cutoff = source.messages.findIndex(message => message.id === options.messageId);
239
+ if (cutoff === -1) {
240
+ throw new ResourcePolicyError('The fork point message was not found', 404);
241
+ }
242
+ }
243
+ const prefix = source.messages.slice(0, cutoff + 1);
244
+ const idMap = new Map();
245
+ for (const message of prefix)
246
+ idMap.set(message.id, uuidv4());
247
+ const messages = prefix.map(message => {
248
+ const copy = {
249
+ ...message,
250
+ id: idMap.get(message.id),
251
+ };
252
+ if (message.parentId) {
253
+ const mapped = idMap.get(message.parentId);
254
+ if (mapped)
255
+ copy.parentId = mapped;
256
+ else {
257
+ delete copy.parentId;
258
+ delete copy.branchIndex;
259
+ delete copy.siblingCount;
260
+ }
261
+ }
262
+ const compacted = message.providerMetadata?.compactedMessageIds;
263
+ if (Array.isArray(compacted)) {
264
+ copy.providerMetadata = {
265
+ ...message.providerMetadata,
266
+ compactedMessageIds: compacted
267
+ .map(id => (typeof id === 'string' ? idMap.get(id) : undefined))
268
+ .filter((id) => id !== undefined),
269
+ };
270
+ }
271
+ return copy;
272
+ });
273
+ const now = Date.now();
274
+ const settings = {
275
+ ...source.settings,
276
+ forkedFrom: {
277
+ sessionId: source.id,
278
+ ...(options.messageId ? { messageId: options.messageId } : {}),
279
+ title: source.title,
280
+ forkedAt: now,
281
+ },
282
+ };
283
+ delete settings.promptQueue;
284
+ const fork = {
285
+ ...source,
286
+ id: uuidv4(),
287
+ title: options.title?.trim() || source.title,
288
+ messages,
289
+ settings,
290
+ createdAt: now,
291
+ updatedAt: now,
292
+ pinned: false,
293
+ };
294
+ await storageService.saveSession(fork, userId);
295
+ this.sessions.set(fork.id, fork);
296
+ return fork;
297
+ }
298
+ /**
299
+ * Atomic prompt-queue mutation under the session write lease, so two
300
+ * tabs (or a removal racing a drain) never resurrect or double-claim an
301
+ * entry through a stale whole-settings write.
302
+ */
303
+ async mutatePromptQueue(sessionId, userId, mutate) {
304
+ return this.withSessionWriteLease(sessionId, userId, async (assertHeld) => {
305
+ const session = await this.getSession(sessionId, userId);
306
+ if (!session)
307
+ return undefined;
308
+ const current = session.settings?.promptQueue ?? [];
309
+ const mutation = mutate(current.map(entry => ({ ...entry })));
310
+ if (!mutation)
311
+ return undefined;
312
+ const settings = { ...session.settings };
313
+ if (mutation.queue.length > 0)
314
+ settings.promptQueue = mutation.queue;
315
+ else
316
+ delete settings.promptQueue;
317
+ const updated = await this.updateSessionWithLeaseHeld(sessionId, { settings }, userId, assertHeld);
318
+ return updated ? mutation.result : undefined;
319
+ });
320
+ }
321
+ async enqueuePrompt(sessionId, userId, content) {
322
+ if (!content.trim()) {
323
+ throw new ResourcePolicyError('A queued prompt needs content', 400);
324
+ }
325
+ if (content.length > MAX_PROMPT_QUEUE_CONTENT_LENGTH) {
326
+ throw new ResourcePolicyError(`A queued prompt may hold at most ${MAX_PROMPT_QUEUE_CONTENT_LENGTH} characters`, 400);
327
+ }
328
+ return this.mutatePromptQueue(sessionId, userId, queue => {
329
+ if (queue.length >= MAX_PROMPT_QUEUE_ENTRIES) {
330
+ throw new ResourcePolicyError(`A chat may queue at most ${MAX_PROMPT_QUEUE_ENTRIES} prompts`, 409);
331
+ }
332
+ const next = [...queue, { id: uuidv4(), content }];
333
+ return { queue: next, result: next };
334
+ });
335
+ }
336
+ async updateQueuedPrompt(sessionId, userId, entryId, content) {
337
+ if (!content.trim()) {
338
+ throw new ResourcePolicyError('A queued prompt needs content', 400);
339
+ }
340
+ if (content.length > MAX_PROMPT_QUEUE_CONTENT_LENGTH) {
341
+ throw new ResourcePolicyError(`A queued prompt may hold at most ${MAX_PROMPT_QUEUE_CONTENT_LENGTH} characters`, 400);
342
+ }
343
+ return this.mutatePromptQueue(sessionId, userId, queue => {
344
+ const entry = queue.find(candidate => candidate.id === entryId);
345
+ if (!entry)
346
+ return null;
347
+ entry.content = content;
348
+ return { queue, result: queue };
349
+ });
350
+ }
351
+ /**
352
+ * Reorders known entries by the given id order. Entries missing from the
353
+ * order (raced in by another tab) keep their relative position at the end
354
+ * instead of being dropped.
355
+ */
356
+ async reorderPromptQueue(sessionId, userId, order) {
357
+ return this.mutatePromptQueue(sessionId, userId, queue => {
358
+ const byId = new Map(queue.map(entry => [entry.id, entry]));
359
+ const next = [];
360
+ for (const id of order) {
361
+ const entry = byId.get(id);
362
+ if (entry) {
363
+ next.push(entry);
364
+ byId.delete(id);
365
+ }
366
+ }
367
+ next.push(...byId.values());
368
+ return { queue: next, result: next };
369
+ });
370
+ }
371
+ /**
372
+ * Removes one entry and returns it. Drains use this claim semantic: only
373
+ * the caller whose removal succeeded may send the entry, so concurrent
374
+ * clients cannot double-send.
375
+ */
376
+ async claimQueuedPrompt(sessionId, userId, entryId) {
377
+ return this.mutatePromptQueue(sessionId, userId, queue => {
378
+ const index = queue.findIndex(candidate => candidate.id === entryId);
379
+ if (index === -1)
380
+ return null;
381
+ const [entry] = queue.splice(index, 1);
382
+ return { queue, result: { entry, queue } };
383
+ });
384
+ }
188
385
  async updateSessionWithLeaseHeld(sessionId, updates, userId, assertHeld) {
189
386
  // First verify the session belongs to the user
190
387
  const session = await this.getSession(sessionId, userId);
@@ -388,6 +585,18 @@ class ChatService {
388
585
  JSON.stringify(input.images ?? [])) {
389
586
  throw new Error('Chat generation idempotency key was reused');
390
587
  }
588
+ if (input.modelOverride) {
589
+ const model = input.modelOverride.model?.trim();
590
+ if (!model || model.length > 200) {
591
+ throw new Error('The comparison model name is invalid');
592
+ }
593
+ // Validates the provider pairing the same way session bindings do.
594
+ normalizeChatProviderSelection({
595
+ providerType: (input.modelOverride.providerType ??
596
+ null),
597
+ providerId: input.modelOverride.providerId ?? null,
598
+ });
599
+ }
391
600
  const enqueueInput = {
392
601
  sessionId: input.sessionId,
393
602
  actorUserId: input.userId,
@@ -397,10 +606,18 @@ class ChatService {
397
606
  hasImages: (input.images?.length ?? 0) > 0,
398
607
  options: input.options ?? {},
399
608
  webSearch: input.webSearch === true,
609
+ tools: input.tools === true,
610
+ ...(input.toolSelection
611
+ ? { toolSelection: input.toolSelection }
612
+ : {}),
400
613
  regenerate: input.regenerate === true,
401
614
  ...(input.regenerate && input.originalMessageId
402
615
  ? { originalMessageId: input.originalMessageId }
403
616
  : {}),
617
+ ...(input.modelOverride
618
+ ? { modelOverride: input.modelOverride }
619
+ : {}),
620
+ ...(input.compare ? { compare: true } : {}),
404
621
  };
405
622
  const persistAndEnqueue = () => storageService.saveSessionAndEnqueueGeneration(session, input.userId, transactionalChatGenerationEnqueuer, enqueueInput, assertHeld);
406
623
  try {