@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
@@ -537,80 +537,76 @@ CREATE INDEX IF NOT EXISTS idx_activity_related_projects_project
537
537
  ON activity_related_projects(project_id, activity_id);
538
538
 
539
539
  CREATE TABLE IF NOT EXISTS discussion_captures (
540
- id TEXT PRIMARY KEY,
541
- client_request_id TEXT NOT NULL UNIQUE,
542
- note_id TEXT NOT NULL UNIQUE,
543
- project_id TEXT,
544
- audio_attachment_id TEXT,
545
- source TEXT NOT NULL CHECK (source IN ('web', 'electron')),
546
- status TEXT NOT NULL CHECK (status IN (
547
- 'recording',
548
- 'finalizing',
549
- 'completed',
550
- 'failed',
551
- 'cancelled'
540
+ id TEXT PRIMARY KEY,
541
+ client_request_id TEXT NOT NULL UNIQUE,
542
+ note_id TEXT NOT NULL UNIQUE,
543
+ project_id TEXT,
544
+ audio_attachment_id TEXT,
545
+ source TEXT NOT NULL CHECK (source IN ('web', 'electron')),
546
+ status TEXT NOT NULL CHECK (status IN (
547
+ 'recording', 'stopping', 'sealing', 'organizing',
548
+ 'completed', 'needs_attention', 'cancelled'
552
549
  )),
553
- processing_stage TEXT CHECK (processing_stage IN (
554
- 'original_upload',
555
- 'final_transcription',
556
- 'analysis',
557
- 'note_write'
550
+ duration_ms INTEGER,
551
+ expected_last_sequence INTEGER,
552
+ mime_type TEXT,
553
+ audio_size_bytes INTEGER,
554
+ audio_sha256 TEXT,
555
+ canonical_transcript TEXT,
556
+ canonical_transcript_sha256 TEXT,
557
+ transcript_language TEXT,
558
+ transcript_revision INTEGER NOT NULL DEFAULT 0,
559
+ generated_title TEXT,
560
+ project_inference_score REAL,
561
+ project_inference_source TEXT,
562
+ failure_stage TEXT CHECK (failure_stage IN (
563
+ 'segment_upload', 'segment_transcription', 'audio_upload',
564
+ 'transcript_sealing', 'organization'
558
565
  )),
559
- duration_ms INTEGER,
560
- expected_last_sequence INTEGER,
561
- mime_type TEXT,
562
- audio_size_bytes INTEGER,
563
- audio_sha256 TEXT,
564
- transcript_raw TEXT,
565
- transcript_sha256 TEXT,
566
- transcript_language TEXT,
567
- stt_provider TEXT,
568
- analysis_json TEXT,
569
- analysis_input_hash TEXT,
570
- analyzer_model_ref TEXT,
571
- generated_title TEXT,
572
- project_inference_score REAL,
573
- project_inference_source TEXT,
574
- finalization_revision INTEGER NOT NULL DEFAULT 0,
575
- attempt_count INTEGER NOT NULL DEFAULT 0,
576
- next_attempt_at INTEGER,
577
- lease_owner TEXT,
578
- lease_expires_at INTEGER,
579
- last_error_code TEXT,
580
- last_error_message TEXT,
581
- recording_started_at INTEGER NOT NULL,
582
- recording_finished_at INTEGER,
583
- created_at INTEGER NOT NULL,
584
- updated_at INTEGER NOT NULL,
585
- completed_at INTEGER,
586
- audio_deleted_at INTEGER,
566
+ failure_code TEXT,
567
+ failure_message TEXT,
568
+ work_lease_owner TEXT,
569
+ work_lease_expires_at INTEGER,
570
+ recording_started_at INTEGER NOT NULL,
571
+ recording_stopped_at INTEGER,
572
+ created_at INTEGER NOT NULL,
573
+ updated_at INTEGER NOT NULL,
574
+ completed_at INTEGER,
575
+ audio_deleted_at INTEGER,
587
576
  FOREIGN KEY (note_id) REFERENCES notes(note_id) ON DELETE CASCADE,
588
577
  FOREIGN KEY (project_id) REFERENCES projects(project_id) ON DELETE SET NULL
589
578
  );
590
579
 
591
580
  CREATE INDEX IF NOT EXISTS idx_discussion_captures_queue
592
- ON discussion_captures(status, next_attempt_at, created_at);
581
+ ON discussion_captures(status, work_lease_expires_at, updated_at);
593
582
 
594
583
  CREATE INDEX IF NOT EXISTS idx_discussion_captures_project
595
584
  ON discussion_captures(project_id, updated_at DESC);
596
585
 
597
586
  CREATE TABLE IF NOT EXISTS discussion_transcript_segments (
598
- discussion_id TEXT NOT NULL,
599
- sequence INTEGER NOT NULL,
600
- audio_sha256 TEXT NOT NULL,
601
- audio_blob BLOB,
602
- started_at_ms INTEGER NOT NULL,
603
- ended_at_ms INTEGER NOT NULL,
604
- status TEXT NOT NULL CHECK (status IN ('uploaded', 'transcribing', 'completed', 'failed')),
605
- transcript TEXT,
606
- provider TEXT,
607
- attempt_count INTEGER NOT NULL DEFAULT 0,
608
- next_attempt_at INTEGER,
609
- lease_owner TEXT,
587
+ discussion_id TEXT NOT NULL,
588
+ sequence INTEGER NOT NULL,
589
+ audio_sha256 TEXT NOT NULL,
590
+ audio_blob BLOB,
591
+ started_at_ms INTEGER NOT NULL,
592
+ ended_at_ms INTEGER NOT NULL,
593
+ status TEXT NOT NULL CHECK (status IN ('uploaded', 'transcribing', 'confirmed', 'failed')),
594
+ raw_text TEXT,
595
+ display_text TEXT,
596
+ language TEXT,
597
+ provider TEXT,
598
+ confidence REAL,
599
+ speaker_label TEXT,
600
+ revision INTEGER NOT NULL DEFAULT 1,
601
+ corrected_by_user INTEGER NOT NULL DEFAULT 0,
602
+ corrected_at INTEGER,
603
+ attempt_count INTEGER NOT NULL DEFAULT 0,
604
+ next_attempt_at INTEGER,
605
+ lease_owner TEXT,
610
606
  lease_expires_at INTEGER,
611
- last_error TEXT,
612
- created_at INTEGER NOT NULL,
613
- updated_at INTEGER NOT NULL,
607
+ last_error TEXT,
608
+ created_at INTEGER NOT NULL,
609
+ updated_at INTEGER NOT NULL,
614
610
  PRIMARY KEY (discussion_id, sequence),
615
611
  FOREIGN KEY (discussion_id) REFERENCES discussion_captures(id) ON DELETE CASCADE
616
612
  );
@@ -618,6 +614,25 @@ CREATE TABLE IF NOT EXISTS discussion_transcript_segments (
618
614
  CREATE INDEX IF NOT EXISTS idx_discussion_segments_queue
619
615
  ON discussion_transcript_segments(status, next_attempt_at, created_at);
620
616
 
617
+ CREATE TABLE IF NOT EXISTS discussion_organizations (
618
+ id TEXT PRIMARY KEY,
619
+ discussion_id TEXT NOT NULL,
620
+ revision INTEGER NOT NULL,
621
+ input_transcript_sha256 TEXT NOT NULL,
622
+ prompt_version TEXT NOT NULL,
623
+ model_ref TEXT NOT NULL,
624
+ organization_json TEXT,
625
+ status TEXT NOT NULL CHECK (status IN ('running', 'completed', 'failed')),
626
+ error_message TEXT,
627
+ created_at INTEGER NOT NULL,
628
+ completed_at INTEGER,
629
+ UNIQUE (discussion_id, revision),
630
+ FOREIGN KEY (discussion_id) REFERENCES discussion_captures(id) ON DELETE CASCADE
631
+ );
632
+
633
+ CREATE INDEX IF NOT EXISTS idx_discussion_organizations_latest
634
+ ON discussion_organizations(discussion_id, revision DESC);
635
+
621
636
  CREATE TABLE IF NOT EXISTS discussion_capture_settings (
622
637
  workspace_id TEXT PRIMARY KEY,
623
638
  consent_policy_version INTEGER NOT NULL,
@@ -0,0 +1,59 @@
1
+ export type SessionInputDelivery = 'next' | 'steer';
2
+ export type SessionInputStatus = 'queued' | 'running' | 'injecting' | 'completed' | 'cancelled' | 'failed' | 'interrupted';
3
+ export type SessionInput = {
4
+ id: string;
5
+ sessionKey: string;
6
+ clientMessageId: string;
7
+ requestedDelivery: SessionInputDelivery;
8
+ effectiveDelivery: SessionInputDelivery;
9
+ status: SessionInputStatus;
10
+ content: string;
11
+ attachments?: unknown[];
12
+ thinking?: string;
13
+ position: number;
14
+ targetRunId?: string;
15
+ runId?: string;
16
+ version: number;
17
+ error?: string;
18
+ createdAtMs: number;
19
+ updatedAtMs: number;
20
+ };
21
+ export type SessionInputState = {
22
+ sessionKey: string;
23
+ revision: number;
24
+ activeRunId?: string;
25
+ activeInputId?: string;
26
+ inputs: SessionInput[];
27
+ };
28
+ export declare function getSessionInputState(sessionKey: string): SessionInputState;
29
+ export declare function findSessionInput(sessionKey: string, clientMessageId: string): SessionInput | undefined;
30
+ export declare function insertSessionInput(input: {
31
+ id: string;
32
+ sessionKey: string;
33
+ clientMessageId: string;
34
+ requestedDelivery: SessionInputDelivery;
35
+ effectiveDelivery: SessionInputDelivery;
36
+ status: 'queued' | 'injecting';
37
+ content: string;
38
+ attachments?: unknown[];
39
+ thinking?: string;
40
+ targetRunId?: string;
41
+ }): SessionInput;
42
+ export declare function claimNextSessionInput(sessionKey: string, runId: string): SessionInput | undefined;
43
+ export declare function finishSessionInputRun(sessionKey: string, runId: string, status: 'completed' | 'failed' | 'cancelled', error?: string): boolean;
44
+ export declare function setSessionInputStatus(id: string, status: SessionInputStatus, patch?: {
45
+ effectiveDelivery?: SessionInputDelivery;
46
+ targetRunId?: string | null;
47
+ error?: string;
48
+ }): boolean;
49
+ export declare function mutateQueuedSessionInput(input: {
50
+ sessionKey: string;
51
+ id: string;
52
+ version: number;
53
+ content?: string;
54
+ attachments?: unknown[];
55
+ thinking?: string;
56
+ position?: number;
57
+ }): boolean;
58
+ export declare function cancelQueuedSessionInput(sessionKey: string, id: string, version: number): boolean;
59
+ export declare function recoverSessionInputState(): string[];
@@ -0,0 +1,147 @@
1
+ import { getSqliteDatabase, runSqliteWriteTransaction } from "./transaction.js";
2
+ //#region src/storage/sqlite/session-input-repository.ts
3
+ function mapInput(row) {
4
+ return {
5
+ id: row.id,
6
+ sessionKey: row.session_key,
7
+ clientMessageId: row.client_message_id,
8
+ requestedDelivery: row.requested_delivery,
9
+ effectiveDelivery: row.effective_delivery,
10
+ status: row.status,
11
+ content: row.content,
12
+ attachments: row.attachments_json ? JSON.parse(row.attachments_json) : void 0,
13
+ thinking: row.thinking ?? void 0,
14
+ position: row.position,
15
+ targetRunId: row.target_run_id ?? void 0,
16
+ runId: row.run_id ?? void 0,
17
+ version: row.version,
18
+ error: row.error ?? void 0,
19
+ createdAtMs: row.created_at_ms,
20
+ updatedAtMs: row.updated_at_ms
21
+ };
22
+ }
23
+ const SELECT_INPUTS = `SELECT id, session_key, client_message_id, requested_delivery,
24
+ effective_delivery, status, content, attachments_json, thinking, position,
25
+ target_run_id, run_id, version, error, created_at_ms, updated_at_ms
26
+ FROM session_inputs`;
27
+ function ensureRuntime(db, sessionKey) {
28
+ db.prepare(`INSERT INTO session_input_runtime(session_key, revision, updated_at_ms)
29
+ VALUES (?, 0, ?) ON CONFLICT(session_key) DO NOTHING`).run(sessionKey, Date.now());
30
+ }
31
+ function bumpRevision(db, sessionKey) {
32
+ ensureRuntime(db, sessionKey);
33
+ db.prepare(`UPDATE session_input_runtime SET revision = revision + 1, updated_at_ms = ?
34
+ WHERE session_key = ?`).run(Date.now(), sessionKey);
35
+ return db.prepare(`SELECT revision FROM session_input_runtime WHERE session_key = ?`).get(sessionKey).revision;
36
+ }
37
+ function getSessionInputState(sessionKey) {
38
+ const db = getSqliteDatabase();
39
+ const runtime = db.prepare(`SELECT revision, active_run_id, active_input_id
40
+ FROM session_input_runtime WHERE session_key = ?`).get(sessionKey);
41
+ const rows = db.prepare(`${SELECT_INPUTS} WHERE session_key = ? AND status IN
42
+ ('queued','running','injecting','interrupted') ORDER BY position, created_at_ms, id`).all(sessionKey);
43
+ return {
44
+ sessionKey,
45
+ revision: runtime?.revision ?? 0,
46
+ activeRunId: runtime?.active_run_id ?? void 0,
47
+ activeInputId: runtime?.active_input_id ?? void 0,
48
+ inputs: rows.map(mapInput)
49
+ };
50
+ }
51
+ function findSessionInput(sessionKey, clientMessageId) {
52
+ const row = getSqliteDatabase().prepare(`${SELECT_INPUTS} WHERE session_key = ? AND client_message_id = ?`).get(sessionKey, clientMessageId);
53
+ return row ? mapInput(row) : void 0;
54
+ }
55
+ function insertSessionInput(input) {
56
+ return runSqliteWriteTransaction((db) => {
57
+ const existing = db.prepare(`${SELECT_INPUTS} WHERE session_key = ? AND client_message_id = ?`).get(input.sessionKey, input.clientMessageId);
58
+ if (existing) return mapInput(existing);
59
+ const now = Date.now();
60
+ const max = db.prepare(`SELECT COALESCE(MAX(position), 0) AS value FROM session_inputs
61
+ WHERE session_key = ? AND status IN ('queued','running','injecting','interrupted')`).get(input.sessionKey);
62
+ db.prepare(`INSERT INTO session_inputs(id, session_key, client_message_id,
63
+ requested_delivery, effective_delivery, status, content, attachments_json,
64
+ thinking, position, target_run_id, version, created_at_ms, updated_at_ms)
65
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, 1, ?, ?)`).run(input.id, input.sessionKey, input.clientMessageId, input.requestedDelivery, input.effectiveDelivery, input.status, input.content, input.attachments ? JSON.stringify(input.attachments) : null, input.thinking ?? null, max.value + 1, input.targetRunId ?? null, now, now);
66
+ bumpRevision(db, input.sessionKey);
67
+ return mapInput(db.prepare(`${SELECT_INPUTS} WHERE id = ?`).get(input.id));
68
+ });
69
+ }
70
+ function claimNextSessionInput(sessionKey, runId) {
71
+ return runSqliteWriteTransaction((db) => {
72
+ ensureRuntime(db, sessionKey);
73
+ if (db.prepare(`SELECT active_run_id FROM session_input_runtime WHERE session_key = ?`).get(sessionKey).active_run_id) return void 0;
74
+ const row = db.prepare(`${SELECT_INPUTS} WHERE session_key = ? AND effective_delivery = 'next'
75
+ AND status = 'queued' ORDER BY position, created_at_ms, id LIMIT 1`).get(sessionKey);
76
+ if (!row) return void 0;
77
+ const now = Date.now();
78
+ db.prepare(`UPDATE session_inputs SET status = 'running', run_id = ?, version = version + 1,
79
+ updated_at_ms = ? WHERE id = ?`).run(runId, now, row.id);
80
+ db.prepare(`UPDATE session_input_runtime SET active_run_id = ?, active_input_id = ?,
81
+ revision = revision + 1, updated_at_ms = ? WHERE session_key = ?`).run(runId, row.id, now, sessionKey);
82
+ return mapInput(db.prepare(`${SELECT_INPUTS} WHERE id = ?`).get(row.id));
83
+ });
84
+ }
85
+ function finishSessionInputRun(sessionKey, runId, status, error) {
86
+ return runSqliteWriteTransaction((db) => {
87
+ const runtime = db.prepare(`SELECT active_input_id, active_run_id FROM session_input_runtime WHERE session_key = ?`).get(sessionKey);
88
+ if (!runtime || runtime.active_run_id !== runId) return false;
89
+ const now = Date.now();
90
+ if (runtime.active_input_id) db.prepare(`UPDATE session_inputs SET status = ?, error = ?,
91
+ version = version + 1, updated_at_ms = ? WHERE id = ?`).run(status, error ?? null, now, runtime.active_input_id);
92
+ db.prepare(`UPDATE session_inputs SET status = ?, error = ?, version = version + 1,
93
+ updated_at_ms = ? WHERE session_key = ? AND target_run_id = ? AND status = 'injecting'`).run(status === "completed" ? "completed" : "interrupted", status === "completed" ? null : "Current reply ended before steer delivery was confirmed", now, sessionKey, runId);
94
+ db.prepare(`UPDATE session_input_runtime SET active_run_id = NULL, active_input_id = NULL,
95
+ revision = revision + 1, updated_at_ms = ?
96
+ WHERE session_key = ?`).run(now, sessionKey);
97
+ return true;
98
+ });
99
+ }
100
+ function setSessionInputStatus(id, status, patch) {
101
+ return runSqliteWriteTransaction((db) => {
102
+ const row = db.prepare(`${SELECT_INPUTS} WHERE id = ?`).get(id);
103
+ if (!row) return false;
104
+ db.prepare(`UPDATE session_inputs SET status = ?, effective_delivery = ?, target_run_id = ?,
105
+ error = ?, version = version + 1, updated_at_ms = ? WHERE id = ?`).run(status, patch?.effectiveDelivery ?? row.effective_delivery, patch?.targetRunId !== void 0 ? patch.targetRunId : row.target_run_id, patch?.error ?? row.error, Date.now(), id);
106
+ bumpRevision(db, row.session_key);
107
+ return true;
108
+ });
109
+ }
110
+ function mutateQueuedSessionInput(input) {
111
+ return runSqliteWriteTransaction((db) => {
112
+ const row = db.prepare(`${SELECT_INPUTS} WHERE id = ? AND session_key = ?`).get(input.id, input.sessionKey);
113
+ if (!row || row.status !== "queued" || row.version !== input.version) return false;
114
+ const now = Date.now();
115
+ if (input.position !== void 0) {
116
+ const ordered = db.prepare(`${SELECT_INPUTS} WHERE session_key = ? AND status = 'queued' ORDER BY position, created_at_ms, id`).all(input.sessionKey).filter((item) => item.id !== input.id);
117
+ ordered.splice(Math.max(0, Math.min(input.position, ordered.length)), 0, row);
118
+ const stmt = db.prepare(`UPDATE session_inputs SET position = ?, version = version + 1, updated_at_ms = ? WHERE id = ?`);
119
+ ordered.forEach((item, index) => stmt.run(index + 1, now, item.id));
120
+ } else db.prepare(`UPDATE session_inputs SET content = ?, attachments_json = ?, thinking = ?, version = version + 1,
121
+ updated_at_ms = ? WHERE id = ?`).run(input.content ?? row.content, input.attachments ? JSON.stringify(input.attachments) : row.attachments_json, input.thinking ?? row.thinking, now, input.id);
122
+ bumpRevision(db, input.sessionKey);
123
+ return true;
124
+ });
125
+ }
126
+ function cancelQueuedSessionInput(sessionKey, id, version) {
127
+ return runSqliteWriteTransaction((db) => {
128
+ const result = db.prepare(`UPDATE session_inputs SET status = 'cancelled', version = version + 1,
129
+ updated_at_ms = ? WHERE id = ? AND session_key = ? AND version = ? AND status IN ('queued','interrupted')`).run(Date.now(), id, sessionKey, version);
130
+ if (Number(result.changes) === 0) return false;
131
+ bumpRevision(db, sessionKey);
132
+ return true;
133
+ });
134
+ }
135
+ function recoverSessionInputState() {
136
+ return runSqliteWriteTransaction((db) => {
137
+ const keys = db.prepare(`SELECT DISTINCT session_key FROM session_inputs WHERE status IN ('queued','running','injecting')`).all();
138
+ const now = Date.now();
139
+ db.prepare(`UPDATE session_inputs SET status = 'interrupted', error = 'Gateway restarted during delivery',
140
+ version = version + 1, updated_at_ms = ? WHERE status IN ('running','injecting')`).run(now);
141
+ db.prepare(`UPDATE session_input_runtime SET active_run_id = NULL, active_input_id = NULL,
142
+ revision = revision + 1, updated_at_ms = ?`).run(now);
143
+ return keys.map((row) => row.session_key);
144
+ });
145
+ }
146
+ //#endregion
147
+ export { cancelQueuedSessionInput, claimNextSessionInput, findSessionInput, finishSessionInputRun, getSessionInputState, insertSessionInput, mutateQueuedSessionInput, recoverSessionInputState, setSessionInputStatus };
@@ -11,7 +11,7 @@ const SESSION_COLUMNS = `
11
11
  s.source_channel, s.source_chat_id, s.session_type, s.hidden_from_session_list,
12
12
  s.parent_session_key, s.workflow_run_id, s.workflow_definition_id, s.workflow_agent_id, s.workflow_agent_label,
13
13
  s.project_id, s.routing_json, s.custom_data_json,
14
- s.abort_cutoff_timestamp, s.message_count, s.estimated_tokens, s.compacted_count,
14
+ s.message_count, s.estimated_tokens, s.compacted_count,
15
15
  s.last_flushed_at, s.flush_count,
16
16
  s.thinking_level, s.verbose_level,
17
17
  t.cwd AS cwd
@@ -32,18 +32,18 @@ function insertSessionAndTranscript(db, sessionKey, sessionId, cwd, metadata) {
32
32
  source_channel, source_chat_id, session_type, hidden_from_session_list,
33
33
  parent_session_key, workflow_run_id, workflow_definition_id, workflow_agent_id, workflow_agent_label,
34
34
  project_id, routing_json, custom_data_json,
35
- abort_cutoff_timestamp, message_count, estimated_tokens, compacted_count,
35
+ message_count, estimated_tokens, compacted_count,
36
36
  last_flushed_at, flush_count,
37
37
  thinking_level, verbose_level
38
38
  ) VALUES (
39
- ?, ?, ?, ?, ?, ?,
39
+ ?, ?, ?, ?, ?,
40
40
  ?, ?, ?, ?, ?,
41
41
  ?, ?, ?, ?,
42
42
  ?, ?, ?, ?, ?,
43
43
  ?, ?, ?,
44
44
  ?, ?, ?, ?, ?, ?,
45
45
  ?, ?
46
- )`).run(row.sessionKey, row.agentId, row.sessionId, row.status, row.name, row.tagsJson, row.createdAt, row.updatedAt, row.lastAccessedAt, row.sessionStartedAt, row.lastInteractionAt, row.sourceChannel, row.sourceChatId, row.sessionType, row.hiddenFromSessionList, row.parentSessionKey, row.workflowRunId, row.workflowDefinitionId, row.workflowAgentId, row.workflowAgentLabel, row.projectId, row.routingJson, row.customDataJson, row.abortCutoffTimestamp, row.messageCount, row.estimatedTokens, row.compactedCount, row.lastFlushedAt, row.flushCount, row.thinkingLevel, row.verboseLevel);
46
+ )`).run(row.sessionKey, row.agentId, row.sessionId, row.status, row.name, row.tagsJson, row.createdAt, row.updatedAt, row.lastAccessedAt, row.sessionStartedAt, row.lastInteractionAt, row.sourceChannel, row.sourceChatId, row.sessionType, row.hiddenFromSessionList, row.parentSessionKey, row.workflowRunId, row.workflowDefinitionId, row.workflowAgentId, row.workflowAgentLabel, row.projectId, row.routingJson, row.customDataJson, row.messageCount, row.estimatedTokens, row.compactedCount, row.lastFlushedAt, row.flushCount, row.thinkingLevel, row.verboseLevel);
47
47
  const now = Date.now();
48
48
  db.prepare(`INSERT INTO transcripts (session_id, session_key, status, created_at, cwd)
49
49
  VALUES (?, ?, 'active', ?, ?)`).run(sessionId, sessionKey, now, cwd);
@@ -204,7 +204,6 @@ function patchSessionMetadata(sessionKey, updates) {
204
204
  project_id = ?,
205
205
  routing_json = ?,
206
206
  custom_data_json = ?,
207
- abort_cutoff_timestamp = ?,
208
207
  message_count = ?,
209
208
  estimated_tokens = ?,
210
209
  compacted_count = ?,
@@ -212,7 +211,7 @@ function patchSessionMetadata(sessionKey, updates) {
212
211
  flush_count = ?,
213
212
  thinking_level = ?,
214
213
  verbose_level = ?
215
- WHERE session_key = ?`).run(merged.status, merged.name ?? null, JSON.stringify(merged.tags ?? []), Date.parse(merged.updatedAt) || now, Date.parse(merged.lastAccessedAt) || now, merged.sessionStartedAt ? Date.parse(merged.sessionStartedAt) : existing.session_started_at, merged.lastInteractionAt ? Date.parse(merged.lastInteractionAt) : existing.last_interaction_at, merged.sourceChannel, merged.sourceChatId, merged.sessionType, merged.hiddenFromSessionList ? 1 : 0, merged.parentSessionKey ?? null, merged.workflowRunId ?? null, merged.workflowDefinitionId ?? null, merged.workflowAgentId ?? null, merged.workflowAgentLabel ?? null, merged.projectId ?? null, merged.routing ? JSON.stringify(merged.routing) : null, merged.customData ? JSON.stringify(merged.customData) : null, merged.abortCutoffTimestamp ?? null, merged.messageCount, merged.estimatedTokens, merged.compactedCount, merged.lastFlushedAt ?? null, merged.flushCount ?? 0, existing.thinking_level, existing.verbose_level, sessionKey);
214
+ WHERE session_key = ?`).run(merged.status, merged.name ?? null, JSON.stringify(merged.tags ?? []), Date.parse(merged.updatedAt) || now, Date.parse(merged.lastAccessedAt) || now, merged.sessionStartedAt ? Date.parse(merged.sessionStartedAt) : existing.session_started_at, merged.lastInteractionAt ? Date.parse(merged.lastInteractionAt) : existing.last_interaction_at, merged.sourceChannel, merged.sourceChatId, merged.sessionType, merged.hiddenFromSessionList ? 1 : 0, merged.parentSessionKey ?? null, merged.workflowRunId ?? null, merged.workflowDefinitionId ?? null, merged.workflowAgentId ?? null, merged.workflowAgentLabel ?? null, merged.projectId ?? null, merged.routing ? JSON.stringify(merged.routing) : null, merged.customData ? JSON.stringify(merged.customData) : null, merged.messageCount, merged.estimatedTokens, merged.compactedCount, merged.lastFlushedAt ?? null, merged.flushCount ?? 0, existing.thinking_level, existing.verbose_level, sessionKey);
216
215
  const row = readSessionRow(db, sessionKey);
217
216
  if (!row) throw new Error(`Session not found after patch: ${sessionKey}`);
218
217
  return sessionRowToMetadata(sessionKey, row);
@@ -1,7 +1,7 @@
1
- import type { WorkHomeAttention, WorkHomeDecision } from '@xopcai/gateway-contract';
1
+ import type { HomeAttention, HomeDecision } from '@xopcai/gateway-contract';
2
2
  export interface AttentionProjection {
3
- decisions: WorkHomeDecision[];
4
- attention: WorkHomeAttention[];
3
+ decisions: HomeDecision[];
4
+ attention: HomeAttention[];
5
5
  policy: {
6
6
  visibleDecisionCount: number;
7
7
  suppressedDecisionCount: number;
@@ -11,8 +11,8 @@ export interface AttentionProjection {
11
11
  }
12
12
  export declare class AttentionGovernor {
13
13
  project(input: {
14
- decisions: WorkHomeDecision[];
15
- attention: WorkHomeAttention[];
14
+ decisions: HomeDecision[];
15
+ attention: HomeAttention[];
16
16
  proactiveEnabled: boolean;
17
17
  maxDecisions?: number;
18
18
  maxAttention?: number;
@@ -1,9 +1,8 @@
1
- //#region src/work/attention-governor.ts
1
+ //#region src/tasks/attention-governor.ts
2
2
  function decisionScore(item) {
3
3
  if (item.reason === "approval_required") return 100;
4
- if (item.reason === "needs_input") return 95;
5
- if (item.reason === "blocked") return 85;
6
- if (item.reason === "in_review") return 80;
4
+ if (item.reason === "needs_input" || item.reason === "user_input" || item.reason === "user_approval") return 95;
5
+ if (item.reason === "blocked" || item.reason === "dependency" || item.reason === "external") return 85;
7
6
  if (item.kind === "agent_judgment") return Math.round((item.judgment?.valueScore ?? 0) * 70) + (item.urgency === "now" ? 20 : 0);
8
7
  if (item.reason === "overdue") return 70;
9
8
  return 50;
@@ -0,0 +1,23 @@
1
+ import type { SessionMetadata } from '../session/types.js';
2
+ export type ExecutionOrigin = 'chat' | 'task' | 'workflow' | 'automation' | 'browser' | 'proactive';
3
+ export type ExecutionTrigger = 'user' | 'schedule' | 'webhook' | 'proactive' | 'retry';
4
+ export interface ExecutionContext {
5
+ runId: string;
6
+ sessionKey: string;
7
+ channel: string;
8
+ agentId?: string;
9
+ strategy?: string;
10
+ taskId?: string;
11
+ projectId?: string;
12
+ origin: ExecutionOrigin;
13
+ triggerKind: ExecutionTrigger;
14
+ parentRunId?: string;
15
+ contextTraceId?: string;
16
+ }
17
+ export declare function resolveExecutionContext(input: {
18
+ runId: string;
19
+ sessionKey: string;
20
+ channel: string;
21
+ metadata: SessionMetadata;
22
+ agentId?: string;
23
+ }): ExecutionContext;
@@ -1,7 +1,7 @@
1
- //#region src/work/execution-context.ts
1
+ //#region src/tasks/execution-context.ts
2
2
  const ORIGINS = new Set([
3
3
  "chat",
4
- "goal",
4
+ "task",
5
5
  "workflow",
6
6
  "automation",
7
7
  "browser",
@@ -20,7 +20,7 @@ function optionalString(value) {
20
20
  function metadataOrigin(metadata) {
21
21
  const explicit = optionalString(metadata.customData?.origin);
22
22
  if (explicit && ORIGINS.has(explicit)) return explicit;
23
- if (optionalString(metadata.customData?.goalId)) return "goal";
23
+ if (optionalString(metadata.customData?.taskId)) return "task";
24
24
  if (metadata.sessionType === "workflow-run" || metadata.sessionType === "workflow-subagent") return "workflow";
25
25
  if (metadata.sessionType === "cron") return "automation";
26
26
  if (metadata.sessionType === "heartbeat") return "proactive";
@@ -41,26 +41,13 @@ function resolveExecutionContext(input) {
41
41
  channel: input.channel,
42
42
  agentId: input.agentId,
43
43
  projectId: input.metadata.projectId,
44
- outcomeId: optionalString(input.metadata.customData?.outcomeId),
45
- goalId: optionalString(input.metadata.customData?.goalId),
46
- workItemId: optionalString(input.metadata.customData?.workItemId),
44
+ taskId: optionalString(input.metadata.customData?.taskId),
47
45
  origin: metadataOrigin(input.metadata),
48
46
  triggerKind: metadataTrigger(input.metadata),
49
47
  parentRunId: optionalString(input.metadata.customData?.parentRunId),
50
- contextTraceId: optionalString(input.metadata.customData?.contextTraceId)
51
- };
52
- }
53
- function executionReceiptContext(context) {
54
- return {
55
- outcomeId: context.outcomeId,
56
- projectId: context.projectId,
57
- goalId: context.goalId,
58
- workItemId: context.workItemId,
59
- origin: context.origin,
60
- triggerKind: context.triggerKind,
61
- parentRunId: context.parentRunId,
62
- contextTraceId: context.contextTraceId
48
+ contextTraceId: optionalString(input.metadata.customData?.contextTraceId),
49
+ strategy: optionalString(input.metadata.customData?.strategy)
63
50
  };
64
51
  }
65
52
  //#endregion
66
- export { executionReceiptContext, resolveExecutionContext };
53
+ export { resolveExecutionContext };
@@ -1,10 +1,17 @@
1
- import type { WorkHomeResponse } from '@xopcai/gateway-contract';
2
- import type { GatewayService } from '../gateway/service.js';
1
+ import type { HomeResponse } from '@xopcai/gateway-contract';
3
2
  import { type AutomationRun } from '../automations/index.js';
4
- type HomeDecision = WorkHomeResponse['decisions'][number];
5
- type HomeAttention = WorkHomeResponse['attention'][number];
6
- type HomeBriefingWin = WorkHomeResponse['briefing']['wins'][number];
7
- type HomeAutomation = WorkHomeResponse['upcomingAutomations'][number];
3
+ import type { AutomationService } from '../automations/service/automation-service.js';
4
+ import type { Config } from '../config/schema.js';
5
+ import type { NotesService } from '../notes/service.js';
6
+ import type { ProactiveInboxService } from '../proactive/inbox/service.js';
7
+ import type { ProjectService } from '../projects/project-service.js';
8
+ import type { SessionIndex } from '../session/manager.js';
9
+ import type { WorkflowRunService } from '../workflows/service/workflow-run-service.js';
10
+ import { type TaskReadModel } from './task-read-model-projector.js';
11
+ type HomeDecision = HomeResponse['decisions'][number];
12
+ type HomeAttention = HomeResponse['attention'][number];
13
+ type HomeBriefingWin = HomeResponse['briefing']['wins'][number];
14
+ type HomeAutomation = HomeResponse['upcomingAutomations'][number];
8
15
  type HomeAutomationRun = {
9
16
  id: string;
10
17
  automationId: string;
@@ -18,7 +25,7 @@ type HomeAutomationRun = {
18
25
  sessionKey?: string;
19
26
  workflowRunId?: string;
20
27
  };
21
- type HomeSnapshot = WorkHomeResponse & {
28
+ type HomeSnapshot = HomeResponse & {
22
29
  recentlyOpened: unknown[];
23
30
  inboxCount: number;
24
31
  pendingTasks: unknown[];
@@ -32,19 +39,34 @@ type HomeSnapshot = WorkHomeResponse & {
32
39
  gateway: Record<string, unknown>;
33
40
  recentAutomationRuns: HomeAutomationRun[];
34
41
  };
35
- export declare function workItemAttentionRank(item: {
36
- status: string;
37
- dueAt?: number;
38
- priority: string;
39
- updatedAt: number;
40
- }, nowMs: number): number;
42
+ interface HomeGatewayPort {
43
+ readonly notesServiceInstance: NotesService;
44
+ readonly sessions: Pick<SessionIndex, 'listSessions'> & {
45
+ getActiveRun(sessionKey: string): {
46
+ active: boolean;
47
+ runId?: string;
48
+ };
49
+ };
50
+ readonly currentConfig: Config;
51
+ readonly automationServiceInstance: AutomationService;
52
+ readonly projects: ProjectService;
53
+ readonly proactiveInbox: ProactiveInboxService;
54
+ createWorkflowRunService(): WorkflowRunService;
55
+ getHealth(): {
56
+ status: string;
57
+ ready: boolean;
58
+ httpListening: boolean;
59
+ version: string;
60
+ uptime: number;
61
+ };
62
+ }
63
+ export declare function decisionFromTask(model: TaskReadModel, projectName?: string): HomeDecision | null;
41
64
  export declare function buildHomeBriefing(input: {
42
65
  locale?: string;
43
66
  decisions: HomeDecision[];
44
67
  attention: HomeAttention[];
45
- activeWorkCount: number;
46
68
  activeWorkflowCount: number;
47
- activeGoalCount: number;
69
+ activeTaskCount: number;
48
70
  wins: HomeBriefingWin[];
49
71
  nextScheduled?: HomeAutomation;
50
72
  nowMs: number;
@@ -53,9 +75,9 @@ export declare function buildHomeBriefing(input: {
53
75
  summary: string;
54
76
  focus: {
55
77
  id: string;
56
- kind: "work_item" | "goal" | "agent_judgment" | "connector_approval" | "goal_evidence";
78
+ kind: "task" | "agent_judgment" | "connector_approval";
57
79
  title: string;
58
- reason: "approval_required" | "blocked" | "needs_input" | "in_review" | "overdue" | "due_soon" | "decision_needed";
80
+ reason: "paused" | "external" | "blocked" | "dependency" | "user_input" | "approval_required" | "overdue" | "needs_input" | "user_approval" | "scheduled" | "retry" | "due_soon" | "decision_needed";
59
81
  urgency: "now" | "soon";
60
82
  href: string;
61
83
  updatedAt: number;
@@ -82,21 +104,16 @@ export declare function buildHomeBriefing(input: {
82
104
  response?: {
83
105
  kind: "connector_approval";
84
106
  approvalId: string;
85
- } | {
86
- kind: "goal_evidence";
87
- goalId: string;
88
- requirementId: string;
89
107
  };
90
108
  }[];
91
109
  progress: {
92
- activeWorkCount: number;
93
110
  activeWorkflowCount: number;
94
- activeGoalCount: number;
111
+ activeTaskCount: number;
95
112
  movingCount: number;
96
113
  };
97
114
  wins: {
98
115
  id: string;
99
- kind: "work_item" | "workflow_run" | "automation_run";
116
+ kind: "task" | "workflow_run" | "automation_run";
100
117
  title: string;
101
118
  href: string;
102
119
  completedAt: number;
@@ -109,10 +126,10 @@ export declare function buildHomeBriefing(input: {
109
126
  name?: string;
110
127
  };
111
128
  };
112
- export declare class WorkHomeQueryService {
129
+ export declare class HomeQueryService {
113
130
  #private;
114
131
  private readonly service;
115
- constructor(service: GatewayService);
132
+ constructor(service: HomeGatewayPort);
116
133
  getSnapshot(locale?: string): Promise<HomeSnapshot>;
117
134
  }
118
135
  export {};