@herdctl/core 0.0.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 (520) hide show
  1. package/.turbo/turbo-build.log +4 -0
  2. package/.turbo/turbo-test.log +219 -0
  3. package/.turbo/turbo-typecheck.log +4 -0
  4. package/coverage/base.css +224 -0
  5. package/coverage/block-navigation.js +87 -0
  6. package/coverage/coverage-final.json +51 -0
  7. package/coverage/favicon.png +0 -0
  8. package/coverage/index.html +251 -0
  9. package/coverage/prettify.css +1 -0
  10. package/coverage/prettify.js +2 -0
  11. package/coverage/sort-arrow-sprite.png +0 -0
  12. package/coverage/sorter.js +210 -0
  13. package/coverage/src/config/index.html +191 -0
  14. package/coverage/src/config/index.ts.html +442 -0
  15. package/coverage/src/config/interpolate.ts.html +652 -0
  16. package/coverage/src/config/loader.ts.html +1501 -0
  17. package/coverage/src/config/merge.ts.html +823 -0
  18. package/coverage/src/config/parser.ts.html +1213 -0
  19. package/coverage/src/config/schema.ts.html +1123 -0
  20. package/coverage/src/fleet-manager/errors.ts.html +2326 -0
  21. package/coverage/src/fleet-manager/event-types.ts.html +1219 -0
  22. package/coverage/src/fleet-manager/fleet-manager.ts.html +7030 -0
  23. package/coverage/src/fleet-manager/index.html +206 -0
  24. package/coverage/src/fleet-manager/index.ts.html +469 -0
  25. package/coverage/src/fleet-manager/job-manager.ts.html +2074 -0
  26. package/coverage/src/fleet-manager/job-queue.ts.html +2479 -0
  27. package/coverage/src/fleet-manager/types.ts.html +2602 -0
  28. package/coverage/src/index.html +116 -0
  29. package/coverage/src/index.ts.html +181 -0
  30. package/coverage/src/runner/errors.ts.html +1006 -0
  31. package/coverage/src/runner/index.html +191 -0
  32. package/coverage/src/runner/index.ts.html +256 -0
  33. package/coverage/src/runner/job-executor.ts.html +1429 -0
  34. package/coverage/src/runner/message-processor.ts.html +1150 -0
  35. package/coverage/src/runner/sdk-adapter.ts.html +658 -0
  36. package/coverage/src/runner/types.ts.html +559 -0
  37. package/coverage/src/scheduler/errors.ts.html +388 -0
  38. package/coverage/src/scheduler/index.html +206 -0
  39. package/coverage/src/scheduler/index.ts.html +244 -0
  40. package/coverage/src/scheduler/interval.ts.html +652 -0
  41. package/coverage/src/scheduler/schedule-runner.ts.html +1411 -0
  42. package/coverage/src/scheduler/schedule-state.ts.html +718 -0
  43. package/coverage/src/scheduler/scheduler.ts.html +1795 -0
  44. package/coverage/src/scheduler/types.ts.html +733 -0
  45. package/coverage/src/state/directory.ts.html +736 -0
  46. package/coverage/src/state/errors.ts.html +376 -0
  47. package/coverage/src/state/fleet-state.ts.html +937 -0
  48. package/coverage/src/state/index.html +221 -0
  49. package/coverage/src/state/index.ts.html +322 -0
  50. package/coverage/src/state/job-metadata.ts.html +1420 -0
  51. package/coverage/src/state/job-output.ts.html +1033 -0
  52. package/coverage/src/state/schemas/fleet-state.ts.html +445 -0
  53. package/coverage/src/state/schemas/index.html +176 -0
  54. package/coverage/src/state/schemas/index.ts.html +286 -0
  55. package/coverage/src/state/schemas/job-metadata.ts.html +628 -0
  56. package/coverage/src/state/schemas/job-output.ts.html +616 -0
  57. package/coverage/src/state/schemas/session-info.ts.html +361 -0
  58. package/coverage/src/state/session.ts.html +844 -0
  59. package/coverage/src/state/types.ts.html +262 -0
  60. package/coverage/src/state/utils/atomic.ts.html +748 -0
  61. package/coverage/src/state/utils/index.html +146 -0
  62. package/coverage/src/state/utils/index.ts.html +103 -0
  63. package/coverage/src/state/utils/reads.ts.html +1621 -0
  64. package/coverage/src/work-sources/adapters/github.ts.html +3583 -0
  65. package/coverage/src/work-sources/adapters/index.html +131 -0
  66. package/coverage/src/work-sources/adapters/index.ts.html +277 -0
  67. package/coverage/src/work-sources/errors.ts.html +298 -0
  68. package/coverage/src/work-sources/index.html +176 -0
  69. package/coverage/src/work-sources/index.ts.html +529 -0
  70. package/coverage/src/work-sources/manager.ts.html +1324 -0
  71. package/coverage/src/work-sources/registry.ts.html +619 -0
  72. package/coverage/src/work-sources/types.ts.html +568 -0
  73. package/dist/config/__tests__/agent.test.d.ts +2 -0
  74. package/dist/config/__tests__/agent.test.d.ts.map +1 -0
  75. package/dist/config/__tests__/agent.test.js +752 -0
  76. package/dist/config/__tests__/agent.test.js.map +1 -0
  77. package/dist/config/__tests__/interpolate.test.d.ts +2 -0
  78. package/dist/config/__tests__/interpolate.test.d.ts.map +1 -0
  79. package/dist/config/__tests__/interpolate.test.js +509 -0
  80. package/dist/config/__tests__/interpolate.test.js.map +1 -0
  81. package/dist/config/__tests__/loader.test.d.ts +2 -0
  82. package/dist/config/__tests__/loader.test.d.ts.map +1 -0
  83. package/dist/config/__tests__/loader.test.js +631 -0
  84. package/dist/config/__tests__/loader.test.js.map +1 -0
  85. package/dist/config/__tests__/merge.test.d.ts +2 -0
  86. package/dist/config/__tests__/merge.test.d.ts.map +1 -0
  87. package/dist/config/__tests__/merge.test.js +672 -0
  88. package/dist/config/__tests__/merge.test.js.map +1 -0
  89. package/dist/config/__tests__/parser.test.d.ts +2 -0
  90. package/dist/config/__tests__/parser.test.d.ts.map +1 -0
  91. package/dist/config/__tests__/parser.test.js +476 -0
  92. package/dist/config/__tests__/parser.test.js.map +1 -0
  93. package/dist/config/__tests__/schema.test.d.ts +2 -0
  94. package/dist/config/__tests__/schema.test.d.ts.map +1 -0
  95. package/dist/config/__tests__/schema.test.js +776 -0
  96. package/dist/config/__tests__/schema.test.js.map +1 -0
  97. package/dist/config/index.d.ts +11 -0
  98. package/dist/config/index.d.ts.map +1 -0
  99. package/dist/config/index.js +26 -0
  100. package/dist/config/index.js.map +1 -0
  101. package/dist/config/interpolate.d.ts +76 -0
  102. package/dist/config/interpolate.d.ts.map +1 -0
  103. package/dist/config/interpolate.js +143 -0
  104. package/dist/config/interpolate.js.map +1 -0
  105. package/dist/config/loader.d.ts +147 -0
  106. package/dist/config/loader.d.ts.map +1 -0
  107. package/dist/config/loader.js +336 -0
  108. package/dist/config/loader.js.map +1 -0
  109. package/dist/config/merge.d.ts +84 -0
  110. package/dist/config/merge.d.ts.map +1 -0
  111. package/dist/config/merge.js +138 -0
  112. package/dist/config/merge.js.map +1 -0
  113. package/dist/config/parser.d.ts +143 -0
  114. package/dist/config/parser.d.ts.map +1 -0
  115. package/dist/config/parser.js +316 -0
  116. package/dist/config/parser.js.map +1 -0
  117. package/dist/config/schema.d.ts +1906 -0
  118. package/dist/config/schema.d.ts.map +1 -0
  119. package/dist/config/schema.js +268 -0
  120. package/dist/config/schema.js.map +1 -0
  121. package/dist/fleet-manager/__tests__/coverage.test.d.ts +13 -0
  122. package/dist/fleet-manager/__tests__/coverage.test.d.ts.map +1 -0
  123. package/dist/fleet-manager/__tests__/coverage.test.js +2282 -0
  124. package/dist/fleet-manager/__tests__/coverage.test.js.map +1 -0
  125. package/dist/fleet-manager/__tests__/errors.test.d.ts +7 -0
  126. package/dist/fleet-manager/__tests__/errors.test.d.ts.map +1 -0
  127. package/dist/fleet-manager/__tests__/errors.test.js +557 -0
  128. package/dist/fleet-manager/__tests__/errors.test.js.map +1 -0
  129. package/dist/fleet-manager/__tests__/event-helpers.test.d.ts +7 -0
  130. package/dist/fleet-manager/__tests__/event-helpers.test.d.ts.map +1 -0
  131. package/dist/fleet-manager/__tests__/event-helpers.test.js +368 -0
  132. package/dist/fleet-manager/__tests__/event-helpers.test.js.map +1 -0
  133. package/dist/fleet-manager/__tests__/integration.test.d.ts +11 -0
  134. package/dist/fleet-manager/__tests__/integration.test.d.ts.map +1 -0
  135. package/dist/fleet-manager/__tests__/integration.test.js +949 -0
  136. package/dist/fleet-manager/__tests__/integration.test.js.map +1 -0
  137. package/dist/fleet-manager/__tests__/job-control.test.d.ts +7 -0
  138. package/dist/fleet-manager/__tests__/job-control.test.d.ts.map +1 -0
  139. package/dist/fleet-manager/__tests__/job-control.test.js +215 -0
  140. package/dist/fleet-manager/__tests__/job-control.test.js.map +1 -0
  141. package/dist/fleet-manager/__tests__/job-manager.test.d.ts +7 -0
  142. package/dist/fleet-manager/__tests__/job-manager.test.d.ts.map +1 -0
  143. package/dist/fleet-manager/__tests__/job-manager.test.js +659 -0
  144. package/dist/fleet-manager/__tests__/job-manager.test.js.map +1 -0
  145. package/dist/fleet-manager/__tests__/job-queue.test.d.ts +5 -0
  146. package/dist/fleet-manager/__tests__/job-queue.test.d.ts.map +1 -0
  147. package/dist/fleet-manager/__tests__/job-queue.test.js +315 -0
  148. package/dist/fleet-manager/__tests__/job-queue.test.js.map +1 -0
  149. package/dist/fleet-manager/__tests__/reload.test.d.ts +7 -0
  150. package/dist/fleet-manager/__tests__/reload.test.d.ts.map +1 -0
  151. package/dist/fleet-manager/__tests__/reload.test.js +609 -0
  152. package/dist/fleet-manager/__tests__/reload.test.js.map +1 -0
  153. package/dist/fleet-manager/__tests__/status-queries.test.d.ts +7 -0
  154. package/dist/fleet-manager/__tests__/status-queries.test.d.ts.map +1 -0
  155. package/dist/fleet-manager/__tests__/status-queries.test.js +488 -0
  156. package/dist/fleet-manager/__tests__/status-queries.test.js.map +1 -0
  157. package/dist/fleet-manager/__tests__/trigger.test.d.ts +7 -0
  158. package/dist/fleet-manager/__tests__/trigger.test.d.ts.map +1 -0
  159. package/dist/fleet-manager/__tests__/trigger.test.js +471 -0
  160. package/dist/fleet-manager/__tests__/trigger.test.js.map +1 -0
  161. package/dist/fleet-manager/errors.d.ts +407 -0
  162. package/dist/fleet-manager/errors.d.ts.map +1 -0
  163. package/dist/fleet-manager/errors.js +569 -0
  164. package/dist/fleet-manager/errors.js.map +1 -0
  165. package/dist/fleet-manager/event-types.d.ts +302 -0
  166. package/dist/fleet-manager/event-types.d.ts.map +1 -0
  167. package/dist/fleet-manager/event-types.js +9 -0
  168. package/dist/fleet-manager/event-types.js.map +1 -0
  169. package/dist/fleet-manager/fleet-manager.d.ts +699 -0
  170. package/dist/fleet-manager/fleet-manager.d.ts.map +1 -0
  171. package/dist/fleet-manager/fleet-manager.js +1906 -0
  172. package/dist/fleet-manager/fleet-manager.js.map +1 -0
  173. package/dist/fleet-manager/index.d.ts +17 -0
  174. package/dist/fleet-manager/index.d.ts.map +1 -0
  175. package/dist/fleet-manager/index.js +29 -0
  176. package/dist/fleet-manager/index.js.map +1 -0
  177. package/dist/fleet-manager/job-manager.d.ts +271 -0
  178. package/dist/fleet-manager/job-manager.d.ts.map +1 -0
  179. package/dist/fleet-manager/job-manager.js +443 -0
  180. package/dist/fleet-manager/job-manager.js.map +1 -0
  181. package/dist/fleet-manager/job-queue.d.ts +422 -0
  182. package/dist/fleet-manager/job-queue.d.ts.map +1 -0
  183. package/dist/fleet-manager/job-queue.js +448 -0
  184. package/dist/fleet-manager/job-queue.js.map +1 -0
  185. package/dist/fleet-manager/types.d.ts +680 -0
  186. package/dist/fleet-manager/types.d.ts.map +1 -0
  187. package/dist/fleet-manager/types.js +8 -0
  188. package/dist/fleet-manager/types.js.map +1 -0
  189. package/dist/index.d.ts +20 -0
  190. package/dist/index.d.ts.map +1 -0
  191. package/dist/index.js +26 -0
  192. package/dist/index.js.map +1 -0
  193. package/dist/runner/__tests__/errors.test.d.ts +2 -0
  194. package/dist/runner/__tests__/errors.test.d.ts.map +1 -0
  195. package/dist/runner/__tests__/errors.test.js +264 -0
  196. package/dist/runner/__tests__/errors.test.js.map +1 -0
  197. package/dist/runner/__tests__/job-executor.test.d.ts +2 -0
  198. package/dist/runner/__tests__/job-executor.test.d.ts.map +1 -0
  199. package/dist/runner/__tests__/job-executor.test.js +1345 -0
  200. package/dist/runner/__tests__/job-executor.test.js.map +1 -0
  201. package/dist/runner/__tests__/message-processor.test.d.ts +2 -0
  202. package/dist/runner/__tests__/message-processor.test.d.ts.map +1 -0
  203. package/dist/runner/__tests__/message-processor.test.js +768 -0
  204. package/dist/runner/__tests__/message-processor.test.js.map +1 -0
  205. package/dist/runner/__tests__/sdk-adapter.test.d.ts +2 -0
  206. package/dist/runner/__tests__/sdk-adapter.test.d.ts.map +1 -0
  207. package/dist/runner/__tests__/sdk-adapter.test.js +554 -0
  208. package/dist/runner/__tests__/sdk-adapter.test.js.map +1 -0
  209. package/dist/runner/errors.d.ts +121 -0
  210. package/dist/runner/errors.d.ts.map +1 -0
  211. package/dist/runner/errors.js +212 -0
  212. package/dist/runner/errors.js.map +1 -0
  213. package/dist/runner/index.d.ts +12 -0
  214. package/dist/runner/index.d.ts.map +1 -0
  215. package/dist/runner/index.js +15 -0
  216. package/dist/runner/index.js.map +1 -0
  217. package/dist/runner/job-executor.d.ts +98 -0
  218. package/dist/runner/job-executor.d.ts.map +1 -0
  219. package/dist/runner/job-executor.js +333 -0
  220. package/dist/runner/job-executor.js.map +1 -0
  221. package/dist/runner/message-processor.d.ts +45 -0
  222. package/dist/runner/message-processor.d.ts.map +1 -0
  223. package/dist/runner/message-processor.js +294 -0
  224. package/dist/runner/message-processor.js.map +1 -0
  225. package/dist/runner/sdk-adapter.d.ts +60 -0
  226. package/dist/runner/sdk-adapter.d.ts.map +1 -0
  227. package/dist/runner/sdk-adapter.js +138 -0
  228. package/dist/runner/sdk-adapter.js.map +1 -0
  229. package/dist/runner/types.d.ts +135 -0
  230. package/dist/runner/types.d.ts.map +1 -0
  231. package/dist/runner/types.js +7 -0
  232. package/dist/runner/types.js.map +1 -0
  233. package/dist/scheduler/__tests__/errors.test.d.ts +2 -0
  234. package/dist/scheduler/__tests__/errors.test.d.ts.map +1 -0
  235. package/dist/scheduler/__tests__/errors.test.js +101 -0
  236. package/dist/scheduler/__tests__/errors.test.js.map +1 -0
  237. package/dist/scheduler/__tests__/interval.test.d.ts +2 -0
  238. package/dist/scheduler/__tests__/interval.test.d.ts.map +1 -0
  239. package/dist/scheduler/__tests__/interval.test.js +419 -0
  240. package/dist/scheduler/__tests__/interval.test.js.map +1 -0
  241. package/dist/scheduler/__tests__/schedule-runner.test.d.ts +2 -0
  242. package/dist/scheduler/__tests__/schedule-runner.test.d.ts.map +1 -0
  243. package/dist/scheduler/__tests__/schedule-runner.test.js +634 -0
  244. package/dist/scheduler/__tests__/schedule-runner.test.js.map +1 -0
  245. package/dist/scheduler/__tests__/schedule-state.test.d.ts +2 -0
  246. package/dist/scheduler/__tests__/schedule-state.test.d.ts.map +1 -0
  247. package/dist/scheduler/__tests__/schedule-state.test.js +572 -0
  248. package/dist/scheduler/__tests__/schedule-state.test.js.map +1 -0
  249. package/dist/scheduler/__tests__/scheduler.test.d.ts +2 -0
  250. package/dist/scheduler/__tests__/scheduler.test.d.ts.map +1 -0
  251. package/dist/scheduler/__tests__/scheduler.test.js +987 -0
  252. package/dist/scheduler/__tests__/scheduler.test.js.map +1 -0
  253. package/dist/scheduler/errors.d.ts +61 -0
  254. package/dist/scheduler/errors.d.ts.map +1 -0
  255. package/dist/scheduler/errors.js +81 -0
  256. package/dist/scheduler/errors.js.map +1 -0
  257. package/dist/scheduler/index.d.ts +13 -0
  258. package/dist/scheduler/index.d.ts.map +1 -0
  259. package/dist/scheduler/index.js +17 -0
  260. package/dist/scheduler/index.js.map +1 -0
  261. package/dist/scheduler/interval.d.ts +64 -0
  262. package/dist/scheduler/interval.d.ts.map +1 -0
  263. package/dist/scheduler/interval.js +139 -0
  264. package/dist/scheduler/interval.js.map +1 -0
  265. package/dist/scheduler/schedule-runner.d.ts +149 -0
  266. package/dist/scheduler/schedule-runner.d.ts.map +1 -0
  267. package/dist/scheduler/schedule-runner.js +277 -0
  268. package/dist/scheduler/schedule-runner.js.map +1 -0
  269. package/dist/scheduler/schedule-state.d.ts +105 -0
  270. package/dist/scheduler/schedule-state.d.ts.map +1 -0
  271. package/dist/scheduler/schedule-state.js +151 -0
  272. package/dist/scheduler/schedule-state.js.map +1 -0
  273. package/dist/scheduler/scheduler.d.ts +138 -0
  274. package/dist/scheduler/scheduler.d.ts.map +1 -0
  275. package/dist/scheduler/scheduler.js +423 -0
  276. package/dist/scheduler/scheduler.js.map +1 -0
  277. package/dist/scheduler/types.d.ts +160 -0
  278. package/dist/scheduler/types.d.ts.map +1 -0
  279. package/dist/scheduler/types.js +8 -0
  280. package/dist/scheduler/types.js.map +1 -0
  281. package/dist/state/__tests__/directory.test.d.ts +2 -0
  282. package/dist/state/__tests__/directory.test.d.ts.map +1 -0
  283. package/dist/state/__tests__/directory.test.js +414 -0
  284. package/dist/state/__tests__/directory.test.js.map +1 -0
  285. package/dist/state/__tests__/fleet-state.test.d.ts +2 -0
  286. package/dist/state/__tests__/fleet-state.test.d.ts.map +1 -0
  287. package/dist/state/__tests__/fleet-state.test.js +696 -0
  288. package/dist/state/__tests__/fleet-state.test.js.map +1 -0
  289. package/dist/state/__tests__/job-metadata-schema.test.d.ts +2 -0
  290. package/dist/state/__tests__/job-metadata-schema.test.d.ts.map +1 -0
  291. package/dist/state/__tests__/job-metadata-schema.test.js +329 -0
  292. package/dist/state/__tests__/job-metadata-schema.test.js.map +1 -0
  293. package/dist/state/__tests__/job-metadata.test.d.ts +2 -0
  294. package/dist/state/__tests__/job-metadata.test.d.ts.map +1 -0
  295. package/dist/state/__tests__/job-metadata.test.js +667 -0
  296. package/dist/state/__tests__/job-metadata.test.js.map +1 -0
  297. package/dist/state/__tests__/job-output.test.d.ts +2 -0
  298. package/dist/state/__tests__/job-output.test.d.ts.map +1 -0
  299. package/dist/state/__tests__/job-output.test.js +672 -0
  300. package/dist/state/__tests__/job-output.test.js.map +1 -0
  301. package/dist/state/__tests__/session-schema.test.d.ts +2 -0
  302. package/dist/state/__tests__/session-schema.test.d.ts.map +1 -0
  303. package/dist/state/__tests__/session-schema.test.js +323 -0
  304. package/dist/state/__tests__/session-schema.test.js.map +1 -0
  305. package/dist/state/__tests__/session.test.d.ts +2 -0
  306. package/dist/state/__tests__/session.test.d.ts.map +1 -0
  307. package/dist/state/__tests__/session.test.js +468 -0
  308. package/dist/state/__tests__/session.test.js.map +1 -0
  309. package/dist/state/directory.d.ts +42 -0
  310. package/dist/state/directory.d.ts.map +1 -0
  311. package/dist/state/directory.js +170 -0
  312. package/dist/state/directory.js.map +1 -0
  313. package/dist/state/errors.d.ts +44 -0
  314. package/dist/state/errors.d.ts.map +1 -0
  315. package/dist/state/errors.js +82 -0
  316. package/dist/state/errors.js.map +1 -0
  317. package/dist/state/fleet-state.d.ts +126 -0
  318. package/dist/state/fleet-state.d.ts.map +1 -0
  319. package/dist/state/fleet-state.js +196 -0
  320. package/dist/state/fleet-state.js.map +1 -0
  321. package/dist/state/index.d.ts +21 -0
  322. package/dist/state/index.d.ts.map +1 -0
  323. package/dist/state/index.js +30 -0
  324. package/dist/state/index.js.map +1 -0
  325. package/dist/state/job-metadata.d.ts +151 -0
  326. package/dist/state/job-metadata.d.ts.map +1 -0
  327. package/dist/state/job-metadata.js +287 -0
  328. package/dist/state/job-metadata.js.map +1 -0
  329. package/dist/state/job-output.d.ts +116 -0
  330. package/dist/state/job-output.d.ts.map +1 -0
  331. package/dist/state/job-output.js +218 -0
  332. package/dist/state/job-output.js.map +1 -0
  333. package/dist/state/schemas/__tests__/job-output.test.d.ts +2 -0
  334. package/dist/state/schemas/__tests__/job-output.test.d.ts.map +1 -0
  335. package/dist/state/schemas/__tests__/job-output.test.js +279 -0
  336. package/dist/state/schemas/__tests__/job-output.test.js.map +1 -0
  337. package/dist/state/schemas/fleet-state.d.ts +249 -0
  338. package/dist/state/schemas/fleet-state.d.ts.map +1 -0
  339. package/dist/state/schemas/fleet-state.js +97 -0
  340. package/dist/state/schemas/fleet-state.js.map +1 -0
  341. package/dist/state/schemas/index.d.ts +10 -0
  342. package/dist/state/schemas/index.d.ts.map +1 -0
  343. package/dist/state/schemas/index.js +10 -0
  344. package/dist/state/schemas/index.js.map +1 -0
  345. package/dist/state/schemas/job-metadata.d.ts +118 -0
  346. package/dist/state/schemas/job-metadata.d.ts.map +1 -0
  347. package/dist/state/schemas/job-metadata.js +123 -0
  348. package/dist/state/schemas/job-metadata.js.map +1 -0
  349. package/dist/state/schemas/job-output.d.ts +291 -0
  350. package/dist/state/schemas/job-output.d.ts.map +1 -0
  351. package/dist/state/schemas/job-output.js +132 -0
  352. package/dist/state/schemas/job-output.js.map +1 -0
  353. package/dist/state/schemas/session-info.d.ts +65 -0
  354. package/dist/state/schemas/session-info.d.ts.map +1 -0
  355. package/dist/state/schemas/session-info.js +58 -0
  356. package/dist/state/schemas/session-info.js.map +1 -0
  357. package/dist/state/session.d.ts +92 -0
  358. package/dist/state/session.d.ts.map +1 -0
  359. package/dist/state/session.js +173 -0
  360. package/dist/state/session.js.map +1 -0
  361. package/dist/state/types.d.ts +54 -0
  362. package/dist/state/types.d.ts.map +1 -0
  363. package/dist/state/types.js +18 -0
  364. package/dist/state/types.js.map +1 -0
  365. package/dist/state/utils/__tests__/atomic.test.d.ts +2 -0
  366. package/dist/state/utils/__tests__/atomic.test.d.ts.map +1 -0
  367. package/dist/state/utils/__tests__/atomic.test.js +537 -0
  368. package/dist/state/utils/__tests__/atomic.test.js.map +1 -0
  369. package/dist/state/utils/__tests__/reads.test.d.ts +2 -0
  370. package/dist/state/utils/__tests__/reads.test.d.ts.map +1 -0
  371. package/dist/state/utils/__tests__/reads.test.js +792 -0
  372. package/dist/state/utils/__tests__/reads.test.js.map +1 -0
  373. package/dist/state/utils/atomic.d.ts +89 -0
  374. package/dist/state/utils/atomic.d.ts.map +1 -0
  375. package/dist/state/utils/atomic.js +157 -0
  376. package/dist/state/utils/atomic.js.map +1 -0
  377. package/dist/state/utils/index.d.ts +6 -0
  378. package/dist/state/utils/index.d.ts.map +1 -0
  379. package/dist/state/utils/index.js +6 -0
  380. package/dist/state/utils/index.js.map +1 -0
  381. package/dist/state/utils/reads.d.ts +196 -0
  382. package/dist/state/utils/reads.d.ts.map +1 -0
  383. package/dist/state/utils/reads.js +346 -0
  384. package/dist/state/utils/reads.js.map +1 -0
  385. package/dist/work-sources/__tests__/github.test.d.ts +2 -0
  386. package/dist/work-sources/__tests__/github.test.d.ts.map +1 -0
  387. package/dist/work-sources/__tests__/github.test.js +1334 -0
  388. package/dist/work-sources/__tests__/github.test.js.map +1 -0
  389. package/dist/work-sources/__tests__/manager.test.d.ts +2 -0
  390. package/dist/work-sources/__tests__/manager.test.d.ts.map +1 -0
  391. package/dist/work-sources/__tests__/manager.test.js +424 -0
  392. package/dist/work-sources/__tests__/manager.test.js.map +1 -0
  393. package/dist/work-sources/__tests__/registry.test.d.ts +2 -0
  394. package/dist/work-sources/__tests__/registry.test.d.ts.map +1 -0
  395. package/dist/work-sources/__tests__/registry.test.js +381 -0
  396. package/dist/work-sources/__tests__/registry.test.js.map +1 -0
  397. package/dist/work-sources/__tests__/types.test.d.ts +2 -0
  398. package/dist/work-sources/__tests__/types.test.d.ts.map +1 -0
  399. package/dist/work-sources/__tests__/types.test.js +406 -0
  400. package/dist/work-sources/__tests__/types.test.js.map +1 -0
  401. package/dist/work-sources/adapters/github.d.ts +290 -0
  402. package/dist/work-sources/adapters/github.d.ts.map +1 -0
  403. package/dist/work-sources/adapters/github.js +803 -0
  404. package/dist/work-sources/adapters/github.js.map +1 -0
  405. package/dist/work-sources/adapters/index.d.ts +10 -0
  406. package/dist/work-sources/adapters/index.d.ts.map +1 -0
  407. package/dist/work-sources/adapters/index.js +31 -0
  408. package/dist/work-sources/adapters/index.js.map +1 -0
  409. package/dist/work-sources/errors.d.ts +40 -0
  410. package/dist/work-sources/errors.d.ts.map +1 -0
  411. package/dist/work-sources/errors.js +54 -0
  412. package/dist/work-sources/errors.js.map +1 -0
  413. package/dist/work-sources/index.d.ts +105 -0
  414. package/dist/work-sources/index.d.ts.map +1 -0
  415. package/dist/work-sources/index.js +24 -0
  416. package/dist/work-sources/index.js.map +1 -0
  417. package/dist/work-sources/manager.d.ts +370 -0
  418. package/dist/work-sources/manager.d.ts.map +1 -0
  419. package/dist/work-sources/manager.js +61 -0
  420. package/dist/work-sources/manager.js.map +1 -0
  421. package/dist/work-sources/registry.d.ts +128 -0
  422. package/dist/work-sources/registry.d.ts.map +1 -0
  423. package/dist/work-sources/registry.js +132 -0
  424. package/dist/work-sources/registry.js.map +1 -0
  425. package/dist/work-sources/types.d.ts +127 -0
  426. package/dist/work-sources/types.d.ts.map +1 -0
  427. package/dist/work-sources/types.js +8 -0
  428. package/dist/work-sources/types.js.map +1 -0
  429. package/package.json +23 -0
  430. package/src/config/__tests__/agent.test.ts +864 -0
  431. package/src/config/__tests__/interpolate.test.ts +644 -0
  432. package/src/config/__tests__/loader.test.ts +784 -0
  433. package/src/config/__tests__/merge.test.ts +751 -0
  434. package/src/config/__tests__/parser.test.ts +533 -0
  435. package/src/config/__tests__/schema.test.ts +873 -0
  436. package/src/config/index.ts +119 -0
  437. package/src/config/interpolate.ts +189 -0
  438. package/src/config/loader.ts +472 -0
  439. package/src/config/merge.ts +246 -0
  440. package/src/config/parser.ts +376 -0
  441. package/src/config/schema.ts +346 -0
  442. package/src/fleet-manager/__tests__/coverage.test.ts +2869 -0
  443. package/src/fleet-manager/__tests__/errors.test.ts +660 -0
  444. package/src/fleet-manager/__tests__/event-helpers.test.ts +448 -0
  445. package/src/fleet-manager/__tests__/integration.test.ts +1209 -0
  446. package/src/fleet-manager/__tests__/job-control.test.ts +283 -0
  447. package/src/fleet-manager/__tests__/job-manager.test.ts +869 -0
  448. package/src/fleet-manager/__tests__/job-queue.test.ts +401 -0
  449. package/src/fleet-manager/__tests__/reload.test.ts +751 -0
  450. package/src/fleet-manager/__tests__/status-queries.test.ts +595 -0
  451. package/src/fleet-manager/__tests__/trigger.test.ts +601 -0
  452. package/src/fleet-manager/errors.ts +747 -0
  453. package/src/fleet-manager/event-types.ts +378 -0
  454. package/src/fleet-manager/fleet-manager.ts +2315 -0
  455. package/src/fleet-manager/index.ts +128 -0
  456. package/src/fleet-manager/job-manager.ts +663 -0
  457. package/src/fleet-manager/job-queue.ts +798 -0
  458. package/src/fleet-manager/types.ts +839 -0
  459. package/src/index.ts +32 -0
  460. package/src/runner/__tests__/errors.test.ts +382 -0
  461. package/src/runner/__tests__/job-executor.test.ts +1708 -0
  462. package/src/runner/__tests__/message-processor.test.ts +960 -0
  463. package/src/runner/__tests__/sdk-adapter.test.ts +626 -0
  464. package/src/runner/errors.ts +307 -0
  465. package/src/runner/index.ts +57 -0
  466. package/src/runner/job-executor.ts +448 -0
  467. package/src/runner/message-processor.ts +355 -0
  468. package/src/runner/sdk-adapter.ts +191 -0
  469. package/src/runner/types.ts +158 -0
  470. package/src/scheduler/__tests__/errors.test.ts +159 -0
  471. package/src/scheduler/__tests__/interval.test.ts +515 -0
  472. package/src/scheduler/__tests__/schedule-runner.test.ts +798 -0
  473. package/src/scheduler/__tests__/schedule-state.test.ts +671 -0
  474. package/src/scheduler/__tests__/scheduler.test.ts +1280 -0
  475. package/src/scheduler/errors.ts +101 -0
  476. package/src/scheduler/index.ts +53 -0
  477. package/src/scheduler/interval.ts +189 -0
  478. package/src/scheduler/schedule-runner.ts +442 -0
  479. package/src/scheduler/schedule-state.ts +211 -0
  480. package/src/scheduler/scheduler.ts +570 -0
  481. package/src/scheduler/types.ts +216 -0
  482. package/src/state/__tests__/directory.test.ts +595 -0
  483. package/src/state/__tests__/fleet-state.test.ts +868 -0
  484. package/src/state/__tests__/job-metadata-schema.test.ts +414 -0
  485. package/src/state/__tests__/job-metadata.test.ts +831 -0
  486. package/src/state/__tests__/job-output.test.ts +856 -0
  487. package/src/state/__tests__/session-schema.test.ts +378 -0
  488. package/src/state/__tests__/session.test.ts +604 -0
  489. package/src/state/directory.ts +217 -0
  490. package/src/state/errors.ts +97 -0
  491. package/src/state/fleet-state.ts +284 -0
  492. package/src/state/index.ts +79 -0
  493. package/src/state/job-metadata.ts +445 -0
  494. package/src/state/job-output.ts +316 -0
  495. package/src/state/schemas/__tests__/job-output.test.ts +338 -0
  496. package/src/state/schemas/fleet-state.ts +120 -0
  497. package/src/state/schemas/index.ts +67 -0
  498. package/src/state/schemas/job-metadata.ts +181 -0
  499. package/src/state/schemas/job-output.ts +177 -0
  500. package/src/state/schemas/session-info.ts +92 -0
  501. package/src/state/session.ts +253 -0
  502. package/src/state/types.ts +59 -0
  503. package/src/state/utils/__tests__/atomic.test.ts +723 -0
  504. package/src/state/utils/__tests__/reads.test.ts +1071 -0
  505. package/src/state/utils/atomic.ts +221 -0
  506. package/src/state/utils/index.ts +6 -0
  507. package/src/state/utils/reads.ts +512 -0
  508. package/src/work-sources/__tests__/github.test.ts +1800 -0
  509. package/src/work-sources/__tests__/manager.test.ts +529 -0
  510. package/src/work-sources/__tests__/registry.test.ts +477 -0
  511. package/src/work-sources/__tests__/types.test.ts +479 -0
  512. package/src/work-sources/adapters/github.ts +1166 -0
  513. package/src/work-sources/adapters/index.ts +64 -0
  514. package/src/work-sources/errors.ts +71 -0
  515. package/src/work-sources/index.ts +148 -0
  516. package/src/work-sources/manager.ts +413 -0
  517. package/src/work-sources/registry.ts +178 -0
  518. package/src/work-sources/types.ts +161 -0
  519. package/tsconfig.json +9 -0
  520. package/vitest.config.ts +19 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduler.test.js","sourceRoot":"","sources":["../../../src/scheduler/__tests__/scheduler.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Error classes for scheduler module
3
+ *
4
+ * Provides typed errors with descriptive messages for scheduler operations.
5
+ */
6
+ /**
7
+ * Base error class for all scheduler errors
8
+ */
9
+ export declare class SchedulerError extends Error {
10
+ constructor(message: string, options?: {
11
+ cause?: Error;
12
+ });
13
+ }
14
+ /**
15
+ * Error thrown when an interval string cannot be parsed
16
+ *
17
+ * This error provides detailed information about what went wrong during parsing,
18
+ * including the invalid input and suggestions for valid formats.
19
+ */
20
+ export declare class IntervalParseError extends SchedulerError {
21
+ /** The original input string that failed to parse */
22
+ readonly input: string;
23
+ constructor(message: string, input: string, options?: {
24
+ cause?: Error;
25
+ });
26
+ }
27
+ /**
28
+ * Error thrown when a schedule trigger fails during execution
29
+ *
30
+ * This error wraps the underlying cause and provides context about which
31
+ * agent and schedule encountered the error. It is used internally by the
32
+ * Scheduler to capture and report trigger failures while allowing the
33
+ * scheduler to continue processing other schedules.
34
+ */
35
+ export declare class ScheduleTriggerError extends SchedulerError {
36
+ /** The name of the agent that owns the schedule */
37
+ readonly agentName: string;
38
+ /** The name of the schedule that failed */
39
+ readonly scheduleName: string;
40
+ constructor(message: string, agentName: string, scheduleName: string, options?: {
41
+ cause?: Error;
42
+ });
43
+ }
44
+ /**
45
+ * Error thrown when scheduler shutdown encounters issues
46
+ *
47
+ * This error is thrown when the scheduler cannot shut down cleanly,
48
+ * typically due to running jobs not completing within the configured timeout.
49
+ */
50
+ export declare class SchedulerShutdownError extends SchedulerError {
51
+ /** Whether the shutdown timed out waiting for jobs to complete */
52
+ readonly timedOut: boolean;
53
+ /** Number of jobs that were still running when shutdown completed/timed out */
54
+ readonly runningJobCount: number;
55
+ constructor(message: string, options: {
56
+ timedOut: boolean;
57
+ runningJobCount: number;
58
+ cause?: Error;
59
+ });
60
+ }
61
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/scheduler/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH;;GAEG;AACH,qBAAa,cAAe,SAAQ,KAAK;gBAC3B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAKzD;AAMD;;;;;GAKG;AACH,qBAAa,kBAAmB,SAAQ,cAAc;IACpD,qDAAqD;IACrD,SAAgB,KAAK,EAAE,MAAM,CAAC;gBAElB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAKxE;AAMD;;;;;;;GAOG;AACH,qBAAa,oBAAqB,SAAQ,cAAc;IACtD,mDAAmD;IACnD,SAAgB,SAAS,EAAE,MAAM,CAAC;IAElC,2CAA2C;IAC3C,SAAgB,YAAY,EAAE,MAAM,CAAC;gBAGnC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAO9B;AAMD;;;;;GAKG;AACH,qBAAa,sBAAuB,SAAQ,cAAc;IACxD,kEAAkE;IAClE,SAAgB,QAAQ,EAAE,OAAO,CAAC;IAElC,+EAA+E;IAC/E,SAAgB,eAAe,EAAE,MAAM,CAAC;gBAGtC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,eAAe,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAOzE"}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Error classes for scheduler module
3
+ *
4
+ * Provides typed errors with descriptive messages for scheduler operations.
5
+ */
6
+ // =============================================================================
7
+ // Base Error Class
8
+ // =============================================================================
9
+ /**
10
+ * Base error class for all scheduler errors
11
+ */
12
+ export class SchedulerError extends Error {
13
+ constructor(message, options) {
14
+ super(message);
15
+ this.name = "SchedulerError";
16
+ this.cause = options?.cause;
17
+ }
18
+ }
19
+ // =============================================================================
20
+ // Interval Parse Errors
21
+ // =============================================================================
22
+ /**
23
+ * Error thrown when an interval string cannot be parsed
24
+ *
25
+ * This error provides detailed information about what went wrong during parsing,
26
+ * including the invalid input and suggestions for valid formats.
27
+ */
28
+ export class IntervalParseError extends SchedulerError {
29
+ /** The original input string that failed to parse */
30
+ input;
31
+ constructor(message, input, options) {
32
+ super(message, options);
33
+ this.name = "IntervalParseError";
34
+ this.input = input;
35
+ }
36
+ }
37
+ // =============================================================================
38
+ // Schedule Trigger Errors
39
+ // =============================================================================
40
+ /**
41
+ * Error thrown when a schedule trigger fails during execution
42
+ *
43
+ * This error wraps the underlying cause and provides context about which
44
+ * agent and schedule encountered the error. It is used internally by the
45
+ * Scheduler to capture and report trigger failures while allowing the
46
+ * scheduler to continue processing other schedules.
47
+ */
48
+ export class ScheduleTriggerError extends SchedulerError {
49
+ /** The name of the agent that owns the schedule */
50
+ agentName;
51
+ /** The name of the schedule that failed */
52
+ scheduleName;
53
+ constructor(message, agentName, scheduleName, options) {
54
+ super(message, options);
55
+ this.name = "ScheduleTriggerError";
56
+ this.agentName = agentName;
57
+ this.scheduleName = scheduleName;
58
+ }
59
+ }
60
+ // =============================================================================
61
+ // Scheduler Shutdown Errors
62
+ // =============================================================================
63
+ /**
64
+ * Error thrown when scheduler shutdown encounters issues
65
+ *
66
+ * This error is thrown when the scheduler cannot shut down cleanly,
67
+ * typically due to running jobs not completing within the configured timeout.
68
+ */
69
+ export class SchedulerShutdownError extends SchedulerError {
70
+ /** Whether the shutdown timed out waiting for jobs to complete */
71
+ timedOut;
72
+ /** Number of jobs that were still running when shutdown completed/timed out */
73
+ runningJobCount;
74
+ constructor(message, options) {
75
+ super(message, { cause: options.cause });
76
+ this.name = "SchedulerShutdownError";
77
+ this.timedOut = options.timedOut;
78
+ this.runningJobCount = options.runningJobCount;
79
+ }
80
+ }
81
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/scheduler/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvC,YAAY,OAAe,EAAE,OAA2B;QACtD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;QAC7B,IAAI,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,CAAC;IAC9B,CAAC;CACF;AAED,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAEhF;;;;;GAKG;AACH,MAAM,OAAO,kBAAmB,SAAQ,cAAc;IACpD,qDAAqD;IACrC,KAAK,CAAS;IAE9B,YAAY,OAAe,EAAE,KAAa,EAAE,OAA2B;QACrE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAED,gFAAgF;AAChF,0BAA0B;AAC1B,gFAAgF;AAEhF;;;;;;;GAOG;AACH,MAAM,OAAO,oBAAqB,SAAQ,cAAc;IACtD,mDAAmD;IACnC,SAAS,CAAS;IAElC,2CAA2C;IAC3B,YAAY,CAAS;IAErC,YACE,OAAe,EACf,SAAiB,EACjB,YAAoB,EACpB,OAA2B;QAE3B,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;CACF;AAED,gFAAgF;AAChF,4BAA4B;AAC5B,gFAAgF;AAEhF;;;;;GAKG;AACH,MAAM,OAAO,sBAAuB,SAAQ,cAAc;IACxD,kEAAkE;IAClD,QAAQ,CAAU;IAElC,+EAA+E;IAC/D,eAAe,CAAS;IAExC,YACE,OAAe,EACf,OAAsE;QAEtE,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IACjD,CAAC;CACF"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Scheduler module for herdctl
3
+ *
4
+ * Provides interval parsing, scheduling utilities, and the Scheduler class
5
+ * for agent fleet management.
6
+ */
7
+ export * from "./errors.js";
8
+ export { parseInterval, calculateNextTrigger, isScheduleDue, } from "./interval.js";
9
+ export { getScheduleState, updateScheduleState, getAgentScheduleStates, type ScheduleStateLogger, type ScheduleStateOptions, type ScheduleStateUpdates, } from "./schedule-state.js";
10
+ export type { SchedulerOptions, SchedulerStatus, SchedulerState, SchedulerLogger, ScheduleCheckResult, ScheduleSkipReason, TriggerInfo, SchedulerTriggerCallback, AgentScheduleInfo, StopOptions, } from "./types.js";
11
+ export { Scheduler } from "./scheduler.js";
12
+ export { runSchedule, buildSchedulePrompt, type RunScheduleOptions, type ScheduleRunResult, type ScheduleRunnerLogger, type TriggerMetadata, } from "./schedule-runner.js";
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scheduler/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,cAAc,aAAa,CAAC;AAG5B,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,aAAa,GACd,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,GAC1B,MAAM,qBAAqB,CAAC;AAG7B,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACX,wBAAwB,EACxB,iBAAiB,EACjB,WAAW,GACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG3C,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,eAAe,GACrB,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Scheduler module for herdctl
3
+ *
4
+ * Provides interval parsing, scheduling utilities, and the Scheduler class
5
+ * for agent fleet management.
6
+ */
7
+ // Errors
8
+ export * from "./errors.js";
9
+ // Interval parsing and scheduling
10
+ export { parseInterval, calculateNextTrigger, isScheduleDue, } from "./interval.js";
11
+ // Schedule state management
12
+ export { getScheduleState, updateScheduleState, getAgentScheduleStates, } from "./schedule-state.js";
13
+ // Scheduler class
14
+ export { Scheduler } from "./scheduler.js";
15
+ // Schedule runner
16
+ export { runSchedule, buildSchedulePrompt, } from "./schedule-runner.js";
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scheduler/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,SAAS;AACT,cAAc,aAAa,CAAC;AAE5B,kCAAkC;AAClC,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,4BAA4B;AAC5B,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,GAIvB,MAAM,qBAAqB,CAAC;AAgB7B,kBAAkB;AAClB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,kBAAkB;AAClB,OAAO,EACL,WAAW,EACX,mBAAmB,GAKpB,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Interval parsing utilities for the scheduler module
3
+ *
4
+ * Parses human-readable interval strings like "5m", "1h", "30s" into milliseconds.
5
+ */
6
+ /**
7
+ * Parse an interval string into milliseconds
8
+ *
9
+ * Supports the format `{number}{unit}` where:
10
+ * - `number` is a positive integer
11
+ * - `unit` is one of: s (seconds), m (minutes), h (hours), d (days)
12
+ *
13
+ * @param interval - The interval string to parse (e.g., "5m", "1h", "30s", "1d")
14
+ * @returns The interval in milliseconds
15
+ * @throws {IntervalParseError} If the interval string is invalid
16
+ *
17
+ * @example
18
+ * parseInterval("5s") // returns 5000
19
+ * parseInterval("5m") // returns 300000
20
+ * parseInterval("1h") // returns 3600000
21
+ * parseInterval("1d") // returns 86400000
22
+ */
23
+ export declare function parseInterval(interval: string): number;
24
+ /**
25
+ * Calculate the next trigger time for a schedule
26
+ *
27
+ * @param lastCompletedAt - When the schedule last completed, or null for first run
28
+ * @param interval - The interval string (e.g., "5m", "1h")
29
+ * @param jitterPercent - Optional jitter percentage (0-10) to add randomness and prevent thundering herd
30
+ * @returns The next trigger time as a Date
31
+ *
32
+ * @example
33
+ * // First run - triggers immediately
34
+ * calculateNextTrigger(null, "5m") // returns now
35
+ *
36
+ * // Subsequent run - triggers after interval
37
+ * calculateNextTrigger(new Date("2024-01-01T00:00:00Z"), "5m")
38
+ * // returns 2024-01-01T00:05:00Z (plus optional jitter)
39
+ *
40
+ * // With jitter to prevent thundering herd
41
+ * calculateNextTrigger(lastRun, "1h", 5) // adds 0-5% jitter to interval
42
+ */
43
+ export declare function calculateNextTrigger(lastCompletedAt: Date | null, interval: string, jitterPercent?: number): Date;
44
+ /**
45
+ * Check if a schedule is due to run
46
+ *
47
+ * @param nextRunAt - The scheduled next run time
48
+ * @param now - Optional current time (defaults to new Date())
49
+ * @returns true if the schedule is due (nextRunAt <= now)
50
+ *
51
+ * @example
52
+ * const nextRun = new Date("2024-01-01T00:05:00Z");
53
+ *
54
+ * // Before scheduled time
55
+ * isScheduleDue(nextRun, new Date("2024-01-01T00:04:00Z")) // false
56
+ *
57
+ * // At scheduled time
58
+ * isScheduleDue(nextRun, new Date("2024-01-01T00:05:00Z")) // true
59
+ *
60
+ * // After scheduled time
61
+ * isScheduleDue(nextRun, new Date("2024-01-01T00:06:00Z")) // true
62
+ */
63
+ export declare function isScheduleDue(nextRunAt: Date, now?: Date): boolean;
64
+ //# sourceMappingURL=interval.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interval.d.ts","sourceRoot":"","sources":["../../src/scheduler/interval.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAmBH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAwEtD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,oBAAoB,CAClC,eAAe,EAAE,IAAI,GAAG,IAAI,EAC5B,QAAQ,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,MAAM,GACrB,IAAI,CA2BN;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,IAAI,GAAG,OAAO,CAGlE"}
@@ -0,0 +1,139 @@
1
+ /**
2
+ * Interval parsing utilities for the scheduler module
3
+ *
4
+ * Parses human-readable interval strings like "5m", "1h", "30s" into milliseconds.
5
+ */
6
+ import { IntervalParseError } from "./errors.js";
7
+ /**
8
+ * Multipliers to convert time units to milliseconds
9
+ */
10
+ const UNIT_MULTIPLIERS = {
11
+ s: 1000, // seconds
12
+ m: 60 * 1000, // minutes
13
+ h: 60 * 60 * 1000, // hours
14
+ d: 24 * 60 * 60 * 1000, // days
15
+ };
16
+ /**
17
+ * Valid time units
18
+ */
19
+ const VALID_UNITS = Object.keys(UNIT_MULTIPLIERS);
20
+ /**
21
+ * Parse an interval string into milliseconds
22
+ *
23
+ * Supports the format `{number}{unit}` where:
24
+ * - `number` is a positive integer
25
+ * - `unit` is one of: s (seconds), m (minutes), h (hours), d (days)
26
+ *
27
+ * @param interval - The interval string to parse (e.g., "5m", "1h", "30s", "1d")
28
+ * @returns The interval in milliseconds
29
+ * @throws {IntervalParseError} If the interval string is invalid
30
+ *
31
+ * @example
32
+ * parseInterval("5s") // returns 5000
33
+ * parseInterval("5m") // returns 300000
34
+ * parseInterval("1h") // returns 3600000
35
+ * parseInterval("1d") // returns 86400000
36
+ */
37
+ export function parseInterval(interval) {
38
+ // Handle empty string
39
+ if (!interval || interval.trim() === "") {
40
+ throw new IntervalParseError('Interval cannot be empty. Expected format: "{number}{unit}" where unit is s/m/h/d (e.g., "5m", "1h")', interval);
41
+ }
42
+ const trimmed = interval.trim();
43
+ // Match the pattern: optional whitespace, digits, optional whitespace, unit letter
44
+ const match = trimmed.match(/^(-?\d+)\s*([a-zA-Z]+)$/);
45
+ if (!match) {
46
+ // Check for common error patterns to provide better error messages
47
+ if (/^\d+$/.test(trimmed)) {
48
+ throw new IntervalParseError(`Missing time unit in interval "${interval}". Expected format: "{number}{unit}" where unit is s/m/h/d (e.g., "5m", "1h")`, interval);
49
+ }
50
+ if (/^[a-zA-Z]+$/.test(trimmed)) {
51
+ throw new IntervalParseError(`Missing numeric value in interval "${interval}". Expected format: "{number}{unit}" where unit is s/m/h/d (e.g., "5m", "1h")`, interval);
52
+ }
53
+ if (/\d+\.\d+/.test(trimmed)) {
54
+ throw new IntervalParseError(`Decimal values are not supported in interval "${interval}". Use integers only (e.g., "5m" instead of "5.5m")`, interval);
55
+ }
56
+ throw new IntervalParseError(`Invalid interval format "${interval}". Expected format: "{number}{unit}" where unit is s/m/h/d (e.g., "5m", "1h")`, interval);
57
+ }
58
+ const [, valueStr, unit] = match;
59
+ const value = parseInt(valueStr, 10);
60
+ const normalizedUnit = unit.toLowerCase();
61
+ // Check for negative numbers
62
+ if (value < 0) {
63
+ throw new IntervalParseError(`Negative intervals are not allowed: "${interval}". Use a positive integer value`, interval);
64
+ }
65
+ // Check for zero
66
+ if (value === 0) {
67
+ throw new IntervalParseError(`Zero interval is not allowed: "${interval}". Use a positive integer value`, interval);
68
+ }
69
+ // Check for valid unit
70
+ if (!VALID_UNITS.includes(normalizedUnit)) {
71
+ throw new IntervalParseError(`Invalid time unit "${unit}" in interval "${interval}". Valid units are: s (seconds), m (minutes), h (hours), d (days)`, interval);
72
+ }
73
+ return value * UNIT_MULTIPLIERS[normalizedUnit];
74
+ }
75
+ /**
76
+ * Calculate the next trigger time for a schedule
77
+ *
78
+ * @param lastCompletedAt - When the schedule last completed, or null for first run
79
+ * @param interval - The interval string (e.g., "5m", "1h")
80
+ * @param jitterPercent - Optional jitter percentage (0-10) to add randomness and prevent thundering herd
81
+ * @returns The next trigger time as a Date
82
+ *
83
+ * @example
84
+ * // First run - triggers immediately
85
+ * calculateNextTrigger(null, "5m") // returns now
86
+ *
87
+ * // Subsequent run - triggers after interval
88
+ * calculateNextTrigger(new Date("2024-01-01T00:00:00Z"), "5m")
89
+ * // returns 2024-01-01T00:05:00Z (plus optional jitter)
90
+ *
91
+ * // With jitter to prevent thundering herd
92
+ * calculateNextTrigger(lastRun, "1h", 5) // adds 0-5% jitter to interval
93
+ */
94
+ export function calculateNextTrigger(lastCompletedAt, interval, jitterPercent) {
95
+ const now = new Date();
96
+ // If no previous run, trigger immediately
97
+ if (lastCompletedAt === null) {
98
+ return now;
99
+ }
100
+ const intervalMs = parseInterval(interval);
101
+ // Calculate jitter if specified
102
+ let jitterMs = 0;
103
+ if (jitterPercent !== undefined && jitterPercent > 0) {
104
+ // Clamp jitter to 0-10%
105
+ const clampedJitter = Math.min(Math.max(jitterPercent, 0), 10);
106
+ // Random jitter between 0 and clampedJitter% of interval
107
+ jitterMs = Math.floor(Math.random() * (intervalMs * clampedJitter) / 100);
108
+ }
109
+ const nextTrigger = new Date(lastCompletedAt.getTime() + intervalMs + jitterMs);
110
+ // Handle clock skew: if next trigger is in the past, trigger now
111
+ if (nextTrigger.getTime() < now.getTime()) {
112
+ return now;
113
+ }
114
+ return nextTrigger;
115
+ }
116
+ /**
117
+ * Check if a schedule is due to run
118
+ *
119
+ * @param nextRunAt - The scheduled next run time
120
+ * @param now - Optional current time (defaults to new Date())
121
+ * @returns true if the schedule is due (nextRunAt <= now)
122
+ *
123
+ * @example
124
+ * const nextRun = new Date("2024-01-01T00:05:00Z");
125
+ *
126
+ * // Before scheduled time
127
+ * isScheduleDue(nextRun, new Date("2024-01-01T00:04:00Z")) // false
128
+ *
129
+ * // At scheduled time
130
+ * isScheduleDue(nextRun, new Date("2024-01-01T00:05:00Z")) // true
131
+ *
132
+ * // After scheduled time
133
+ * isScheduleDue(nextRun, new Date("2024-01-01T00:06:00Z")) // true
134
+ */
135
+ export function isScheduleDue(nextRunAt, now) {
136
+ const currentTime = now ?? new Date();
137
+ return nextRunAt.getTime() <= currentTime.getTime();
138
+ }
139
+ //# sourceMappingURL=interval.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interval.js","sourceRoot":"","sources":["../../src/scheduler/interval.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,149 @@
1
+ /**
2
+ * Schedule Runner for executing triggered schedules
3
+ *
4
+ * Handles the actual execution of scheduled work by:
5
+ * 1. Fetching work items from work sources (if configured)
6
+ * 2. Building prompts from schedule config and work items
7
+ * 3. Invoking the JobExecutor to run the agent
8
+ * 4. Updating schedule state and reporting outcomes
9
+ */
10
+ import type { ResolvedAgent, Schedule } from "../config/index.js";
11
+ import type { ScheduleState } from "../state/schemas/fleet-state.js";
12
+ import type { RunnerResult, SDKQueryFunction } from "../runner/index.js";
13
+ import type { WorkSourceManager, WorkItem } from "../work-sources/index.js";
14
+ import { type JobExecutorOptions } from "../runner/index.js";
15
+ /**
16
+ * Logger interface for schedule runner
17
+ */
18
+ export interface ScheduleRunnerLogger {
19
+ debug: (message: string) => void;
20
+ info: (message: string) => void;
21
+ warn: (message: string) => void;
22
+ error: (message: string) => void;
23
+ }
24
+ /**
25
+ * Trigger metadata passed to the JobExecutor
26
+ */
27
+ export interface TriggerMetadata {
28
+ /** The type of trigger */
29
+ triggerType: "interval";
30
+ /** The name of the schedule that triggered */
31
+ schedule: string;
32
+ /** Work item ID if this run is processing a work item */
33
+ workItemId?: string;
34
+ /** Work item title for reference */
35
+ workItemTitle?: string;
36
+ }
37
+ /**
38
+ * Options for running a schedule
39
+ */
40
+ export interface RunScheduleOptions {
41
+ /** The agent to run */
42
+ agent: ResolvedAgent;
43
+ /** The name of the schedule */
44
+ scheduleName: string;
45
+ /** The schedule configuration */
46
+ schedule: Schedule;
47
+ /** Current schedule state */
48
+ scheduleState: ScheduleState;
49
+ /** Path to the state directory (e.g., .herdctl) */
50
+ stateDir: string;
51
+ /** The SDK query function for agent execution */
52
+ sdkQuery: SDKQueryFunction;
53
+ /** Optional work source manager for fetching work items */
54
+ workSourceManager?: WorkSourceManager;
55
+ /** Optional logger */
56
+ logger?: ScheduleRunnerLogger;
57
+ /** Optional job executor options */
58
+ executorOptions?: JobExecutorOptions;
59
+ }
60
+ /**
61
+ * Result of running a schedule, extending RunnerResult with schedule-specific info
62
+ */
63
+ export interface ScheduleRunResult extends RunnerResult {
64
+ /** The work item that was processed (if any) */
65
+ workItem?: WorkItem;
66
+ /** Whether a work item was fetched and processed */
67
+ processedWorkItem: boolean;
68
+ }
69
+ /**
70
+ * Build the prompt for a scheduled run
71
+ *
72
+ * Constructs the prompt by combining:
73
+ * 1. The schedule's configured prompt (if any)
74
+ * 2. Work item details (if a work item was fetched)
75
+ *
76
+ * @param schedule - The schedule configuration
77
+ * @param workItem - Optional work item fetched from work source
78
+ * @returns The constructed prompt string
79
+ *
80
+ * @example Without work item
81
+ * ```typescript
82
+ * const prompt = buildSchedulePrompt(
83
+ * { type: 'interval', interval: '1h', prompt: 'Check for updates' }
84
+ * );
85
+ * // => "Check for updates"
86
+ * ```
87
+ *
88
+ * @example With work item
89
+ * ```typescript
90
+ * const prompt = buildSchedulePrompt(
91
+ * { type: 'interval', interval: '1h', prompt: 'Process this issue:' },
92
+ * { title: 'Fix bug', description: 'There is a bug in auth.ts', ... }
93
+ * );
94
+ * // => "Process this issue:\n\n## Work Item: Fix bug\n\nThere is a bug in auth.ts\n\n..."
95
+ * ```
96
+ */
97
+ export declare function buildSchedulePrompt(schedule: Schedule, workItem?: WorkItem): string;
98
+ /**
99
+ * Execute a triggered schedule
100
+ *
101
+ * This function handles the complete lifecycle of a scheduled execution:
102
+ * 1. Updates schedule state to 'running'
103
+ * 2. Fetches work item from work source (if configured)
104
+ * 3. Builds the prompt from schedule config and work item
105
+ * 4. Invokes the JobExecutor to run the agent
106
+ * 5. Reports outcome to work source (if applicable)
107
+ * 6. Updates schedule state with last_run_at and next_run_at
108
+ *
109
+ * @param options - Options for running the schedule
110
+ * @returns Result of the schedule execution
111
+ *
112
+ * @example Basic usage
113
+ * ```typescript
114
+ * const result = await runSchedule({
115
+ * agent: resolvedAgent,
116
+ * scheduleName: 'hourly',
117
+ * schedule: { type: 'interval', interval: '1h', prompt: 'Check status' },
118
+ * scheduleState: { status: 'idle', last_run_at: null },
119
+ * stateDir: '.herdctl',
120
+ * sdkQuery: query,
121
+ * });
122
+ *
123
+ * console.log(`Job ${result.jobId} completed: ${result.success}`);
124
+ * ```
125
+ *
126
+ * @example With work source
127
+ * ```typescript
128
+ * const result = await runSchedule({
129
+ * agent: resolvedAgent,
130
+ * scheduleName: 'issue-processor',
131
+ * schedule: {
132
+ * type: 'interval',
133
+ * interval: '5m',
134
+ * prompt: 'Process this GitHub issue:',
135
+ * work_source: { type: 'github', owner: 'org', repo: 'repo' }
136
+ * },
137
+ * scheduleState: { status: 'idle', last_run_at: null },
138
+ * stateDir: '.herdctl',
139
+ * sdkQuery: query,
140
+ * workSourceManager: manager,
141
+ * });
142
+ *
143
+ * if (result.workItem) {
144
+ * console.log(`Processed work item: ${result.workItem.title}`);
145
+ * }
146
+ * ```
147
+ */
148
+ export declare function runSchedule(options: RunScheduleOptions): Promise<ScheduleRunResult>;
149
+ //# sourceMappingURL=schedule-runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schedule-runner.d.ts","sourceRoot":"","sources":["../../src/scheduler/schedule-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,KAAK,EACV,iBAAiB,EACjB,QAAQ,EAGT,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAe,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAW1E;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,0BAA0B;IAC1B,WAAW,EAAE,UAAU,CAAC;IACxB,8CAA8C;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,uBAAuB;IACvB,KAAK,EAAE,aAAa,CAAC;IACrB,+BAA+B;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,iCAAiC;IACjC,QAAQ,EAAE,QAAQ,CAAC;IACnB,6BAA6B;IAC7B,aAAa,EAAE,aAAa,CAAC;IAC7B,mDAAmD;IACnD,QAAQ,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,2DAA2D;IAC3D,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,sBAAsB;IACtB,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,oCAAoC;IACpC,eAAe,CAAC,EAAE,kBAAkB,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,YAAY;IACrD,gDAAgD;IAChD,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,oDAAoD;IACpD,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAiBD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,CAAC,EAAE,QAAQ,GAClB,MAAM,CAoBR;AAuCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,iBAAiB,CAAC,CAiL5B"}