@xopcai/xopc 0.0.179 → 0.0.187

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 (794) hide show
  1. package/README.md +1 -1
  2. package/README.zh-CN.md +1 -1
  3. package/dist/browser-ext/manifest.json +1 -1
  4. package/dist/extensions/telegram/xopc.extension.json +1 -1
  5. package/dist/gateway/static/root/assets/{activity-store-A5FUMjeV.js → activity-store-WlR2zEvA.js} +1 -1
  6. package/dist/gateway/static/root/assets/{agent-avatar-dicebear-NghNiDWx.js → agent-avatar-dicebear-RedDszrG.js} +1 -1
  7. package/dist/gateway/static/root/assets/agents-Df9mTa-K.js +2 -0
  8. package/dist/gateway/static/root/assets/{api-Bmzslx0Z.js → api-tVOllncq.js} +1 -1
  9. package/dist/gateway/static/root/assets/{app-management-settings-panel-DDWS_BBJ.js → app-management-settings-panel-C9hKBzaF.js} +1 -1
  10. package/dist/gateway/static/root/assets/{appearance-settings-C6znvVtX.js → appearance-settings-5cQvq7hd.js} +1 -1
  11. package/dist/gateway/static/root/assets/apps-page-Bd3tN-k2.js +1 -0
  12. package/dist/gateway/static/root/assets/{archive-plugin-fvTZhPUr.js → archive-plugin-Ct-shK4n.js} +1 -1
  13. package/dist/gateway/static/root/assets/{attachment-load-BFEgvg-Q.js → attachment-load-CpPj3m-q.js} +1 -1
  14. package/dist/gateway/static/root/assets/automations-page-w6K9GZQ7.js +6 -0
  15. package/dist/gateway/static/root/assets/{binary-plugins-CuI2bOc7.js → binary-plugins-BpSXZBle.js} +1 -1
  16. package/dist/gateway/static/root/assets/{block-editor-Z_k8W0al.js → block-editor-B8hR2tXc.js} +46 -46
  17. package/dist/gateway/static/root/assets/browser-settings-page-jb5Hf-hm.js +8 -0
  18. package/dist/gateway/static/root/assets/browser-workflow-inputs-D_LAXUrh.js +1 -0
  19. package/dist/gateway/static/root/assets/{browser-workflows-page-Cq5qXStp.js → browser-workflows-page-CPAs7-6s.js} +2 -2
  20. package/dist/gateway/static/root/assets/capabilities-settings-panel-BjUe4raq.js +7 -0
  21. package/dist/gateway/static/root/assets/capability-presets-api-CKklVY2p.js +1 -0
  22. package/dist/gateway/static/root/assets/capability-presets-settings-panel-DiWIMYRr.js +1 -0
  23. package/dist/gateway/static/root/assets/{channel-recipient-api-TwMak0SE.js → channel-recipient-api-WWN-nbFL.js} +1 -1
  24. package/dist/gateway/static/root/assets/channels-settings-D8IkjMuX.js +1 -0
  25. package/dist/gateway/static/root/assets/channels-status-swr-CySs1GQX.js +1 -0
  26. package/dist/gateway/static/root/assets/{connector-logo-DBKotvNr.js → connector-logo-CdNkVFdB.js} +1 -1
  27. package/dist/gateway/static/root/assets/connectors-page-BT2ahw52.js +2 -0
  28. package/dist/gateway/static/root/assets/desktop-pet-Bm_IEAf3.js +1 -0
  29. package/dist/gateway/static/root/assets/{desktop-pet-settings-CyIg2jJp.js → desktop-pet-settings-C0Ve04-G.js} +1 -1
  30. package/dist/gateway/static/root/assets/{directory-picker-path-field-B6fc_7SL.js → directory-picker-path-field-B2cvhvAI.js} +1 -1
  31. package/dist/gateway/static/root/assets/{extension-debug-page-AbRNi2ON.js → extension-debug-page-DNashgGu.js} +1 -1
  32. package/dist/gateway/static/root/assets/{extension-page-ClYfiLXC.js → extension-page-Bvo-5htX.js} +1 -1
  33. package/dist/gateway/static/root/assets/{extension-settings-page-BGVP2hw1.js → extension-settings-page-BBESdISV.js} +1 -1
  34. package/dist/gateway/static/root/assets/{gateway-config-api-B7GqtklK.js → gateway-config-api-ClQvokMo.js} +1 -1
  35. package/dist/gateway/static/root/assets/{gateway-settings-BMeK8igT.js → gateway-settings-CIRs2QVy.js} +1 -1
  36. package/dist/gateway/static/root/assets/{gateway-startup-retry-CKKL96r_.js → gateway-startup-retry-CntXJF6W.js} +1 -1
  37. package/dist/gateway/static/root/assets/heartbeat-settings-CWKcZuvc.js +1 -0
  38. package/dist/gateway/static/root/assets/home-page-C59f8UJw.js +3 -0
  39. package/dist/gateway/static/root/assets/{image-generation-api-BY3VQ5Mv.js → image-generation-api-DjSAQwGy.js} +1 -1
  40. package/dist/gateway/static/root/assets/index-D-YfWVyS.css +1 -0
  41. package/dist/gateway/static/root/assets/index-vi5KlR5_.js +222 -0
  42. package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-CELtDFz3.js → keyboard-shortcuts-settings-ahKHpjoW.js} +1 -1
  43. package/dist/gateway/static/root/assets/local-app-workbench-page-DRB4UQBE.js +2 -0
  44. package/dist/gateway/static/root/assets/{local-apps-page-CF5uUd1n.js → local-apps-page-B6GKdgza.js} +1 -1
  45. package/dist/gateway/static/root/assets/{locale-store-DIVc0AQs.js → locale-store-Bff30u5V.js} +1 -1
  46. package/dist/gateway/static/root/assets/logs-page-CNp4XiBN.js +7 -0
  47. package/dist/gateway/static/root/assets/{markdown-split-CN85EdB8.js → markdown-split-BeNMJm_i.js} +1 -1
  48. package/dist/gateway/static/root/assets/{media-plugins-CxYEc-b8.js → media-plugins-Bdzrj_-6.js} +1 -1
  49. package/dist/gateway/static/root/assets/messages-CPxz48hr.js +3 -0
  50. package/dist/gateway/static/root/assets/{notes-page-Goab4781.js → notes-page-MYIi-9S9.js} +1 -1
  51. package/dist/gateway/static/root/assets/notes-workbench-DqSkeDXX.js +4 -0
  52. package/dist/gateway/static/root/assets/{page-tabs-tQNQcAts.js → page-tabs-3t88bbGx.js} +1 -1
  53. package/dist/gateway/static/root/assets/{preview-open-alternatives-BSTlgsDB.js → preview-open-alternatives-Cf_BWbeE.js} +1 -1
  54. package/dist/gateway/static/root/assets/product-delivery-C8JbSj5Y.js +1 -0
  55. package/dist/gateway/static/root/assets/{product-open-page-iQ5gTCip.js → product-open-page-CKq73c98.js} +1 -1
  56. package/dist/gateway/static/root/assets/project-detail-page-BrbHs4Wp.js +1 -0
  57. package/dist/gateway/static/root/assets/projects-page-B80rtkj6.js +1 -0
  58. package/dist/gateway/static/root/assets/remote-access-hub-_Q3GEznb.js +1 -0
  59. package/dist/gateway/static/root/assets/{schema-form-Bbw8l2ri.js → schema-form-NqOm-OG1.js} +1 -1
  60. package/dist/gateway/static/root/assets/sessions-page-55dJOUVg.js +1 -0
  61. package/dist/gateway/static/root/assets/settings-advanced-gate-CSFCZj14.js +1 -0
  62. package/dist/gateway/static/root/assets/{settings-form-section-BqbibcnJ.js → settings-form-section-DYAS8p8z.js} +1 -1
  63. package/dist/gateway/static/root/assets/{settings-loading-skeleton-DNLNCEGT.js → settings-loading-skeleton-DZFhxihA.js} +1 -1
  64. package/dist/gateway/static/root/assets/settings-page-BSIiMLi-.js +1 -0
  65. package/dist/gateway/static/root/assets/{settings-page-layout-Cdb1e2Cz.js → settings-page-layout-DfFfkdED.js} +1 -1
  66. package/dist/gateway/static/root/assets/setup-status-panel-q_yE6-H1.js +1 -0
  67. package/dist/gateway/static/root/assets/{share-preview-page-CkrASny2.js → share-preview-page-CYtrQaZN.js} +1 -1
  68. package/dist/gateway/static/root/assets/shares-settings-gYkRX9Ik.js +1 -0
  69. package/dist/gateway/static/root/assets/skill-reload-api-BoNBMKW6.js +1 -0
  70. package/dist/gateway/static/root/assets/skills-page-GZHKDFSb.js +2 -0
  71. package/dist/gateway/static/root/assets/{skills-page.utils-BG5dGkyA.js → skills-page.utils-BBXirAjc.js} +1 -1
  72. package/dist/gateway/static/root/assets/system-settings-panel-DLf5YvFl.js +1 -0
  73. package/dist/gateway/static/root/assets/task-detail-page-DFGkuYfl.js +1 -0
  74. package/dist/gateway/static/root/assets/{theme-store-DtwI_VLT.js → theme-store-y7e_tvYi.js} +1 -1
  75. package/dist/gateway/static/root/assets/time-picker-5sHEZ5w5.js +1 -0
  76. package/dist/gateway/static/root/assets/{typed-models-lib-DOnpwsrE.js → typed-models-lib-DR12j_dr.js} +1 -1
  77. package/dist/gateway/static/root/assets/use-save-bar-registration-BsvcJgZl.js +1 -0
  78. package/dist/gateway/static/root/assets/user-context-page-q5dr8JFG.js +1 -0
  79. package/dist/gateway/static/root/assets/{voice-api-key-field-DP80jW-W.js → voice-api-key-field-DKADXFWD.js} +1 -1
  80. package/dist/gateway/static/root/assets/work-discovery-overlay-BC1nExf8.js +1 -0
  81. package/dist/gateway/static/root/assets/work-discovery-page-fNvSg40M.js +1 -0
  82. package/dist/gateway/static/root/assets/{workflow-run-setup-panel-BLlVqKdA.js → workflow-run-setup-panel-C8X5W-8k.js} +2 -2
  83. package/dist/gateway/static/root/assets/workflows-page-YJBKmPYK.js +11 -0
  84. package/dist/gateway/static/root/index.html +8 -8
  85. package/dist/package.js +1 -1
  86. package/dist/packages/gateway-contract/src/product-delivery.js +1 -3
  87. package/dist/packages/gateway-contract/src/project-monitoring.js +31 -0
  88. package/dist/packages/gateway-contract/src/task-lifecycle.js +67 -0
  89. package/dist/packages/gateway-contract/src/task-runs.js +80 -0
  90. package/dist/packages/gateway-contract/src/tasks.js +353 -0
  91. package/dist/src/activity/types.d.ts +2 -2
  92. package/dist/src/agent/agent-instance-gateway.d.ts +1 -1
  93. package/dist/src/agent/agent-manager.d.ts +7 -4
  94. package/dist/src/agent/agent-manager.js +38 -23
  95. package/dist/src/agent/child-agent-factory.d.ts +1 -2
  96. package/dist/src/agent/child-agent-factory.js +4 -10
  97. package/dist/src/agent/context/execution-scope.d.ts +2 -2
  98. package/dist/src/agent/context/execution-scope.js +17 -20
  99. package/dist/src/agent/context/project-context.d.ts +6 -2
  100. package/dist/src/agent/context/project-context.js +17 -25
  101. package/dist/src/agent/context/workspace-templates/AGENTS.md +1 -1
  102. package/dist/src/agent/embedded/run-for-session.d.ts +2 -0
  103. package/dist/src/agent/embedded/run-for-session.js +3 -1
  104. package/dist/src/agent/embedded/run-turn.js +2 -0
  105. package/dist/src/agent/embedded/session-tool-result-guard.d.ts +2 -0
  106. package/dist/src/agent/embedded/session-tool-result-guard.js +16 -4
  107. package/dist/src/agent/inbound/inbound-loop.js +1 -1
  108. package/dist/src/agent/inbound/turn-dispatcher.d.ts +6 -1
  109. package/dist/src/agent/inbound/turn-dispatcher.js +6 -3
  110. package/dist/src/agent/lifecycle/progress.js +0 -1
  111. package/dist/src/agent/lifecycle/timeout-wrapper.d.ts +2 -0
  112. package/dist/src/agent/lifecycle/timeout-wrapper.js +39 -9
  113. package/dist/src/agent/mcp/bundle-mcp-materialize.js +2 -2
  114. package/dist/src/agent/mcp/bundle-mcp-policy.d.ts +3 -5
  115. package/dist/src/agent/mcp/bundle-mcp-policy.js +8 -5
  116. package/dist/src/agent/mcp/bundle-mcp-runtime.js +6 -1
  117. package/dist/src/agent/mcp/bundle-mcp-types.d.ts +1 -1
  118. package/dist/src/agent/mcp/index.js +2 -2
  119. package/dist/src/agent/mcp/mcp-transport-config.d.ts +2 -0
  120. package/dist/src/agent/mcp/mcp-transport-config.js +10 -3
  121. package/dist/src/agent/mcp/mcp-transport.d.ts +1 -0
  122. package/dist/src/agent/mcp/mcp-transport.js +5 -2
  123. package/dist/src/agent/mcp/resolve-embedded-mcp-tools.js +5 -6
  124. package/dist/src/agent/memory/builtin-provider.d.ts +1 -5
  125. package/dist/src/agent/memory/builtin-provider.js +75 -229
  126. package/dist/src/agent/memory/compaction.js +1 -1
  127. package/dist/src/agent/memory/context/planner.d.ts +3 -0
  128. package/dist/src/agent/memory/context/planner.js +32 -11
  129. package/dist/src/agent/memory/context/types.d.ts +6 -0
  130. package/dist/src/agent/memory/create-memory-manager.d.ts +1 -2
  131. package/dist/src/agent/memory/create-memory-manager.js +4 -4
  132. package/dist/src/agent/memory/dreaming/config.d.ts +16 -13
  133. package/dist/src/agent/memory/dreaming/config.js +47 -40
  134. package/dist/src/agent/memory/dreaming/constants.d.ts +5 -22
  135. package/dist/src/agent/memory/dreaming/constants.js +6 -24
  136. package/dist/src/agent/memory/dreaming/deep-promotion.d.ts +4 -11
  137. package/dist/src/agent/memory/dreaming/deep-promotion.js +126 -279
  138. package/dist/src/agent/memory/dreaming/light-sweep.d.ts +5 -2
  139. package/dist/src/agent/memory/dreaming/light-sweep.js +79 -197
  140. package/dist/src/agent/memory/dreaming/preview.d.ts +3 -9
  141. package/dist/src/agent/memory/dreaming/preview.js +34 -77
  142. package/dist/src/agent/memory/dreaming/promotion-lifecycle.d.ts +1 -15
  143. package/dist/src/agent/memory/dreaming/promotion-lifecycle.js +3 -42
  144. package/dist/src/agent/memory/dreaming/rem-patterns.d.ts +7 -13
  145. package/dist/src/agent/memory/dreaming/rem-patterns.js +104 -261
  146. package/dist/src/agent/memory/dreaming/runner.d.ts +10 -0
  147. package/dist/src/agent/memory/dreaming/runner.js +78 -0
  148. package/dist/src/agent/memory/dreaming/schedule.d.ts +23 -0
  149. package/dist/src/agent/memory/dreaming/schedule.js +38 -0
  150. package/dist/src/agent/memory/dreaming/scope.d.ts +2 -4
  151. package/dist/src/agent/memory/dreaming/scope.js +21 -13
  152. package/dist/src/agent/memory/dreaming/utils.d.ts +2 -51
  153. package/dist/src/agent/memory/dreaming/utils.js +4 -112
  154. package/dist/src/agent/memory/index.d.ts +1 -3
  155. package/dist/src/agent/memory/index.js +2 -3
  156. package/dist/src/agent/memory/manager.d.ts +1 -5
  157. package/dist/src/agent/memory/manager.js +1 -27
  158. package/dist/src/agent/memory/memory-config.d.ts +1 -6
  159. package/dist/src/agent/memory/memory-config.js +2 -23
  160. package/dist/src/agent/memory/summary-generator.d.ts +1 -1
  161. package/dist/src/agent/memory/types.d.ts +5 -48
  162. package/dist/src/agent/memory/understanding/service.js +1 -2
  163. package/dist/src/agent/memory/user-context-coordinator.d.ts +2 -1
  164. package/dist/src/agent/memory/user-context-coordinator.js +32 -14
  165. package/dist/src/agent/messaging/command-handler.d.ts +1 -9
  166. package/dist/src/agent/messaging/command-handler.js +0 -8
  167. package/dist/src/agent/messaging/outbound-coordinator.d.ts +5 -14
  168. package/dist/src/agent/messaging/outbound-coordinator.js +4 -9
  169. package/dist/src/agent/middleware/index.d.ts +1 -1
  170. package/dist/src/agent/middleware/self-verify.d.ts +2 -2
  171. package/dist/src/agent/middleware/self-verify.js +7 -7
  172. package/dist/src/agent/orchestration/agent-orchestrator.js +16 -66
  173. package/dist/src/agent/orchestration/run-agent-turn-with-timeout.d.ts +1 -1
  174. package/dist/src/agent/orchestration/run-agent-turn-with-timeout.js +6 -2
  175. package/dist/src/agent/prompt/response-language.d.ts +3 -0
  176. package/dist/src/agent/prompt/response-language.js +11 -0
  177. package/dist/src/agent/prompt/sections/behavior.js +2 -2
  178. package/dist/src/agent/prompt/sections/memory-skills.js +10 -13
  179. package/dist/src/agent/prompt/sections/response-language.d.ts +2 -0
  180. package/dist/src/agent/prompt/sections/response-language.js +13 -0
  181. package/dist/src/agent/prompt/sections/tooling.js +0 -2
  182. package/dist/src/agent/prompt/service-prompt-builder.d.ts +1 -1
  183. package/dist/src/agent/prompt/service-prompt-builder.js +6 -29
  184. package/dist/src/agent/prompt/subagent-context.d.ts +2 -0
  185. package/dist/src/agent/prompt/subagent-context.js +1 -0
  186. package/dist/src/agent/prompt/system-prompt.d.ts +3 -0
  187. package/dist/src/agent/prompt/system-prompt.js +10 -2
  188. package/dist/src/agent/service/direct-turn-helpers.d.ts +3 -2
  189. package/dist/src/agent/service/direct-turn-helpers.js +9 -5
  190. package/dist/src/agent/service/process-direct-one-shot.d.ts +3 -0
  191. package/dist/src/agent/service/process-direct-one-shot.js +4 -1
  192. package/dist/src/agent/service/process-direct-streaming.d.ts +2 -2
  193. package/dist/src/agent/service/process-direct-streaming.js +2 -2
  194. package/dist/src/agent/service.d.ts +7 -9
  195. package/dist/src/agent/service.js +32 -23
  196. package/dist/src/agent/service.types.d.ts +2 -15
  197. package/dist/src/agent/session/index.d.ts +1 -1
  198. package/dist/src/agent/session/session-config-service.d.ts +1 -0
  199. package/dist/src/agent/session/session-config-service.js +14 -0
  200. package/dist/src/agent/session/session-state-bag.d.ts +8 -8
  201. package/dist/src/agent/session/session-state-bag.js +10 -10
  202. package/dist/src/agent/skills/config.js +6 -0
  203. package/dist/src/agent/skills/filesystem-watcher.d.ts +4 -0
  204. package/dist/src/agent/skills/filesystem-watcher.js +16 -7
  205. package/dist/src/agent/skills/index.d.ts +10 -7
  206. package/dist/src/agent/skills/index.js +56 -47
  207. package/dist/src/agent/skills/skill-manage-ops.js +1 -1
  208. package/dist/src/agent/skills/skill-manager.d.ts +5 -2
  209. package/dist/src/agent/skills/skill-manager.js +10 -5
  210. package/dist/src/agent/skills/skill-sources.d.ts +18 -0
  211. package/dist/src/agent/skills/skill-sources.js +143 -0
  212. package/dist/src/agent/skills/types.d.ts +25 -2
  213. package/dist/src/agent/source-context/types.d.ts +1 -1
  214. package/dist/src/agent/source-context/types.js +1 -1
  215. package/dist/src/agent/starter-agents.js +1 -1
  216. package/dist/src/agent/{outcomes → tasks}/execution-verifier.d.ts +3 -0
  217. package/dist/src/agent/{outcomes → tasks}/execution-verifier.js +3 -2
  218. package/dist/src/agent/tasks/task-judge-service.d.ts +31 -0
  219. package/dist/src/agent/tasks/task-judge-service.js +183 -0
  220. package/dist/src/agent/tool-manuals/index.js +1 -1
  221. package/dist/src/agent/tool-manuals/xopc-use.d.ts +1 -1
  222. package/dist/src/agent/tool-manuals/xopc-use.js +253 -118
  223. package/dist/src/agent/tools/apply-patch.d.ts +1 -5
  224. package/dist/src/agent/tools/apply-patch.js +1 -12
  225. package/dist/src/agent/tools/clarify-tool.js +1 -1
  226. package/dist/src/agent/tools/delegate-tool.js +6 -5
  227. package/dist/src/agent/tools/dreaming-tool.d.ts +0 -1
  228. package/dist/src/agent/tools/dreaming-tool.js +48 -80
  229. package/dist/src/agent/tools/exec-command.d.ts +0 -2
  230. package/dist/src/agent/tools/exec-command.js +2 -19
  231. package/dist/src/agent/tools/executor.d.ts +2 -0
  232. package/dist/src/agent/tools/executor.js +18 -11
  233. package/dist/src/agent/tools/factory.d.ts +2 -4
  234. package/dist/src/agent/tools/factory.js +10 -29
  235. package/dist/src/agent/tools/index.d.ts +1 -2
  236. package/dist/src/agent/tools/index.js +2 -3
  237. package/dist/src/agent/tools/managed-job-tool.d.ts +2 -0
  238. package/dist/src/agent/tools/managed-job-tool.js +160 -0
  239. package/dist/src/agent/tools/memory-tool.d.ts +0 -3
  240. package/dist/src/agent/tools/memory-tool.js +14 -36
  241. package/dist/src/agent/tools/tool-manual-tool.js +1 -1
  242. package/dist/src/agent/tools/workflow-tool.d.ts +1 -1
  243. package/dist/src/agent/tools/workflow-tool.js +4 -4
  244. package/dist/src/agent/tools/write.d.ts +0 -2
  245. package/dist/src/agent/tools/write.js +0 -11
  246. package/dist/src/agent/tools/xopc-use-tool.d.ts +5 -4
  247. package/dist/src/agent/tools/xopc-use-tool.js +987 -143
  248. package/dist/src/agent/transcript/thinking-types.d.ts +3 -0
  249. package/dist/src/agent/workflow/builtins/index.js +2 -2
  250. package/dist/src/agent/workflow/index.js +2 -2
  251. package/dist/src/agent/workflow/subagent-runner.js +1 -0
  252. package/dist/src/agent/workflow/workflow-child-tools.js +0 -3
  253. package/dist/src/agent/workspace-runtime/registry.d.ts +5 -4
  254. package/dist/src/agent/workspace-runtime/registry.js +4 -3
  255. package/dist/src/agent-manifest/index.js +3 -3
  256. package/dist/src/agent-manifest/resolver.d.ts +20 -1
  257. package/dist/src/agent-manifest/resolver.js +47 -20
  258. package/dist/src/agent-manifest/schema.d.ts +128 -52
  259. package/dist/src/agent-manifest/schema.js +46 -8
  260. package/dist/src/agent-runtime/index.js +1 -1
  261. package/dist/src/agent-runtime/memory-runtime.d.ts +2 -2
  262. package/dist/src/agent-runtime/runtime-profile.js +1 -1
  263. package/dist/src/ai-assist/text-assist.js +4 -4
  264. package/dist/src/auth/credentials.d.ts +9 -1
  265. package/dist/src/auth/credentials.js +110 -54
  266. package/dist/src/auth/model-credential-store.js +7 -22
  267. package/dist/src/auth/oauth-provider-lock.d.ts +5 -0
  268. package/dist/src/auth/oauth-provider-lock.js +91 -0
  269. package/dist/src/automations/domain/defaults.d.ts +8 -1
  270. package/dist/src/automations/domain/defaults.js +9 -2
  271. package/dist/src/automations/domain/index.js +2 -2
  272. package/dist/src/automations/domain/types.d.ts +48 -8
  273. package/dist/src/automations/domain/validation.d.ts +344 -12
  274. package/dist/src/automations/domain/validation.js +8 -0
  275. package/dist/src/automations/draft/automation-draft-prompt.js +3 -3
  276. package/dist/src/automations/draft/automation-draft-validator.d.ts +63 -1
  277. package/dist/src/automations/draft/automation-draft-validator.js +1 -0
  278. package/dist/src/automations/index.js +3 -3
  279. package/dist/src/automations/service/action-executor.d.ts +2 -2
  280. package/dist/src/automations/service/action-executor.js +165 -35
  281. package/dist/src/automations/service/automation-service.d.ts +4 -0
  282. package/dist/src/automations/service/automation-service.js +207 -28
  283. package/dist/src/automations/storage/automation-run-repository.d.ts +1 -0
  284. package/dist/src/automations/storage/automation-run-repository.js +37 -7
  285. package/dist/src/automations/storage/index.js +2 -2
  286. package/dist/src/browser/providers/cloakbrowser.js +1 -1
  287. package/dist/src/chat-commands/builtins/understanding.d.ts +1 -0
  288. package/dist/src/chat-commands/builtins/understanding.js +91 -0
  289. package/dist/src/chat-commands/context.d.ts +0 -3
  290. package/dist/src/chat-commands/context.js +0 -2
  291. package/dist/src/chat-commands/index.d.ts +1 -2
  292. package/dist/src/chat-commands/index.js +3 -5
  293. package/dist/src/chat-commands/types.d.ts +0 -3
  294. package/dist/src/cli/command-catalog.js +0 -43
  295. package/dist/src/cli/command-loaders.js +0 -1
  296. package/dist/src/cli/command-manifest.js +0 -4
  297. package/dist/src/cli/commands/doctor/checks/database-schema.js +1 -1
  298. package/dist/src/cli/commands/gateway/lifecycle-core.js +1 -1
  299. package/dist/src/cli/commands/gateway/restart-health.d.ts +2 -2
  300. package/dist/src/cli/commands/gateway/restart-health.js +3 -3
  301. package/dist/src/cli/commands/gateway/service.js +4 -4
  302. package/dist/src/cli/commands/onboard/gateway.js +1 -1
  303. package/dist/src/cli/commands/project.js +12 -33
  304. package/dist/src/cli/commands/providers.d.ts +4 -4
  305. package/dist/src/cli/commands/providers.js +16 -16
  306. package/dist/src/cli/commands/search.js +7 -7
  307. package/dist/src/cli/commands/setup-shared/index.d.ts +2 -2
  308. package/dist/src/cli/commands/setup-shared/index.js +2 -2
  309. package/dist/src/cli/commands/setup-shared/output.d.ts +4 -4
  310. package/dist/src/cli/commands/setup-shared/output.js +26 -26
  311. package/dist/src/cli/commands/setup-shared/runner.d.ts +8 -8
  312. package/dist/src/cli/commands/setup-shared/runner.js +9 -9
  313. package/dist/src/cli/commands/setup-shared/types.d.ts +2 -2
  314. package/dist/src/cli/commands/skills.d.ts +7 -0
  315. package/dist/src/cli/commands/skills.js +16 -16
  316. package/dist/src/cli/commands/update.js +1 -1
  317. package/dist/src/cli/commands/voice.d.ts +1 -1
  318. package/dist/src/cli/commands/voice.js +6 -6
  319. package/dist/src/cli/templates.js +1 -1
  320. package/dist/src/cli/utils/oauth-login.js +1 -7
  321. package/dist/src/commands/agents.config.js +2 -18
  322. package/dist/src/config/agent-profile.d.ts +1 -1
  323. package/dist/src/config/agent-profile.js +2 -2
  324. package/dist/src/config/index.js +3 -3
  325. package/dist/src/config/paths.d.ts +0 -3
  326. package/dist/src/config/paths.js +2 -7
  327. package/dist/src/config/schema.d.ts +163 -258
  328. package/dist/src/config/schema.js +10 -115
  329. package/dist/src/config/web-patch.d.ts +0 -29
  330. package/dist/src/config/web-patch.js +2 -69
  331. package/dist/src/connectors/composio-catalog.js +7 -20
  332. package/dist/src/connectors/composio-sessions.js +14 -4
  333. package/dist/src/connectors/composio.d.ts +7 -2
  334. package/dist/src/connectors/composio.js +49 -40
  335. package/dist/src/connectors/connected-source-ingestion.js +2 -1
  336. package/dist/src/connectors/connected-source-normalizers.js +5 -5
  337. package/dist/src/connectors/connector-identity.d.ts +2 -0
  338. package/dist/src/connectors/connector-identity.js +64 -1
  339. package/dist/src/connectors/learning-coordinator.js +34 -15
  340. package/dist/src/connectors/learning-recipes.d.ts +2 -0
  341. package/dist/src/connectors/learning-recipes.js +11 -1
  342. package/dist/src/connectors/source-change-publisher.js +5 -4
  343. package/dist/src/connectors/types.d.ts +16 -0
  344. package/dist/src/daemon/launchd.js +2 -2
  345. package/dist/src/daemon/schtasks.js +1 -1
  346. package/dist/src/daemon/service.js +3 -3
  347. package/dist/src/daemon/systemd.js +1 -1
  348. package/dist/src/daemon/types.d.ts +5 -5
  349. package/dist/src/discussions/analyzer.d.ts +6 -6
  350. package/dist/src/discussions/analyzer.js +32 -22
  351. package/dist/src/discussions/index.d.ts +3 -2
  352. package/dist/src/discussions/index.js +5 -4
  353. package/dist/src/discussions/live-worker.d.ts +5 -3
  354. package/dist/src/discussions/live-worker.js +24 -12
  355. package/dist/src/discussions/{worker.d.ts → organizer-worker.d.ts} +3 -5
  356. package/dist/src/discussions/organizer-worker.js +58 -0
  357. package/dist/src/discussions/organizer.d.ts +22 -0
  358. package/dist/src/discussions/organizer.js +92 -0
  359. package/dist/src/discussions/repository.d.ts +16 -5
  360. package/dist/src/discussions/repository.js +159 -135
  361. package/dist/src/discussions/sealer.d.ts +25 -0
  362. package/dist/src/discussions/sealer.js +116 -0
  363. package/dist/src/discussions/service.d.ts +2 -1
  364. package/dist/src/discussions/service.js +70 -60
  365. package/dist/src/discussions/transcript.js +1 -1
  366. package/dist/src/discussions/types.d.ts +45 -20
  367. package/dist/src/discussions/types.js +4 -2
  368. package/dist/src/extensions/types/core.d.ts +3 -3
  369. package/dist/src/extensions/types/tui.d.ts +2 -2
  370. package/dist/src/extensions/update.d.ts +3 -3
  371. package/dist/src/extensions/update.js +13 -13
  372. package/dist/src/gateway/agent-builtin-tools.d.ts +1 -1
  373. package/dist/src/gateway/agent-builtin-tools.js +0 -1
  374. package/dist/src/gateway/agent-run-relay.d.ts +1 -1
  375. package/dist/src/gateway/agents-admin.js +16 -18
  376. package/dist/src/gateway/capability-presets-admin.d.ts +13 -0
  377. package/dist/src/gateway/capability-presets-admin.js +59 -2
  378. package/dist/src/gateway/chat-limits.d.ts +6 -2
  379. package/dist/src/gateway/chat-limits.js +17 -3
  380. package/dist/src/gateway/chat-stream/thinking-delta-coalescer.js +3 -3
  381. package/dist/src/gateway/dreaming-automation-reconciler.js +13 -12
  382. package/dist/src/gateway/hono/app.js +9 -10
  383. package/dist/src/gateway/hono/index.d.ts +1 -1
  384. package/dist/src/gateway/hono/index.js +2 -2
  385. package/dist/src/gateway/hono/lib/config-payload.d.ts +15 -35
  386. package/dist/src/gateway/hono/lib/config-payload.js +5 -3
  387. package/dist/src/gateway/hono/middleware/strict-rate-limit.d.ts +4 -0
  388. package/dist/src/gateway/hono/middleware/strict-rate-limit.js +8 -1
  389. package/dist/src/gateway/hono/oauth-async.js +1 -7
  390. package/dist/src/gateway/hono/oauth.js +1 -7
  391. package/dist/src/gateway/hono/routes/activity.js +1 -2
  392. package/dist/src/gateway/hono/routes/agent-stream.js +135 -34
  393. package/dist/src/gateway/hono/routes/capability-presets.js +27 -1
  394. package/dist/src/gateway/hono/routes/composer-history.js +1 -1
  395. package/dist/src/gateway/hono/routes/config-patch/misc.d.ts +1 -1
  396. package/dist/src/gateway/hono/routes/config-patch/misc.js +1 -6
  397. package/dist/src/gateway/hono/routes/connectors.js +35 -30
  398. package/dist/src/gateway/hono/routes/deps.d.ts +1 -0
  399. package/dist/src/gateway/hono/routes/discussions.js +13 -3
  400. package/dist/src/gateway/hono/routes/home.d.ts +1 -1
  401. package/dist/src/gateway/hono/routes/home.js +2 -2
  402. package/dist/src/gateway/hono/routes/index.js +2 -4
  403. package/dist/src/gateway/hono/routes/lazy-bundles.js +0 -16
  404. package/dist/src/gateway/hono/routes/media.js +9 -3
  405. package/dist/src/gateway/hono/routes/memory.js +38 -113
  406. package/dist/src/gateway/hono/routes/projects.js +220 -588
  407. package/dist/src/gateway/hono/routes/public-gateway.js +4 -2
  408. package/dist/src/gateway/hono/routes/{work.d.ts → tasks.d.ts} +1 -1
  409. package/dist/src/gateway/hono/routes/tasks.js +343 -0
  410. package/dist/src/gateway/hono/routes/workflows.js +7 -8
  411. package/dist/src/gateway/hono/routes/you.d.ts +1 -1
  412. package/dist/src/gateway/hono/routes/you.js +250 -78
  413. package/dist/src/gateway/hono/sse.d.ts +1 -16
  414. package/dist/src/gateway/hono/sse.js +4 -161
  415. package/dist/src/gateway/index.js +2 -2
  416. package/dist/src/gateway/rate-limit/buckets.d.ts +3 -0
  417. package/dist/src/gateway/rate-limit/buckets.js +12 -0
  418. package/dist/src/gateway/security/csp.d.ts +2 -0
  419. package/dist/src/gateway/security/csp.js +4 -0
  420. package/dist/src/gateway/service/agent-runner.d.ts +32 -13
  421. package/dist/src/gateway/service/agent-runner.js +97 -46
  422. package/dist/src/gateway/service/run-gateway-agent.d.ts +1 -1
  423. package/dist/src/gateway/service/run-gateway-agent.js +27 -42
  424. package/dist/src/gateway/service/session-input-coordinator.d.ts +59 -0
  425. package/dist/src/gateway/service/session-input-coordinator.js +183 -0
  426. package/dist/src/gateway/service/sessions-api.d.ts +1 -0
  427. package/dist/src/gateway/service.d.ts +28 -16
  428. package/dist/src/gateway/service.js +147 -130
  429. package/dist/src/gateway/session-reset-service.js +6 -6
  430. package/dist/src/gateway/user-turn-input.d.ts +0 -1
  431. package/dist/src/i18n/index.d.ts +0 -1
  432. package/dist/src/i18n/index.js +1 -2
  433. package/dist/src/i18n/language-consistency.d.ts +10 -0
  434. package/dist/src/i18n/language-consistency.js +34 -0
  435. package/dist/src/i18n/response-language.d.ts +8 -0
  436. package/dist/src/i18n/response-language.js +17 -0
  437. package/dist/src/i18n/share-tool-bundle.js +2 -2
  438. package/dist/src/mcp/channel-bridge.js +5 -3
  439. package/dist/src/media/store.js +1 -1
  440. package/dist/src/media/types.d.ts +1 -1
  441. package/dist/src/media/uri.js +1 -2
  442. package/dist/src/media-understanding/runner.d.ts +1 -1
  443. package/dist/src/media-understanding/runner.js +9 -9
  444. package/dist/src/media-understanding/types.d.ts +4 -4
  445. package/dist/src/mobile/notification-service.js +16 -21
  446. package/dist/src/mobile/notification-types.d.ts +2 -2
  447. package/dist/src/notes/service.js +1 -1
  448. package/dist/src/notes/types.d.ts +0 -1
  449. package/dist/src/proactive/events/product-event-bridge.js +17 -14
  450. package/dist/src/proactive/execution/context.js +45 -28
  451. package/dist/src/proactive/execution/insight.js +1 -1
  452. package/dist/src/proactive/temporal/worker.js +2 -2
  453. package/dist/src/projects/index.d.ts +0 -1
  454. package/dist/src/projects/index.js +1 -2
  455. package/dist/src/projects/project-loop.d.ts +16 -8
  456. package/dist/src/projects/project-loop.js +41 -48
  457. package/dist/src/projects/project-service.d.ts +14 -4
  458. package/dist/src/projects/project-service.js +18 -10
  459. package/dist/src/projects/project-store.d.ts +36 -3
  460. package/dist/src/projects/project-store.js +116 -14
  461. package/dist/src/projects/types.d.ts +50 -3
  462. package/dist/src/providers/auth-runtime/oauth.js +12 -0
  463. package/dist/src/providers/model-response.d.ts +4 -0
  464. package/dist/src/providers/model-response.js +28 -0
  465. package/dist/src/session/config-types.d.ts +3 -0
  466. package/dist/src/session/index.d.ts +0 -1
  467. package/dist/src/session/index.js +1 -2
  468. package/dist/src/session/init-session-turn.js +6 -6
  469. package/dist/src/session/store.js +4 -4
  470. package/dist/src/session/types.d.ts +1 -6
  471. package/dist/src/share/site-proxy.js +1 -1
  472. package/dist/src/storage/sqlite/config-repository.js +7 -4
  473. package/dist/src/storage/sqlite/connection.js +1 -1
  474. package/dist/src/storage/sqlite/connector-account-repository.d.ts +12 -0
  475. package/dist/src/storage/sqlite/connector-account-repository.js +143 -0
  476. package/dist/src/storage/sqlite/connector-learning-repository.d.ts +5 -2
  477. package/dist/src/storage/sqlite/connector-learning-repository.js +14 -7
  478. package/dist/src/storage/sqlite/connector-repository.js +12 -3
  479. package/dist/src/storage/sqlite/connector-sync-policy-repository.d.ts +4 -3
  480. package/dist/src/storage/sqlite/connector-sync-policy-repository.js +20 -10
  481. package/dist/src/storage/sqlite/dreaming-repository.d.ts +61 -0
  482. package/dist/src/storage/sqlite/dreaming-repository.js +88 -0
  483. package/dist/src/storage/sqlite/index.d.ts +6 -4
  484. package/dist/src/storage/sqlite/index.js +7 -5
  485. package/dist/src/storage/sqlite/memory-readiness-repository.d.ts +7 -0
  486. package/dist/src/storage/sqlite/memory-readiness-repository.js +30 -0
  487. package/dist/src/storage/sqlite/memory-records-repository.d.ts +31 -26
  488. package/dist/src/storage/sqlite/memory-records-repository.js +109 -138
  489. package/dist/src/storage/sqlite/migrations/088_automation_execution_deadlines.sql +5 -0
  490. package/dist/src/storage/sqlite/migrations/089_automation_run_leases.sql +8 -0
  491. package/dist/src/storage/sqlite/migrations/090_outcome_contract_judgment.sql +2 -0
  492. package/dist/src/storage/sqlite/migrations/091_context_allocation.sql +1 -0
  493. package/dist/src/storage/sqlite/migrations/092_outcome_execution_runtime.sql +88 -0
  494. package/dist/src/storage/sqlite/migrations/093_remove_legacy_goals.sql +174 -0
  495. package/dist/src/storage/sqlite/migrations/094_outcome_judgment_and_authority.sql +3 -0
  496. package/dist/src/storage/sqlite/migrations/095_session_input_queue.sql +35 -0
  497. package/dist/src/storage/sqlite/migrations/096_drop_work_intakes.sql +6 -0
  498. package/dist/src/storage/sqlite/migrations/097_work_item_lifecycle.sql +194 -0
  499. package/dist/src/storage/sqlite/migrations/098_discussion_note_documents.sql +99 -0
  500. package/dist/src/storage/sqlite/migrations/099_task_model.sql +500 -0
  501. package/dist/src/storage/sqlite/migrations/100_project_task_taskrun.sql +763 -0
  502. package/dist/src/storage/sqlite/migrations/101_session_response_language.sql +1 -0
  503. package/dist/src/storage/sqlite/migrations/102_session_user_context_mode.sql +2 -0
  504. package/dist/src/storage/sqlite/migrations/103_finalize_structured_memory.sql +3 -0
  505. package/dist/src/storage/sqlite/migrations/104_turn_memory_feedback.sql +77 -0
  506. package/dist/src/storage/sqlite/migrations/105_dreaming_ledger.sql +34 -0
  507. package/dist/src/storage/sqlite/migrations/106_dreaming_run_reproducibility.sql +2 -0
  508. package/dist/src/storage/sqlite/migrations/107_connector_accounts.sql +146 -0
  509. package/dist/src/storage/sqlite/migrations/runner.d.ts +1 -1
  510. package/dist/src/storage/sqlite/migrations/runner.js +37 -5
  511. package/dist/src/storage/sqlite/migrations/runner.ts +44 -3
  512. package/dist/src/storage/sqlite/migrations/types.d.ts +2 -0
  513. package/dist/src/storage/sqlite/migrations/types.ts +2 -0
  514. package/dist/src/storage/sqlite/row-mappers.d.ts +2 -2
  515. package/dist/src/storage/sqlite/row-mappers.js +2 -2
  516. package/dist/src/storage/sqlite/schema.d.ts +3 -1
  517. package/dist/src/storage/sqlite/schema.js +5 -2
  518. package/dist/src/storage/sqlite/schema.sql +76 -61
  519. package/dist/src/storage/sqlite/session-input-repository.d.ts +59 -0
  520. package/dist/src/storage/sqlite/session-input-repository.js +147 -0
  521. package/dist/src/storage/sqlite/session-repository.js +5 -6
  522. package/dist/src/{work → tasks}/attention-governor.d.ts +5 -5
  523. package/dist/src/{work → tasks}/attention-governor.js +3 -4
  524. package/dist/src/tasks/execution-context.d.ts +23 -0
  525. package/dist/src/{work → tasks}/execution-context.js +7 -20
  526. package/dist/src/{work → tasks}/home-query-service.d.ts +43 -26
  527. package/dist/src/{work → tasks}/home-query-service.js +57 -127
  528. package/dist/src/tasks/index.d.ts +20 -0
  529. package/dist/src/tasks/index.js +21 -0
  530. package/dist/src/{work → tasks}/project-monitoring-service.js +1 -1
  531. package/dist/src/{work → tasks}/project-operating-view-service.d.ts +2 -4
  532. package/dist/src/tasks/project-operating-view-service.js +77 -0
  533. package/dist/src/tasks/task-application-service.d.ts +35 -0
  534. package/dist/src/tasks/task-application-service.js +423 -0
  535. package/dist/src/tasks/task-context-assembler.d.ts +36 -0
  536. package/dist/src/tasks/task-context-assembler.js +125 -0
  537. package/dist/src/tasks/task-context-repository.d.ts +52 -0
  538. package/dist/src/tasks/task-context-repository.js +97 -0
  539. package/dist/src/tasks/task-contract-definition.d.ts +10 -0
  540. package/dist/src/{work/outcome-contract-definition.js → tasks/task-contract-definition.js} +7 -5
  541. package/dist/src/tasks/task-contract-planner.d.ts +17 -0
  542. package/dist/src/tasks/task-contract-planner.js +87 -0
  543. package/dist/src/tasks/task-dependency-service.d.ts +21 -0
  544. package/dist/src/tasks/task-dependency-service.js +81 -0
  545. package/dist/src/tasks/task-outbox-dispatcher.d.ts +6 -0
  546. package/dist/src/tasks/task-outbox-dispatcher.js +31 -0
  547. package/dist/src/tasks/task-read-model-projector.d.ts +16 -0
  548. package/dist/src/tasks/task-read-model-projector.js +93 -0
  549. package/dist/src/tasks/task-repository.d.ts +82 -0
  550. package/dist/src/tasks/task-repository.js +185 -0
  551. package/dist/src/{work/outcome-run-coordinator.d.ts → tasks/task-run-coordinator.d.ts} +6 -8
  552. package/dist/src/tasks/task-run-coordinator.js +130 -0
  553. package/dist/src/tasks/task-run-dispatcher.d.ts +11 -0
  554. package/dist/src/tasks/task-run-dispatcher.js +90 -0
  555. package/dist/src/tasks/task-run-repository.d.ts +102 -0
  556. package/dist/src/tasks/task-run-repository.js +312 -0
  557. package/dist/src/tasks/task-signal-service.d.ts +8 -0
  558. package/dist/src/tasks/task-signal-service.js +72 -0
  559. package/dist/src/tasks/task-value-metrics-service.d.ts +4 -0
  560. package/dist/src/tasks/task-value-metrics-service.js +78 -0
  561. package/dist/src/tasks/task-workflow-coordinator.d.ts +5 -0
  562. package/dist/src/tasks/task-workflow-coordinator.js +54 -0
  563. package/dist/src/tui/backends/embedded-backend.d.ts +13 -1
  564. package/dist/src/tui/backends/embedded-backend.js +40 -10
  565. package/dist/src/tui/backends/gateway-sse-backend.d.ts +6 -3
  566. package/dist/src/tui/backends/gateway-sse-backend.js +38 -127
  567. package/dist/src/tui/components/settings-selector.js +0 -20
  568. package/dist/src/tui/components/tui-bottom-bar.d.ts +2 -3
  569. package/dist/src/tui/components/tui-bottom-bar.js +4 -9
  570. package/dist/src/tui/extension-host/runtime-context.js +1 -1
  571. package/dist/src/tui/tui-backend.d.ts +15 -1
  572. package/dist/src/tui/tui-backend.js +10 -1
  573. package/dist/src/tui/tui-command-formatters.js +1 -2
  574. package/dist/src/tui/tui-commands.js +8 -19
  575. package/dist/src/tui/tui-oauth-login.js +1 -7
  576. package/dist/src/tui/tui-picker-overlay.js +1 -0
  577. package/dist/src/tui/tui-picker-services.d.ts +1 -0
  578. package/dist/src/tui/tui-session-actions.js +0 -2
  579. package/dist/src/tui/tui-settings.d.ts +0 -6
  580. package/dist/src/tui/tui-settings.js +0 -10
  581. package/dist/src/tui/tui-skills-autocomplete.d.ts +6 -2
  582. package/dist/src/tui/tui-skills-autocomplete.js +10 -6
  583. package/dist/src/tui/tui-startup-resources.d.ts +3 -1
  584. package/dist/src/tui/tui-startup-resources.js +3 -2
  585. package/dist/src/tui/tui-types.d.ts +1 -4
  586. package/dist/src/tui/tui-types.js +1 -2
  587. package/dist/src/tui/tui.js +92 -72
  588. package/dist/src/tui/xopc-tui-keybindings.d.ts +25 -6
  589. package/dist/src/tui/xopc-tui-keybindings.js +0 -5
  590. package/dist/src/tunnel/frpc-extract.js +1 -1
  591. package/dist/src/user-context/config.d.ts +165 -16
  592. package/dist/src/user-context/config.js +74 -14
  593. package/dist/src/user-context/context-compiler.d.ts +4 -8
  594. package/dist/src/user-context/context-compiler.js +7 -10
  595. package/dist/src/user-context/interaction-state.js +8 -4
  596. package/dist/src/user-context/manual-understanding.d.ts +19 -0
  597. package/dist/src/user-context/manual-understanding.js +69 -0
  598. package/dist/src/user-context/memory-episode-evaluator.d.ts +32 -0
  599. package/dist/src/user-context/memory-episode-evaluator.js +35 -0
  600. package/dist/src/user-context/memory-readiness.d.ts +33 -0
  601. package/dist/src/user-context/memory-readiness.js +41 -0
  602. package/dist/src/user-context/memory-use-audit.js +3 -2
  603. package/dist/src/user-context/projection.d.ts +13 -0
  604. package/dist/src/user-context/projection.js +13 -2
  605. package/dist/src/user-context/relationship-continuity.js +1 -1
  606. package/dist/src/user-context/runtime.d.ts +0 -2
  607. package/dist/src/user-context/runtime.js +1 -10
  608. package/dist/src/user-context/source-recommendations.d.ts +5 -5
  609. package/dist/src/user-context/source-recommendations.js +9 -8
  610. package/dist/src/voice/stt/transcribe-core.js +3 -3
  611. package/dist/src/voice/stt/types.d.ts +2 -2
  612. package/dist/src/voice/tts/speak-core.js +4 -4
  613. package/dist/src/voice/tts/types.d.ts +2 -2
  614. package/dist/src/work-discovery/analyzer.js +5 -5
  615. package/dist/src/work-discovery/service.d.ts +1 -10
  616. package/dist/src/work-discovery/service.js +3 -5
  617. package/dist/src/work-discovery/types.d.ts +1 -1
  618. package/dist/src/workflows/domain/run.d.ts +3 -4
  619. package/dist/src/workflows/draft/workflow-draft-prompt.js +1 -1
  620. package/dist/src/workflows/index.js +1 -1
  621. package/dist/src/workflows/service/workflow-run-service.d.ts +2 -2
  622. package/dist/src/workflows/service/workflow-run-service.js +104 -34
  623. package/dist/src/workflows/service/workflow-run-service.types.d.ts +4 -3
  624. package/dist/src/workflows/service/workflow-session-bridge.js +4 -12
  625. package/dist/src/workflows/store/run-index-store.d.ts +1 -1
  626. package/dist/src/workflows/store/run-index-store.js +10 -8
  627. package/dist/src/workflows/store/run-store.d.ts +1 -1
  628. package/dist/src/workflows/store/run-store.js +2 -2
  629. package/package.json +5 -5
  630. package/dist/gateway/static/root/assets/agents-Baq8Shzy.js +0 -2
  631. package/dist/gateway/static/root/assets/apps-page-d-Y0Jbe1.js +0 -1
  632. package/dist/gateway/static/root/assets/automations-page-CFYOCBlQ.js +0 -6
  633. package/dist/gateway/static/root/assets/browser-settings-page-CGApoYPr.js +0 -8
  634. package/dist/gateway/static/root/assets/browser-workflow-inputs-gs6b5e9-.js +0 -1
  635. package/dist/gateway/static/root/assets/capabilities-settings-panel-BC-8n4Hl.js +0 -7
  636. package/dist/gateway/static/root/assets/capability-presets-api-BTKhPoDC.js +0 -1
  637. package/dist/gateway/static/root/assets/capability-presets-settings-panel-D7WQ0oBN.js +0 -1
  638. package/dist/gateway/static/root/assets/channels-settings-DysELlO_.js +0 -1
  639. package/dist/gateway/static/root/assets/channels-status-swr-BAC-R8IK.js +0 -1
  640. package/dist/gateway/static/root/assets/connectors-page-QH-0WnOo.js +0 -2
  641. package/dist/gateway/static/root/assets/desktop-pet-Dwml8znf.js +0 -1
  642. package/dist/gateway/static/root/assets/dreaming-scene-BHMRVEUS.js +0 -4585
  643. package/dist/gateway/static/root/assets/dreaming-settings-CUQxGnDf.js +0 -3
  644. package/dist/gateway/static/root/assets/format-cron-label-arqgGlVV.js +0 -1
  645. package/dist/gateway/static/root/assets/goals-settings-Dj0ao2qA.js +0 -1
  646. package/dist/gateway/static/root/assets/heartbeat-settings-CTI2nPKa.js +0 -1
  647. package/dist/gateway/static/root/assets/index-B0Tdge_q.css +0 -1
  648. package/dist/gateway/static/root/assets/index-BDzspHrg.js +0 -224
  649. package/dist/gateway/static/root/assets/local-app-workbench-page-m8CTSGix.js +0 -2
  650. package/dist/gateway/static/root/assets/logs-page-DmH7Tk4k.js +0 -7
  651. package/dist/gateway/static/root/assets/messages-DYqBwJAK.js +0 -3
  652. package/dist/gateway/static/root/assets/notes-workbench-C4jDBVBN.js +0 -4
  653. package/dist/gateway/static/root/assets/outcome-detail-page-DNRfeLZp.js +0 -1
  654. package/dist/gateway/static/root/assets/product-delivery-BVG-eWQO.js +0 -1
  655. package/dist/gateway/static/root/assets/project-detail-page-D7anK-eu.js +0 -1
  656. package/dist/gateway/static/root/assets/projects-page-BePESKWy.js +0 -1
  657. package/dist/gateway/static/root/assets/remote-access-hub-CHrzBKIs.js +0 -1
  658. package/dist/gateway/static/root/assets/save-bar-controls-BsPf5Gkk.js +0 -1
  659. package/dist/gateway/static/root/assets/schedule-field-kAytH7mq.js +0 -1
  660. package/dist/gateway/static/root/assets/sessions-page-He5YAczL.js +0 -1
  661. package/dist/gateway/static/root/assets/settings-advanced-gate-2eAC9GCP.js +0 -1
  662. package/dist/gateway/static/root/assets/settings-page-BR6Ss0bK.js +0 -1
  663. package/dist/gateway/static/root/assets/setup-status-panel-moT-D-ia.js +0 -1
  664. package/dist/gateway/static/root/assets/shares-settings-X49zY21H.js +0 -1
  665. package/dist/gateway/static/root/assets/skill-reload-api-CjpnFfOH.js +0 -1
  666. package/dist/gateway/static/root/assets/skills-page-DEwfSOUE.js +0 -2
  667. package/dist/gateway/static/root/assets/system-settings-panel-XdY8eyYf.js +0 -1
  668. package/dist/gateway/static/root/assets/time-picker-UghsQu_I.js +0 -1
  669. package/dist/gateway/static/root/assets/use-channel-catalog-BWDtfNvQ.js +0 -1
  670. package/dist/gateway/static/root/assets/user-context-page-BtNBEtKj.js +0 -1
  671. package/dist/gateway/static/root/assets/work-copy-hQmivDgT.js +0 -1
  672. package/dist/gateway/static/root/assets/work-discovery-page-CkDOVZBr.js +0 -1
  673. package/dist/gateway/static/root/assets/work-item-detail-page-CqvkcFcR.js +0 -1
  674. package/dist/gateway/static/root/assets/work-page-BL8TZW4Z.js +0 -3
  675. package/dist/gateway/static/root/assets/workflows-page-BgsdRu3_.js +0 -11
  676. package/dist/packages/gateway-contract/src/outcomes.js +0 -137
  677. package/dist/packages/gateway-contract/src/work-intake.js +0 -85
  678. package/dist/src/agent/goals/checklist-judge.d.ts +0 -48
  679. package/dist/src/agent/goals/checklist-judge.js +0 -237
  680. package/dist/src/agent/goals/checklist-types.d.ts +0 -21
  681. package/dist/src/agent/goals/checklist-types.js +0 -24
  682. package/dist/src/agent/goals/evaluate-turn.d.ts +0 -29
  683. package/dist/src/agent/goals/evaluate-turn.js +0 -209
  684. package/dist/src/agent/goals/goal-locale.d.ts +0 -26
  685. package/dist/src/agent/goals/goal-locale.js +0 -61
  686. package/dist/src/agent/goals/judge.d.ts +0 -41
  687. package/dist/src/agent/goals/judge.js +0 -176
  688. package/dist/src/agent/goals/persistent-goal-apis.d.ts +0 -15
  689. package/dist/src/agent/goals/persistent-goal-apis.js +0 -1
  690. package/dist/src/agent/goals/persistent-goal-service.d.ts +0 -93
  691. package/dist/src/agent/goals/persistent-goal-service.js +0 -128
  692. package/dist/src/agent/goals/post-turn.d.ts +0 -28
  693. package/dist/src/agent/goals/post-turn.js +0 -187
  694. package/dist/src/agent/goals/state.d.ts +0 -46
  695. package/dist/src/agent/goals/state.js +0 -80
  696. package/dist/src/agent/memory/builtin-memory-store.d.ts +0 -54
  697. package/dist/src/agent/memory/builtin-memory-store.js +0 -315
  698. package/dist/src/agent/memory/dreaming/events.d.ts +0 -36
  699. package/dist/src/agent/memory/dreaming/events.js +0 -42
  700. package/dist/src/agent/memory/dreaming/last-run.d.ts +0 -80
  701. package/dist/src/agent/memory/dreaming/last-run.js +0 -96
  702. package/dist/src/agent/memory/dreaming/short-term-store.d.ts +0 -75
  703. package/dist/src/agent/memory/dreaming/short-term-store.js +0 -273
  704. package/dist/src/agent/outcomes/execution-evaluation.d.ts +0 -20
  705. package/dist/src/agent/outcomes/execution-evaluation.js +0 -48
  706. package/dist/src/agent/prompt/memory/index.d.ts +0 -23
  707. package/dist/src/agent/prompt/memory/index.js +0 -101
  708. package/dist/src/agent/tools/curated-memory-tool.d.ts +0 -3
  709. package/dist/src/agent/tools/curated-memory-tool.js +0 -174
  710. package/dist/src/agent/tools/goal-evidence-recorder.d.ts +0 -6
  711. package/dist/src/agent/tools/goal-evidence-recorder.js +0 -32
  712. package/dist/src/agent/tools/goal-tool.d.ts +0 -29
  713. package/dist/src/agent/tools/goal-tool.js +0 -136
  714. package/dist/src/chat-commands/builtins/goal.d.ts +0 -4
  715. package/dist/src/chat-commands/builtins/goal.js +0 -122
  716. package/dist/src/chat-commands/builtins/subgoal.d.ts +0 -4
  717. package/dist/src/chat-commands/builtins/subgoal.js +0 -117
  718. package/dist/src/cli/commands/goal.d.ts +0 -4
  719. package/dist/src/cli/commands/goal.js +0 -235
  720. package/dist/src/discussions/pipeline.d.ts +0 -33
  721. package/dist/src/discussions/pipeline.js +0 -205
  722. package/dist/src/discussions/worker.js +0 -74
  723. package/dist/src/gateway/hono/routes/dreaming.d.ts +0 -3
  724. package/dist/src/gateway/hono/routes/dreaming.js +0 -323
  725. package/dist/src/gateway/hono/routes/execution-receipts.d.ts +0 -3
  726. package/dist/src/gateway/hono/routes/execution-receipts.js +0 -163
  727. package/dist/src/gateway/hono/routes/goals.d.ts +0 -4
  728. package/dist/src/gateway/hono/routes/goals.js +0 -786
  729. package/dist/src/gateway/hono/routes/work.js +0 -207
  730. package/dist/src/goals/goal-notifications.d.ts +0 -31
  731. package/dist/src/goals/goal-notifications.js +0 -157
  732. package/dist/src/goals/goal-queue-store.d.ts +0 -18
  733. package/dist/src/goals/goal-queue-store.js +0 -133
  734. package/dist/src/goals/goal-queue-types.d.ts +0 -42
  735. package/dist/src/goals/goal-queue-types.js +0 -1
  736. package/dist/src/goals/goal-runner.d.ts +0 -17
  737. package/dist/src/goals/goal-runner.js +0 -153
  738. package/dist/src/goals/goal-service.d.ts +0 -87
  739. package/dist/src/goals/goal-service.js +0 -323
  740. package/dist/src/goals/goal-store.d.ts +0 -44
  741. package/dist/src/goals/goal-store.js +0 -472
  742. package/dist/src/goals/goal-workflow-judge.d.ts +0 -13
  743. package/dist/src/goals/goal-workflow-judge.js +0 -145
  744. package/dist/src/goals/index.d.ts +0 -10
  745. package/dist/src/goals/index.js +0 -7
  746. package/dist/src/goals/types.d.ts +0 -136
  747. package/dist/src/goals/types.js +0 -1
  748. package/dist/src/i18n/goals-bundle.d.ts +0 -35
  749. package/dist/src/i18n/goals-bundle.js +0 -61
  750. package/dist/src/i18n/locales/goals.en.js +0 -36
  751. package/dist/src/i18n/locales/goals.zh.js +0 -35
  752. package/dist/src/projects/goal-bind.d.ts +0 -4
  753. package/dist/src/projects/goal-bind.js +0 -38
  754. package/dist/src/session/abort-cutoff.d.ts +0 -6
  755. package/dist/src/session/abort-cutoff.js +0 -8
  756. package/dist/src/storage/sqlite/execution-receipt-repository.d.ts +0 -146
  757. package/dist/src/storage/sqlite/execution-receipt-repository.js +0 -235
  758. package/dist/src/storage/sqlite/memory-index-repository.d.ts +0 -18
  759. package/dist/src/storage/sqlite/memory-index-repository.js +0 -136
  760. package/dist/src/tui/tui-follow-up-queue.d.ts +0 -9
  761. package/dist/src/tui/tui-follow-up-queue.js +0 -16
  762. package/dist/src/work/execution-context.d.ts +0 -16
  763. package/dist/src/work/index.d.ts +0 -14
  764. package/dist/src/work/index.js +0 -15
  765. package/dist/src/work/outcome-contract-definition.d.ts +0 -8
  766. package/dist/src/work/outcome-execution-service.d.ts +0 -27
  767. package/dist/src/work/outcome-execution-service.js +0 -60
  768. package/dist/src/work/outcome-projection-service.d.ts +0 -7
  769. package/dist/src/work/outcome-projection-service.js +0 -51
  770. package/dist/src/work/outcome-receipt-service.d.ts +0 -13
  771. package/dist/src/work/outcome-receipt-service.js +0 -55
  772. package/dist/src/work/outcome-repository.d.ts +0 -50
  773. package/dist/src/work/outcome-repository.js +0 -112
  774. package/dist/src/work/outcome-run-coordinator.js +0 -117
  775. package/dist/src/work/project-operating-view-service.js +0 -46
  776. package/dist/src/work/work-intake-repository.d.ts +0 -49
  777. package/dist/src/work/work-intake-repository.js +0 -97
  778. package/dist/src/work/work-intake-service.d.ts +0 -26
  779. package/dist/src/work/work-intake-service.js +0 -171
  780. package/dist/src/work/work-value-metrics-service.d.ts +0 -4
  781. package/dist/src/work/work-value-metrics-service.js +0 -88
  782. package/dist/src/work-items/agent-context.d.ts +0 -7
  783. package/dist/src/work-items/agent-context.js +0 -73
  784. package/dist/src/work-items/index.d.ts +0 -5
  785. package/dist/src/work-items/index.js +0 -5
  786. package/dist/src/work-items/types.d.ts +0 -112
  787. package/dist/src/work-items/types.js +0 -1
  788. package/dist/src/work-items/work-item-service.d.ts +0 -36
  789. package/dist/src/work-items/work-item-service.js +0 -281
  790. package/dist/src/work-items/work-item-store.d.ts +0 -22
  791. package/dist/src/work-items/work-item-store.js +0 -313
  792. package/dist/src/work-items/work-item-workflow-judge.d.ts +0 -8
  793. package/dist/src/work-items/work-item-workflow-judge.js +0 -48
  794. /package/dist/src/{work → tasks}/project-monitoring-service.d.ts +0 -0
@@ -1,9 +1,10 @@
1
1
  import { __esmMin } from "../../_virtual/_rolldown/runtime.js";
2
2
  import { z } from "zod";
3
3
  //#region src/agent-manifest/schema.ts
4
- var IdSchema, DEFAULT_CAPABILITY_PRESET_ID, ManifestModelRoleSchema, AgentToolModelSchema, ModelPolicySchema, ModelPolicyPatchSchema, ToolModeSchema, ToolScopeSchema, ToolPolicySchema, ToolPolicySetSchema, SkillPolicySchema, WorkflowPolicySchema, BoundaryPolicySchema, WorkspacePolicySchema, RuntimePolicySchema, PromptPolicySchema, AgentIdentitySchema, AgentResponsibilitiesSchema, AgentManifestSchema, AgentConfigEntrySchema, CapabilityPresetSchema;
4
+ var IdSchema, LockPathSchema, DEFAULT_CAPABILITY_PRESET_ID, ManifestModelRoleSchema, AgentToolModelSchema, ModelPolicySchema, ModelPolicyPatchSchema, ToolModeSchema, ToolScopeSchema, ToolPolicySchema, ToolPolicySetSchema, ToolPolicySetPatchSchema, SkillPolicySchema, SkillPolicyPatchSchema, WorkflowPolicySchema, WorkflowPolicyPatchSchema, BoundaryPolicySchema, BoundaryPolicyPatchSchema, WorkspacePolicySchema, RuntimePolicySchema, PromptPolicySchema, AgentIdentitySchema, AgentResponsibilitiesSchema, AgentManifestSchema, AgentConfigEntrySchema, CapabilityPresetSchema;
5
5
  var init_schema = __esmMin((() => {
6
6
  IdSchema = z.string().regex(/^[a-z][a-z0-9_-]{0,63}$/);
7
+ LockPathSchema = z.string().regex(/^(models|tools|skills|workflows|boundaries|runtime)(?:\.[^.\s]+)*$/, "lock path must target a capability policy field");
7
8
  DEFAULT_CAPABILITY_PRESET_ID = "default";
8
9
  ManifestModelRoleSchema = z.object({
9
10
  model: z.string().min(1),
@@ -101,6 +102,13 @@ var init_schema = __esmMin((() => {
101
102
  tools: z.record(z.string().min(1), ToolPolicySchema).optional()
102
103
  }).strict().optional()
103
104
  }).strict().default({ builtin: {} });
105
+ ToolPolicySetPatchSchema = z.object({
106
+ builtin: z.record(z.string().min(1), ToolPolicySchema).optional(),
107
+ mcp: z.object({
108
+ servers: z.record(z.string().min(1), ToolPolicySchema).optional(),
109
+ tools: z.record(z.string().min(1), ToolPolicySchema).optional()
110
+ }).strict().optional()
111
+ }).strict();
104
112
  SkillPolicySchema = z.object({
105
113
  mode: z.enum([
106
114
  "all",
@@ -111,6 +119,16 @@ var init_schema = __esmMin((() => {
111
119
  allow: z.array(z.string().min(1)).optional(),
112
120
  deny: z.array(z.string().min(1)).optional()
113
121
  }).strict().default({ mode: "all" });
122
+ SkillPolicyPatchSchema = z.object({
123
+ mode: z.enum([
124
+ "all",
125
+ "allowlist",
126
+ "denylist",
127
+ "off"
128
+ ]),
129
+ allow: z.array(z.string().min(1)).optional(),
130
+ deny: z.array(z.string().min(1)).optional()
131
+ }).strict();
114
132
  WorkflowPolicySchema = z.object({
115
133
  default: z.string().min(1).optional(),
116
134
  allowed: z.array(z.string().min(1)).optional(),
@@ -119,6 +137,7 @@ var init_schema = __esmMin((() => {
119
137
  workflow: z.string().min(1)
120
138
  }).strict()).optional()
121
139
  }).strict().default({});
140
+ WorkflowPolicyPatchSchema = WorkflowPolicySchema.removeDefault();
122
141
  BoundaryPolicySchema = z.object({
123
142
  requiresConfirmation: z.array(z.string().min(1)).default([]),
124
143
  forbidden: z.array(z.string().min(1)).default([]),
@@ -128,6 +147,11 @@ var init_schema = __esmMin((() => {
128
147
  forbidden: [],
129
148
  escalation: []
130
149
  });
150
+ BoundaryPolicyPatchSchema = z.object({
151
+ requiresConfirmation: z.array(z.string().min(1)).optional(),
152
+ forbidden: z.array(z.string().min(1)).optional(),
153
+ escalation: z.array(z.string().min(1)).optional()
154
+ }).strict();
131
155
  WorkspacePolicySchema = z.object({ root: z.string().min(1) }).strict();
132
156
  RuntimePolicySchema = z.object({
133
157
  maxTurns: z.number().int().positive().optional(),
@@ -163,7 +187,21 @@ var init_schema = __esmMin((() => {
163
187
  runtime: RuntimePolicySchema,
164
188
  prompt: PromptPolicySchema
165
189
  }).strict();
166
- AgentConfigEntrySchema = AgentManifestSchema.extend({ models: ModelPolicySchema.optional() }).strict();
190
+ AgentConfigEntrySchema = z.object({
191
+ id: IdSchema,
192
+ enabled: z.boolean().default(true),
193
+ extends: z.array(IdSchema).optional(),
194
+ identity: AgentIdentitySchema,
195
+ responsibilities: AgentResponsibilitiesSchema,
196
+ workspace: WorkspacePolicySchema,
197
+ models: ModelPolicyPatchSchema.optional(),
198
+ tools: ToolPolicySetPatchSchema.optional(),
199
+ skills: SkillPolicyPatchSchema.optional(),
200
+ workflows: WorkflowPolicyPatchSchema.optional(),
201
+ boundaries: BoundaryPolicyPatchSchema.optional(),
202
+ runtime: RuntimePolicySchema,
203
+ prompt: PromptPolicySchema
204
+ }).strict();
167
205
  CapabilityPresetSchema = z.object({
168
206
  id: IdSchema,
169
207
  name: z.string().min(1),
@@ -171,14 +209,14 @@ var init_schema = __esmMin((() => {
171
209
  version: z.number().int().positive().default(1),
172
210
  extends: z.array(IdSchema).optional(),
173
211
  models: ModelPolicyPatchSchema.optional(),
174
- tools: ToolPolicySetSchema.optional(),
175
- skills: SkillPolicySchema.optional(),
176
- workflows: WorkflowPolicySchema.optional(),
177
- boundaries: BoundaryPolicySchema.optional(),
212
+ tools: ToolPolicySetPatchSchema.optional(),
213
+ skills: SkillPolicyPatchSchema.optional(),
214
+ workflows: WorkflowPolicyPatchSchema.optional(),
215
+ boundaries: BoundaryPolicyPatchSchema.optional(),
178
216
  runtime: RuntimePolicySchema,
179
- locks: z.array(z.string().min(1)).optional()
217
+ locks: z.array(LockPathSchema).optional()
180
218
  }).strict();
181
219
  }));
182
220
  //#endregion
183
221
  init_schema();
184
- export { AgentConfigEntrySchema, AgentIdentitySchema, AgentManifestSchema, AgentResponsibilitiesSchema, AgentToolModelSchema, BoundaryPolicySchema, CapabilityPresetSchema, DEFAULT_CAPABILITY_PRESET_ID, ManifestModelRoleSchema, ModelPolicyPatchSchema, ModelPolicySchema, PromptPolicySchema, RuntimePolicySchema, SkillPolicySchema, ToolModeSchema, ToolPolicySchema, ToolPolicySetSchema, ToolScopeSchema, WorkflowPolicySchema, WorkspacePolicySchema, init_schema };
222
+ export { AgentConfigEntrySchema, AgentIdentitySchema, AgentManifestSchema, AgentResponsibilitiesSchema, AgentToolModelSchema, BoundaryPolicyPatchSchema, BoundaryPolicySchema, CapabilityPresetSchema, DEFAULT_CAPABILITY_PRESET_ID, ManifestModelRoleSchema, ModelPolicyPatchSchema, ModelPolicySchema, PromptPolicySchema, RuntimePolicySchema, SkillPolicyPatchSchema, SkillPolicySchema, ToolModeSchema, ToolPolicySchema, ToolPolicySetPatchSchema, ToolPolicySetSchema, ToolScopeSchema, WorkflowPolicyPatchSchema, WorkflowPolicySchema, WorkspacePolicySchema, init_schema };
@@ -1,7 +1,7 @@
1
- import { buildMemoryRuntime } from "./memory-runtime.js";
2
1
  import { checkBoundary } from "./boundary-guard.js";
3
2
  import { resolveModelRole } from "./model-router.js";
4
3
  import { buildRuntimeToolRegistry } from "./tool-registry.js";
4
+ import { buildMemoryRuntime } from "./memory-runtime.js";
5
5
  import { resolveWorkflow, validateWorkflowForRuntime } from "./workflow-runtime.js";
6
6
  import { buildAgentRuntimeProfile } from "./runtime-profile.js";
7
7
  import { appendAgentRunEvent, createAgentRunTrace, finishAgentRunTrace, hashEffectiveManifest } from "./run-trace.js";
@@ -1,6 +1,6 @@
1
1
  import type { UserContextConfig } from '../user-context/config.js';
2
- export type MemorySource = 'session' | 'userProfile' | 'agentProfile' | 'curated' | 'workspace' | 'connectedSources';
3
- export type MemoryWriteTarget = 'userProfile' | 'agentProfile' | 'curated' | 'workspace';
2
+ export type MemorySource = 'session' | 'userProfile' | 'agentProfile' | 'understanding' | 'workspace' | 'connectedSources';
3
+ export type MemoryWriteTarget = 'userProfile' | 'agentProfile' | 'understanding' | 'workspace';
4
4
  export type MemoryWriteDecision = 'allow' | 'confirm' | 'deny';
5
5
  export interface MemoryCandidate {
6
6
  target: MemoryWriteTarget;
@@ -1,9 +1,9 @@
1
1
  import { buildAgentManifestPromptSection } from "../agent-manifest/prompt.js";
2
2
  import "../agent-manifest/index.js";
3
- import { buildMemoryRuntime } from "./memory-runtime.js";
4
3
  import { checkBoundary } from "./boundary-guard.js";
5
4
  import { resolveModelRole } from "./model-router.js";
6
5
  import { buildRuntimeToolRegistry } from "./tool-registry.js";
6
+ import { buildMemoryRuntime } from "./memory-runtime.js";
7
7
  import { resolveWorkflow, validateWorkflowForRuntime } from "./workflow-runtime.js";
8
8
  //#region src/agent-runtime/runtime-profile.ts
9
9
  function buildAgentRuntimeProfile(params) {
@@ -3,7 +3,7 @@ import { init_logger } from "../utils/logger.js";
3
3
  import { getDefaultModelSync, init_providers, resolveModel } from "../providers/index.js";
4
4
  import { createExtensionAwareStreamFn } from "../providers/extension-stream-bridge.js";
5
5
  import { isLocalModelBaseUrl, resolveModelCallApiKey, resolveModelCallOptions } from "../providers/model-call.js";
6
- import { getAssistantMessageErrorReason, stripCodeFences } from "../agent/goals/judge.js";
6
+ import { getAssistantMessageErrorReason, stripCodeFences } from "../providers/model-response.js";
7
7
  //#region src/ai-assist/text-assist.ts
8
8
  init_providers();
9
9
  init_logger();
@@ -39,7 +39,7 @@ const SCENARIOS = {
39
39
  },
40
40
  "cron.workflowGoal": {
41
41
  id: "cron.workflowGoal",
42
- system: "You rewrite goals for workflow runs triggered by cron jobs. The workflow already defines the procedure; the field should define the desired outcome.",
42
+ system: "You rewrite goals for workflow runs triggered by cron jobs. The workflow already defines the procedure; the field should define the desired task.",
43
43
  userGuidance: [
44
44
  "Make the goal concrete, bounded, and easy to verify.",
45
45
  "Include success criteria and important constraints when they are implied by the input or context.",
@@ -67,7 +67,7 @@ const SCENARIOS = {
67
67
  },
68
68
  "workflow.goal": {
69
69
  id: "workflow.goal",
70
- system: "You rewrite goals for workflow runs started manually by a user. The workflow already defines the procedure; the goal defines the desired outcome for this run.",
70
+ system: "You rewrite goals for workflow runs started manually by a user. The workflow already defines the procedure; the goal defines the desired task for this run.",
71
71
  userGuidance: [
72
72
  "Make the goal concrete, bounded, and easy to verify.",
73
73
  "Include success criteria and important constraints when implied by the input or workflow context.",
@@ -95,7 +95,7 @@ const SCENARIOS = {
95
95
  },
96
96
  "automation.workflowGoal": {
97
97
  id: "automation.workflowGoal",
98
- system: "You rewrite goals for workflow runs triggered by automations. The workflow defines the procedure; the goal defines the desired outcome.",
98
+ system: "You rewrite goals for workflow runs triggered by automations. The workflow defines the procedure; the goal defines the desired task.",
99
99
  userGuidance: [
100
100
  "Make the goal concrete, bounded, and easy to verify after the run.",
101
101
  "Include success criteria and important constraints when implied by the input or context.",
@@ -1,4 +1,5 @@
1
1
  import type { Config } from '../config/schema.js';
2
+ import type { OAuthCredentials } from './oauth/types.js';
2
3
  export type CredentialType = 'api_key' | 'oauth';
3
4
  export interface ApiKeyProfile {
4
5
  type: 'api_key';
@@ -17,6 +18,7 @@ export interface OAuthToken {
17
18
  createdAt: string;
18
19
  updatedAt: string;
19
20
  }
21
+ type OAuthTokenInput = Omit<OAuthToken, 'type' | 'provider' | 'updatedAt'> & Record<string, unknown>;
20
22
  export type CredentialProfile = ApiKeyProfile;
21
23
  export interface AuthProfilesFile {
22
24
  version: number;
@@ -77,6 +79,7 @@ export declare class CredentialResolver {
77
79
  * Load OAuth token for a provider.
78
80
  */
79
81
  loadOAuthToken(provider: string): Promise<OAuthToken | null>;
82
+ private hasUsableOAuthTokenRecord;
80
83
  /**
81
84
  * Load the raw OAuth token record, including expired tokens for status UIs.
82
85
  */
@@ -88,10 +91,14 @@ export declare class CredentialResolver {
88
91
  hasAccess: boolean;
89
92
  hasRefresh: boolean;
90
93
  }>>;
94
+ /**
95
+ * Save raw provider OAuth credentials without converting them to an API key representation.
96
+ */
97
+ saveOAuthCredentials(provider: string, credentials: OAuthCredentials): Promise<void>;
91
98
  /**
92
99
  * Save OAuth token for a provider.
93
100
  */
94
- saveOAuthToken(provider: string, token: Omit<OAuthToken, 'type' | 'provider' | 'updatedAt'>): Promise<void>;
101
+ saveOAuthToken(provider: string, token: OAuthTokenInput): Promise<void>;
95
102
  /**
96
103
  * Delete the OAuth token persisted for a provider.
97
104
  */
@@ -114,3 +121,4 @@ export declare class CredentialResolver {
114
121
  export declare function getCredentialResolver(options?: CredentialResolverOptions): CredentialResolver;
115
122
  export declare function resolveApiKey(provider: string, options?: CredentialResolverOptions): Promise<string | null>;
116
123
  export declare function hasCredentials(provider: string, options?: CredentialResolverOptions): Promise<boolean>;
124
+ export {};
@@ -5,9 +5,37 @@ import { init_paths, resolveAgentAuthProfilesPath, resolveAuthProfilesPath, reso
5
5
  import { init_write_file_atomic, writeTextAtomic } from "../infra/write-file-atomic.js";
6
6
  import { getOAuthProviderDefinition, init_registry } from "./oauth/registry.js";
7
7
  import { getApiKeyFromEnv, init_env_keys } from "../providers/env-keys.js";
8
+ import { init_oauth_provider_lock, withOAuthProviderLock } from "./oauth-provider-lock.js";
8
9
  import { dirname, join } from "path";
9
10
  import { mkdir, readFile, readdir, rm } from "fs/promises";
10
11
  //#region src/auth/credentials.ts
12
+ function toOAuthCredentials(token) {
13
+ const { type: _type, provider: _provider, expiresAt, createdAt: _createdAt, updatedAt: _updatedAt, ...providerFields } = token;
14
+ return {
15
+ ...providerFields,
16
+ access: token.access,
17
+ refresh: token.refresh ?? "",
18
+ expires: expiresAt ?? Number.MAX_SAFE_INTEGER
19
+ };
20
+ }
21
+ function normalizeLegacyOAuthToken(token) {
22
+ if (token.provider !== "google-gemini-cli" && token.provider !== "google-antigravity") return token;
23
+ let access = token.access;
24
+ let projectId = token.projectId;
25
+ for (let depth = 0; depth < 5; depth += 1) try {
26
+ const legacy = JSON.parse(access);
27
+ if (typeof legacy.token !== "string" || !legacy.token) break;
28
+ access = legacy.token;
29
+ if (typeof projectId !== "string" && typeof legacy.projectId === "string") projectId = legacy.projectId;
30
+ } catch {
31
+ break;
32
+ }
33
+ return access === token.access ? token : {
34
+ ...token,
35
+ access,
36
+ projectId
37
+ };
38
+ }
11
39
  function getCredentialResolver(options) {
12
40
  if (options) return new CredentialResolver(options);
13
41
  defaultResolver ??= new CredentialResolver();
@@ -19,16 +47,16 @@ async function resolveApiKey(provider, options) {
19
47
  async function hasCredentials(provider, options) {
20
48
  return getCredentialResolver(options).hasCredentials(provider);
21
49
  }
22
- var log, warnedExpiredOAuthTokens, oauthRefreshes, CredentialResolver, defaultResolver;
50
+ var log, warnedExpiredOAuthTokens, CredentialResolver, defaultResolver;
23
51
  var init_credentials = __esmMin((() => {
24
52
  init_write_file_atomic();
25
53
  init_logger();
26
54
  init_env_keys();
27
55
  init_paths();
28
56
  init_registry();
57
+ init_oauth_provider_lock();
29
58
  log = createLogger("Credentials");
30
59
  warnedExpiredOAuthTokens = /* @__PURE__ */ new Set();
31
- oauthRefreshes = /* @__PURE__ */ new Map();
32
60
  CredentialResolver = class {
33
61
  credentialsDir;
34
62
  agentId;
@@ -45,7 +73,11 @@ var init_credentials = __esmMin((() => {
45
73
  */
46
74
  async resolveApiKey(provider) {
47
75
  const normalizedProvider = provider.toLowerCase();
48
- if (getOAuthProviderDefinition(normalizedProvider)?.oauthOnly) return (await this.loadOAuthToken(normalizedProvider))?.access ?? null;
76
+ const oauthDefinition = getOAuthProviderDefinition(normalizedProvider);
77
+ if (oauthDefinition?.oauthOnly) {
78
+ const token = await this.loadOAuthToken(normalizedProvider);
79
+ return token ? oauthDefinition.provider.getApiKey(toOAuthCredentials(token)) : null;
80
+ }
49
81
  if (this.agentId) {
50
82
  const agentKey = await this.loadFromAgentCredentials(normalizedProvider);
51
83
  if (agentKey) {
@@ -70,7 +102,7 @@ var init_credentials = __esmMin((() => {
70
102
  provider,
71
103
  source: "oauth"
72
104
  }, "Resolved API key from OAuth token");
73
- return oauthToken.access;
105
+ return oauthDefinition ? oauthDefinition.provider.getApiKey(toOAuthCredentials(oauthToken)) : oauthToken.access;
74
106
  }
75
107
  const envKey = getApiKeyFromEnv(normalizedProvider);
76
108
  if (envKey) {
@@ -86,19 +118,19 @@ var init_credentials = __esmMin((() => {
86
118
  * Check if a provider has credentials configured
87
119
  */
88
120
  async hasCredentials(provider) {
89
- return await this.resolveApiKey(provider) !== null;
121
+ return await this.resolveApiKeySource(provider) !== null;
90
122
  }
91
123
  /**
92
124
  * Which step in {@link resolveApiKey} would supply the key (no secret material).
93
125
  */
94
126
  async resolveApiKeySource(provider) {
95
127
  const normalizedProvider = provider.toLowerCase();
96
- if (getOAuthProviderDefinition(normalizedProvider)?.oauthOnly) return await this.loadOAuthToken(normalizedProvider) ? "oauth" : null;
128
+ if (getOAuthProviderDefinition(normalizedProvider)?.oauthOnly) return await this.hasUsableOAuthTokenRecord(normalizedProvider) ? "oauth" : null;
97
129
  if (this.agentId) {
98
130
  if (await this.loadFromAgentCredentials(normalizedProvider)) return "agent";
99
131
  }
100
132
  if (await this.loadFromGlobalCredentials(normalizedProvider)) return "global";
101
- if (await this.loadOAuthToken(normalizedProvider)) return "oauth";
133
+ if (await this.hasUsableOAuthTokenRecord(normalizedProvider)) return "oauth";
102
134
  if (getApiKeyFromEnv(normalizedProvider)) return "env";
103
135
  return null;
104
136
  }
@@ -169,42 +201,42 @@ var init_credentials = __esmMin((() => {
169
201
  * Load OAuth token for a provider.
170
202
  */
171
203
  async loadOAuthToken(provider) {
172
- const token = await this.loadOAuthTokenRecord(provider);
204
+ const normalizedProvider = provider.toLowerCase();
205
+ let token = await this.loadOAuthTokenRecord(normalizedProvider);
173
206
  if (!token) return null;
174
- const expiresAt = token.expiresAt ?? Number.POSITIVE_INFINITY;
207
+ let expiresAt = token.expiresAt ?? Number.POSITIVE_INFINITY;
175
208
  if (expiresAt <= Date.now() + 6e4 && token.refresh) {
176
- const definition = getOAuthProviderDefinition(provider);
177
- if (definition) {
178
- let pending = oauthRefreshes.get(provider);
179
- if (!pending) {
180
- pending = definition.provider.refreshToken({
181
- access: token.access,
182
- refresh: token.refresh,
183
- expires: expiresAt
184
- }).then(async (refreshed) => {
185
- const updated = {
186
- ...token,
187
- access: definition.provider.getApiKey(refreshed),
188
- refresh: refreshed.refresh,
189
- expiresAt: refreshed.expires,
190
- scope: Array.isArray(refreshed.scope) ? refreshed.scope.filter((value) => typeof value === "string") : token.scope,
191
- updatedAt: (/* @__PURE__ */ new Date()).toISOString()
192
- };
193
- await this.saveOAuthToken(provider, updated);
194
- return updated;
195
- }).finally(() => oauthRefreshes.delete(provider));
196
- oauthRefreshes.set(provider, pending);
197
- }
198
- try {
199
- return await pending;
200
- } catch (err) {
201
- if (expiresAt > Date.now()) {
202
- log.warn({
203
- err,
204
- provider
205
- }, "OAuth refresh failed; using the current access token");
206
- return token;
207
- }
209
+ const definition = getOAuthProviderDefinition(normalizedProvider);
210
+ if (definition) try {
211
+ token = await withOAuthProviderLock(normalizedProvider, async () => {
212
+ const current = await this.loadOAuthTokenRecord(normalizedProvider);
213
+ if (!current) return null;
214
+ if ((current.expiresAt ?? Number.POSITIVE_INFINITY) > Date.now() + 6e4 || !current.refresh) return current;
215
+ const refreshed = await definition.provider.refreshToken(toOAuthCredentials(current));
216
+ const { expires, ...refreshedFields } = refreshed;
217
+ const updated = {
218
+ ...current,
219
+ ...refreshedFields,
220
+ access: refreshed.access,
221
+ refresh: refreshed.refresh,
222
+ expiresAt: expires,
223
+ scope: Array.isArray(refreshed.scope) ? refreshed.scope.filter((value) => typeof value === "string") : current.scope,
224
+ updatedAt: (/* @__PURE__ */ new Date()).toISOString()
225
+ };
226
+ await this.saveOAuthToken(normalizedProvider, updated);
227
+ return updated;
228
+ });
229
+ if (!token) return null;
230
+ expiresAt = token.expiresAt ?? Number.POSITIVE_INFINITY;
231
+ } catch (err) {
232
+ token = await this.loadOAuthTokenRecord(normalizedProvider) ?? token;
233
+ expiresAt = token.expiresAt ?? Number.POSITIVE_INFINITY;
234
+ if (expiresAt > Date.now()) {
235
+ log.warn({
236
+ err,
237
+ provider: normalizedProvider
238
+ }, "OAuth refresh failed; using the current access token");
239
+ return token;
208
240
  }
209
241
  }
210
242
  }
@@ -221,6 +253,12 @@ var init_credentials = __esmMin((() => {
221
253
  }
222
254
  return token;
223
255
  }
256
+ async hasUsableOAuthTokenRecord(provider) {
257
+ const token = await this.loadOAuthTokenRecord(provider);
258
+ if (!token?.access?.trim()) return null;
259
+ if (token.expiresAt && token.expiresAt <= Date.now() && !token.refresh?.trim()) return null;
260
+ return token;
261
+ }
224
262
  /**
225
263
  * Load the raw OAuth token record, including expired tokens for status UIs.
226
264
  */
@@ -230,7 +268,7 @@ var init_credentials = __esmMin((() => {
230
268
  try {
231
269
  const content = await readFile(oauthPath, "utf-8");
232
270
  const token = JSON.parse(content);
233
- return token.provider === normalizedProvider ? token : null;
271
+ return token.provider === normalizedProvider ? normalizeLegacyOAuthToken(token) : null;
234
272
  } catch {
235
273
  return null;
236
274
  }
@@ -266,28 +304,46 @@ var init_credentials = __esmMin((() => {
266
304
  return tokens.sort((a, b) => a.provider.localeCompare(b.provider));
267
305
  }
268
306
  /**
307
+ * Save raw provider OAuth credentials without converting them to an API key representation.
308
+ */
309
+ async saveOAuthCredentials(provider, credentials) {
310
+ const { access, refresh, expires, scope, ...providerFields } = credentials;
311
+ await this.saveOAuthToken(provider, {
312
+ ...providerFields,
313
+ access,
314
+ refresh,
315
+ expiresAt: expires,
316
+ scope: Array.isArray(scope) ? scope.filter((value) => typeof value === "string") : void 0,
317
+ createdAt: (/* @__PURE__ */ new Date()).toISOString()
318
+ });
319
+ }
320
+ /**
269
321
  * Save OAuth token for a provider.
270
322
  */
271
323
  async saveOAuthToken(provider, token) {
272
324
  const normalizedProvider = provider.toLowerCase();
273
- const oauthPath = resolveOAuthPath(normalizedProvider);
274
- await mkdir(dirname(oauthPath), { recursive: true });
275
- const fullToken = {
276
- ...token,
277
- type: "oauth",
278
- provider: normalizedProvider,
279
- updatedAt: (/* @__PURE__ */ new Date()).toISOString()
280
- };
281
- await writeTextAtomic(oauthPath, JSON.stringify(fullToken, null, 2));
282
- log.info({ provider: normalizedProvider }, "Saved OAuth token");
325
+ await withOAuthProviderLock(normalizedProvider, async () => {
326
+ const oauthPath = resolveOAuthPath(normalizedProvider);
327
+ await mkdir(dirname(oauthPath), { recursive: true });
328
+ const fullToken = {
329
+ ...token,
330
+ type: "oauth",
331
+ provider: normalizedProvider,
332
+ updatedAt: (/* @__PURE__ */ new Date()).toISOString()
333
+ };
334
+ await writeTextAtomic(oauthPath, JSON.stringify(fullToken, null, 2));
335
+ log.info({ provider: normalizedProvider }, "Saved OAuth token");
336
+ });
283
337
  }
284
338
  /**
285
339
  * Delete the OAuth token persisted for a provider.
286
340
  */
287
341
  async deleteOAuthToken(provider) {
288
342
  const normalizedProvider = provider.toLowerCase();
289
- await rm(resolveOAuthPath(normalizedProvider), { force: true });
290
- log.info({ provider: normalizedProvider }, "Deleted OAuth token");
343
+ await withOAuthProviderLock(normalizedProvider, async () => {
344
+ await rm(resolveOAuthPath(normalizedProvider), { force: true });
345
+ log.info({ provider: normalizedProvider }, "Deleted OAuth token");
346
+ });
291
347
  }
292
348
  /**
293
349
  * Disconnect the default credential for a provider from local storage.
@@ -1,4 +1,5 @@
1
1
  import { __esmMin } from "../../_virtual/_rolldown/runtime.js";
2
+ import { init_oauth_provider_lock, withOAuthProviderLock } from "./oauth-provider-lock.js";
2
3
  import { CredentialResolver, init_credentials } from "./credentials.js";
3
4
  //#region src/auth/model-credential-store.ts
4
5
  function normalizeProviderId(providerId) {
@@ -30,26 +31,10 @@ function toPersistedToken(credential, current) {
30
31
  createdAt: current?.createdAt ?? (/* @__PURE__ */ new Date()).toISOString()
31
32
  };
32
33
  }
33
- async function serializeProviderModification(providerId, operation) {
34
- const previous = providerModificationTails.get(providerId) ?? Promise.resolve();
35
- let release;
36
- const gate = new Promise((resolve) => {
37
- release = resolve;
38
- });
39
- const tail = previous.catch(() => void 0).then(() => gate);
40
- providerModificationTails.set(providerId, tail);
41
- await previous.catch(() => void 0);
42
- try {
43
- return await operation();
44
- } finally {
45
- release();
46
- if (providerModificationTails.get(providerId) === tail) providerModificationTails.delete(providerId);
47
- }
48
- }
49
- var providerModificationTails, XopcModelCredentialStore;
34
+ var XopcModelCredentialStore;
50
35
  var init_model_credential_store = __esmMin((() => {
51
36
  init_credentials();
52
- providerModificationTails = /* @__PURE__ */ new Map();
37
+ init_oauth_provider_lock();
53
38
  XopcModelCredentialStore = class {
54
39
  runtimeApiKeys = /* @__PURE__ */ new Map();
55
40
  constructor(repository = new CredentialResolver()) {
@@ -81,7 +66,7 @@ var init_model_credential_store = __esmMin((() => {
81
66
  }
82
67
  async modify(providerId, update, options) {
83
68
  const normalizedProvider = normalizeProviderId(providerId);
84
- return serializeProviderModification(normalizedProvider, async () => {
69
+ return withOAuthProviderLock(normalizedProvider, async () => {
85
70
  options?.signal?.throwIfAborted();
86
71
  const persisted = await this.repository.loadOAuthTokenRecord(normalizedProvider);
87
72
  const current = this.runtimeApiKeys.get(normalizedProvider) ?? (persisted ? toRuntimeCredential(persisted) : void 0);
@@ -93,15 +78,15 @@ var init_model_credential_store = __esmMin((() => {
93
78
  this.runtimeApiKeys.delete(normalizedProvider);
94
79
  } else this.runtimeApiKeys.set(normalizedProvider, updated);
95
80
  return updated;
96
- });
81
+ }, { signal: options?.signal });
97
82
  }
98
83
  async delete(providerId, options) {
99
84
  const normalizedProvider = normalizeProviderId(providerId);
100
- await serializeProviderModification(normalizedProvider, async () => {
85
+ await withOAuthProviderLock(normalizedProvider, async () => {
101
86
  options?.signal?.throwIfAborted();
102
87
  await this.repository.deleteOAuthToken(normalizedProvider);
103
88
  this.runtimeApiKeys.delete(normalizedProvider);
104
- });
89
+ }, { signal: options?.signal });
105
90
  }
106
91
  };
107
92
  }));
@@ -0,0 +1,5 @@
1
+ interface OAuthProviderLockOptions {
2
+ signal?: AbortSignal;
3
+ }
4
+ export declare function withOAuthProviderLock<T>(providerId: string, operation: () => Promise<T>, options?: OAuthProviderLockOptions): Promise<T>;
5
+ export {};
@@ -0,0 +1,91 @@
1
+ import { __esmMin } from "../../_virtual/_rolldown/runtime.js";
2
+ import { init_paths, resolveOAuthPath } from "../config/paths.js";
3
+ import { AsyncLocalStorage } from "node:async_hooks";
4
+ import { dirname } from "node:path";
5
+ import { randomUUID } from "node:crypto";
6
+ import { mkdir, open, readFile, rm, stat } from "node:fs/promises";
7
+ import { setTimeout } from "node:timers/promises";
8
+ //#region src/auth/oauth-provider-lock.ts
9
+ function lockPath(providerId) {
10
+ return `${resolveOAuthPath(providerId.toLowerCase())}.lock`;
11
+ }
12
+ function isAlreadyExists(error) {
13
+ return error?.code === "EEXIST";
14
+ }
15
+ function isMissing(error) {
16
+ return error?.code === "ENOENT";
17
+ }
18
+ async function removeStaleLock(path) {
19
+ try {
20
+ const info = await stat(path);
21
+ if (Date.now() - info.mtimeMs < STALE_LOCK_MS) return false;
22
+ await rm(path, { force: true });
23
+ return true;
24
+ } catch (error) {
25
+ if (isMissing(error)) return true;
26
+ throw error;
27
+ }
28
+ }
29
+ async function acquireFileLock(providerId, options) {
30
+ const path = lockPath(providerId);
31
+ const owner = `${process.pid}:${randomUUID()}`;
32
+ const deadline = Date.now() + LOCK_TIMEOUT_MS;
33
+ await mkdir(dirname(path), { recursive: true });
34
+ while (true) {
35
+ options.signal?.throwIfAborted();
36
+ try {
37
+ const handle = await open(path, "wx", 384);
38
+ try {
39
+ await handle.writeFile(owner, "utf8");
40
+ } finally {
41
+ await handle.close();
42
+ }
43
+ return async () => {
44
+ try {
45
+ if (await readFile(path, "utf8") === owner) await rm(path, { force: true });
46
+ } catch {}
47
+ };
48
+ } catch (error) {
49
+ if (!isAlreadyExists(error)) throw error;
50
+ if (await removeStaleLock(path)) continue;
51
+ if (Date.now() >= deadline) throw new Error(`Timed out waiting for OAuth credential lock for ${providerId}`);
52
+ await setTimeout(LOCK_RETRY_MS, void 0, options.signal ? { signal: options.signal } : void 0);
53
+ }
54
+ }
55
+ }
56
+ async function withOAuthProviderLock(providerId, operation, options = {}) {
57
+ const normalizedProvider = providerId.toLowerCase();
58
+ const heldLocks = heldProviderLocks.getStore();
59
+ if (heldLocks?.has(normalizedProvider)) return operation();
60
+ const previous = providerModificationTails.get(normalizedProvider) ?? Promise.resolve();
61
+ let releaseQueue;
62
+ const queueGate = new Promise((resolve) => {
63
+ releaseQueue = resolve;
64
+ });
65
+ const tail = previous.catch(() => void 0).then(() => queueGate);
66
+ providerModificationTails.set(normalizedProvider, tail);
67
+ await previous.catch(() => void 0);
68
+ let releaseFileLock;
69
+ try {
70
+ releaseFileLock = await acquireFileLock(normalizedProvider, options);
71
+ const nextHeldLocks = new Set(heldLocks);
72
+ nextHeldLocks.add(normalizedProvider);
73
+ return await heldProviderLocks.run(nextHeldLocks, operation);
74
+ } finally {
75
+ await releaseFileLock?.();
76
+ releaseQueue();
77
+ if (providerModificationTails.get(normalizedProvider) === tail) providerModificationTails.delete(normalizedProvider);
78
+ }
79
+ }
80
+ var LOCK_RETRY_MS, LOCK_TIMEOUT_MS, STALE_LOCK_MS, providerModificationTails, heldProviderLocks;
81
+ var init_oauth_provider_lock = __esmMin((() => {
82
+ init_paths();
83
+ LOCK_RETRY_MS = 50;
84
+ LOCK_TIMEOUT_MS = 9e4;
85
+ STALE_LOCK_MS = 6e4;
86
+ providerModificationTails = /* @__PURE__ */ new Map();
87
+ heldProviderLocks = new AsyncLocalStorage();
88
+ }));
89
+ //#endregion
90
+ init_oauth_provider_lock();
91
+ export { init_oauth_provider_lock, withOAuthProviderLock };
@@ -1 +1,8 @@
1
- export declare const DEFAULT_AUTOMATION_TIMEOUT_SECONDS = 300;
1
+ import type { AutomationAction } from './types.js';
2
+ export declare const DEFAULT_AUTOMATION_TIMEOUT_SECONDS: number;
3
+ export declare const DEFAULT_BROWSER_AUTOMATION_TIMEOUT_SECONDS: number;
4
+ export declare function defaultAutomationTimeoutSeconds(action: AutomationAction): number;
5
+ export declare function resolveAutomationTimeoutSeconds(action: AutomationAction, reliability?: {
6
+ executionTimeoutSeconds?: number;
7
+ timeoutSeconds?: number;
8
+ }): number;