pulseed 0.3.0 → 0.4.1

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 (947) hide show
  1. package/dist/base/config/config-metadata.d.ts +1 -1
  2. package/dist/base/config/config-metadata.d.ts.map +1 -1
  3. package/dist/base/config/config-metadata.js +1 -1
  4. package/dist/base/config/config-metadata.js.map +1 -1
  5. package/dist/base/config/identity-loader.d.ts +1 -1
  6. package/dist/base/config/identity-loader.d.ts.map +1 -1
  7. package/dist/base/config/identity-loader.js +4 -3
  8. package/dist/base/config/identity-loader.js.map +1 -1
  9. package/dist/base/config/tool-metadata.d.ts +2 -0
  10. package/dist/base/config/tool-metadata.d.ts.map +1 -1
  11. package/dist/base/config/tool-metadata.js +30 -6
  12. package/dist/base/config/tool-metadata.js.map +1 -1
  13. package/dist/base/llm/llm-client.d.ts +12 -1
  14. package/dist/base/llm/llm-client.d.ts.map +1 -1
  15. package/dist/base/llm/llm-client.js +78 -2
  16. package/dist/base/llm/llm-client.js.map +1 -1
  17. package/dist/base/llm/ollama-client.d.ts +1 -0
  18. package/dist/base/llm/ollama-client.d.ts.map +1 -1
  19. package/dist/base/llm/ollama-client.js +1 -0
  20. package/dist/base/llm/ollama-client.js.map +1 -1
  21. package/dist/base/llm/openai-client.d.ts +3 -1
  22. package/dist/base/llm/openai-client.d.ts.map +1 -1
  23. package/dist/base/llm/openai-client.js +131 -41
  24. package/dist/base/llm/openai-client.js.map +1 -1
  25. package/dist/base/llm/provider-config.d.ts +1 -1
  26. package/dist/base/llm/provider-config.d.ts.map +1 -1
  27. package/dist/base/llm/provider-factory.d.ts.map +1 -1
  28. package/dist/base/llm/provider-factory.js +22 -3
  29. package/dist/base/llm/provider-factory.js.map +1 -1
  30. package/dist/base/state/checkpoint-trust-port.d.ts +4 -0
  31. package/dist/base/state/checkpoint-trust-port.d.ts.map +1 -0
  32. package/dist/base/state/checkpoint-trust-port.js +2 -0
  33. package/dist/base/state/checkpoint-trust-port.js.map +1 -0
  34. package/dist/base/state/state-manager-goal-write.d.ts +22 -0
  35. package/dist/base/state/state-manager-goal-write.d.ts.map +1 -0
  36. package/dist/base/state/state-manager-goal-write.js +74 -0
  37. package/dist/base/state/state-manager-goal-write.js.map +1 -0
  38. package/dist/base/state/state-manager-wal.d.ts +11 -0
  39. package/dist/base/state/state-manager-wal.d.ts.map +1 -0
  40. package/dist/base/state/state-manager-wal.js +89 -0
  41. package/dist/base/state/state-manager-wal.js.map +1 -0
  42. package/dist/base/state/state-manager.d.ts +12 -5
  43. package/dist/base/state/state-manager.d.ts.map +1 -1
  44. package/dist/base/state/state-manager.js +24 -118
  45. package/dist/base/state/state-manager.js.map +1 -1
  46. package/dist/base/utils/errors.d.ts +4 -0
  47. package/dist/base/utils/errors.d.ts.map +1 -1
  48. package/dist/base/utils/errors.js +8 -0
  49. package/dist/base/utils/errors.js.map +1 -1
  50. package/dist/base/utils/pulseed-meta.d.ts +4 -0
  51. package/dist/base/utils/pulseed-meta.d.ts.map +1 -0
  52. package/dist/base/utils/pulseed-meta.js +32 -0
  53. package/dist/base/utils/pulseed-meta.js.map +1 -0
  54. package/dist/index.d.ts +3 -0
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/index.js +1 -0
  57. package/dist/index.js.map +1 -1
  58. package/dist/interface/chat/chat-event-state.d.ts +10 -0
  59. package/dist/interface/chat/chat-event-state.d.ts.map +1 -0
  60. package/dist/interface/chat/chat-event-state.js +75 -0
  61. package/dist/interface/chat/chat-event-state.js.map +1 -0
  62. package/dist/interface/chat/chat-events.d.ts +59 -0
  63. package/dist/interface/chat/chat-events.d.ts.map +1 -0
  64. package/dist/interface/chat/chat-events.js +2 -0
  65. package/dist/interface/chat/chat-events.js.map +1 -0
  66. package/dist/interface/chat/chat-history.d.ts +4 -4
  67. package/dist/interface/chat/chat-history.d.ts.map +1 -1
  68. package/dist/interface/chat/chat-history.js +3 -3
  69. package/dist/interface/chat/chat-history.js.map +1 -1
  70. package/dist/interface/chat/chat-runner.d.ts +15 -4
  71. package/dist/interface/chat/chat-runner.d.ts.map +1 -1
  72. package/dist/interface/chat/chat-runner.js +241 -27
  73. package/dist/interface/chat/chat-runner.js.map +1 -1
  74. package/dist/interface/chat/event-subscriber.d.ts +7 -1
  75. package/dist/interface/chat/event-subscriber.d.ts.map +1 -1
  76. package/dist/interface/chat/event-subscriber.js +88 -2
  77. package/dist/interface/chat/event-subscriber.js.map +1 -1
  78. package/dist/interface/chat/grounding.d.ts +2 -0
  79. package/dist/interface/chat/grounding.d.ts.map +1 -1
  80. package/dist/interface/chat/grounding.js +95 -42
  81. package/dist/interface/chat/grounding.js.map +1 -1
  82. package/dist/interface/chat/mutation-tool-defs.js +1 -1
  83. package/dist/interface/chat/mutation-tool-defs.js.map +1 -1
  84. package/dist/interface/chat/self-knowledge-mutation-tools.d.ts.map +1 -1
  85. package/dist/interface/chat/self-knowledge-mutation-tools.js +20 -3
  86. package/dist/interface/chat/self-knowledge-mutation-tools.js.map +1 -1
  87. package/dist/interface/chat/self-knowledge-tools.js +2 -2
  88. package/dist/interface/chat/self-knowledge-tools.js.map +1 -1
  89. package/dist/interface/chat/tend-command.d.ts +1 -1
  90. package/dist/interface/cli/cli-command-registry.js +1 -1
  91. package/dist/interface/cli/cli-command-registry.js.map +1 -1
  92. package/dist/interface/cli/commands/chat.d.ts.map +1 -1
  93. package/dist/interface/cli/commands/chat.js +46 -13
  94. package/dist/interface/cli/commands/chat.js.map +1 -1
  95. package/dist/interface/cli/commands/config.d.ts.map +1 -1
  96. package/dist/interface/cli/commands/config.js +37 -6
  97. package/dist/interface/cli/commands/config.js.map +1 -1
  98. package/dist/interface/cli/commands/daemon.d.ts.map +1 -1
  99. package/dist/interface/cli/commands/daemon.js +105 -50
  100. package/dist/interface/cli/commands/daemon.js.map +1 -1
  101. package/dist/interface/cli/commands/doctor.d.ts +1 -1
  102. package/dist/interface/cli/commands/doctor.d.ts.map +1 -1
  103. package/dist/interface/cli/commands/doctor.js +5 -7
  104. package/dist/interface/cli/commands/doctor.js.map +1 -1
  105. package/dist/interface/cli/commands/presets/root-presets.d.ts +3 -3
  106. package/dist/interface/cli/commands/presets/root-presets.d.ts.map +1 -1
  107. package/dist/interface/cli/commands/presets/root-presets.js +8 -5
  108. package/dist/interface/cli/commands/presets/root-presets.js.map +1 -1
  109. package/dist/interface/cli/commands/schedule.d.ts.map +1 -1
  110. package/dist/interface/cli/commands/schedule.js +166 -13
  111. package/dist/interface/cli/commands/schedule.js.map +1 -1
  112. package/dist/interface/cli/commands/setup/steps-runtime.js +1 -1
  113. package/dist/interface/cli/ensure-api-key.d.ts +4 -1
  114. package/dist/interface/cli/ensure-api-key.d.ts.map +1 -1
  115. package/dist/interface/cli/ensure-api-key.js +52 -15
  116. package/dist/interface/cli/ensure-api-key.js.map +1 -1
  117. package/dist/interface/cli/setup.d.ts +9 -0
  118. package/dist/interface/cli/setup.d.ts.map +1 -1
  119. package/dist/interface/cli/setup.js +43 -20
  120. package/dist/interface/cli/setup.js.map +1 -1
  121. package/dist/interface/cli/utils.d.ts.map +1 -1
  122. package/dist/interface/cli/utils.js +5 -1
  123. package/dist/interface/cli/utils.js.map +1 -1
  124. package/dist/interface/tui/app.d.ts +1 -1
  125. package/dist/interface/tui/app.d.ts.map +1 -1
  126. package/dist/interface/tui/app.js +8 -12
  127. package/dist/interface/tui/app.js.map +1 -1
  128. package/dist/interface/tui/chat/scroll.d.ts +14 -0
  129. package/dist/interface/tui/chat/scroll.d.ts.map +1 -0
  130. package/dist/interface/tui/chat/scroll.js +46 -0
  131. package/dist/interface/tui/chat/scroll.js.map +1 -0
  132. package/dist/interface/tui/chat/suggestions.d.ts +8 -0
  133. package/dist/interface/tui/chat/suggestions.d.ts.map +1 -0
  134. package/dist/interface/tui/chat/suggestions.js +112 -0
  135. package/dist/interface/tui/chat/suggestions.js.map +1 -0
  136. package/dist/interface/tui/chat/types.d.ts +31 -0
  137. package/dist/interface/tui/chat/types.d.ts.map +1 -0
  138. package/dist/interface/tui/chat/types.js +2 -0
  139. package/dist/interface/tui/chat/types.js.map +1 -0
  140. package/dist/interface/tui/chat/viewport.d.ts +3 -0
  141. package/dist/interface/tui/chat/viewport.d.ts.map +1 -0
  142. package/dist/interface/tui/chat/viewport.js +78 -0
  143. package/dist/interface/tui/chat/viewport.js.map +1 -0
  144. package/dist/interface/tui/chat.d.ts +5 -49
  145. package/dist/interface/tui/chat.d.ts.map +1 -1
  146. package/dist/interface/tui/chat.js +9 -238
  147. package/dist/interface/tui/chat.js.map +1 -1
  148. package/dist/interface/tui/checkerboard-spinner.d.ts +3 -0
  149. package/dist/interface/tui/checkerboard-spinner.d.ts.map +1 -0
  150. package/dist/interface/tui/checkerboard-spinner.js +20 -0
  151. package/dist/interface/tui/checkerboard-spinner.js.map +1 -0
  152. package/dist/interface/tui/dashboard.js +2 -2
  153. package/dist/interface/tui/dashboard.js.map +1 -1
  154. package/dist/interface/tui/entry.d.ts.map +1 -1
  155. package/dist/interface/tui/entry.js +51 -7
  156. package/dist/interface/tui/entry.js.map +1 -1
  157. package/dist/interface/tui/use-loop.d.ts +1 -1
  158. package/dist/orchestrator/ethics-gate.d.ts +3 -0
  159. package/dist/orchestrator/ethics-gate.d.ts.map +1 -0
  160. package/dist/orchestrator/ethics-gate.js +2 -0
  161. package/dist/orchestrator/ethics-gate.js.map +1 -0
  162. package/dist/orchestrator/execution/context/context-builder.d.ts +8 -0
  163. package/dist/orchestrator/execution/context/context-builder.d.ts.map +1 -1
  164. package/dist/orchestrator/execution/context/context-builder.js +38 -0
  165. package/dist/orchestrator/execution/context/context-builder.js.map +1 -1
  166. package/dist/orchestrator/execution/parallel-execution-types.d.ts +7 -0
  167. package/dist/orchestrator/execution/parallel-execution-types.d.ts.map +1 -0
  168. package/dist/orchestrator/execution/parallel-execution-types.js +2 -0
  169. package/dist/orchestrator/execution/parallel-execution-types.js.map +1 -0
  170. package/dist/orchestrator/execution/parallel-executor.d.ts +2 -6
  171. package/dist/orchestrator/execution/parallel-executor.d.ts.map +1 -1
  172. package/dist/orchestrator/execution/parallel-executor.js.map +1 -1
  173. package/dist/orchestrator/execution/result-reconciler.d.ts +1 -1
  174. package/dist/orchestrator/execution/result-reconciler.d.ts.map +1 -1
  175. package/dist/orchestrator/execution/task/task-lifecycle.d.ts +8 -10
  176. package/dist/orchestrator/execution/task/task-lifecycle.d.ts.map +1 -1
  177. package/dist/orchestrator/execution/task/task-lifecycle.js +28 -1
  178. package/dist/orchestrator/execution/task/task-lifecycle.js.map +1 -1
  179. package/dist/orchestrator/execution/task/task-pipeline-cycle.d.ts +5 -35
  180. package/dist/orchestrator/execution/task/task-pipeline-cycle.d.ts.map +1 -1
  181. package/dist/orchestrator/execution/task/task-pipeline-cycle.js.map +1 -1
  182. package/dist/orchestrator/execution/task/task-pipeline-types.d.ts +39 -0
  183. package/dist/orchestrator/execution/task/task-pipeline-types.d.ts.map +1 -0
  184. package/dist/orchestrator/execution/task/task-pipeline-types.js +2 -0
  185. package/dist/orchestrator/execution/task/task-pipeline-types.js.map +1 -0
  186. package/dist/orchestrator/execution/task/task-verifier-rules.d.ts.map +1 -1
  187. package/dist/orchestrator/execution/task/task-verifier-rules.js +34 -2
  188. package/dist/orchestrator/execution/task/task-verifier-rules.js.map +1 -1
  189. package/dist/orchestrator/execution/task/task-verifier-types.d.ts +2 -0
  190. package/dist/orchestrator/execution/task/task-verifier-types.d.ts.map +1 -1
  191. package/dist/orchestrator/goal/goal-negotiator.d.ts.map +1 -1
  192. package/dist/orchestrator/goal/goal-negotiator.js +2 -1
  193. package/dist/orchestrator/goal/goal-negotiator.js.map +1 -1
  194. package/dist/orchestrator/goal/goal-refiner.d.ts.map +1 -1
  195. package/dist/orchestrator/goal/goal-refiner.js +1 -1
  196. package/dist/orchestrator/goal/goal-refiner.js.map +1 -1
  197. package/dist/orchestrator/goal/goal-tree-manager.d.ts +2 -2
  198. package/dist/orchestrator/goal/goal-tree-manager.d.ts.map +1 -1
  199. package/dist/orchestrator/goal/goal-tree-manager.js.map +1 -1
  200. package/dist/orchestrator/goal/negotiator-feasibility.d.ts +10 -0
  201. package/dist/orchestrator/goal/negotiator-feasibility.d.ts.map +1 -0
  202. package/dist/orchestrator/goal/negotiator-feasibility.js +55 -0
  203. package/dist/orchestrator/goal/negotiator-feasibility.js.map +1 -0
  204. package/dist/orchestrator/goal/negotiator-steps.d.ts +1 -6
  205. package/dist/orchestrator/goal/negotiator-steps.d.ts.map +1 -1
  206. package/dist/orchestrator/goal/negotiator-steps.js +4 -56
  207. package/dist/orchestrator/goal/negotiator-steps.js.map +1 -1
  208. package/dist/orchestrator/knowledge/knowledge-manager.d.ts +2 -0
  209. package/dist/orchestrator/knowledge/knowledge-manager.d.ts.map +1 -0
  210. package/dist/orchestrator/knowledge/knowledge-manager.js +2 -0
  211. package/dist/orchestrator/knowledge/knowledge-manager.js.map +1 -0
  212. package/dist/orchestrator/knowledge/memory/memory-lifecycle.d.ts +2 -0
  213. package/dist/orchestrator/knowledge/memory/memory-lifecycle.d.ts.map +1 -0
  214. package/dist/orchestrator/knowledge/memory/memory-lifecycle.js +2 -0
  215. package/dist/orchestrator/knowledge/memory/memory-lifecycle.js.map +1 -0
  216. package/dist/orchestrator/knowledge/transfer/knowledge-transfer.d.ts +2 -0
  217. package/dist/orchestrator/knowledge/transfer/knowledge-transfer.d.ts.map +1 -0
  218. package/dist/orchestrator/knowledge/transfer/knowledge-transfer.js +2 -0
  219. package/dist/orchestrator/knowledge/transfer/knowledge-transfer.js.map +1 -0
  220. package/dist/orchestrator/loop/checkpoint-manager-loop.d.ts +1 -1
  221. package/dist/orchestrator/loop/checkpoint-manager-loop.d.ts.map +1 -1
  222. package/dist/orchestrator/loop/core-loop/capability.d.ts +22 -0
  223. package/dist/orchestrator/loop/core-loop/capability.d.ts.map +1 -0
  224. package/dist/orchestrator/loop/core-loop/capability.js +151 -0
  225. package/dist/orchestrator/loop/core-loop/capability.js.map +1 -0
  226. package/dist/orchestrator/loop/core-loop/contracts.d.ts +245 -0
  227. package/dist/orchestrator/loop/core-loop/contracts.d.ts.map +1 -0
  228. package/dist/orchestrator/loop/core-loop/contracts.js +40 -0
  229. package/dist/orchestrator/loop/core-loop/contracts.js.map +1 -0
  230. package/dist/orchestrator/loop/core-loop/control.d.ts +27 -0
  231. package/dist/orchestrator/loop/core-loop/control.d.ts.map +1 -0
  232. package/dist/orchestrator/loop/core-loop/control.js +72 -0
  233. package/dist/orchestrator/loop/core-loop/control.js.map +1 -0
  234. package/dist/orchestrator/loop/core-loop/learning.d.ts +31 -0
  235. package/dist/orchestrator/loop/core-loop/learning.d.ts.map +1 -0
  236. package/dist/orchestrator/loop/core-loop/learning.js +92 -0
  237. package/dist/orchestrator/loop/core-loop/learning.js.map +1 -0
  238. package/dist/orchestrator/loop/core-loop/preparation.d.ts +63 -0
  239. package/dist/orchestrator/loop/core-loop/preparation.d.ts.map +1 -0
  240. package/dist/orchestrator/loop/core-loop/preparation.js +362 -0
  241. package/dist/orchestrator/loop/core-loop/preparation.js.map +1 -0
  242. package/dist/orchestrator/loop/core-loop/task-cycle.d.ts +29 -0
  243. package/dist/orchestrator/loop/core-loop/task-cycle.d.ts.map +1 -0
  244. package/dist/orchestrator/loop/core-loop/task-cycle.js +674 -0
  245. package/dist/orchestrator/loop/core-loop/task-cycle.js.map +1 -0
  246. package/dist/orchestrator/loop/core-loop-capability.d.ts +1 -18
  247. package/dist/orchestrator/loop/core-loop-capability.d.ts.map +1 -1
  248. package/dist/orchestrator/loop/core-loop-capability.js +1 -106
  249. package/dist/orchestrator/loop/core-loop-capability.js.map +1 -1
  250. package/dist/orchestrator/loop/core-loop-learning.d.ts +1 -34
  251. package/dist/orchestrator/loop/core-loop-learning.d.ts.map +1 -1
  252. package/dist/orchestrator/loop/core-loop-learning.js +1 -95
  253. package/dist/orchestrator/loop/core-loop-learning.js.map +1 -1
  254. package/dist/orchestrator/loop/core-loop-phases-b.d.ts +1 -30
  255. package/dist/orchestrator/loop/core-loop-phases-b.d.ts.map +1 -1
  256. package/dist/orchestrator/loop/core-loop-phases-b.js +1 -590
  257. package/dist/orchestrator/loop/core-loop-phases-b.js.map +1 -1
  258. package/dist/orchestrator/loop/core-loop-phases-c.d.ts +1 -26
  259. package/dist/orchestrator/loop/core-loop-phases-c.d.ts.map +1 -1
  260. package/dist/orchestrator/loop/core-loop-phases-c.js +1 -71
  261. package/dist/orchestrator/loop/core-loop-phases-c.js.map +1 -1
  262. package/dist/orchestrator/loop/core-loop-phases.d.ts +1 -68
  263. package/dist/orchestrator/loop/core-loop-phases.d.ts.map +1 -1
  264. package/dist/orchestrator/loop/core-loop-phases.js +1 -367
  265. package/dist/orchestrator/loop/core-loop-phases.js.map +1 -1
  266. package/dist/orchestrator/loop/core-loop-types.d.ts +1 -307
  267. package/dist/orchestrator/loop/core-loop-types.d.ts.map +1 -1
  268. package/dist/orchestrator/loop/core-loop-types.js +1 -64
  269. package/dist/orchestrator/loop/core-loop-types.js.map +1 -1
  270. package/dist/orchestrator/loop/core-loop.d.ts +6 -3
  271. package/dist/orchestrator/loop/core-loop.d.ts.map +1 -1
  272. package/dist/orchestrator/loop/core-loop.js +92 -8
  273. package/dist/orchestrator/loop/core-loop.js.map +1 -1
  274. package/dist/orchestrator/loop/loop-report-helper.d.ts +1 -1
  275. package/dist/orchestrator/loop/loop-report-helper.d.ts.map +1 -1
  276. package/dist/orchestrator/loop/loop-result-types.d.ts +67 -0
  277. package/dist/orchestrator/loop/loop-result-types.d.ts.map +1 -0
  278. package/dist/orchestrator/loop/loop-result-types.js +27 -0
  279. package/dist/orchestrator/loop/loop-result-types.js.map +1 -0
  280. package/dist/orchestrator/loop/parallel-dispatch.d.ts +2 -2
  281. package/dist/orchestrator/loop/parallel-dispatch.d.ts.map +1 -1
  282. package/dist/orchestrator/loop/post-loop-hooks.d.ts +4 -1
  283. package/dist/orchestrator/loop/post-loop-hooks.d.ts.map +1 -1
  284. package/dist/orchestrator/loop/post-loop-hooks.js +19 -1
  285. package/dist/orchestrator/loop/post-loop-hooks.js.map +1 -1
  286. package/dist/orchestrator/loop/tree-loop-runner.d.ts +1 -1
  287. package/dist/orchestrator/loop/tree-loop-runner.d.ts.map +1 -1
  288. package/dist/orchestrator/loop/tree-loop-runner.js +1 -1
  289. package/dist/orchestrator/loop/tree-loop-runner.js.map +1 -1
  290. package/dist/orchestrator/observation/capability-detector.d.ts +2 -0
  291. package/dist/orchestrator/observation/capability-detector.d.ts.map +1 -0
  292. package/dist/orchestrator/observation/capability-detector.js +2 -0
  293. package/dist/orchestrator/observation/capability-detector.js.map +1 -0
  294. package/dist/orchestrator/strategy/strategy-manager-base.d.ts +1 -0
  295. package/dist/orchestrator/strategy/strategy-manager-base.d.ts.map +1 -1
  296. package/dist/orchestrator/strategy/strategy-manager-base.js +48 -4
  297. package/dist/orchestrator/strategy/strategy-manager-base.js.map +1 -1
  298. package/dist/orchestrator/strategy-manager.d.ts +2 -0
  299. package/dist/orchestrator/strategy-manager.d.ts.map +1 -0
  300. package/dist/orchestrator/strategy-manager.js +2 -0
  301. package/dist/orchestrator/strategy-manager.js.map +1 -0
  302. package/dist/platform/dream/dream-activation.d.ts +52 -0
  303. package/dist/platform/dream/dream-activation.d.ts.map +1 -0
  304. package/dist/platform/dream/dream-activation.js +199 -0
  305. package/dist/platform/dream/dream-activation.js.map +1 -0
  306. package/dist/platform/dream/dream-analyzer.d.ts +53 -0
  307. package/dist/platform/dream/dream-analyzer.d.ts.map +1 -0
  308. package/dist/platform/dream/dream-analyzer.js +489 -0
  309. package/dist/platform/dream/dream-analyzer.js.map +1 -0
  310. package/dist/platform/dream/dream-config.d.ts +6 -0
  311. package/dist/platform/dream/dream-config.d.ts.map +1 -0
  312. package/dist/platform/dream/dream-config.js +20 -0
  313. package/dist/platform/dream/dream-config.js.map +1 -0
  314. package/dist/platform/dream/dream-consolidator.d.ts +35 -0
  315. package/dist/platform/dream/dream-consolidator.d.ts.map +1 -0
  316. package/dist/platform/dream/dream-consolidator.js +304 -0
  317. package/dist/platform/dream/dream-consolidator.js.map +1 -0
  318. package/dist/platform/dream/dream-importance.d.ts +24 -0
  319. package/dist/platform/dream/dream-importance.d.ts.map +1 -0
  320. package/dist/platform/dream/dream-importance.js +71 -0
  321. package/dist/platform/dream/dream-importance.js.map +1 -0
  322. package/dist/platform/dream/dream-log-collector.d.ts +73 -0
  323. package/dist/platform/dream/dream-log-collector.d.ts.map +1 -0
  324. package/dist/platform/dream/dream-log-collector.js +256 -0
  325. package/dist/platform/dream/dream-log-collector.js.map +1 -0
  326. package/dist/platform/dream/dream-log-store.d.ts +22 -0
  327. package/dist/platform/dream/dream-log-store.d.ts.map +1 -0
  328. package/dist/platform/dream/dream-log-store.js +150 -0
  329. package/dist/platform/dream/dream-log-store.js.map +1 -0
  330. package/dist/platform/dream/dream-schedule-suggestions.d.ts +26 -0
  331. package/dist/platform/dream/dream-schedule-suggestions.d.ts.map +1 -0
  332. package/dist/platform/dream/dream-schedule-suggestions.js +195 -0
  333. package/dist/platform/dream/dream-schedule-suggestions.js.map +1 -0
  334. package/dist/platform/dream/dream-types.d.ts +2587 -0
  335. package/dist/platform/dream/dream-types.d.ts.map +1 -0
  336. package/dist/platform/dream/dream-types.js +265 -0
  337. package/dist/platform/dream/dream-types.js.map +1 -0
  338. package/dist/platform/dream/index.d.ts +6 -0
  339. package/dist/platform/dream/index.d.ts.map +1 -0
  340. package/dist/platform/dream/index.js +6 -0
  341. package/dist/platform/dream/index.js.map +1 -0
  342. package/dist/platform/drive/drive-system.d.ts +8 -0
  343. package/dist/platform/drive/drive-system.d.ts.map +1 -1
  344. package/dist/platform/drive/drive-system.js +39 -22
  345. package/dist/platform/drive/drive-system.js.map +1 -1
  346. package/dist/platform/ethics-gate.d.ts +2 -0
  347. package/dist/platform/ethics-gate.d.ts.map +1 -0
  348. package/dist/platform/ethics-gate.js +2 -0
  349. package/dist/platform/ethics-gate.js.map +1 -0
  350. package/dist/platform/execution/task/task-lifecycle.d.ts +2 -0
  351. package/dist/platform/execution/task/task-lifecycle.d.ts.map +1 -0
  352. package/dist/platform/execution/task/task-lifecycle.js +2 -0
  353. package/dist/platform/execution/task/task-lifecycle.js.map +1 -0
  354. package/dist/platform/knowledge/transfer/knowledge-transfer-apply.d.ts.map +1 -1
  355. package/dist/platform/knowledge/transfer/knowledge-transfer-apply.js +6 -0
  356. package/dist/platform/knowledge/transfer/knowledge-transfer-apply.js.map +1 -1
  357. package/dist/platform/knowledge/transfer/knowledge-transfer-detect.d.ts.map +1 -1
  358. package/dist/platform/knowledge/transfer/knowledge-transfer-detect.js +32 -0
  359. package/dist/platform/knowledge/transfer/knowledge-transfer-detect.js.map +1 -1
  360. package/dist/platform/knowledge/transfer/knowledge-transfer.d.ts +18 -1
  361. package/dist/platform/knowledge/transfer/knowledge-transfer.d.ts.map +1 -1
  362. package/dist/platform/knowledge/transfer/knowledge-transfer.js +121 -6
  363. package/dist/platform/knowledge/transfer/knowledge-transfer.js.map +1 -1
  364. package/dist/platform/observation/capability-detector.d.ts +8 -0
  365. package/dist/platform/observation/capability-detector.d.ts.map +1 -1
  366. package/dist/platform/observation/capability-detector.js +71 -4
  367. package/dist/platform/observation/capability-detector.js.map +1 -1
  368. package/dist/platform/observation/data-source-adapter.d.ts +19 -0
  369. package/dist/platform/observation/data-source-adapter.d.ts.map +1 -1
  370. package/dist/platform/observation/data-source-adapter.js +166 -0
  371. package/dist/platform/observation/data-source-adapter.js.map +1 -1
  372. package/dist/platform/observation/engine/observe-context.d.ts +4 -0
  373. package/dist/platform/observation/engine/observe-context.d.ts.map +1 -0
  374. package/dist/platform/observation/engine/observe-context.js +26 -0
  375. package/dist/platform/observation/engine/observe-context.js.map +1 -0
  376. package/dist/platform/observation/engine/observe-datasource-stage.d.ts +33 -0
  377. package/dist/platform/observation/engine/observe-datasource-stage.d.ts.map +1 -0
  378. package/dist/platform/observation/engine/observe-datasource-stage.js +66 -0
  379. package/dist/platform/observation/engine/observe-datasource-stage.js.map +1 -0
  380. package/dist/platform/observation/engine/observe-llm-stage.d.ts +25 -0
  381. package/dist/platform/observation/engine/observe-llm-stage.d.ts.map +1 -0
  382. package/dist/platform/observation/engine/observe-llm-stage.js +79 -0
  383. package/dist/platform/observation/engine/observe-llm-stage.js.map +1 -0
  384. package/dist/platform/observation/engine/observe-precheck.d.ts +21 -0
  385. package/dist/platform/observation/engine/observe-precheck.d.ts.map +1 -0
  386. package/dist/platform/observation/engine/observe-precheck.js +51 -0
  387. package/dist/platform/observation/engine/observe-precheck.js.map +1 -0
  388. package/dist/platform/observation/engine/observe-self-report.d.ts +18 -0
  389. package/dist/platform/observation/engine/observe-self-report.d.ts.map +1 -0
  390. package/dist/platform/observation/engine/observe-self-report.js +26 -0
  391. package/dist/platform/observation/engine/observe-self-report.js.map +1 -0
  392. package/dist/platform/observation/engine/observe-tool-stage.d.ts +21 -0
  393. package/dist/platform/observation/engine/observe-tool-stage.d.ts.map +1 -0
  394. package/dist/platform/observation/engine/observe-tool-stage.js +49 -0
  395. package/dist/platform/observation/engine/observe-tool-stage.js.map +1 -0
  396. package/dist/platform/observation/observation-engine.d.ts.map +1 -1
  397. package/dist/platform/observation/observation-engine.js +67 -246
  398. package/dist/platform/observation/observation-engine.js.map +1 -1
  399. package/dist/platform/observation/observation-helpers.d.ts +6 -0
  400. package/dist/platform/observation/observation-helpers.d.ts.map +1 -1
  401. package/dist/platform/observation/observation-helpers.js +2 -0
  402. package/dist/platform/observation/observation-helpers.js.map +1 -1
  403. package/dist/platform/observation/types/data-source.d.ts +12 -0
  404. package/dist/platform/observation/types/data-source.d.ts.map +1 -1
  405. package/dist/platform/observation/types/data-source.js +1 -0
  406. package/dist/platform/observation/types/data-source.js.map +1 -1
  407. package/dist/platform/runtime/plugin-loader.d.ts +2 -0
  408. package/dist/platform/runtime/plugin-loader.d.ts.map +1 -0
  409. package/dist/platform/runtime/plugin-loader.js +2 -0
  410. package/dist/platform/runtime/plugin-loader.js.map +1 -0
  411. package/dist/platform/tools/executor.d.ts +2 -0
  412. package/dist/platform/tools/executor.d.ts.map +1 -0
  413. package/dist/platform/tools/executor.js +2 -0
  414. package/dist/platform/tools/executor.js.map +1 -0
  415. package/dist/prompt/context-assembler.d.ts +61 -13
  416. package/dist/prompt/context-assembler.d.ts.map +1 -1
  417. package/dist/prompt/context-assembler.js +18 -3
  418. package/dist/prompt/context-assembler.js.map +1 -1
  419. package/dist/prompt/purposes/dream.d.ts +9 -0
  420. package/dist/prompt/purposes/dream.d.ts.map +1 -0
  421. package/dist/prompt/purposes/dream.js +71 -0
  422. package/dist/prompt/purposes/dream.js.map +1 -0
  423. package/dist/prompt/purposes/index.d.ts +1 -0
  424. package/dist/prompt/purposes/index.d.ts.map +1 -1
  425. package/dist/prompt/purposes/index.js +1 -0
  426. package/dist/prompt/purposes/index.js.map +1 -1
  427. package/dist/reporting/report-formatters.d.ts +1 -1
  428. package/dist/reporting/report-formatters.d.ts.map +1 -1
  429. package/dist/reporting/reporting-engine.d.ts +2 -24
  430. package/dist/reporting/reporting-engine.d.ts.map +1 -1
  431. package/dist/reporting/reporting-engine.js +0 -1
  432. package/dist/reporting/reporting-engine.js.map +1 -1
  433. package/dist/reporting/reporting-types.d.ts +25 -0
  434. package/dist/reporting/reporting-types.d.ts.map +1 -0
  435. package/dist/reporting/reporting-types.js +2 -0
  436. package/dist/reporting/reporting-types.js.map +1 -0
  437. package/dist/runtime/approval-broker.d.ts +44 -0
  438. package/dist/runtime/approval-broker.d.ts.map +1 -0
  439. package/dist/runtime/approval-broker.js +141 -0
  440. package/dist/runtime/approval-broker.js.map +1 -0
  441. package/dist/runtime/command-dispatcher.d.ts +35 -0
  442. package/dist/runtime/command-dispatcher.d.ts.map +1 -0
  443. package/dist/runtime/command-dispatcher.js +145 -0
  444. package/dist/runtime/command-dispatcher.js.map +1 -0
  445. package/dist/runtime/daemon/client.d.ts +67 -0
  446. package/dist/runtime/daemon/client.d.ts.map +1 -0
  447. package/dist/runtime/daemon/client.js +330 -0
  448. package/dist/runtime/daemon/client.js.map +1 -0
  449. package/dist/runtime/daemon/health.d.ts +31 -0
  450. package/dist/runtime/daemon/health.d.ts.map +1 -0
  451. package/dist/runtime/daemon/health.js +113 -0
  452. package/dist/runtime/daemon/health.js.map +1 -0
  453. package/dist/runtime/daemon/index.d.ts +9 -0
  454. package/dist/runtime/daemon/index.d.ts.map +1 -0
  455. package/dist/runtime/daemon/index.js +8 -0
  456. package/dist/runtime/daemon/index.js.map +1 -0
  457. package/dist/runtime/daemon/maintenance.d.ts +47 -0
  458. package/dist/runtime/daemon/maintenance.d.ts.map +1 -0
  459. package/dist/runtime/daemon/maintenance.js +230 -0
  460. package/dist/runtime/daemon/maintenance.js.map +1 -0
  461. package/dist/runtime/daemon/persistence.d.ts +20 -0
  462. package/dist/runtime/daemon/persistence.d.ts.map +1 -0
  463. package/dist/runtime/daemon/persistence.js +112 -0
  464. package/dist/runtime/daemon/persistence.js.map +1 -0
  465. package/dist/runtime/daemon/runner-lifecycle.d.ts +29 -0
  466. package/dist/runtime/daemon/runner-lifecycle.d.ts.map +1 -0
  467. package/dist/runtime/daemon/runner-lifecycle.js +56 -0
  468. package/dist/runtime/daemon/runner-lifecycle.js.map +1 -0
  469. package/dist/runtime/daemon/runner.d.ts +229 -0
  470. package/dist/runtime/daemon/runner.d.ts.map +1 -0
  471. package/dist/runtime/daemon/runner.js +875 -0
  472. package/dist/runtime/daemon/runner.js.map +1 -0
  473. package/dist/runtime/daemon/runtime-ownership.d.ts +30 -0
  474. package/dist/runtime/daemon/runtime-ownership.d.ts.map +1 -0
  475. package/dist/runtime/daemon/runtime-ownership.js +132 -0
  476. package/dist/runtime/daemon/runtime-ownership.js.map +1 -0
  477. package/dist/runtime/daemon/signals.d.ts +17 -0
  478. package/dist/runtime/daemon/signals.d.ts.map +1 -0
  479. package/dist/runtime/daemon/signals.js +31 -0
  480. package/dist/runtime/daemon/signals.js.map +1 -0
  481. package/dist/runtime/daemon/types.d.ts +8 -0
  482. package/dist/runtime/daemon/types.d.ts.map +1 -0
  483. package/dist/runtime/daemon/types.js +2 -0
  484. package/dist/runtime/daemon/types.js.map +1 -0
  485. package/dist/runtime/daemon-client.d.ts +1 -55
  486. package/dist/runtime/daemon-client.d.ts.map +1 -1
  487. package/dist/runtime/daemon-client.js +1 -297
  488. package/dist/runtime/daemon-client.js.map +1 -1
  489. package/dist/runtime/daemon-health.d.ts +1 -30
  490. package/dist/runtime/daemon-health.d.ts.map +1 -1
  491. package/dist/runtime/daemon-health.js +1 -112
  492. package/dist/runtime/daemon-health.js.map +1 -1
  493. package/dist/runtime/daemon-runner-lifecycle.d.ts +2 -0
  494. package/dist/runtime/daemon-runner-lifecycle.d.ts.map +1 -0
  495. package/dist/runtime/daemon-runner-lifecycle.js +2 -0
  496. package/dist/runtime/daemon-runner-lifecycle.js.map +1 -0
  497. package/dist/runtime/daemon-runner.d.ts +1 -209
  498. package/dist/runtime/daemon-runner.d.ts.map +1 -1
  499. package/dist/runtime/daemon-runner.js +1 -874
  500. package/dist/runtime/daemon-runner.js.map +1 -1
  501. package/dist/runtime/daemon-runtime-ownership.d.ts +2 -0
  502. package/dist/runtime/daemon-runtime-ownership.d.ts.map +1 -0
  503. package/dist/runtime/daemon-runtime-ownership.js +2 -0
  504. package/dist/runtime/daemon-runtime-ownership.js.map +1 -0
  505. package/dist/runtime/daemon-signals.d.ts +1 -16
  506. package/dist/runtime/daemon-signals.d.ts.map +1 -1
  507. package/dist/runtime/daemon-signals.js +1 -30
  508. package/dist/runtime/daemon-signals.js.map +1 -1
  509. package/dist/runtime/event/dispatcher.d.ts +34 -0
  510. package/dist/runtime/event/dispatcher.d.ts.map +1 -0
  511. package/dist/runtime/event/dispatcher.js +124 -0
  512. package/dist/runtime/event/dispatcher.js.map +1 -0
  513. package/dist/runtime/event/index.d.ts +5 -0
  514. package/dist/runtime/event/index.d.ts.map +1 -0
  515. package/dist/runtime/event/index.js +5 -0
  516. package/dist/runtime/event/index.js.map +1 -0
  517. package/dist/runtime/event/server-snapshot-reader.d.ts +31 -0
  518. package/dist/runtime/event/server-snapshot-reader.d.ts.map +1 -0
  519. package/dist/runtime/event/server-snapshot-reader.js +94 -0
  520. package/dist/runtime/event/server-snapshot-reader.js.map +1 -0
  521. package/dist/runtime/event/server-sse.d.ts +25 -0
  522. package/dist/runtime/event/server-sse.d.ts.map +1 -0
  523. package/dist/runtime/event/server-sse.js +149 -0
  524. package/dist/runtime/event/server-sse.js.map +1 -0
  525. package/dist/runtime/event/server.d.ts +114 -0
  526. package/dist/runtime/event/server.d.ts.map +1 -0
  527. package/dist/runtime/event/server.js +651 -0
  528. package/dist/runtime/event/server.js.map +1 -0
  529. package/dist/runtime/event-dispatcher.d.ts +2 -0
  530. package/dist/runtime/event-dispatcher.d.ts.map +1 -0
  531. package/dist/runtime/event-dispatcher.js +2 -0
  532. package/dist/runtime/event-dispatcher.js.map +1 -0
  533. package/dist/runtime/event-server-snapshot-reader.d.ts +2 -0
  534. package/dist/runtime/event-server-snapshot-reader.d.ts.map +1 -0
  535. package/dist/runtime/event-server-snapshot-reader.js +2 -0
  536. package/dist/runtime/event-server-snapshot-reader.js.map +1 -0
  537. package/dist/runtime/event-server-sse.d.ts +2 -0
  538. package/dist/runtime/event-server-sse.d.ts.map +1 -0
  539. package/dist/runtime/event-server-sse.js +2 -0
  540. package/dist/runtime/event-server-sse.js.map +1 -0
  541. package/dist/runtime/event-server.d.ts +1 -81
  542. package/dist/runtime/event-server.d.ts.map +1 -1
  543. package/dist/runtime/event-server.js +1 -599
  544. package/dist/runtime/event-server.js.map +1 -1
  545. package/dist/runtime/executor/loop-supervisor.d.ts +25 -2
  546. package/dist/runtime/executor/loop-supervisor.d.ts.map +1 -1
  547. package/dist/runtime/executor/loop-supervisor.js +249 -57
  548. package/dist/runtime/executor/loop-supervisor.js.map +1 -1
  549. package/dist/runtime/gateway/http-channel-adapter.d.ts +1 -1
  550. package/dist/runtime/gateway/http-channel-adapter.js +2 -2
  551. package/dist/runtime/gateway/http-channel-adapter.js.map +1 -1
  552. package/dist/runtime/gateway/ingress-gateway.js +1 -1
  553. package/dist/runtime/gateway/ingress-gateway.js.map +1 -1
  554. package/dist/runtime/goal-lease-manager.d.ts +35 -0
  555. package/dist/runtime/goal-lease-manager.d.ts.map +1 -0
  556. package/dist/runtime/goal-lease-manager.js +191 -0
  557. package/dist/runtime/goal-lease-manager.js.map +1 -0
  558. package/dist/runtime/hook-manager.d.ts +4 -0
  559. package/dist/runtime/hook-manager.d.ts.map +1 -1
  560. package/dist/runtime/hook-manager.js +33 -0
  561. package/dist/runtime/hook-manager.js.map +1 -1
  562. package/dist/runtime/leader-lock-manager.d.ts +30 -0
  563. package/dist/runtime/leader-lock-manager.d.ts.map +1 -0
  564. package/dist/runtime/leader-lock-manager.js +160 -0
  565. package/dist/runtime/leader-lock-manager.js.map +1 -0
  566. package/dist/runtime/notification-dispatcher.d.ts +2 -0
  567. package/dist/runtime/notification-dispatcher.d.ts.map +1 -1
  568. package/dist/runtime/notification-dispatcher.js +12 -0
  569. package/dist/runtime/notification-dispatcher.js.map +1 -1
  570. package/dist/runtime/plugin-loader.d.ts +1 -1
  571. package/dist/runtime/queue/index.d.ts +4 -4
  572. package/dist/runtime/queue/index.d.ts.map +1 -1
  573. package/dist/runtime/queue/index.js +2 -2
  574. package/dist/runtime/queue/index.js.map +1 -1
  575. package/dist/runtime/queue/journal-backed-queue.d.ts +80 -0
  576. package/dist/runtime/queue/journal-backed-queue.d.ts.map +1 -0
  577. package/dist/runtime/queue/journal-backed-queue.js +511 -0
  578. package/dist/runtime/queue/journal-backed-queue.js.map +1 -0
  579. package/dist/runtime/queue/queue-claim-sweeper.d.ts +15 -0
  580. package/dist/runtime/queue/queue-claim-sweeper.d.ts.map +1 -0
  581. package/dist/runtime/queue/queue-claim-sweeper.js +28 -0
  582. package/dist/runtime/queue/queue-claim-sweeper.js.map +1 -0
  583. package/dist/runtime/schedule/engine-layers.d.ts +44 -0
  584. package/dist/runtime/schedule/engine-layers.d.ts.map +1 -0
  585. package/dist/runtime/schedule/engine-layers.js +433 -0
  586. package/dist/runtime/schedule/engine-layers.js.map +1 -0
  587. package/dist/runtime/schedule/engine.d.ts +82 -0
  588. package/dist/runtime/schedule/engine.d.ts.map +1 -0
  589. package/dist/runtime/schedule/engine.js +480 -0
  590. package/dist/runtime/schedule/engine.js.map +1 -0
  591. package/dist/runtime/schedule/index.d.ts +5 -0
  592. package/dist/runtime/schedule/index.d.ts.map +1 -0
  593. package/dist/runtime/schedule/index.js +5 -0
  594. package/dist/runtime/schedule/index.js.map +1 -0
  595. package/dist/runtime/schedule/presets.d.ts +536 -0
  596. package/dist/runtime/schedule/presets.d.ts.map +1 -0
  597. package/dist/runtime/schedule/presets.js +166 -0
  598. package/dist/runtime/schedule/presets.js.map +1 -0
  599. package/dist/runtime/schedule/source.d.ts +65 -0
  600. package/dist/runtime/schedule/source.d.ts.map +1 -0
  601. package/dist/runtime/schedule/source.js +16 -0
  602. package/dist/runtime/schedule/source.js.map +1 -0
  603. package/dist/runtime/schedule-engine-layers.d.ts +1 -37
  604. package/dist/runtime/schedule-engine-layers.d.ts.map +1 -1
  605. package/dist/runtime/schedule-engine-layers.js +1 -301
  606. package/dist/runtime/schedule-engine-layers.js.map +1 -1
  607. package/dist/runtime/schedule-engine.d.ts +1 -61
  608. package/dist/runtime/schedule-engine.d.ts.map +1 -1
  609. package/dist/runtime/schedule-engine.js +1 -397
  610. package/dist/runtime/schedule-engine.js.map +1 -1
  611. package/dist/runtime/schedule-presets.d.ts +2 -0
  612. package/dist/runtime/schedule-presets.d.ts.map +1 -0
  613. package/dist/runtime/schedule-presets.js +2 -0
  614. package/dist/runtime/schedule-presets.js.map +1 -0
  615. package/dist/runtime/schedule-source.d.ts +1 -64
  616. package/dist/runtime/schedule-source.d.ts.map +1 -1
  617. package/dist/runtime/schedule-source.js +1 -15
  618. package/dist/runtime/schedule-source.js.map +1 -1
  619. package/dist/runtime/store/approval-store.d.ts +26 -0
  620. package/dist/runtime/store/approval-store.d.ts.map +1 -0
  621. package/dist/runtime/store/approval-store.js +119 -0
  622. package/dist/runtime/store/approval-store.js.map +1 -0
  623. package/dist/runtime/store/health-store.d.ts +16 -0
  624. package/dist/runtime/store/health-store.d.ts.map +1 -0
  625. package/dist/runtime/store/health-store.js +68 -0
  626. package/dist/runtime/store/health-store.js.map +1 -0
  627. package/dist/runtime/store/index.d.ts +10 -0
  628. package/dist/runtime/store/index.d.ts.map +1 -0
  629. package/dist/runtime/store/index.js +7 -0
  630. package/dist/runtime/store/index.js.map +1 -0
  631. package/dist/runtime/store/outbox-store.d.ts +16 -0
  632. package/dist/runtime/store/outbox-store.d.ts.map +1 -0
  633. package/dist/runtime/store/outbox-store.js +92 -0
  634. package/dist/runtime/store/outbox-store.js.map +1 -0
  635. package/dist/runtime/store/runtime-journal.d.ts +19 -0
  636. package/dist/runtime/store/runtime-journal.d.ts.map +1 -0
  637. package/dist/runtime/store/runtime-journal.js +77 -0
  638. package/dist/runtime/store/runtime-journal.js.map +1 -0
  639. package/dist/runtime/store/runtime-paths.d.ts +35 -0
  640. package/dist/runtime/store/runtime-paths.d.ts.map +1 -0
  641. package/dist/runtime/store/runtime-paths.js +108 -0
  642. package/dist/runtime/store/runtime-paths.js.map +1 -0
  643. package/dist/runtime/store/runtime-schemas.d.ts +218 -0
  644. package/dist/runtime/store/runtime-schemas.d.ts.map +1 -0
  645. package/dist/runtime/store/runtime-schemas.js +94 -0
  646. package/dist/runtime/store/runtime-schemas.js.map +1 -0
  647. package/dist/runtime/types/daemon.d.ts +6 -0
  648. package/dist/runtime/types/daemon.d.ts.map +1 -1
  649. package/dist/runtime/types/daemon.js +3 -0
  650. package/dist/runtime/types/daemon.js.map +1 -1
  651. package/dist/runtime/types/hook.d.ts +12 -12
  652. package/dist/runtime/types/hook.d.ts.map +1 -1
  653. package/dist/runtime/types/hook.js +1 -0
  654. package/dist/runtime/types/hook.js.map +1 -1
  655. package/dist/runtime/types/schedule.d.ts +204 -27
  656. package/dist/runtime/types/schedule.d.ts.map +1 -1
  657. package/dist/runtime/types/schedule.js +25 -0
  658. package/dist/runtime/types/schedule.js.map +1 -1
  659. package/dist/runtime/watchdog.d.ts +44 -0
  660. package/dist/runtime/watchdog.d.ts.map +1 -0
  661. package/dist/runtime/watchdog.js +185 -0
  662. package/dist/runtime/watchdog.js.map +1 -0
  663. package/dist/tools/builtin/index.d.ts +15 -0
  664. package/dist/tools/builtin/index.d.ts.map +1 -1
  665. package/dist/tools/builtin/index.js +31 -2
  666. package/dist/tools/builtin/index.js.map +1 -1
  667. package/dist/tools/execution/MemoryConsolidateTool/MemoryConsolidateTool.d.ts +1 -1
  668. package/dist/tools/execution/MemoryConsolidateTool/MemoryConsolidateTool.d.ts.map +1 -1
  669. package/dist/tools/execution/MemoryConsolidateTool/MemoryConsolidateTool.js +6 -5
  670. package/dist/tools/execution/MemoryConsolidateTool/MemoryConsolidateTool.js.map +1 -1
  671. package/dist/tools/fs/FileEditTool/FileEditTool.d.ts +1 -1
  672. package/dist/tools/fs/FileEditTool/FileEditTool.d.ts.map +1 -1
  673. package/dist/tools/fs/FileEditTool/FileEditTool.js +1 -1
  674. package/dist/tools/fs/FileEditTool/FileEditTool.js.map +1 -1
  675. package/dist/tools/fs/FileWriteTool/FileWriteTool.d.ts +1 -1
  676. package/dist/tools/fs/FileWriteTool/FileWriteTool.d.ts.map +1 -1
  677. package/dist/tools/fs/FileWriteTool/FileWriteTool.js +1 -1
  678. package/dist/tools/fs/FileWriteTool/FileWriteTool.js.map +1 -1
  679. package/dist/tools/fs/GlobTool/GlobTool.d.ts +2 -2
  680. package/dist/tools/fs/GlobTool/GlobTool.d.ts.map +1 -1
  681. package/dist/tools/fs/GlobTool/GlobTool.js +2 -2
  682. package/dist/tools/fs/GlobTool/GlobTool.js.map +1 -1
  683. package/dist/tools/fs/GrepTool/GrepTool.d.ts +2 -2
  684. package/dist/tools/fs/GrepTool/GrepTool.d.ts.map +1 -1
  685. package/dist/tools/fs/GrepTool/GrepTool.js +9 -3
  686. package/dist/tools/fs/GrepTool/GrepTool.js.map +1 -1
  687. package/dist/tools/fs/JsonQueryTool/JsonQueryTool.d.ts +2 -2
  688. package/dist/tools/fs/JsonQueryTool/JsonQueryTool.d.ts.map +1 -1
  689. package/dist/tools/fs/JsonQueryTool/JsonQueryTool.js +6 -2
  690. package/dist/tools/fs/JsonQueryTool/JsonQueryTool.js.map +1 -1
  691. package/dist/tools/fs/ListDirTool/ListDirTool.d.ts +2 -2
  692. package/dist/tools/fs/ListDirTool/ListDirTool.d.ts.map +1 -1
  693. package/dist/tools/fs/ListDirTool/ListDirTool.js +2 -2
  694. package/dist/tools/fs/ListDirTool/ListDirTool.js.map +1 -1
  695. package/dist/tools/fs/ReadTool/ReadTool.d.ts +1 -1
  696. package/dist/tools/fs/ReadTool/ReadTool.d.ts.map +1 -1
  697. package/dist/tools/fs/ReadTool/ReadTool.js +1 -1
  698. package/dist/tools/fs/ReadTool/ReadTool.js.map +1 -1
  699. package/dist/tools/mutation/ArchiveGoalTool/ArchiveGoalTool.d.ts +1 -1
  700. package/dist/tools/mutation/ArchiveGoalTool/ArchiveGoalTool.d.ts.map +1 -1
  701. package/dist/tools/mutation/ArchiveGoalTool/ArchiveGoalTool.js +1 -1
  702. package/dist/tools/mutation/ArchiveGoalTool/ArchiveGoalTool.js.map +1 -1
  703. package/dist/tools/mutation/DeleteGoalTool/DeleteGoalTool.d.ts +1 -1
  704. package/dist/tools/mutation/DeleteGoalTool/DeleteGoalTool.d.ts.map +1 -1
  705. package/dist/tools/mutation/DeleteGoalTool/DeleteGoalTool.js +1 -1
  706. package/dist/tools/mutation/DeleteGoalTool/DeleteGoalTool.js.map +1 -1
  707. package/dist/tools/mutation/ResetTrustTool/ResetTrustTool.d.ts +1 -1
  708. package/dist/tools/mutation/ResetTrustTool/ResetTrustTool.d.ts.map +1 -1
  709. package/dist/tools/mutation/ResetTrustTool/ResetTrustTool.js +1 -1
  710. package/dist/tools/mutation/ResetTrustTool/ResetTrustTool.js.map +1 -1
  711. package/dist/tools/mutation/SetGoalTool/SetGoalTool.d.ts +2 -2
  712. package/dist/tools/mutation/SetGoalTool/SetGoalTool.d.ts.map +1 -1
  713. package/dist/tools/mutation/SetGoalTool/SetGoalTool.js +2 -2
  714. package/dist/tools/mutation/SetGoalTool/SetGoalTool.js.map +1 -1
  715. package/dist/tools/mutation/TaskCreateTool/TaskCreateTool.d.ts +216 -0
  716. package/dist/tools/mutation/TaskCreateTool/TaskCreateTool.d.ts.map +1 -0
  717. package/dist/tools/mutation/TaskCreateTool/TaskCreateTool.js +104 -0
  718. package/dist/tools/mutation/TaskCreateTool/TaskCreateTool.js.map +1 -0
  719. package/dist/tools/mutation/TaskCreateTool/constants.d.ts +5 -0
  720. package/dist/tools/mutation/TaskCreateTool/constants.d.ts.map +1 -0
  721. package/dist/tools/mutation/TaskCreateTool/constants.js +5 -0
  722. package/dist/tools/mutation/TaskCreateTool/constants.js.map +1 -0
  723. package/dist/tools/mutation/TaskCreateTool/prompt.d.ts +2 -0
  724. package/dist/tools/mutation/TaskCreateTool/prompt.d.ts.map +1 -0
  725. package/dist/tools/mutation/TaskCreateTool/prompt.js +2 -0
  726. package/dist/tools/mutation/TaskCreateTool/prompt.js.map +1 -0
  727. package/dist/tools/mutation/TaskOutputTool/TaskOutputTool.d.ts +46 -0
  728. package/dist/tools/mutation/TaskOutputTool/TaskOutputTool.d.ts.map +1 -0
  729. package/dist/tools/mutation/TaskOutputTool/TaskOutputTool.js +95 -0
  730. package/dist/tools/mutation/TaskOutputTool/TaskOutputTool.js.map +1 -0
  731. package/dist/tools/mutation/TaskOutputTool/constants.d.ts +5 -0
  732. package/dist/tools/mutation/TaskOutputTool/constants.d.ts.map +1 -0
  733. package/dist/tools/mutation/TaskOutputTool/constants.js +5 -0
  734. package/dist/tools/mutation/TaskOutputTool/constants.js.map +1 -0
  735. package/dist/tools/mutation/TaskOutputTool/prompt.d.ts +2 -0
  736. package/dist/tools/mutation/TaskOutputTool/prompt.d.ts.map +1 -0
  737. package/dist/tools/mutation/TaskOutputTool/prompt.js +2 -0
  738. package/dist/tools/mutation/TaskOutputTool/prompt.js.map +1 -0
  739. package/dist/tools/mutation/TaskStopTool/TaskStopTool.d.ts +40 -0
  740. package/dist/tools/mutation/TaskStopTool/TaskStopTool.d.ts.map +1 -0
  741. package/dist/tools/mutation/TaskStopTool/TaskStopTool.js +95 -0
  742. package/dist/tools/mutation/TaskStopTool/TaskStopTool.js.map +1 -0
  743. package/dist/tools/mutation/TaskStopTool/constants.d.ts +5 -0
  744. package/dist/tools/mutation/TaskStopTool/constants.d.ts.map +1 -0
  745. package/dist/tools/mutation/TaskStopTool/constants.js +5 -0
  746. package/dist/tools/mutation/TaskStopTool/constants.js.map +1 -0
  747. package/dist/tools/mutation/TaskStopTool/prompt.d.ts +2 -0
  748. package/dist/tools/mutation/TaskStopTool/prompt.d.ts.map +1 -0
  749. package/dist/tools/mutation/TaskStopTool/prompt.js +2 -0
  750. package/dist/tools/mutation/TaskStopTool/prompt.js.map +1 -0
  751. package/dist/tools/mutation/TaskUpdateTool/TaskUpdateTool.d.ts +270 -0
  752. package/dist/tools/mutation/TaskUpdateTool/TaskUpdateTool.d.ts.map +1 -0
  753. package/dist/tools/mutation/TaskUpdateTool/TaskUpdateTool.js +137 -0
  754. package/dist/tools/mutation/TaskUpdateTool/TaskUpdateTool.js.map +1 -0
  755. package/dist/tools/mutation/TaskUpdateTool/constants.d.ts +5 -0
  756. package/dist/tools/mutation/TaskUpdateTool/constants.d.ts.map +1 -0
  757. package/dist/tools/mutation/TaskUpdateTool/constants.js +5 -0
  758. package/dist/tools/mutation/TaskUpdateTool/constants.js.map +1 -0
  759. package/dist/tools/mutation/TaskUpdateTool/prompt.d.ts +2 -0
  760. package/dist/tools/mutation/TaskUpdateTool/prompt.d.ts.map +1 -0
  761. package/dist/tools/mutation/TaskUpdateTool/prompt.js +2 -0
  762. package/dist/tools/mutation/TaskUpdateTool/prompt.js.map +1 -0
  763. package/dist/tools/mutation/TogglePluginTool/TogglePluginTool.d.ts +1 -1
  764. package/dist/tools/mutation/TogglePluginTool/TogglePluginTool.d.ts.map +1 -1
  765. package/dist/tools/mutation/TogglePluginTool/TogglePluginTool.js +1 -1
  766. package/dist/tools/mutation/TogglePluginTool/TogglePluginTool.js.map +1 -1
  767. package/dist/tools/mutation/UpdateConfigTool/UpdateConfigTool.d.ts +2 -2
  768. package/dist/tools/mutation/UpdateConfigTool/UpdateConfigTool.d.ts.map +1 -1
  769. package/dist/tools/mutation/UpdateConfigTool/UpdateConfigTool.js +11 -2
  770. package/dist/tools/mutation/UpdateConfigTool/UpdateConfigTool.js.map +1 -1
  771. package/dist/tools/mutation/UpdateGoalTool/UpdateGoalTool.d.ts +2 -2
  772. package/dist/tools/mutation/UpdateGoalTool/UpdateGoalTool.d.ts.map +1 -1
  773. package/dist/tools/mutation/UpdateGoalTool/UpdateGoalTool.js +2 -2
  774. package/dist/tools/mutation/UpdateGoalTool/UpdateGoalTool.js.map +1 -1
  775. package/dist/tools/mutation/task-history-utils.d.ts +4 -0
  776. package/dist/tools/mutation/task-history-utils.d.ts.map +1 -0
  777. package/dist/tools/mutation/task-history-utils.js +30 -0
  778. package/dist/tools/mutation/task-history-utils.js.map +1 -0
  779. package/dist/tools/network/HttpFetchTool/HttpFetchTool.d.ts +1 -1
  780. package/dist/tools/network/HttpFetchTool/HttpFetchTool.d.ts.map +1 -1
  781. package/dist/tools/network/HttpFetchTool/HttpFetchTool.js +1 -1
  782. package/dist/tools/network/HttpFetchTool/HttpFetchTool.js.map +1 -1
  783. package/dist/tools/query/ArchitectureTool/ArchitectureTool.d.ts +2 -2
  784. package/dist/tools/query/ArchitectureTool/ArchitectureTool.d.ts.map +1 -1
  785. package/dist/tools/query/ArchitectureTool/ArchitectureTool.js +2 -2
  786. package/dist/tools/query/ArchitectureTool/ArchitectureTool.js.map +1 -1
  787. package/dist/tools/query/ConfigTool/ConfigTool.d.ts +2 -2
  788. package/dist/tools/query/ConfigTool/ConfigTool.d.ts.map +1 -1
  789. package/dist/tools/query/ConfigTool/ConfigTool.js +2 -2
  790. package/dist/tools/query/ConfigTool/ConfigTool.js.map +1 -1
  791. package/dist/tools/query/GoalStateTool/GoalStateTool.d.ts +2 -2
  792. package/dist/tools/query/GoalStateTool/GoalStateTool.d.ts.map +1 -1
  793. package/dist/tools/query/GoalStateTool/GoalStateTool.js +2 -2
  794. package/dist/tools/query/GoalStateTool/GoalStateTool.js.map +1 -1
  795. package/dist/tools/query/KnowledgeQueryTool/KnowledgeQueryTool.d.ts +2 -2
  796. package/dist/tools/query/KnowledgeQueryTool/KnowledgeQueryTool.d.ts.map +1 -1
  797. package/dist/tools/query/KnowledgeQueryTool/KnowledgeQueryTool.js +2 -2
  798. package/dist/tools/query/KnowledgeQueryTool/KnowledgeQueryTool.js.map +1 -1
  799. package/dist/tools/query/MemoryRecallTool/MemoryRecallTool.d.ts +7 -7
  800. package/dist/tools/query/MemoryRecallTool/MemoryRecallTool.d.ts.map +1 -1
  801. package/dist/tools/query/MemoryRecallTool/MemoryRecallTool.js +11 -10
  802. package/dist/tools/query/MemoryRecallTool/MemoryRecallTool.js.map +1 -1
  803. package/dist/tools/query/PluginStateTool/PluginStateTool.d.ts +2 -2
  804. package/dist/tools/query/PluginStateTool/PluginStateTool.d.ts.map +1 -1
  805. package/dist/tools/query/PluginStateTool/PluginStateTool.js +2 -2
  806. package/dist/tools/query/PluginStateTool/PluginStateTool.js.map +1 -1
  807. package/dist/tools/query/ProgressHistoryTool/ProgressHistoryTool.d.ts +4 -4
  808. package/dist/tools/query/ProgressHistoryTool/ProgressHistoryTool.d.ts.map +1 -1
  809. package/dist/tools/query/ProgressHistoryTool/ProgressHistoryTool.js +2 -2
  810. package/dist/tools/query/ProgressHistoryTool/ProgressHistoryTool.js.map +1 -1
  811. package/dist/tools/query/SessionHistoryTool/SessionHistoryTool.d.ts +2 -2
  812. package/dist/tools/query/SessionHistoryTool/SessionHistoryTool.d.ts.map +1 -1
  813. package/dist/tools/query/SessionHistoryTool/SessionHistoryTool.js +2 -2
  814. package/dist/tools/query/SessionHistoryTool/SessionHistoryTool.js.map +1 -1
  815. package/dist/tools/query/TaskGetTool/TaskGetTool.d.ts +34 -0
  816. package/dist/tools/query/TaskGetTool/TaskGetTool.d.ts.map +1 -0
  817. package/dist/tools/query/TaskGetTool/TaskGetTool.js +77 -0
  818. package/dist/tools/query/TaskGetTool/TaskGetTool.js.map +1 -0
  819. package/dist/tools/query/TaskGetTool/constants.d.ts +6 -0
  820. package/dist/tools/query/TaskGetTool/constants.d.ts.map +1 -0
  821. package/dist/tools/query/TaskGetTool/constants.js +6 -0
  822. package/dist/tools/query/TaskGetTool/constants.js.map +1 -0
  823. package/dist/tools/query/TaskGetTool/prompt.d.ts +2 -0
  824. package/dist/tools/query/TaskGetTool/prompt.d.ts.map +1 -0
  825. package/dist/tools/query/TaskGetTool/prompt.js +2 -0
  826. package/dist/tools/query/TaskGetTool/prompt.js.map +1 -0
  827. package/dist/tools/query/TaskListTool/TaskListTool.d.ts +58 -0
  828. package/dist/tools/query/TaskListTool/TaskListTool.d.ts.map +1 -0
  829. package/dist/tools/query/TaskListTool/TaskListTool.js +101 -0
  830. package/dist/tools/query/TaskListTool/TaskListTool.js.map +1 -0
  831. package/dist/tools/query/TaskListTool/constants.d.ts +6 -0
  832. package/dist/tools/query/TaskListTool/constants.d.ts.map +1 -0
  833. package/dist/tools/query/TaskListTool/constants.js +6 -0
  834. package/dist/tools/query/TaskListTool/constants.js.map +1 -0
  835. package/dist/tools/query/TaskListTool/prompt.d.ts +2 -0
  836. package/dist/tools/query/TaskListTool/prompt.d.ts.map +1 -0
  837. package/dist/tools/query/TaskListTool/prompt.js +2 -0
  838. package/dist/tools/query/TaskListTool/prompt.js.map +1 -0
  839. package/dist/tools/query/TrustStateTool/TrustStateTool.d.ts +2 -2
  840. package/dist/tools/query/TrustStateTool/TrustStateTool.d.ts.map +1 -1
  841. package/dist/tools/query/TrustStateTool/TrustStateTool.js +2 -2
  842. package/dist/tools/query/TrustStateTool/TrustStateTool.js.map +1 -1
  843. package/dist/tools/schedule/CreateScheduleTool/CreateScheduleTool.d.ts +1638 -0
  844. package/dist/tools/schedule/CreateScheduleTool/CreateScheduleTool.d.ts.map +1 -0
  845. package/dist/tools/schedule/CreateScheduleTool/CreateScheduleTool.js +86 -0
  846. package/dist/tools/schedule/CreateScheduleTool/CreateScheduleTool.js.map +1 -0
  847. package/dist/tools/schedule/CreateScheduleTool/constants.d.ts +5 -0
  848. package/dist/tools/schedule/CreateScheduleTool/constants.d.ts.map +1 -0
  849. package/dist/tools/schedule/CreateScheduleTool/constants.js +5 -0
  850. package/dist/tools/schedule/CreateScheduleTool/constants.js.map +1 -0
  851. package/dist/tools/schedule/CreateScheduleTool/prompt.d.ts +2 -0
  852. package/dist/tools/schedule/CreateScheduleTool/prompt.d.ts.map +1 -0
  853. package/dist/tools/schedule/CreateScheduleTool/prompt.js +2 -0
  854. package/dist/tools/schedule/CreateScheduleTool/prompt.js.map +1 -0
  855. package/dist/tools/schedule/GetScheduleTool/GetScheduleTool.d.ts +28 -0
  856. package/dist/tools/schedule/GetScheduleTool/GetScheduleTool.d.ts.map +1 -0
  857. package/dist/tools/schedule/GetScheduleTool/GetScheduleTool.js +79 -0
  858. package/dist/tools/schedule/GetScheduleTool/GetScheduleTool.js.map +1 -0
  859. package/dist/tools/schedule/GetScheduleTool/constants.d.ts +6 -0
  860. package/dist/tools/schedule/GetScheduleTool/constants.d.ts.map +1 -0
  861. package/dist/tools/schedule/GetScheduleTool/constants.js +6 -0
  862. package/dist/tools/schedule/GetScheduleTool/constants.js.map +1 -0
  863. package/dist/tools/schedule/GetScheduleTool/prompt.d.ts +2 -0
  864. package/dist/tools/schedule/GetScheduleTool/prompt.d.ts.map +1 -0
  865. package/dist/tools/schedule/GetScheduleTool/prompt.js +2 -0
  866. package/dist/tools/schedule/GetScheduleTool/prompt.js.map +1 -0
  867. package/dist/tools/schedule/ListSchedulesTool/ListSchedulesTool.d.ts +40 -0
  868. package/dist/tools/schedule/ListSchedulesTool/ListSchedulesTool.d.ts.map +1 -0
  869. package/dist/tools/schedule/ListSchedulesTool/ListSchedulesTool.js +83 -0
  870. package/dist/tools/schedule/ListSchedulesTool/ListSchedulesTool.js.map +1 -0
  871. package/dist/tools/schedule/ListSchedulesTool/constants.d.ts +6 -0
  872. package/dist/tools/schedule/ListSchedulesTool/constants.d.ts.map +1 -0
  873. package/dist/tools/schedule/ListSchedulesTool/constants.js +6 -0
  874. package/dist/tools/schedule/ListSchedulesTool/constants.js.map +1 -0
  875. package/dist/tools/schedule/ListSchedulesTool/prompt.d.ts +2 -0
  876. package/dist/tools/schedule/ListSchedulesTool/prompt.d.ts.map +1 -0
  877. package/dist/tools/schedule/ListSchedulesTool/prompt.js +2 -0
  878. package/dist/tools/schedule/ListSchedulesTool/prompt.js.map +1 -0
  879. package/dist/tools/schedule/PauseScheduleTool/PauseScheduleTool.d.ts +32 -0
  880. package/dist/tools/schedule/PauseScheduleTool/PauseScheduleTool.d.ts.map +1 -0
  881. package/dist/tools/schedule/PauseScheduleTool/PauseScheduleTool.js +94 -0
  882. package/dist/tools/schedule/PauseScheduleTool/PauseScheduleTool.js.map +1 -0
  883. package/dist/tools/schedule/PauseScheduleTool/constants.d.ts +5 -0
  884. package/dist/tools/schedule/PauseScheduleTool/constants.d.ts.map +1 -0
  885. package/dist/tools/schedule/PauseScheduleTool/constants.js +5 -0
  886. package/dist/tools/schedule/PauseScheduleTool/constants.js.map +1 -0
  887. package/dist/tools/schedule/PauseScheduleTool/prompt.d.ts +2 -0
  888. package/dist/tools/schedule/PauseScheduleTool/prompt.d.ts.map +1 -0
  889. package/dist/tools/schedule/PauseScheduleTool/prompt.js +2 -0
  890. package/dist/tools/schedule/PauseScheduleTool/prompt.js.map +1 -0
  891. package/dist/tools/schedule/RemoveScheduleTool/RemoveScheduleTool.d.ts +35 -0
  892. package/dist/tools/schedule/RemoveScheduleTool/RemoveScheduleTool.d.ts.map +1 -0
  893. package/dist/tools/schedule/RemoveScheduleTool/RemoveScheduleTool.js +100 -0
  894. package/dist/tools/schedule/RemoveScheduleTool/RemoveScheduleTool.js.map +1 -0
  895. package/dist/tools/schedule/RemoveScheduleTool/constants.d.ts +5 -0
  896. package/dist/tools/schedule/RemoveScheduleTool/constants.d.ts.map +1 -0
  897. package/dist/tools/schedule/RemoveScheduleTool/constants.js +5 -0
  898. package/dist/tools/schedule/RemoveScheduleTool/constants.js.map +1 -0
  899. package/dist/tools/schedule/RemoveScheduleTool/prompt.d.ts +2 -0
  900. package/dist/tools/schedule/RemoveScheduleTool/prompt.d.ts.map +1 -0
  901. package/dist/tools/schedule/RemoveScheduleTool/prompt.js +2 -0
  902. package/dist/tools/schedule/RemoveScheduleTool/prompt.js.map +1 -0
  903. package/dist/tools/schedule/ResumeScheduleTool/ResumeScheduleTool.d.ts +32 -0
  904. package/dist/tools/schedule/ResumeScheduleTool/ResumeScheduleTool.d.ts.map +1 -0
  905. package/dist/tools/schedule/ResumeScheduleTool/ResumeScheduleTool.js +94 -0
  906. package/dist/tools/schedule/ResumeScheduleTool/ResumeScheduleTool.js.map +1 -0
  907. package/dist/tools/schedule/ResumeScheduleTool/constants.d.ts +5 -0
  908. package/dist/tools/schedule/ResumeScheduleTool/constants.d.ts.map +1 -0
  909. package/dist/tools/schedule/ResumeScheduleTool/constants.js +5 -0
  910. package/dist/tools/schedule/ResumeScheduleTool/constants.js.map +1 -0
  911. package/dist/tools/schedule/ResumeScheduleTool/prompt.d.ts +2 -0
  912. package/dist/tools/schedule/ResumeScheduleTool/prompt.d.ts.map +1 -0
  913. package/dist/tools/schedule/ResumeScheduleTool/prompt.js +2 -0
  914. package/dist/tools/schedule/ResumeScheduleTool/prompt.js.map +1 -0
  915. package/dist/tools/schedule/UpdateScheduleTool/UpdateScheduleTool.d.ts +770 -0
  916. package/dist/tools/schedule/UpdateScheduleTool/UpdateScheduleTool.d.ts.map +1 -0
  917. package/dist/tools/schedule/UpdateScheduleTool/UpdateScheduleTool.js +131 -0
  918. package/dist/tools/schedule/UpdateScheduleTool/UpdateScheduleTool.js.map +1 -0
  919. package/dist/tools/schedule/UpdateScheduleTool/constants.d.ts +5 -0
  920. package/dist/tools/schedule/UpdateScheduleTool/constants.d.ts.map +1 -0
  921. package/dist/tools/schedule/UpdateScheduleTool/constants.js +5 -0
  922. package/dist/tools/schedule/UpdateScheduleTool/constants.js.map +1 -0
  923. package/dist/tools/schedule/UpdateScheduleTool/prompt.d.ts +2 -0
  924. package/dist/tools/schedule/UpdateScheduleTool/prompt.d.ts.map +1 -0
  925. package/dist/tools/schedule/UpdateScheduleTool/prompt.js +2 -0
  926. package/dist/tools/schedule/UpdateScheduleTool/prompt.js.map +1 -0
  927. package/dist/tools/system/EnvTool/EnvTool.d.ts +2 -2
  928. package/dist/tools/system/EnvTool/EnvTool.d.ts.map +1 -1
  929. package/dist/tools/system/EnvTool/EnvTool.js +2 -2
  930. package/dist/tools/system/EnvTool/EnvTool.js.map +1 -1
  931. package/dist/tools/system/GitDiffTool/GitDiffTool.d.ts +2 -2
  932. package/dist/tools/system/GitDiffTool/GitDiffTool.d.ts.map +1 -1
  933. package/dist/tools/system/GitDiffTool/GitDiffTool.js +2 -2
  934. package/dist/tools/system/GitDiffTool/GitDiffTool.js.map +1 -1
  935. package/dist/tools/system/GitLogTool/GitLogTool.d.ts +2 -2
  936. package/dist/tools/system/GitLogTool/GitLogTool.d.ts.map +1 -1
  937. package/dist/tools/system/GitLogTool/GitLogTool.js +2 -2
  938. package/dist/tools/system/GitLogTool/GitLogTool.js.map +1 -1
  939. package/dist/tools/system/SleepTool/SleepTool.d.ts +2 -2
  940. package/dist/tools/system/SleepTool/SleepTool.d.ts.map +1 -1
  941. package/dist/tools/system/SleepTool/SleepTool.js +2 -2
  942. package/dist/tools/system/SleepTool/SleepTool.js.map +1 -1
  943. package/dist/tools/system/test-runner.d.ts +2 -52
  944. package/dist/tools/system/test-runner.d.ts.map +1 -1
  945. package/dist/tools/system/test-runner.js +1 -180
  946. package/dist/tools/system/test-runner.js.map +1 -1
  947. package/package.json +1 -1
@@ -0,0 +1,875 @@
1
+ import * as path from "node:path";
2
+ import { EventServer } from "../event/server.js";
3
+ import { DaemonConfigSchema, DaemonStateSchema } from "../../base/types/daemon.js";
4
+ import { generateCronEntry } from "./signals.js";
5
+ import { rotateDaemonLog, calculateAdaptiveInterval as calcAdaptiveInterval } from "./health.js";
6
+ import { HttpChannelAdapter } from "../gateway/index.js";
7
+ import { PulSeedEventSchema } from "../../base/types/drive.js";
8
+ import { LoopSupervisor } from "../executor/index.js";
9
+ import { ApprovalStore, OutboxStore, RuntimeHealthStore, createRuntimeStorePaths } from "../store/index.js";
10
+ import { LeaderLockManager } from "../leader-lock-manager.js";
11
+ import { GoalLeaseManager } from "../goal-lease-manager.js";
12
+ import { JournalBackedQueue } from "../queue/journal-backed-queue.js";
13
+ import { QueueClaimSweeper } from "../queue/queue-claim-sweeper.js";
14
+ import { ApprovalBroker } from "../approval-broker.js";
15
+ import { CommandDispatcher } from "../command-dispatcher.js";
16
+ import { EventDispatcher } from "../event/dispatcher.js";
17
+ import { RuntimeOwnershipCoordinator, } from "./runtime-ownership.js";
18
+ import { ProcessShutdownCoordinator, startDaemonStatusHeartbeat, } from "./runner-lifecycle.js";
19
+ import { checkCrashRecoveryMarker, cleanupDaemonRun, collectGoalCycleScheduleSnapshot, deleteShutdownMarkerFile, determineActiveGoalsForCycle, expireOldCronTasks, getMaxGapScoreForGoals, getNextIntervalForGoals, processCronTasksForDaemon, processScheduleEntriesForDaemon, readShutdownMarkerFile, restoreInterruptedGoals, runProactiveMaintenance, runSupervisorMaintenanceCycleForDaemon, saveDaemonStateFile, writeChatMessageEvent, writeShutdownMarkerFile, } from "./index.js";
20
+ // Re-exports for callers that imported these from daemon-runner
21
+ export { generateCronEntry } from "./signals.js";
22
+ export { rotateDaemonLog, calculateAdaptiveInterval } from "./health.js";
23
+ const RUNTIME_LEADER_LEASE_MS = 30_000;
24
+ const RUNTIME_LEADER_HEARTBEAT_MS = 10_000;
25
+ export class DaemonRunner {
26
+ coreLoop;
27
+ driveSystem;
28
+ stateManager;
29
+ pidManager;
30
+ logger;
31
+ config;
32
+ running = false;
33
+ shuttingDown = false;
34
+ state;
35
+ baseDir;
36
+ logDir;
37
+ logPath;
38
+ eventServer;
39
+ approvalFn;
40
+ sleepAbortController = null;
41
+ currentGoalIds = [];
42
+ currentLoopIndex = 0;
43
+ lastProactiveTickAt = 0;
44
+ llmClient;
45
+ reportingEngine;
46
+ cronScheduler;
47
+ scheduleEngine;
48
+ consecutiveIdleCycles = 0;
49
+ gateway;
50
+ supervisor = null;
51
+ cronScheduleInterval = null;
52
+ shutdownResolve = null;
53
+ shutdownCoordinator = null;
54
+ stopStatusHeartbeat = null;
55
+ deps;
56
+ runtimeRoot = null;
57
+ approvalStore = null;
58
+ outboxStore = null;
59
+ runtimeHealthStore = null;
60
+ leaderLockManager = null;
61
+ goalLeaseManager = null;
62
+ journalQueue = null;
63
+ queueClaimSweeper = null;
64
+ approvalBroker = null;
65
+ commandDispatcher = null;
66
+ eventDispatcher = null;
67
+ runtimeOwnership;
68
+ constructor(deps) {
69
+ this.deps = deps;
70
+ this.coreLoop = deps.coreLoop;
71
+ this.driveSystem = deps.driveSystem;
72
+ this.stateManager = deps.stateManager;
73
+ this.pidManager = deps.pidManager;
74
+ this.logger = deps.logger;
75
+ this.eventServer = deps.eventServer;
76
+ this.llmClient = deps.llmClient;
77
+ this.reportingEngine = deps.reportingEngine;
78
+ this.cronScheduler = deps.cronScheduler;
79
+ this.scheduleEngine = deps.scheduleEngine;
80
+ this.gateway = deps.gateway;
81
+ this.supervisor = deps.supervisor ?? null;
82
+ this.lastProactiveTickAt = Date.now();
83
+ // Parse config with defaults via DaemonConfigSchema.parse()
84
+ this.config = DaemonConfigSchema.parse(deps.config ?? {});
85
+ // Resolve base directory from stateManager
86
+ this.baseDir = this.stateManager.getBaseDir();
87
+ // Pre-compute log paths used by rotateLog
88
+ this.logDir = path.join(this.baseDir, this.config.log_dir);
89
+ this.logPath = path.join(this.logDir, "pulseed.log");
90
+ this.runtimeRoot = this.resolveRuntimeRoot();
91
+ const runtimePaths = createRuntimeStorePaths(this.runtimeRoot);
92
+ this.approvalStore = new ApprovalStore(runtimePaths);
93
+ this.outboxStore = new OutboxStore(runtimePaths);
94
+ this.runtimeHealthStore = new RuntimeHealthStore(runtimePaths);
95
+ this.leaderLockManager = new LeaderLockManager(this.runtimeRoot);
96
+ this.goalLeaseManager = new GoalLeaseManager(this.runtimeRoot);
97
+ this.approvalBroker = new ApprovalBroker({
98
+ store: this.approvalStore,
99
+ logger: this.logger,
100
+ });
101
+ this.journalQueue = new JournalBackedQueue({
102
+ journalPath: path.join(this.runtimeRoot, "queue.json"),
103
+ });
104
+ this.queueClaimSweeper = new QueueClaimSweeper({
105
+ queue: this.journalQueue,
106
+ });
107
+ this.runtimeOwnership = new RuntimeOwnershipCoordinator({
108
+ runtimeRoot: this.runtimeRoot,
109
+ logger: this.logger,
110
+ approvalStore: this.approvalStore,
111
+ outboxStore: this.outboxStore,
112
+ runtimeHealthStore: this.runtimeHealthStore,
113
+ leaderLockManager: this.leaderLockManager,
114
+ onLeadershipLost: (reason) => this.failRuntimeLeadership(reason),
115
+ });
116
+ // Initialize daemon state
117
+ this.state = DaemonStateSchema.parse({
118
+ pid: process.pid,
119
+ started_at: new Date().toISOString(),
120
+ last_loop_at: null,
121
+ loop_count: 0,
122
+ active_goals: [],
123
+ status: "stopped",
124
+ crash_count: 0,
125
+ last_error: null,
126
+ });
127
+ }
128
+ resolveRuntimeRoot() {
129
+ const configuredRoot = this.config.runtime_root;
130
+ if (!configuredRoot || configuredRoot.trim() === "") {
131
+ return path.join(this.baseDir, "runtime");
132
+ }
133
+ return path.isAbsolute(configuredRoot)
134
+ ? configuredRoot
135
+ : path.resolve(this.baseDir, configuredRoot);
136
+ }
137
+ // ─── Public API ───
138
+ /**
139
+ * Start daemon loop for given goals.
140
+ * Throws if daemon is already running.
141
+ */
142
+ async start(goalIds) {
143
+ let startupReady = false;
144
+ try {
145
+ // 2. Rotate log if needed, then check for crash recovery marker
146
+ await this.rotateLog();
147
+ await this.checkCrashRecovery();
148
+ await this.initializeRuntimeFoundation();
149
+ await this.acquireRuntimeLeadership();
150
+ // 2c. Start EventServer (always-on) and file watcher
151
+ if (!this.eventServer) {
152
+ const esPort = this.config.event_server_port ?? 41700;
153
+ this.eventServer = new EventServer(this.driveSystem, {
154
+ port: esPort,
155
+ stateManager: this.stateManager,
156
+ outboxStore: this.outboxStore ?? undefined,
157
+ }, this.logger);
158
+ }
159
+ if (this.outboxStore) {
160
+ this.eventServer.setOutboxStore?.(this.outboxStore);
161
+ }
162
+ this.eventServer.setActiveWorkersProvider?.(() => {
163
+ const workers = this.supervisor?.getState().workers ?? [];
164
+ return workers
165
+ .filter((worker) => worker.goalId !== null)
166
+ .map((worker) => ({
167
+ worker_id: worker.workerId,
168
+ goal_id: worker.goalId,
169
+ started_at: worker.startedAt,
170
+ iterations: worker.iterations,
171
+ }));
172
+ });
173
+ if (this.approvalBroker) {
174
+ this.approvalBroker.setBroadcast((eventType, data) => {
175
+ void this.eventServer?.broadcast?.(eventType, data);
176
+ });
177
+ this.eventServer.setApprovalBroker?.(this.approvalBroker);
178
+ }
179
+ this.eventServer.setCommandEnvelopeHook?.(async (envelope) => this.handleInboundEnvelope(envelope));
180
+ if (this.gateway) {
181
+ // Phase A: Route through Gateway → Envelope → writeEvent
182
+ const httpAdapter = new HttpChannelAdapter(this.eventServer);
183
+ this.gateway.registerAdapter(httpAdapter);
184
+ this.gateway.onEnvelope(async (envelope) => this.handleInboundEnvelope(envelope));
185
+ // Wire onHighPriority to abort sleep — done via the abortSleep() public method.
186
+ // Callers who construct buses should pass: onHighPriority: () => daemon.abortSleep()
187
+ // The daemon provides abortSleep() below for this purpose.
188
+ await this.gateway.start();
189
+ this.logger.info("Gateway started with HTTP adapter", { port: this.eventServer.getPort() });
190
+ }
191
+ else {
192
+ await this.eventServer.start();
193
+ this.eventServer.startFileWatcher();
194
+ this.logger.info("EventServer started", { port: this.eventServer.getPort() });
195
+ }
196
+ // Wire approval bridge if not already provided
197
+ if (!this.approvalFn && this.eventServer) {
198
+ const es = this.eventServer;
199
+ this.approvalFn = async (task) => {
200
+ const goalId = String(task["goal_id"] ?? "unknown");
201
+ const description = String(task["description"] ?? "");
202
+ const action = String(task["action"] ?? "");
203
+ const taskId = String(task["id"] ?? "");
204
+ if (this.reportingEngine) {
205
+ try {
206
+ await this.reportingEngine.generateNotification("approval_required", {
207
+ goalId,
208
+ message: description || action || taskId || "Task approval required",
209
+ details: [`task_id: ${taskId || "(none)"}`, `action: ${action || "(none)"}`].join("\n"),
210
+ });
211
+ }
212
+ catch (err) {
213
+ this.logger.warn("Approval notification dispatch failed", {
214
+ goalId,
215
+ error: err instanceof Error ? err.message : String(err),
216
+ });
217
+ }
218
+ }
219
+ return es.requestApproval(goalId, {
220
+ id: taskId,
221
+ description,
222
+ action,
223
+ });
224
+ };
225
+ }
226
+ this.stopStatusHeartbeat = startDaemonStatusHeartbeat({
227
+ eventServer: this.eventServer,
228
+ getSnapshot: () => ({
229
+ status: this.state.status,
230
+ activeGoals: this.state.active_goals,
231
+ loopCount: this.state.loop_count,
232
+ startedAt: this.state.started_at,
233
+ }),
234
+ });
235
+ this.driveSystem.startWatcher((event) => this.onEventReceived(event));
236
+ this.shuttingDown = false;
237
+ const shutdownTimeout = this.config.crash_recovery.graceful_shutdown_timeout_ms ?? 30_000;
238
+ this.shutdownCoordinator = new ProcessShutdownCoordinator({
239
+ logger: this.logger,
240
+ gracefulShutdownTimeoutMs: shutdownTimeout,
241
+ onShutdown: () => this.beginGracefulShutdown(),
242
+ onForceStop: () => {
243
+ this.running = false;
244
+ },
245
+ });
246
+ this.shutdownCoordinator.activate();
247
+ // 4. Restore state from previous interrupted run
248
+ const mergedGoalIds = await this.restoreState(goalIds);
249
+ // 5. Save initial daemon state
250
+ this.running = true;
251
+ this.currentGoalIds = mergedGoalIds;
252
+ this.currentLoopIndex = 0;
253
+ this.state = DaemonStateSchema.parse({
254
+ pid: process.pid,
255
+ started_at: new Date().toISOString(),
256
+ last_loop_at: null,
257
+ loop_count: 0,
258
+ active_goals: mergedGoalIds,
259
+ status: "running",
260
+ crash_count: 0,
261
+ last_error: null,
262
+ });
263
+ await this.saveDaemonState();
264
+ // 5b. Write "running" shutdown marker (crash detection on next startup)
265
+ await this.writeShutdownMarker({
266
+ goal_ids: mergedGoalIds,
267
+ loop_index: 0,
268
+ timestamp: new Date().toISOString(),
269
+ reason: "startup",
270
+ state: "running",
271
+ });
272
+ // 6. Log start
273
+ this.logger.info("Daemon started", {
274
+ pid: process.pid,
275
+ goals: mergedGoalIds,
276
+ check_interval_ms: this.config.check_interval_ms,
277
+ });
278
+ const sweepResult = this.queueClaimSweeper?.sweep();
279
+ if (sweepResult && (sweepResult.reclaimed > 0 || sweepResult.deadlettered > 0)) {
280
+ this.logger.info("Recovered stale runtime claims on startup", {
281
+ reclaimed: sweepResult.reclaimed,
282
+ deadlettered: sweepResult.deadlettered,
283
+ expiredClaimTokens: sweepResult.expiredClaimTokens,
284
+ });
285
+ }
286
+ this.queueClaimSweeper?.start();
287
+ // 7. Create supervisor if not already provided.
288
+ if (!this.supervisor) {
289
+ const factory = this.deps.coreLoopFactory ?? (() => this.coreLoop);
290
+ this.supervisor = new LoopSupervisor({
291
+ coreLoopFactory: factory,
292
+ journalQueue: this.journalQueue,
293
+ goalLeaseManager: this.goalLeaseManager,
294
+ driveSystem: this.driveSystem,
295
+ stateManager: this.stateManager,
296
+ logger: this.logger,
297
+ onGoalComplete: async (goalId, result) => this.handleGoalCompletion(goalId, result),
298
+ onEscalation: (goalId, crashCount, lastError) => {
299
+ this.logger.error(`Goal ${goalId} suspended after ${crashCount} crashes: ${lastError}`);
300
+ },
301
+ }, { iterationsPerCycle: this.config.iterations_per_cycle });
302
+ }
303
+ if (!this.eventDispatcher) {
304
+ this.eventDispatcher = new EventDispatcher({
305
+ journalQueue: this.journalQueue,
306
+ logger: this.logger,
307
+ onGoalActivate: async (goalId) => this.handleGoalStartCommand(goalId),
308
+ onExternalEvent: async (event) => this.driveSystem.writeEvent(PulSeedEventSchema.parse(event)),
309
+ onCronTaskDue: async (task) => this.handleCronTaskDue(task.id),
310
+ });
311
+ }
312
+ if (!this.commandDispatcher) {
313
+ this.commandDispatcher = new CommandDispatcher({
314
+ journalQueue: this.journalQueue,
315
+ logger: this.logger,
316
+ onGoalStart: async (goalId) => this.handleGoalStartCommand(goalId),
317
+ onGoalStop: async (goalId) => this.handleGoalStopCommand(goalId),
318
+ onChatMessage: async (goalId, message) => this.handleChatMessageCommand(goalId, message),
319
+ onApprovalResponse: async (goalId, requestId, approved) => this.handleApprovalResponseCommand(goalId, requestId, approved),
320
+ });
321
+ }
322
+ await this.saveRuntimeHealthSnapshot(this.supervisor
323
+ ? "execution_ownership_durable"
324
+ : "foundation_only", {
325
+ gateway: this.gateway || this.eventServer ? "ok" : "degraded",
326
+ queue: "ok",
327
+ leases: "ok",
328
+ approval: "ok",
329
+ outbox: "ok",
330
+ supervisor: this.supervisor ? "ok" : "degraded",
331
+ });
332
+ // 8. Run main loop — supervisor mode when supervisor is injected via deps,
333
+ // fallback to sequential runLoop otherwise.
334
+ startupReady = true;
335
+ let cleanupHandled = false;
336
+ try {
337
+ await this.eventDispatcher?.start();
338
+ await this.commandDispatcher?.start();
339
+ if (this.supervisor) {
340
+ // Supervisor handles goal execution; cron/schedule must also run in this mode.
341
+ await this.supervisor.start(mergedGoalIds);
342
+ const maintenanceIntervalMs = this.config.check_interval_ms;
343
+ await this.runSupervisorMaintenanceCycle();
344
+ this.cronScheduleInterval = setInterval(async () => {
345
+ if (this.shuttingDown)
346
+ return;
347
+ await this.runSupervisorMaintenanceCycle();
348
+ }, maintenanceIntervalMs);
349
+ // Block until stop() is called.
350
+ await new Promise((resolve) => {
351
+ this.shutdownResolve = resolve;
352
+ // If already stopped before we get here, resolve immediately.
353
+ if (!this.running)
354
+ resolve();
355
+ });
356
+ }
357
+ else {
358
+ // Fallback: sequential mode
359
+ await this.runLoop();
360
+ cleanupHandled = true;
361
+ }
362
+ }
363
+ finally {
364
+ this.queueClaimSweeper?.stop();
365
+ this.shutdownCoordinator?.dispose();
366
+ this.shutdownCoordinator = null;
367
+ this.stopStatusHeartbeat?.();
368
+ this.stopStatusHeartbeat = null;
369
+ if (this.cronScheduleInterval !== null) {
370
+ clearInterval(this.cronScheduleInterval);
371
+ this.cronScheduleInterval = null;
372
+ }
373
+ await this.supervisor?.shutdown();
374
+ await this.eventDispatcher?.shutdown();
375
+ await this.commandDispatcher?.shutdown();
376
+ this.driveSystem.stopWatcher();
377
+ if (this.gateway) {
378
+ await this.gateway.stop();
379
+ this.logger.info("Gateway stopped");
380
+ }
381
+ else if (this.eventServer) {
382
+ this.eventServer.stopFileWatcher();
383
+ await this.eventServer.stop();
384
+ this.logger.info("EventServer stopped");
385
+ }
386
+ if (!cleanupHandled) {
387
+ await this.cleanup();
388
+ }
389
+ }
390
+ }
391
+ catch (err) {
392
+ if (!startupReady) {
393
+ await this.releaseStartupOwnership();
394
+ }
395
+ throw err;
396
+ }
397
+ }
398
+ async initializeRuntimeFoundation() {
399
+ await this.runtimeOwnership.initializeFoundation();
400
+ }
401
+ async saveRuntimeHealthSnapshot(phase, components) {
402
+ await this.runtimeOwnership.saveRuntimeHealthSnapshot(phase, components);
403
+ }
404
+ async acquireRuntimeLeadership() {
405
+ await this.runtimeOwnership.acquireLeadership(RUNTIME_LEADER_LEASE_MS, RUNTIME_LEADER_HEARTBEAT_MS);
406
+ }
407
+ failRuntimeLeadership(reason) {
408
+ if (this.state.status === "crashed") {
409
+ return;
410
+ }
411
+ this.logger.error("Lost runtime leadership; stopping daemon", {
412
+ error: reason,
413
+ });
414
+ this.state.status = "crashed";
415
+ this.state.last_error = reason;
416
+ this.running = false;
417
+ this.shuttingDown = true;
418
+ this.shutdownResolve?.();
419
+ this.sleepAbortController?.abort();
420
+ void this.saveDaemonState();
421
+ }
422
+ async releaseStartupOwnership() {
423
+ await this.runtimeOwnership.releaseLeadership();
424
+ }
425
+ /** Expose approvalFn for callers (e.g. cmdStart) to wire into TaskLifecycle */
426
+ getApprovalFn() {
427
+ return this.approvalFn;
428
+ }
429
+ /**
430
+ * Abort the current sleep cycle immediately.
431
+ */
432
+ abortSleep() {
433
+ this.sleepAbortController?.abort();
434
+ }
435
+ /**
436
+ * Signal daemon to stop after current iteration completes.
437
+ * Saves interrupted_goals so they can be restored on next start.
438
+ */
439
+ stop() {
440
+ this.running = false;
441
+ this.shutdownResolve?.();
442
+ this.sleepAbortController?.abort();
443
+ this.state.status = "stopping";
444
+ // Save current active_goals as interrupted_goals for state restoration
445
+ this.state.interrupted_goals = [...this.state.active_goals];
446
+ // Do NOT persist here — cleanup() will save the final state after the loop exits.
447
+ // Calling saveDaemonState() here would race with cleanup()'s save and corrupt the file.
448
+ this.logger.info("Stop requested — daemon will stop after current iteration");
449
+ }
450
+ // ─── Private: Main Loop ───
451
+ /**
452
+ * Main daemon loop. Runs until this.running is false or a critical error occurs.
453
+ */
454
+ async runLoop() {
455
+ while (this.running && !this.shuttingDown) {
456
+ try {
457
+ const goalIds = [...this.currentGoalIds];
458
+ const cycleSnapshot = await this.collectGoalCycleSnapshot(goalIds);
459
+ // 1. Determine which goals need activation
460
+ const activeGoals = await this.determineActiveGoals(goalIds, cycleSnapshot);
461
+ if (activeGoals.length === 0) {
462
+ this.logger.info("No goals need activation this cycle", {
463
+ checked: goalIds.length,
464
+ });
465
+ }
466
+ // 2. Execute loop for each active goal
467
+ for (const goalId of activeGoals) {
468
+ if (!this.running)
469
+ break;
470
+ this.logger.info(`Running loop for goal: ${goalId}`);
471
+ try {
472
+ const iterationsPerCycle = this.config.iterations_per_cycle ?? 1;
473
+ const result = await this.coreLoop.run(goalId, { maxIterations: iterationsPerCycle });
474
+ this.state.loop_count++;
475
+ this.currentLoopIndex = this.state.loop_count;
476
+ this.state.last_loop_at = new Date().toISOString();
477
+ this.logger.info(`Loop completed for goal: ${goalId}`, {
478
+ status: result.finalStatus,
479
+ iterations: result.totalIterations,
480
+ });
481
+ if (this.eventServer) {
482
+ const goal = await this.stateManager.loadGoal(goalId).catch(() => null);
483
+ void this.eventServer.broadcast?.("iteration_complete", {
484
+ goalId,
485
+ loopCount: this.state.loop_count,
486
+ status: goal?.status ?? "unknown",
487
+ });
488
+ }
489
+ }
490
+ catch (err) {
491
+ this.handleLoopError(goalId, err);
492
+ }
493
+ // Bail out of goal iteration if crash limit exceeded
494
+ if (!this.running)
495
+ break;
496
+ }
497
+ // 3. Save state
498
+ await this.saveDaemonState();
499
+ if (this.eventServer) {
500
+ void this.eventServer.broadcast?.("daemon_status", {
501
+ status: this.state.status,
502
+ activeGoals: this.state.active_goals,
503
+ loopCount: this.state.loop_count,
504
+ lastLoopAt: this.state.last_loop_at,
505
+ });
506
+ }
507
+ // 3b. Process due cron-scheduled tasks
508
+ await this.processCronTasks();
509
+ // 3b2. Process schedule engine entries
510
+ await this.processScheduleEntries();
511
+ // 3c. Expire old cron tasks periodically (every 100 cycles)
512
+ if (this.state.loop_count > 0 && this.state.loop_count % 100 === 0) {
513
+ await this.expireCronTasks();
514
+ }
515
+ // 4. Proactive tick: fire every cycle (not only when idle) so long-running goals
516
+ // do not block proactive actions indefinitely.
517
+ if (this.running) {
518
+ await this.proactiveTick();
519
+ }
520
+ // 5. Track idle cycles for adaptive sleep
521
+ if (activeGoals.length > 0) {
522
+ this.consecutiveIdleCycles = 0;
523
+ }
524
+ else {
525
+ this.consecutiveIdleCycles++;
526
+ }
527
+ // 6. Wait for next check interval
528
+ if (this.running) {
529
+ const baseIntervalMs = this.getNextInterval(goalIds);
530
+ const maxGapScore = await this.getMaxGapScore(goalIds, cycleSnapshot);
531
+ const intervalMs = this.calculateAdaptiveInterval(baseIntervalMs, activeGoals.length, maxGapScore, this.consecutiveIdleCycles);
532
+ this.logger.info(`Sleeping for ${intervalMs}ms until next check`);
533
+ await this.sleep(intervalMs);
534
+ }
535
+ }
536
+ catch (err) {
537
+ await this.handleCriticalError(err);
538
+ }
539
+ }
540
+ // Cleanup after loop exits
541
+ await this.cleanup();
542
+ }
543
+ // ─── Private: Goal Activation ───
544
+ /**
545
+ * Determine which goals should be activated this cycle.
546
+ * Uses DriveSystem.shouldActivate() for each goal, then sorts by priority.
547
+ */
548
+ async determineActiveGoals(goalIds, snapshot) {
549
+ return determineActiveGoalsForCycle(this.driveSystem, goalIds, snapshot);
550
+ }
551
+ async collectGoalCycleSnapshot(goalIds) {
552
+ return collectGoalCycleScheduleSnapshot(this.driveSystem, goalIds);
553
+ }
554
+ // ─── Private: Interval Calculation ───
555
+ /**
556
+ * Calculate the next check interval in milliseconds.
557
+ * Uses per-goal override from config.goal_intervals if configured,
558
+ * otherwise falls back to config.check_interval_ms.
559
+ * Returns the minimum interval across all goals (so the daemon checks
560
+ * as soon as the earliest goal is due).
561
+ */
562
+ getNextInterval(goalIds) {
563
+ return getNextIntervalForGoals(this.config, goalIds);
564
+ }
565
+ // ─── Private: Error Handling ───
566
+ /**
567
+ * Handle a non-critical loop error for a single goal.
568
+ * Increments crash_count and stops daemon if max_retries exceeded.
569
+ */
570
+ handleLoopError(goalId, err) {
571
+ this.state.last_error = err instanceof Error ? err.message : String(err);
572
+ this.state.crash_count++;
573
+ this.logger.error(`Loop error for goal ${goalId}`, {
574
+ error: this.state.last_error,
575
+ crash_count: this.state.crash_count,
576
+ max_retries: this.config.crash_recovery.max_retries,
577
+ });
578
+ // If crash count exceeds max_retries, stop daemon
579
+ if (this.state.crash_count >= this.config.crash_recovery.max_retries) {
580
+ this.logger.error(`Max crash retries (${this.config.crash_recovery.max_retries}) exceeded, stopping daemon`);
581
+ this.running = false;
582
+ }
583
+ }
584
+ /**
585
+ * Handle a critical daemon-level error (outer loop catch).
586
+ * Marks state as crashed and stops the loop.
587
+ */
588
+ async handleCriticalError(err) {
589
+ const msg = err instanceof Error ? err.message : String(err);
590
+ this.logger.error("Critical daemon error", { error: msg });
591
+ this.state.status = "crashed";
592
+ this.state.last_error = msg;
593
+ await this.saveDaemonState();
594
+ this.running = false;
595
+ }
596
+ // ─── Private: State Persistence ───
597
+ /**
598
+ * Save daemon state to {baseDir}/daemon-state.json atomically.
599
+ */
600
+ async saveDaemonState() {
601
+ await saveDaemonStateFile(this.baseDir, this.state, this.logger);
602
+ }
603
+ /**
604
+ * Restore state from a previous interrupted run.
605
+ * Merges interrupted_goals from daemon-state.json with the given goalIds (deduped).
606
+ * Returns the merged goal ID array.
607
+ */
608
+ async restoreState(goalIds) {
609
+ return restoreInterruptedGoals(this.baseDir, goalIds, this.logger);
610
+ }
611
+ // ─── Private: Cleanup ───
612
+ /**
613
+ * Perform cleanup after the loop exits and write the final runtime health snapshot.
614
+ * Also writes "clean_shutdown" marker to enable crash-vs-clean detection on next startup.
615
+ */
616
+ async cleanup() {
617
+ await cleanupDaemonRun({
618
+ baseDir: this.baseDir,
619
+ state: this.state,
620
+ currentGoalIds: this.currentGoalIds,
621
+ currentLoopIndex: this.currentLoopIndex,
622
+ runtimeOwnership: this.runtimeOwnership,
623
+ logger: this.logger,
624
+ });
625
+ }
626
+ beginGracefulShutdown() {
627
+ if (this.shuttingDown) {
628
+ return;
629
+ }
630
+ this.shuttingDown = true;
631
+ this.logger.info("Shutting down gracefully...");
632
+ this.running = false;
633
+ this.state.status = "stopping";
634
+ this.state.interrupted_goals = [...this.state.active_goals];
635
+ this.shutdownResolve?.();
636
+ this.sleepAbortController?.abort();
637
+ }
638
+ // ─── Private: Cron Scheduler ───
639
+ /**
640
+ * Process due cron-scheduled tasks.
641
+ * Logs each task, executes based on type, and marks as fired.
642
+ */
643
+ async processCronTasks() {
644
+ await processCronTasksForDaemon({
645
+ cronScheduler: this.cronScheduler,
646
+ logger: this.logger,
647
+ acceptRuntimeEnvelope: (envelope) => this.acceptRuntimeEnvelope(envelope),
648
+ });
649
+ }
650
+ /**
651
+ * Process due schedule engine entries.
652
+ */
653
+ async processScheduleEntries() {
654
+ await processScheduleEntriesForDaemon({
655
+ scheduleEngine: this.scheduleEngine,
656
+ logger: this.logger,
657
+ acceptRuntimeEnvelope: (envelope) => this.acceptRuntimeEnvelope(envelope),
658
+ });
659
+ }
660
+ /**
661
+ * Expire old non-permanent cron tasks.
662
+ */
663
+ async expireCronTasks() {
664
+ await expireOldCronTasks(this.cronScheduler, this.logger);
665
+ }
666
+ // ─── Private: Sleep ───
667
+ /**
668
+ * Sleep for the given number of milliseconds.
669
+ * Can be aborted early via sleepAbortController (e.g. when an event arrives).
670
+ */
671
+ sleep(ms) {
672
+ this.sleepAbortController = new AbortController();
673
+ const abortController = this.sleepAbortController;
674
+ return new Promise((resolve) => {
675
+ const timer = setTimeout(resolve, ms);
676
+ abortController.signal.addEventListener("abort", () => {
677
+ clearTimeout(timer);
678
+ resolve();
679
+ });
680
+ }).finally(() => {
681
+ this.sleepAbortController = null;
682
+ });
683
+ }
684
+ // ─── Private: Event Handling ───
685
+ /**
686
+ * Called when a file-watcher event arrives from DriveSystem.
687
+ * Aborts the current sleep so the loop runs immediately.
688
+ */
689
+ onEventReceived(event) {
690
+ this.logger.info("Event received, triggering immediate loop", {
691
+ event_type: event.type,
692
+ });
693
+ this.sleepAbortController?.abort();
694
+ }
695
+ acceptRuntimeEnvelope(envelope) {
696
+ if (!this.journalQueue)
697
+ return true;
698
+ const result = this.journalQueue.accept(envelope);
699
+ if (result.accepted) {
700
+ return true;
701
+ }
702
+ this.logger.info("Runtime journal skipped envelope", {
703
+ id: envelope.id,
704
+ name: envelope.name,
705
+ type: envelope.type,
706
+ duplicate: result.duplicate,
707
+ runtime_root: this.runtimeRoot,
708
+ });
709
+ return false;
710
+ }
711
+ async handleInboundEnvelope(envelope) {
712
+ if (!this.acceptRuntimeEnvelope(envelope)) {
713
+ return;
714
+ }
715
+ }
716
+ async handleGoalStartCommand(goalId) {
717
+ if (!this.currentGoalIds.includes(goalId)) {
718
+ this.currentGoalIds.push(goalId);
719
+ }
720
+ this.state.active_goals = [...this.currentGoalIds];
721
+ await this.saveDaemonState();
722
+ this.supervisor?.activateGoal(goalId);
723
+ this.abortSleep();
724
+ }
725
+ async handleGoalStopCommand(goalId) {
726
+ this.currentGoalIds = this.currentGoalIds.filter((id) => id !== goalId);
727
+ this.state.active_goals = [...this.currentGoalIds];
728
+ if (this.state.interrupted_goals) {
729
+ this.state.interrupted_goals = this.state.interrupted_goals.filter((id) => id !== goalId);
730
+ }
731
+ await this.saveDaemonState();
732
+ this.supervisor?.deactivateGoal(goalId);
733
+ this.abortSleep();
734
+ }
735
+ async handleGoalCompletion(goalId, result) {
736
+ this.state.loop_count++;
737
+ this.currentLoopIndex = this.state.loop_count;
738
+ this.state.last_loop_at = new Date().toISOString();
739
+ await this.saveDaemonState();
740
+ if (this.eventServer) {
741
+ const goal = await this.stateManager.loadGoal(goalId).catch(() => null);
742
+ void this.eventServer.broadcast?.("iteration_complete", {
743
+ goalId,
744
+ loopCount: this.state.loop_count,
745
+ status: goal?.status ?? result.status,
746
+ iterations: result.totalIterations,
747
+ });
748
+ void this.eventServer.broadcast?.("daemon_status", {
749
+ status: this.state.status,
750
+ activeGoals: this.state.active_goals,
751
+ loopCount: this.state.loop_count,
752
+ lastLoopAt: this.state.last_loop_at,
753
+ });
754
+ }
755
+ }
756
+ async runSupervisorMaintenanceCycle() {
757
+ await runSupervisorMaintenanceCycleForDaemon({
758
+ currentGoalIds: this.currentGoalIds,
759
+ driveSystem: this.driveSystem,
760
+ supervisor: this.supervisor,
761
+ processCronTasks: () => this.processCronTasks(),
762
+ processScheduleEntries: () => this.processScheduleEntries(),
763
+ proactiveTick: () => this.proactiveTick(),
764
+ saveDaemonState: () => this.saveDaemonState(),
765
+ eventServer: this.eventServer,
766
+ state: this.state,
767
+ });
768
+ }
769
+ async handleChatMessageCommand(goalId, message) {
770
+ await writeChatMessageEvent(this.driveSystem, goalId, message);
771
+ this.abortSleep();
772
+ }
773
+ async handleApprovalResponseCommand(goalId, requestId, approved) {
774
+ if (this.approvalBroker) {
775
+ await this.approvalBroker.resolveApproval(requestId, approved, "dispatcher");
776
+ return;
777
+ }
778
+ if (goalId && this.eventServer) {
779
+ await this.eventServer.resolveApproval(requestId, approved);
780
+ }
781
+ }
782
+ async handleCronTaskDue(taskId) {
783
+ if (!this.cronScheduler) {
784
+ return;
785
+ }
786
+ try {
787
+ await this.cronScheduler.markFired(taskId);
788
+ this.logger.info(`Cron task fired: ${taskId}`);
789
+ }
790
+ catch (err) {
791
+ this.logger.warn(`Cron task ${taskId} failed`, {
792
+ error: err instanceof Error ? err.message : String(err),
793
+ });
794
+ await this.cronScheduler.markFired(taskId);
795
+ }
796
+ }
797
+ // ─── Private: Proactive Tick ───
798
+ /**
799
+ * Ask the LLM for a proactive action when no goals were activated this cycle.
800
+ * Fires only if proactive_mode is enabled and enough time has passed since last tick.
801
+ * Errors are caught and logged — they never affect the daemon loop.
802
+ */
803
+ async proactiveTick() {
804
+ this.lastProactiveTickAt = await runProactiveMaintenance({
805
+ config: this.config,
806
+ llmClient: this.llmClient,
807
+ state: this.state,
808
+ lastProactiveTickAt: this.lastProactiveTickAt,
809
+ logger: this.logger,
810
+ });
811
+ }
812
+ // ─── Private: Adaptive Sleep ───
813
+ /**
814
+ * Get the highest gap score across all active goals.
815
+ * Falls back to 0 if no gap data is available.
816
+ */
817
+ async getMaxGapScore(goalIds, snapshot) {
818
+ return getMaxGapScoreForGoals(this.driveSystem, goalIds, snapshot);
819
+ }
820
+ /**
821
+ * Thin wrapper delegating to the standalone calculateAdaptiveInterval function.
822
+ * Passes this.config.adaptive_sleep as the config parameter.
823
+ * Kept as a class method so tests can call daemon.calculateAdaptiveInterval(...).
824
+ */
825
+ calculateAdaptiveInterval(baseInterval, goalsActivatedThisCycle, maxGapScore, consecutiveIdleCycles) {
826
+ return calcAdaptiveInterval(baseInterval, goalsActivatedThisCycle, maxGapScore, consecutiveIdleCycles, this.config.adaptive_sleep);
827
+ }
828
+ // ─── Private: Shutdown Marker ───
829
+ /**
830
+ * Write shutdown-state.json to baseDir (async, atomic).
831
+ */
832
+ async writeShutdownMarker(marker) {
833
+ await writeShutdownMarkerFile(this.baseDir, marker, this.logger);
834
+ }
835
+ /**
836
+ * Read shutdown-state.json from baseDir.
837
+ * Returns null if file doesn't exist or fails to parse.
838
+ */
839
+ async readShutdownMarker() {
840
+ return readShutdownMarkerFile(this.baseDir);
841
+ }
842
+ /**
843
+ * Delete shutdown-state.json (after successful resume).
844
+ */
845
+ async deleteShutdownMarker() {
846
+ await deleteShutdownMarkerFile(this.baseDir);
847
+ }
848
+ /**
849
+ * Check for a previous shutdown marker and log recovery information.
850
+ * Called at startup before the main loop begins.
851
+ */
852
+ async checkCrashRecovery() {
853
+ await checkCrashRecoveryMarker(this.baseDir, this.logger);
854
+ }
855
+ // ─── Log Rotation (delegates to daemon-health) ───
856
+ /**
857
+ * Rotate the main log file if it exceeds the configured size limit.
858
+ * Delegates to rotateDaemonLog() with explicit config params.
859
+ * Called at daemon startup.
860
+ */
861
+ async rotateLog() {
862
+ const maxSizeBytes = this.config.log_rotation.max_size_mb * 1024 * 1024;
863
+ const maxFiles = this.config.log_rotation.max_files;
864
+ await rotateDaemonLog(this.logPath, this.logDir, maxSizeBytes, maxFiles, this.logger);
865
+ }
866
+ // ─── Static Utilities (delegates to daemon-signals) ───
867
+ /**
868
+ * Generate a crontab entry that runs `pulseed run --goal <goalId>` on a schedule.
869
+ * Delegates to the standalone generateCronEntry() function in daemon-signals.ts.
870
+ */
871
+ static generateCronEntry(goalId, intervalMinutes = 60) {
872
+ return generateCronEntry(goalId, intervalMinutes);
873
+ }
874
+ }
875
+ //# sourceMappingURL=runner.js.map