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
@@ -1,875 +1,2 @@
1
- import * as fsp from "node:fs/promises";
2
- import * as path from "node:path";
3
- import { writeJsonFileAtomic, readJsonFileOrNull } from "../base/utils/json-io.js";
4
- import { EventServer } from "./event-server.js";
5
- import { DaemonConfigSchema, DaemonStateSchema } from "../base/types/daemon.js";
6
- import { getInternalIdentityPrefix } from "../base/config/identity-loader.js";
7
- import { z } from "zod";
8
- import { generateCronEntry } from "./daemon-signals.js";
9
- import { rotateDaemonLog, calculateAdaptiveInterval as calcAdaptiveInterval } from "./daemon-health.js";
10
- import { HttpChannelAdapter } from "./gateway/index.js";
11
- import { createEnvelope } from "./types/envelope.js";
12
- import { LoopSupervisor } from "./executor/index.js";
13
- import { PulSeedEventSchema } from "../base/types/drive.js";
14
- // Re-exports for callers that imported these from daemon-runner
15
- export { generateCronEntry } from "./daemon-signals.js";
16
- export { rotateDaemonLog, calculateAdaptiveInterval } from "./daemon-health.js";
17
- export class DaemonRunner {
18
- coreLoop;
19
- driveSystem;
20
- stateManager;
21
- pidManager;
22
- logger;
23
- config;
24
- running = false;
25
- shuttingDown = false;
26
- state;
27
- baseDir;
28
- logDir;
29
- logPath;
30
- shutdownHandler = null;
31
- eventServer;
32
- approvalFn;
33
- sleepAbortController = null;
34
- currentGoalIds = [];
35
- currentLoopIndex = 0;
36
- lastProactiveTickAt = 0;
37
- llmClient;
38
- cronScheduler;
39
- scheduleEngine;
40
- consecutiveIdleCycles = 0;
41
- gateway;
42
- eventBus;
43
- commandBus;
44
- supervisor = null;
45
- cronScheduleInterval = null;
46
- shutdownResolve = null;
47
- deps;
48
- constructor(deps) {
49
- this.deps = deps;
50
- this.coreLoop = deps.coreLoop;
51
- this.driveSystem = deps.driveSystem;
52
- this.stateManager = deps.stateManager;
53
- this.pidManager = deps.pidManager;
54
- this.logger = deps.logger;
55
- this.eventServer = deps.eventServer;
56
- this.llmClient = deps.llmClient;
57
- this.cronScheduler = deps.cronScheduler;
58
- this.scheduleEngine = deps.scheduleEngine;
59
- this.gateway = deps.gateway;
60
- this.eventBus = deps.eventBus;
61
- this.commandBus = deps.commandBus;
62
- this.supervisor = deps.supervisor ?? null;
63
- this.lastProactiveTickAt = Date.now();
64
- // Parse config with defaults via DaemonConfigSchema.parse()
65
- this.config = DaemonConfigSchema.parse(deps.config ?? {});
66
- // Resolve base directory from stateManager
67
- this.baseDir = this.stateManager.getBaseDir();
68
- // Pre-compute log paths used by rotateLog
69
- this.logDir = path.join(this.baseDir, this.config.log_dir);
70
- this.logPath = path.join(this.logDir, "pulseed.log");
71
- // Initialize daemon state
72
- this.state = DaemonStateSchema.parse({
73
- pid: process.pid,
74
- started_at: new Date().toISOString(),
75
- last_loop_at: null,
76
- loop_count: 0,
77
- active_goals: [],
78
- status: "stopped",
79
- crash_count: 0,
80
- last_error: null,
81
- });
82
- }
83
- // ─── Public API ───
84
- /**
85
- * Start daemon loop for given goals.
86
- * Throws if daemon is already running.
87
- */
88
- async start(goalIds) {
89
- // 1. Check if already running
90
- if (await this.pidManager.isRunning()) {
91
- const info = await this.pidManager.readPID();
92
- throw new Error(`Daemon is already running (PID ${info?.pid ?? "unknown"}). ` +
93
- `Stop it first or remove the PID file at: ${this.pidManager.getPath()}`);
94
- }
95
- // 2. Write PID file
96
- await this.pidManager.writePID();
97
- // 2b. Rotate log if needed, then check for crash recovery marker
98
- await this.rotateLog();
99
- await this.checkCrashRecovery();
100
- // 2c. Start EventServer (always-on) and file watcher
101
- if (!this.eventServer) {
102
- const esPort = this.config.event_server_port ?? 41700;
103
- this.eventServer = new EventServer(this.driveSystem, {
104
- port: esPort,
105
- stateManager: this.stateManager,
106
- }, this.logger);
107
- }
108
- if (this.gateway) {
109
- // Phase A: Route through Gateway → Envelope → writeEvent
110
- const httpAdapter = new HttpChannelAdapter(this.eventServer);
111
- this.gateway.registerAdapter(httpAdapter);
112
- this.gateway.onEnvelope(async (envelope) => {
113
- // Route by envelope type when buses are configured
114
- if (envelope.type === "command" && this.commandBus) {
115
- this.commandBus.push(envelope);
116
- return;
117
- }
118
- if (envelope.type === "event" && this.eventBus) {
119
- this.eventBus.push(envelope);
120
- return;
121
- }
122
- // Fallback: no bus configured — keep legacy driveSystem.writeEvent() behavior
123
- const payload = envelope.payload;
124
- try {
125
- const event = PulSeedEventSchema.parse(payload);
126
- await this.driveSystem.writeEvent(event);
127
- }
128
- catch (err) {
129
- this.logger.error("Gateway: failed to process envelope", {
130
- id: envelope.id,
131
- error: String(err),
132
- });
133
- }
134
- });
135
- // Wire onHighPriority to abort sleep — done via the abortSleep() public method.
136
- // Callers who construct buses should pass: onHighPriority: () => daemon.abortSleep()
137
- // The daemon provides abortSleep() below for this purpose.
138
- await this.gateway.start();
139
- this.logger.info("Gateway started with HTTP adapter", { port: this.eventServer.getPort() });
140
- }
141
- else {
142
- // Legacy path: direct EventServer (no Gateway)
143
- await this.eventServer.start();
144
- this.eventServer.startFileWatcher();
145
- this.logger.info("EventServer started", { port: this.eventServer.getPort() });
146
- }
147
- // Wire approval bridge if not already provided
148
- if (!this.approvalFn && this.eventServer) {
149
- const es = this.eventServer;
150
- this.approvalFn = async (task) => {
151
- return es.requestApproval(String(task["goal_id"] ?? "unknown"), {
152
- id: String(task["id"] ?? ""),
153
- description: String(task["description"] ?? ""),
154
- action: String(task["action"] ?? ""),
155
- });
156
- };
157
- }
158
- // Start heartbeat (every 30s)
159
- const heartbeatInterval = setInterval(() => {
160
- if (this.eventServer && this.state.status === "running") {
161
- this.eventServer.broadcast("daemon_status", {
162
- status: this.state.status,
163
- activeGoals: this.state.active_goals,
164
- loopCount: this.state.loop_count,
165
- uptime: Date.now() - new Date(this.state.started_at).getTime(),
166
- });
167
- }
168
- }, 30_000);
169
- this.driveSystem.startWatcher((event) => this.onEventReceived(event));
170
- // 3. Set up signal handlers for graceful shutdown
171
- this.shuttingDown = false;
172
- const shutdownTimeout = this.config.crash_recovery.graceful_shutdown_timeout_ms ?? 30_000;
173
- let forceStopTimer = null;
174
- const shutdown = () => {
175
- if (this.shuttingDown)
176
- return;
177
- this.shuttingDown = true;
178
- this.logger.info("Shutting down gracefully...");
179
- // Abort current sleep so the loop exits promptly
180
- this.sleepAbortController?.abort();
181
- // Start a timeout to force-stop if graceful shutdown takes too long
182
- forceStopTimer = setTimeout(() => {
183
- this.logger.warn(`Graceful shutdown timeout (${shutdownTimeout}ms) exceeded, forcing stop`);
184
- this.running = false;
185
- }, shutdownTimeout);
186
- };
187
- this.shutdownHandler = shutdown;
188
- process.on("SIGTERM", shutdown);
189
- process.on("SIGINT", shutdown);
190
- // 4. Restore state from previous interrupted run
191
- const mergedGoalIds = await this.restoreState(goalIds);
192
- // 5. Save initial daemon state
193
- this.running = true;
194
- this.currentGoalIds = mergedGoalIds;
195
- this.currentLoopIndex = 0;
196
- this.state = DaemonStateSchema.parse({
197
- pid: process.pid,
198
- started_at: new Date().toISOString(),
199
- last_loop_at: null,
200
- loop_count: 0,
201
- active_goals: mergedGoalIds,
202
- status: "running",
203
- crash_count: 0,
204
- last_error: null,
205
- });
206
- await this.saveDaemonState();
207
- // 5b. Write "running" shutdown marker (crash detection on next startup)
208
- await this.writeShutdownMarker({
209
- goal_ids: mergedGoalIds,
210
- loop_index: 0,
211
- timestamp: new Date().toISOString(),
212
- reason: "startup",
213
- state: "running",
214
- });
215
- // 6. Log start
216
- this.logger.info("Daemon started", {
217
- pid: process.pid,
218
- goals: mergedGoalIds,
219
- check_interval_ms: this.config.check_interval_ms,
220
- });
221
- // 7. Create supervisor if not already provided and eventBus is configured
222
- if (!this.supervisor && this.eventBus) {
223
- const factory = this.deps.coreLoopFactory ?? (() => this.coreLoop);
224
- this.supervisor = new LoopSupervisor({
225
- coreLoopFactory: factory,
226
- eventBus: this.eventBus,
227
- driveSystem: this.driveSystem,
228
- stateManager: this.stateManager,
229
- logger: this.logger,
230
- onEscalation: (goalId, crashCount, lastError) => {
231
- this.logger.error(`Goal ${goalId} suspended after ${crashCount} crashes: ${lastError}`);
232
- },
233
- }, { iterationsPerCycle: this.config.iterations_per_cycle });
234
- }
235
- // 8. Run main loop — supervisor mode when supervisor is injected via deps,
236
- // fallback to sequential runLoop otherwise (preserves backward compat for
237
- // tests that provide eventBus without a supervisor)
238
- try {
239
- if (this.supervisor && this.eventBus) {
240
- // Supervisor handles goal execution; cron/schedule must also run in this mode.
241
- await this.supervisor.start(mergedGoalIds);
242
- // Run cron/schedule processing once immediately, then on a periodic interval.
243
- const cronIntervalMs = this.config.check_interval_ms;
244
- await this.processCronTasks();
245
- await this.processScheduleEntries();
246
- this.cronScheduleInterval = setInterval(async () => {
247
- if (this.shuttingDown)
248
- return;
249
- await this.processCronTasks();
250
- await this.processScheduleEntries();
251
- }, cronIntervalMs);
252
- // Block until stop() is called.
253
- await new Promise((resolve) => {
254
- this.shutdownResolve = resolve;
255
- // If already stopped before we get here, resolve immediately.
256
- if (!this.running)
257
- resolve();
258
- });
259
- }
260
- else {
261
- // Fallback: sequential mode
262
- await this.runLoop(mergedGoalIds);
263
- }
264
- }
265
- finally {
266
- // Cancel the force-stop timer if it's still pending
267
- if (forceStopTimer !== null) {
268
- clearTimeout(forceStopTimer);
269
- forceStopTimer = null;
270
- }
271
- // Remove signal handlers
272
- if (this.shutdownHandler) {
273
- process.removeListener("SIGTERM", this.shutdownHandler);
274
- process.removeListener("SIGINT", this.shutdownHandler);
275
- this.shutdownHandler = null;
276
- }
277
- // Stop file watcher and EventServer
278
- clearInterval(heartbeatInterval);
279
- if (this.cronScheduleInterval !== null) {
280
- clearInterval(this.cronScheduleInterval);
281
- this.cronScheduleInterval = null;
282
- }
283
- await this.supervisor?.shutdown();
284
- this.driveSystem.stopWatcher();
285
- if (this.gateway) {
286
- await this.gateway.stop();
287
- this.logger.info("Gateway stopped");
288
- }
289
- else if (this.eventServer) {
290
- this.eventServer.stopFileWatcher();
291
- await this.eventServer.stop();
292
- this.logger.info("EventServer stopped");
293
- }
294
- }
295
- }
296
- /** Expose approvalFn for callers (e.g. cmdStart) to wire into TaskLifecycle */
297
- getApprovalFn() {
298
- return this.approvalFn;
299
- }
300
- /**
301
- * Abort the current sleep cycle immediately.
302
- * Intended for use as the onHighPriority callback when constructing EventBus/CommandBus:
303
- * new EventBus({ onHighPriority: () => daemon.abortSleep() })
304
- */
305
- abortSleep() {
306
- this.sleepAbortController?.abort();
307
- }
308
- /**
309
- * Signal daemon to stop after current iteration completes.
310
- * Saves interrupted_goals so they can be restored on next start.
311
- */
312
- stop() {
313
- this.running = false;
314
- this.shutdownResolve?.();
315
- this.sleepAbortController?.abort();
316
- this.state.status = "stopping";
317
- // Save current active_goals as interrupted_goals for state restoration
318
- this.state.interrupted_goals = [...this.state.active_goals];
319
- // Do NOT persist here — cleanup() will save the final state after the loop exits.
320
- // Calling saveDaemonState() here would race with cleanup()'s save and corrupt the file.
321
- this.logger.info("Stop requested — daemon will stop after current iteration");
322
- }
323
- // ─── Private: Main Loop ───
324
- /**
325
- * Main daemon loop. Runs until this.running is false or a critical error occurs.
326
- */
327
- async runLoop(goalIds) {
328
- while (this.running && !this.shuttingDown) {
329
- try {
330
- // 1. Determine which goals need activation
331
- const activeGoals = await this.determineActiveGoals(goalIds);
332
- if (activeGoals.length === 0) {
333
- this.logger.info("No goals need activation this cycle", {
334
- checked: goalIds.length,
335
- });
336
- }
337
- // 2. Execute loop for each active goal
338
- for (const goalId of activeGoals) {
339
- if (!this.running)
340
- break;
341
- this.logger.info(`Running loop for goal: ${goalId}`);
342
- try {
343
- const iterationsPerCycle = this.config.iterations_per_cycle ?? 1;
344
- const result = await this.coreLoop.run(goalId, { maxIterations: iterationsPerCycle });
345
- this.state.loop_count++;
346
- this.currentLoopIndex = this.state.loop_count;
347
- this.state.last_loop_at = new Date().toISOString();
348
- this.logger.info(`Loop completed for goal: ${goalId}`, {
349
- status: result.finalStatus,
350
- iterations: result.totalIterations,
351
- });
352
- if (this.eventServer) {
353
- const goal = await this.stateManager.loadGoal(goalId).catch(() => null);
354
- this.eventServer.broadcast("iteration_complete", {
355
- goalId,
356
- loopCount: this.state.loop_count,
357
- status: goal?.status ?? "unknown",
358
- });
359
- }
360
- }
361
- catch (err) {
362
- this.handleLoopError(goalId, err);
363
- }
364
- // Bail out of goal iteration if crash limit exceeded
365
- if (!this.running)
366
- break;
367
- }
368
- // 3. Save state
369
- await this.saveDaemonState();
370
- if (this.eventServer) {
371
- this.eventServer.broadcast("daemon_status", {
372
- status: this.state.status,
373
- activeGoals: this.state.active_goals,
374
- loopCount: this.state.loop_count,
375
- lastLoopAt: this.state.last_loop_at,
376
- });
377
- }
378
- // 3b. Process due cron-scheduled tasks
379
- await this.processCronTasks();
380
- // 3b2. Process schedule engine entries
381
- await this.processScheduleEntries();
382
- // 3c. Expire old cron tasks periodically (every 100 cycles)
383
- if (this.state.loop_count > 0 && this.state.loop_count % 100 === 0) {
384
- await this.expireCronTasks();
385
- }
386
- // 4. Proactive tick: fire every cycle (not only when idle) so long-running goals
387
- // do not block proactive actions indefinitely.
388
- if (this.running) {
389
- await this.proactiveTick();
390
- }
391
- // 5. Track idle cycles for adaptive sleep
392
- if (activeGoals.length > 0) {
393
- this.consecutiveIdleCycles = 0;
394
- }
395
- else {
396
- this.consecutiveIdleCycles++;
397
- }
398
- // 6. Wait for next check interval
399
- if (this.running) {
400
- const baseIntervalMs = this.getNextInterval(goalIds);
401
- const maxGapScore = await this.getMaxGapScore(goalIds);
402
- const intervalMs = this.calculateAdaptiveInterval(baseIntervalMs, activeGoals.length, maxGapScore, this.consecutiveIdleCycles);
403
- this.logger.info(`Sleeping for ${intervalMs}ms until next check`);
404
- await this.sleep(intervalMs);
405
- }
406
- }
407
- catch (err) {
408
- await this.handleCriticalError(err);
409
- }
410
- }
411
- // Cleanup after loop exits
412
- await this.cleanup();
413
- }
414
- // ─── Private: Goal Activation ───
415
- /**
416
- * Determine which goals should be activated this cycle.
417
- * Uses DriveSystem.shouldActivate() for each goal, then sorts by priority.
418
- */
419
- async determineActiveGoals(goalIds) {
420
- const eligibleIds = [];
421
- const scores = new Map();
422
- for (const goalId of goalIds) {
423
- if (await this.driveSystem.shouldActivate(goalId)) {
424
- eligibleIds.push(goalId);
425
- // Load goal to get a rough priority signal (gap or drive score not available here)
426
- // Use schedule consecutive_actions as a tiebreaker — more urgent goals first
427
- const schedule = await this.driveSystem.getSchedule(goalId);
428
- // Higher consecutive_actions = more urgent (stalled goal). Use inverse of next_check_at
429
- // as a proxy: goals that are most overdue rank highest.
430
- const nextCheckAt = schedule
431
- ? new Date(schedule.next_check_at).getTime()
432
- : 0;
433
- // Earlier next_check_at means more overdue → assign higher (inverted) score
434
- scores.set(goalId, -nextCheckAt);
435
- }
436
- }
437
- // Sort by priority: most overdue first
438
- return this.driveSystem.prioritizeGoals(eligibleIds, scores);
439
- }
440
- // ─── Private: Interval Calculation ───
441
- /**
442
- * Calculate the next check interval in milliseconds.
443
- * Uses per-goal override from config.goal_intervals if configured,
444
- * otherwise falls back to config.check_interval_ms.
445
- * Returns the minimum interval across all goals (so the daemon checks
446
- * as soon as the earliest goal is due).
447
- */
448
- getNextInterval(goalIds) {
449
- const goalIntervals = this.config.goal_intervals;
450
- if (!goalIntervals || goalIds.length === 0) {
451
- return this.config.check_interval_ms;
452
- }
453
- let minInterval = this.config.check_interval_ms;
454
- for (const goalId of goalIds) {
455
- const override = goalIntervals[goalId];
456
- if (override !== undefined && override < minInterval) {
457
- minInterval = override;
458
- }
459
- }
460
- return minInterval;
461
- }
462
- // ─── Private: Error Handling ───
463
- /**
464
- * Handle a non-critical loop error for a single goal.
465
- * Increments crash_count and stops daemon if max_retries exceeded.
466
- */
467
- handleLoopError(goalId, err) {
468
- this.state.last_error = err instanceof Error ? err.message : String(err);
469
- this.state.crash_count++;
470
- this.logger.error(`Loop error for goal ${goalId}`, {
471
- error: this.state.last_error,
472
- crash_count: this.state.crash_count,
473
- max_retries: this.config.crash_recovery.max_retries,
474
- });
475
- // If crash count exceeds max_retries, stop daemon
476
- if (this.state.crash_count >= this.config.crash_recovery.max_retries) {
477
- this.logger.error(`Max crash retries (${this.config.crash_recovery.max_retries}) exceeded, stopping daemon`);
478
- this.running = false;
479
- }
480
- }
481
- /**
482
- * Handle a critical daemon-level error (outer loop catch).
483
- * Marks state as crashed and stops the loop.
484
- */
485
- async handleCriticalError(err) {
486
- const msg = err instanceof Error ? err.message : String(err);
487
- this.logger.error("Critical daemon error", { error: msg });
488
- this.state.status = "crashed";
489
- this.state.last_error = msg;
490
- await this.saveDaemonState();
491
- this.running = false;
492
- }
493
- // ─── Private: State Persistence ───
494
- /**
495
- * Save daemon state to {baseDir}/daemon-state.json atomically.
496
- */
497
- async saveDaemonState() {
498
- const statePath = path.join(this.baseDir, "daemon-state.json");
499
- try {
500
- await writeJsonFileAtomic(statePath, this.state);
501
- }
502
- catch (err) {
503
- // Non-fatal — log but don't crash the daemon
504
- this.logger.warn("Failed to save daemon state", {
505
- error: err instanceof Error ? err.message : String(err),
506
- });
507
- }
508
- }
509
- /**
510
- * Load daemon state from {baseDir}/daemon-state.json.
511
- * Returns null if the file doesn't exist or fails to parse.
512
- */
513
- async loadDaemonState() {
514
- const statePath = path.join(this.baseDir, "daemon-state.json");
515
- const data = await readJsonFileOrNull(statePath);
516
- if (data === null)
517
- return null;
518
- try {
519
- return DaemonStateSchema.parse(data);
520
- }
521
- catch {
522
- return null;
523
- }
524
- }
525
- /**
526
- * Restore state from a previous interrupted run.
527
- * Merges interrupted_goals from daemon-state.json with the given goalIds (deduped).
528
- * Returns the merged goal ID array.
529
- */
530
- async restoreState(goalIds) {
531
- const saved = await this.loadDaemonState();
532
- if (!saved || !saved.interrupted_goals || saved.interrupted_goals.length === 0) {
533
- return goalIds;
534
- }
535
- const merged = Array.from(new Set([...goalIds, ...saved.interrupted_goals]));
536
- if (merged.length > goalIds.length) {
537
- this.logger.info("Restored interrupted goals from previous run", {
538
- interrupted: saved.interrupted_goals,
539
- merged,
540
- });
541
- }
542
- return merged;
543
- }
544
- // ─── Private: Cleanup ───
545
- /**
546
- * Perform cleanup after the loop exits: update state, remove PID file, log.
547
- * Also writes "clean_shutdown" marker to enable crash-vs-clean detection on next startup.
548
- */
549
- async cleanup() {
550
- // Only set to "stopped" if not already "crashed"
551
- const wasCrashed = this.state.status === "crashed";
552
- if (!wasCrashed) {
553
- this.state.status = "stopped";
554
- }
555
- await this.saveDaemonState();
556
- await this.pidManager.cleanup();
557
- // Write clean shutdown marker (async, atomic)
558
- const markerPath = path.join(this.baseDir, "shutdown-state.json");
559
- const marker = {
560
- goal_ids: this.currentGoalIds,
561
- loop_index: this.currentLoopIndex,
562
- timestamp: new Date().toISOString(),
563
- reason: wasCrashed ? "max_retries" : "stop",
564
- state: wasCrashed ? "running" : "clean_shutdown",
565
- };
566
- try {
567
- await writeJsonFileAtomic(markerPath, marker);
568
- }
569
- catch (err) {
570
- this.logger.warn("Failed to write shutdown marker", {
571
- error: err instanceof Error ? err.message : String(err),
572
- });
573
- }
574
- this.logger.info("Daemon stopped", {
575
- loop_count: this.state.loop_count,
576
- crash_count: this.state.crash_count,
577
- });
578
- }
579
- // ─── Private: Cron Scheduler ───
580
- /**
581
- * Process due cron-scheduled tasks.
582
- * Logs each task, executes based on type, and marks as fired.
583
- */
584
- async processCronTasks() {
585
- if (!this.cronScheduler)
586
- return;
587
- try {
588
- const dueTasks = await this.cronScheduler.getDueTasks();
589
- for (const task of dueTasks) {
590
- this.logger.info(`Cron task due: ${task.id} (type=${task.type})`, {
591
- cron: task.cron,
592
- type: task.type,
593
- });
594
- if (this.eventBus) {
595
- // Push to eventBus — markFired happens when the envelope is consumed, not at push time
596
- const envelope = createEnvelope({
597
- type: "event",
598
- name: "cron_task_due",
599
- source: "cron-scheduler",
600
- priority: "normal",
601
- payload: task,
602
- dedupe_key: `cron-${task.id}`,
603
- });
604
- this.eventBus.push(envelope);
605
- this.logger.info(`Cron task enqueued to eventBus: ${task.id}`);
606
- }
607
- else {
608
- // Fallback: no eventBus — execute and markFired directly (legacy behavior)
609
- try {
610
- // Log the task prompt and type for observability; actual execution
611
- // varies by type but all are currently handled as fire-and-log.
612
- this.logger.info(`Executing cron task: ${task.type}`, {
613
- prompt: task.prompt,
614
- });
615
- await this.cronScheduler.markFired(task.id);
616
- this.logger.info(`Cron task fired: ${task.id}`);
617
- }
618
- catch (err) {
619
- this.logger.warn(`Cron task ${task.id} failed`, {
620
- error: err instanceof Error ? err.message : String(err),
621
- });
622
- // Still mark as fired to avoid retry-storms
623
- await this.cronScheduler.markFired(task.id);
624
- }
625
- }
626
- }
627
- }
628
- catch (err) {
629
- // Non-fatal — cron errors should not crash the daemon
630
- this.logger.warn("Failed to process cron tasks", {
631
- error: err instanceof Error ? err.message : String(err),
632
- });
633
- }
634
- }
635
- /**
636
- * Process due schedule engine entries.
637
- */
638
- async processScheduleEntries() {
639
- if (!this.scheduleEngine)
640
- return;
641
- try {
642
- const results = await this.scheduleEngine.tick();
643
- for (const result of results) {
644
- if (result.status === "error") {
645
- this.logger?.warn?.(`Schedule entry ${result.entry_id} failed: ${result.error_message}`);
646
- }
647
- else if (this.eventBus) {
648
- // Push activated schedule entries to eventBus as envelopes
649
- const goalId = result["goal_id"];
650
- if (!goalId) {
651
- this.logger.warn("schedule_activated envelope missing goal_id", { entry_id: result["entry_id"] });
652
- }
653
- const envelope = createEnvelope({
654
- type: "event",
655
- name: "schedule_activated",
656
- source: "schedule-engine",
657
- goal_id: goalId,
658
- priority: "normal",
659
- payload: result,
660
- dedupe_key: result.entry_id,
661
- });
662
- this.eventBus.push(envelope);
663
- }
664
- }
665
- }
666
- catch (error) {
667
- this.logger?.error?.("Failed to process schedule entries", { error: error instanceof Error ? error.message : String(error) });
668
- }
669
- }
670
- /**
671
- * Expire old non-permanent cron tasks.
672
- */
673
- async expireCronTasks() {
674
- if (!this.cronScheduler)
675
- return;
676
- try {
677
- await this.cronScheduler.expireOldTasks();
678
- this.logger.debug("Expired old cron tasks");
679
- }
680
- catch (err) {
681
- this.logger.warn("Failed to expire cron tasks", {
682
- error: err instanceof Error ? err.message : String(err),
683
- });
684
- }
685
- }
686
- // ─── Private: Sleep ───
687
- /**
688
- * Sleep for the given number of milliseconds.
689
- * Can be aborted early via sleepAbortController (e.g. when an event arrives).
690
- */
691
- sleep(ms) {
692
- this.sleepAbortController = new AbortController();
693
- const abortController = this.sleepAbortController;
694
- return new Promise((resolve) => {
695
- const timer = setTimeout(resolve, ms);
696
- abortController.signal.addEventListener("abort", () => {
697
- clearTimeout(timer);
698
- resolve();
699
- });
700
- }).finally(() => {
701
- this.sleepAbortController = null;
702
- });
703
- }
704
- // ─── Private: Event Handling ───
705
- /**
706
- * Called when a file-watcher event arrives from DriveSystem.
707
- * Aborts the current sleep so the loop runs immediately.
708
- */
709
- onEventReceived(event) {
710
- this.logger.info("Event received, triggering immediate loop", {
711
- event_type: event.type,
712
- });
713
- this.sleepAbortController?.abort();
714
- }
715
- // ─── Private: Proactive Tick ───
716
- // Zod schema for the LLM proactive action response
717
- static ProactiveResponseSchema = z.object({
718
- action: z.enum(["suggest_goal", "investigate", "preemptive_check", "sleep"]),
719
- details: z.record(z.string(), z.unknown()).optional(),
720
- });
721
- /**
722
- * Ask the LLM for a proactive action when no goals were activated this cycle.
723
- * Fires only if proactive_mode is enabled and enough time has passed since last tick.
724
- * Errors are caught and logged — they never affect the daemon loop.
725
- */
726
- async proactiveTick() {
727
- if (!this.config.proactive_mode)
728
- return;
729
- if (!this.llmClient)
730
- return;
731
- if (Date.now() - this.lastProactiveTickAt < this.config.proactive_interval_ms)
732
- return;
733
- try {
734
- // Build a brief summary of all tracked goals from daemon state
735
- const goalSummaries = this.state.active_goals.length > 0
736
- ? this.state.active_goals.map((id) => `- ${id}`).join("\n")
737
- : "(no active goals)";
738
- const prompt = `${getInternalIdentityPrefix("proactive engine")} Given the current state of all goals:\n${goalSummaries}\n\nDecide what action to take:\n- "suggest_goal": A new goal should be created (provide title + description)\n- "investigate": Something needs investigation (provide what and why)\n- "preemptive_check": Run a pre-emptive observation (provide goal_id)\n- "sleep": Nothing needs attention right now\n\nRespond with JSON: { "action": "...", "details": { ... } }`;
739
- const response = await this.llmClient.sendMessage([{ role: "user", content: prompt }], { model_tier: "light" });
740
- const parsed = DaemonRunner.ProactiveResponseSchema.safeParse(this.llmClient.parseJSON(response.content, DaemonRunner.ProactiveResponseSchema));
741
- if (!parsed.success) {
742
- this.logger.warn("Proactive tick: failed to parse LLM response", {
743
- raw: response.content,
744
- error: parsed.error.message,
745
- });
746
- this.lastProactiveTickAt = Date.now();
747
- return;
748
- }
749
- const { action, details } = parsed.data;
750
- if (action === "sleep") {
751
- this.logger.debug("Proactive tick: LLM decided to sleep");
752
- }
753
- else {
754
- this.logger.info(`Proactive tick: action=${action}`, { details });
755
- }
756
- }
757
- catch (err) {
758
- this.logger.warn("Proactive tick: LLM error (ignored)", {
759
- error: err instanceof Error ? err.message : String(err),
760
- });
761
- }
762
- this.lastProactiveTickAt = Date.now();
763
- }
764
- // ─── Private: Adaptive Sleep ───
765
- /**
766
- * Get the highest gap score across all active goals.
767
- * Falls back to 0 if no gap data is available.
768
- */
769
- async getMaxGapScore(goalIds) {
770
- let max = 0;
771
- for (const goalId of goalIds) {
772
- try {
773
- const schedule = await this.driveSystem.getSchedule(goalId);
774
- if (schedule && typeof schedule["last_gap_score"] === "number") {
775
- const score = schedule["last_gap_score"];
776
- if (score > max)
777
- max = score;
778
- }
779
- }
780
- catch {
781
- // Non-fatal — just use 0 for this goal
782
- }
783
- }
784
- return max;
785
- }
786
- /**
787
- * Thin wrapper delegating to the standalone calculateAdaptiveInterval function.
788
- * Passes this.config.adaptive_sleep as the config parameter.
789
- * Kept as a class method so tests can call daemon.calculateAdaptiveInterval(...).
790
- */
791
- calculateAdaptiveInterval(baseInterval, goalsActivatedThisCycle, maxGapScore, consecutiveIdleCycles) {
792
- return calcAdaptiveInterval(baseInterval, goalsActivatedThisCycle, maxGapScore, consecutiveIdleCycles, this.config.adaptive_sleep);
793
- }
794
- // ─── Private: Shutdown Marker ───
795
- /**
796
- * Write shutdown-state.json to baseDir (async, atomic).
797
- */
798
- async writeShutdownMarker(marker) {
799
- const markerPath = path.join(this.baseDir, "shutdown-state.json");
800
- try {
801
- await writeJsonFileAtomic(markerPath, marker);
802
- }
803
- catch (err) {
804
- this.logger.warn("Failed to write shutdown marker", {
805
- error: err instanceof Error ? err.message : String(err),
806
- });
807
- }
808
- }
809
- /**
810
- * Read shutdown-state.json from baseDir.
811
- * Returns null if file doesn't exist or fails to parse.
812
- */
813
- async readShutdownMarker() {
814
- const markerPath = path.join(this.baseDir, "shutdown-state.json");
815
- return readJsonFileOrNull(markerPath);
816
- }
817
- /**
818
- * Delete shutdown-state.json (after successful resume).
819
- */
820
- async deleteShutdownMarker() {
821
- const markerPath = path.join(this.baseDir, "shutdown-state.json");
822
- try {
823
- await fsp.unlink(markerPath);
824
- }
825
- catch {
826
- // File may not exist — ignore
827
- }
828
- }
829
- /**
830
- * Check for a previous shutdown marker and log recovery information.
831
- * Called at startup before the main loop begins.
832
- */
833
- async checkCrashRecovery() {
834
- const marker = await this.readShutdownMarker();
835
- if (!marker)
836
- return;
837
- if (marker.state === "clean_shutdown") {
838
- this.logger.info("Resuming from clean shutdown", {
839
- previous_loop_index: marker.loop_index,
840
- previous_goals: marker.goal_ids,
841
- shutdown_at: marker.timestamp,
842
- });
843
- }
844
- else {
845
- // state === "running" — previous instance did not shut down cleanly
846
- this.logger.warn("Recovering from crash — previous instance did not shut down cleanly", {
847
- previous_loop_index: marker.loop_index,
848
- previous_goals: marker.goal_ids,
849
- last_seen_at: marker.timestamp,
850
- });
851
- }
852
- // Delete the marker; we'll write a fresh "running" marker in start()
853
- await this.deleteShutdownMarker();
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
- }
1
+ export * from "./daemon/runner.js";
875
2
  //# sourceMappingURL=daemon-runner.js.map