@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,291 @@
1
+ /**
2
+ * Zod schemas for job output messages (job-<id>.jsonl)
3
+ *
4
+ * Defines the schema for streaming job output from Claude SDK.
5
+ * Each line in the JSONL file is a JobOutputMessage.
6
+ */
7
+ import { z } from "zod";
8
+ /**
9
+ * Types of messages from Claude SDK streaming output
10
+ */
11
+ export declare const JobOutputTypeSchema: z.ZodEnum<["system", "assistant", "tool_use", "tool_result", "error"]>;
12
+ /**
13
+ * Base fields present in all job output messages
14
+ */
15
+ export declare const JobOutputBaseSchema: z.ZodObject<{
16
+ /** Message type */
17
+ type: z.ZodEnum<["system", "assistant", "tool_use", "tool_result", "error"]>;
18
+ /** ISO timestamp when message was recorded */
19
+ timestamp: z.ZodString;
20
+ }, "strip", z.ZodTypeAny, {
21
+ type: "error" | "system" | "assistant" | "tool_use" | "tool_result";
22
+ timestamp: string;
23
+ }, {
24
+ type: "error" | "system" | "assistant" | "tool_use" | "tool_result";
25
+ timestamp: string;
26
+ }>;
27
+ /**
28
+ * System message schema
29
+ */
30
+ export declare const SystemMessageSchema: z.ZodObject<{
31
+ timestamp: z.ZodString;
32
+ } & {
33
+ type: z.ZodLiteral<"system">;
34
+ content: z.ZodOptional<z.ZodString>;
35
+ subtype: z.ZodOptional<z.ZodString>;
36
+ }, "strip", z.ZodTypeAny, {
37
+ type: "system";
38
+ timestamp: string;
39
+ content?: string | undefined;
40
+ subtype?: string | undefined;
41
+ }, {
42
+ type: "system";
43
+ timestamp: string;
44
+ content?: string | undefined;
45
+ subtype?: string | undefined;
46
+ }>;
47
+ /**
48
+ * Assistant message schema
49
+ */
50
+ export declare const AssistantMessageSchema: z.ZodObject<{
51
+ timestamp: z.ZodString;
52
+ } & {
53
+ type: z.ZodLiteral<"assistant">;
54
+ content: z.ZodOptional<z.ZodString>;
55
+ partial: z.ZodOptional<z.ZodBoolean>;
56
+ usage: z.ZodOptional<z.ZodObject<{
57
+ input_tokens: z.ZodOptional<z.ZodNumber>;
58
+ output_tokens: z.ZodOptional<z.ZodNumber>;
59
+ }, "strip", z.ZodTypeAny, {
60
+ input_tokens?: number | undefined;
61
+ output_tokens?: number | undefined;
62
+ }, {
63
+ input_tokens?: number | undefined;
64
+ output_tokens?: number | undefined;
65
+ }>>;
66
+ }, "strip", z.ZodTypeAny, {
67
+ type: "assistant";
68
+ timestamp: string;
69
+ partial?: boolean | undefined;
70
+ content?: string | undefined;
71
+ usage?: {
72
+ input_tokens?: number | undefined;
73
+ output_tokens?: number | undefined;
74
+ } | undefined;
75
+ }, {
76
+ type: "assistant";
77
+ timestamp: string;
78
+ partial?: boolean | undefined;
79
+ content?: string | undefined;
80
+ usage?: {
81
+ input_tokens?: number | undefined;
82
+ output_tokens?: number | undefined;
83
+ } | undefined;
84
+ }>;
85
+ /**
86
+ * Tool use message schema
87
+ */
88
+ export declare const ToolUseMessageSchema: z.ZodObject<{
89
+ timestamp: z.ZodString;
90
+ } & {
91
+ type: z.ZodLiteral<"tool_use">;
92
+ tool_name: z.ZodString;
93
+ tool_use_id: z.ZodOptional<z.ZodString>;
94
+ input: z.ZodOptional<z.ZodUnknown>;
95
+ }, "strip", z.ZodTypeAny, {
96
+ type: "tool_use";
97
+ timestamp: string;
98
+ tool_name: string;
99
+ tool_use_id?: string | undefined;
100
+ input?: unknown;
101
+ }, {
102
+ type: "tool_use";
103
+ timestamp: string;
104
+ tool_name: string;
105
+ tool_use_id?: string | undefined;
106
+ input?: unknown;
107
+ }>;
108
+ /**
109
+ * Tool result message schema
110
+ */
111
+ export declare const ToolResultMessageSchema: z.ZodObject<{
112
+ timestamp: z.ZodString;
113
+ } & {
114
+ type: z.ZodLiteral<"tool_result">;
115
+ tool_use_id: z.ZodOptional<z.ZodString>;
116
+ result: z.ZodOptional<z.ZodUnknown>;
117
+ success: z.ZodOptional<z.ZodBoolean>;
118
+ error: z.ZodOptional<z.ZodString>;
119
+ }, "strip", z.ZodTypeAny, {
120
+ type: "tool_result";
121
+ timestamp: string;
122
+ error?: string | undefined;
123
+ success?: boolean | undefined;
124
+ tool_use_id?: string | undefined;
125
+ result?: unknown;
126
+ }, {
127
+ type: "tool_result";
128
+ timestamp: string;
129
+ error?: string | undefined;
130
+ success?: boolean | undefined;
131
+ tool_use_id?: string | undefined;
132
+ result?: unknown;
133
+ }>;
134
+ /**
135
+ * Error message schema
136
+ */
137
+ export declare const ErrorMessageSchema: z.ZodObject<{
138
+ timestamp: z.ZodString;
139
+ } & {
140
+ type: z.ZodLiteral<"error">;
141
+ message: z.ZodString;
142
+ code: z.ZodOptional<z.ZodString>;
143
+ stack: z.ZodOptional<z.ZodString>;
144
+ }, "strip", z.ZodTypeAny, {
145
+ message: string;
146
+ type: "error";
147
+ timestamp: string;
148
+ code?: string | undefined;
149
+ stack?: string | undefined;
150
+ }, {
151
+ message: string;
152
+ type: "error";
153
+ timestamp: string;
154
+ code?: string | undefined;
155
+ stack?: string | undefined;
156
+ }>;
157
+ /**
158
+ * Schema that validates any job output message type
159
+ */
160
+ export declare const JobOutputMessageSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
161
+ timestamp: z.ZodString;
162
+ } & {
163
+ type: z.ZodLiteral<"system">;
164
+ content: z.ZodOptional<z.ZodString>;
165
+ subtype: z.ZodOptional<z.ZodString>;
166
+ }, "strip", z.ZodTypeAny, {
167
+ type: "system";
168
+ timestamp: string;
169
+ content?: string | undefined;
170
+ subtype?: string | undefined;
171
+ }, {
172
+ type: "system";
173
+ timestamp: string;
174
+ content?: string | undefined;
175
+ subtype?: string | undefined;
176
+ }>, z.ZodObject<{
177
+ timestamp: z.ZodString;
178
+ } & {
179
+ type: z.ZodLiteral<"assistant">;
180
+ content: z.ZodOptional<z.ZodString>;
181
+ partial: z.ZodOptional<z.ZodBoolean>;
182
+ usage: z.ZodOptional<z.ZodObject<{
183
+ input_tokens: z.ZodOptional<z.ZodNumber>;
184
+ output_tokens: z.ZodOptional<z.ZodNumber>;
185
+ }, "strip", z.ZodTypeAny, {
186
+ input_tokens?: number | undefined;
187
+ output_tokens?: number | undefined;
188
+ }, {
189
+ input_tokens?: number | undefined;
190
+ output_tokens?: number | undefined;
191
+ }>>;
192
+ }, "strip", z.ZodTypeAny, {
193
+ type: "assistant";
194
+ timestamp: string;
195
+ partial?: boolean | undefined;
196
+ content?: string | undefined;
197
+ usage?: {
198
+ input_tokens?: number | undefined;
199
+ output_tokens?: number | undefined;
200
+ } | undefined;
201
+ }, {
202
+ type: "assistant";
203
+ timestamp: string;
204
+ partial?: boolean | undefined;
205
+ content?: string | undefined;
206
+ usage?: {
207
+ input_tokens?: number | undefined;
208
+ output_tokens?: number | undefined;
209
+ } | undefined;
210
+ }>, z.ZodObject<{
211
+ timestamp: z.ZodString;
212
+ } & {
213
+ type: z.ZodLiteral<"tool_use">;
214
+ tool_name: z.ZodString;
215
+ tool_use_id: z.ZodOptional<z.ZodString>;
216
+ input: z.ZodOptional<z.ZodUnknown>;
217
+ }, "strip", z.ZodTypeAny, {
218
+ type: "tool_use";
219
+ timestamp: string;
220
+ tool_name: string;
221
+ tool_use_id?: string | undefined;
222
+ input?: unknown;
223
+ }, {
224
+ type: "tool_use";
225
+ timestamp: string;
226
+ tool_name: string;
227
+ tool_use_id?: string | undefined;
228
+ input?: unknown;
229
+ }>, z.ZodObject<{
230
+ timestamp: z.ZodString;
231
+ } & {
232
+ type: z.ZodLiteral<"tool_result">;
233
+ tool_use_id: z.ZodOptional<z.ZodString>;
234
+ result: z.ZodOptional<z.ZodUnknown>;
235
+ success: z.ZodOptional<z.ZodBoolean>;
236
+ error: z.ZodOptional<z.ZodString>;
237
+ }, "strip", z.ZodTypeAny, {
238
+ type: "tool_result";
239
+ timestamp: string;
240
+ error?: string | undefined;
241
+ success?: boolean | undefined;
242
+ tool_use_id?: string | undefined;
243
+ result?: unknown;
244
+ }, {
245
+ type: "tool_result";
246
+ timestamp: string;
247
+ error?: string | undefined;
248
+ success?: boolean | undefined;
249
+ tool_use_id?: string | undefined;
250
+ result?: unknown;
251
+ }>, z.ZodObject<{
252
+ timestamp: z.ZodString;
253
+ } & {
254
+ type: z.ZodLiteral<"error">;
255
+ message: z.ZodString;
256
+ code: z.ZodOptional<z.ZodString>;
257
+ stack: z.ZodOptional<z.ZodString>;
258
+ }, "strip", z.ZodTypeAny, {
259
+ message: string;
260
+ type: "error";
261
+ timestamp: string;
262
+ code?: string | undefined;
263
+ stack?: string | undefined;
264
+ }, {
265
+ message: string;
266
+ type: "error";
267
+ timestamp: string;
268
+ code?: string | undefined;
269
+ stack?: string | undefined;
270
+ }>]>;
271
+ export type JobOutputType = z.infer<typeof JobOutputTypeSchema>;
272
+ export type JobOutputBase = z.infer<typeof JobOutputBaseSchema>;
273
+ export type SystemMessage = z.infer<typeof SystemMessageSchema>;
274
+ export type AssistantMessage = z.infer<typeof AssistantMessageSchema>;
275
+ export type ToolUseMessage = z.infer<typeof ToolUseMessageSchema>;
276
+ export type ToolResultMessage = z.infer<typeof ToolResultMessageSchema>;
277
+ export type ErrorMessage = z.infer<typeof ErrorMessageSchema>;
278
+ export type JobOutputMessage = z.infer<typeof JobOutputMessageSchema>;
279
+ /**
280
+ * Input type for appending messages (timestamp added automatically)
281
+ */
282
+ export type JobOutputInput = Omit<SystemMessage, "timestamp"> | Omit<AssistantMessage, "timestamp"> | Omit<ToolUseMessage, "timestamp"> | Omit<ToolResultMessage, "timestamp"> | Omit<ErrorMessage, "timestamp">;
283
+ /**
284
+ * Validate a job output message
285
+ */
286
+ export declare function validateJobOutputMessage(message: unknown): JobOutputMessage | null;
287
+ /**
288
+ * Check if a message has the minimum required fields
289
+ */
290
+ export declare function isValidJobOutputInput(input: unknown): input is JobOutputInput;
291
+ //# sourceMappingURL=job-output.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"job-output.d.ts","sourceRoot":"","sources":["../../../src/state/schemas/job-output.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB;;GAEG;AACH,eAAO,MAAM,mBAAmB,wEAM9B,CAAC;AAMH;;GAEG;AACH,eAAO,MAAM,mBAAmB;IAC9B,mBAAmB;;IAEnB,8CAA8C;;;;;;;;EAE9C,CAAC;AAMH;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;EAM9B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAajC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;EAQ/B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;EAUlC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;EAQ7B,CAAC;AAMH;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAMjC,CAAC;AAMH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAMtE;;GAEG;AACH,MAAM,MAAM,cAAc,GACtB,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,GAChC,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,GACnC,IAAI,CAAC,cAAc,EAAE,WAAW,CAAC,GACjC,IAAI,CAAC,iBAAiB,EAAE,WAAW,CAAC,GACpC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;AAEpC;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,GACf,gBAAgB,GAAG,IAAI,CAGzB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAS7E"}
@@ -0,0 +1,132 @@
1
+ /**
2
+ * Zod schemas for job output messages (job-<id>.jsonl)
3
+ *
4
+ * Defines the schema for streaming job output from Claude SDK.
5
+ * Each line in the JSONL file is a JobOutputMessage.
6
+ */
7
+ import { z } from "zod";
8
+ // =============================================================================
9
+ // Message Type Schema
10
+ // =============================================================================
11
+ /**
12
+ * Types of messages from Claude SDK streaming output
13
+ */
14
+ export const JobOutputTypeSchema = z.enum([
15
+ "system",
16
+ "assistant",
17
+ "tool_use",
18
+ "tool_result",
19
+ "error",
20
+ ]);
21
+ // =============================================================================
22
+ // Base Message Schema
23
+ // =============================================================================
24
+ /**
25
+ * Base fields present in all job output messages
26
+ */
27
+ export const JobOutputBaseSchema = z.object({
28
+ /** Message type */
29
+ type: JobOutputTypeSchema,
30
+ /** ISO timestamp when message was recorded */
31
+ timestamp: z.string(),
32
+ });
33
+ // =============================================================================
34
+ // Specific Message Type Schemas
35
+ // =============================================================================
36
+ /**
37
+ * System message schema
38
+ */
39
+ export const SystemMessageSchema = JobOutputBaseSchema.extend({
40
+ type: z.literal("system"),
41
+ /** System message content */
42
+ content: z.string().optional(),
43
+ /** Optional subtype for system messages */
44
+ subtype: z.string().optional(),
45
+ });
46
+ /**
47
+ * Assistant message schema
48
+ */
49
+ export const AssistantMessageSchema = JobOutputBaseSchema.extend({
50
+ type: z.literal("assistant"),
51
+ /** Assistant response content */
52
+ content: z.string().optional(),
53
+ /** Whether this is a partial/streaming chunk */
54
+ partial: z.boolean().optional(),
55
+ /** Token usage info if available */
56
+ usage: z
57
+ .object({
58
+ input_tokens: z.number().optional(),
59
+ output_tokens: z.number().optional(),
60
+ })
61
+ .optional(),
62
+ });
63
+ /**
64
+ * Tool use message schema
65
+ */
66
+ export const ToolUseMessageSchema = JobOutputBaseSchema.extend({
67
+ type: z.literal("tool_use"),
68
+ /** Tool being invoked */
69
+ tool_name: z.string(),
70
+ /** Unique identifier for this tool call */
71
+ tool_use_id: z.string().optional(),
72
+ /** Tool input parameters */
73
+ input: z.unknown().optional(),
74
+ });
75
+ /**
76
+ * Tool result message schema
77
+ */
78
+ export const ToolResultMessageSchema = JobOutputBaseSchema.extend({
79
+ type: z.literal("tool_result"),
80
+ /** ID of the tool call this is a result for */
81
+ tool_use_id: z.string().optional(),
82
+ /** Tool execution result */
83
+ result: z.unknown().optional(),
84
+ /** Whether the tool execution succeeded */
85
+ success: z.boolean().optional(),
86
+ /** Error message if tool failed */
87
+ error: z.string().optional(),
88
+ });
89
+ /**
90
+ * Error message schema
91
+ */
92
+ export const ErrorMessageSchema = JobOutputBaseSchema.extend({
93
+ type: z.literal("error"),
94
+ /** Error message */
95
+ message: z.string(),
96
+ /** Error code if available */
97
+ code: z.string().optional(),
98
+ /** Stack trace if available */
99
+ stack: z.string().optional(),
100
+ });
101
+ // =============================================================================
102
+ // Union Schema for All Message Types
103
+ // =============================================================================
104
+ /**
105
+ * Schema that validates any job output message type
106
+ */
107
+ export const JobOutputMessageSchema = z.discriminatedUnion("type", [
108
+ SystemMessageSchema,
109
+ AssistantMessageSchema,
110
+ ToolUseMessageSchema,
111
+ ToolResultMessageSchema,
112
+ ErrorMessageSchema,
113
+ ]);
114
+ /**
115
+ * Validate a job output message
116
+ */
117
+ export function validateJobOutputMessage(message) {
118
+ const result = JobOutputMessageSchema.safeParse(message);
119
+ return result.success ? result.data : null;
120
+ }
121
+ /**
122
+ * Check if a message has the minimum required fields
123
+ */
124
+ export function isValidJobOutputInput(input) {
125
+ if (typeof input !== "object" || input === null) {
126
+ return false;
127
+ }
128
+ const obj = input;
129
+ return (typeof obj.type === "string" &&
130
+ JobOutputTypeSchema.safeParse(obj.type).success);
131
+ }
132
+ //# sourceMappingURL=job-output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"job-output.js","sourceRoot":"","sources":["../../../src/state/schemas/job-output.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Zod schemas for session info (sessions/<agent-name>.json)
3
+ *
4
+ * Defines the schema for tracking Claude session information per agent,
5
+ * enabling session resume and fork capabilities.
6
+ */
7
+ import { z } from "zod";
8
+ /**
9
+ * The operational mode of the session
10
+ */
11
+ export declare const SessionModeSchema: z.ZodEnum<["autonomous", "interactive", "review"]>;
12
+ /**
13
+ * Session info schema for individual agent session files
14
+ *
15
+ * Each session is stored as .herdctl/sessions/<agent-name>.json
16
+ */
17
+ export declare const SessionInfoSchema: z.ZodObject<{
18
+ /** Name of the agent this session belongs to */
19
+ agent_name: z.ZodString;
20
+ /** Claude session ID for resuming conversations */
21
+ session_id: z.ZodString;
22
+ /** ISO timestamp when the session was created */
23
+ created_at: z.ZodString;
24
+ /** ISO timestamp when the session was last used */
25
+ last_used_at: z.ZodString;
26
+ /** Number of jobs executed in this session */
27
+ job_count: z.ZodNumber;
28
+ /** Current operational mode of the session */
29
+ mode: z.ZodEnum<["autonomous", "interactive", "review"]>;
30
+ }, "strip", z.ZodTypeAny, {
31
+ mode: "autonomous" | "interactive" | "review";
32
+ session_id: string;
33
+ agent_name: string;
34
+ created_at: string;
35
+ last_used_at: string;
36
+ job_count: number;
37
+ }, {
38
+ mode: "autonomous" | "interactive" | "review";
39
+ session_id: string;
40
+ agent_name: string;
41
+ created_at: string;
42
+ last_used_at: string;
43
+ job_count: number;
44
+ }>;
45
+ export type SessionMode = z.infer<typeof SessionModeSchema>;
46
+ export type SessionInfo = z.infer<typeof SessionInfoSchema>;
47
+ /**
48
+ * Options for creating a new session
49
+ */
50
+ export interface CreateSessionOptions {
51
+ /** Name of the agent */
52
+ agent_name: string;
53
+ /** Claude session ID */
54
+ session_id: string;
55
+ /** Operational mode (defaults to 'autonomous') */
56
+ mode?: SessionMode;
57
+ }
58
+ /**
59
+ * Create initial session info for a new session
60
+ *
61
+ * @param options - Session creation options
62
+ * @returns A validated SessionInfo object
63
+ */
64
+ export declare function createSessionInfo(options: CreateSessionOptions): SessionInfo;
65
+ //# sourceMappingURL=session-info.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-info.d.ts","sourceRoot":"","sources":["../../../src/state/schemas/session-info.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB;;GAEG;AACH,eAAO,MAAM,iBAAiB,oDAI5B,CAAC;AAMH;;;;GAIG;AACH,eAAO,MAAM,iBAAiB;IAC5B,gDAAgD;;IAGhD,mDAAmD;;IAGnD,iDAAiD;;IAGjD,mDAAmD;;IAGnD,8CAA8C;;IAG9C,8CAA8C;;;;;;;;;;;;;;;;EAE9C,CAAC;AAMH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAM5D;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,wBAAwB;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,wBAAwB;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,kDAAkD;IAClD,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,oBAAoB,GAAG,WAAW,CAW5E"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Zod schemas for session info (sessions/<agent-name>.json)
3
+ *
4
+ * Defines the schema for tracking Claude session information per agent,
5
+ * enabling session resume and fork capabilities.
6
+ */
7
+ import { z } from "zod";
8
+ // =============================================================================
9
+ // Session Mode Schema
10
+ // =============================================================================
11
+ /**
12
+ * The operational mode of the session
13
+ */
14
+ export const SessionModeSchema = z.enum([
15
+ "autonomous",
16
+ "interactive",
17
+ "review",
18
+ ]);
19
+ // =============================================================================
20
+ // Session Info Schema
21
+ // =============================================================================
22
+ /**
23
+ * Session info schema for individual agent session files
24
+ *
25
+ * Each session is stored as .herdctl/sessions/<agent-name>.json
26
+ */
27
+ export const SessionInfoSchema = z.object({
28
+ /** Name of the agent this session belongs to */
29
+ agent_name: z.string().min(1, "Agent name cannot be empty"),
30
+ /** Claude session ID for resuming conversations */
31
+ session_id: z.string().min(1, "Session ID cannot be empty"),
32
+ /** ISO timestamp when the session was created */
33
+ created_at: z.string().datetime({ message: "created_at must be a valid ISO datetime string" }),
34
+ /** ISO timestamp when the session was last used */
35
+ last_used_at: z.string().datetime({ message: "last_used_at must be a valid ISO datetime string" }),
36
+ /** Number of jobs executed in this session */
37
+ job_count: z.number().int().nonnegative(),
38
+ /** Current operational mode of the session */
39
+ mode: SessionModeSchema,
40
+ });
41
+ /**
42
+ * Create initial session info for a new session
43
+ *
44
+ * @param options - Session creation options
45
+ * @returns A validated SessionInfo object
46
+ */
47
+ export function createSessionInfo(options) {
48
+ const now = new Date().toISOString();
49
+ return {
50
+ agent_name: options.agent_name,
51
+ session_id: options.session_id,
52
+ created_at: now,
53
+ last_used_at: now,
54
+ job_count: 0,
55
+ mode: options.mode ?? "autonomous",
56
+ };
57
+ }
58
+ //# sourceMappingURL=session-info.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-info.js","sourceRoot":"","sources":["../../../src/state/schemas/session-info.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC;IACtC,YAAY;IACZ,aAAa;IACb,QAAQ;CACT,CAAC,CAAC;AAEH,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,gDAAgD;IAChD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,4BAA4B,CAAC;IAE3D,mDAAmD;IACnD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,4BAA4B,CAAC;IAE3D,iDAAiD;IACjD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,gDAAgD,EAAE,CAAC;IAE9F,mDAAmD;IACnD,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,kDAAkD,EAAE,CAAC;IAElG,8CAA8C;IAC9C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;IAEzC,8CAA8C;IAC9C,IAAI,EAAE,iBAAiB;CACxB,CAAC,CAAC;AAyBH;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAA6B;IAC7D,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAErC,OAAO;QACL,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,UAAU,EAAE,GAAG;QACf,YAAY,EAAE,GAAG;QACjB,SAAS,EAAE,CAAC;QACZ,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,YAAY;KACnC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,92 @@
1
+ /**
2
+ * Session state persistence operations
3
+ *
4
+ * Provides CRUD operations for session info files stored at
5
+ * .herdctl/sessions/<agent-name>.json
6
+ */
7
+ import { type SessionInfo } from "./schemas/session-info.js";
8
+ /**
9
+ * Options for session operations
10
+ */
11
+ export interface SessionOptions {
12
+ /** Logger for warnings */
13
+ logger?: SessionLogger;
14
+ }
15
+ /**
16
+ * Logger interface for session operations
17
+ */
18
+ export interface SessionLogger {
19
+ warn: (message: string) => void;
20
+ }
21
+ /**
22
+ * Partial updates for session info
23
+ */
24
+ export type SessionInfoUpdates = Partial<Omit<SessionInfo, "agent_name" | "created_at">>;
25
+ /**
26
+ * Get session info for an agent
27
+ *
28
+ * Returns null if no session exists (handles missing file gracefully).
29
+ *
30
+ * @param sessionsDir - Path to the sessions directory
31
+ * @param agentName - Name of the agent
32
+ * @param options - Optional operation options
33
+ * @returns The session info, or null if not found
34
+ *
35
+ * @example
36
+ * ```typescript
37
+ * const session = await getSessionInfo('/path/to/.herdctl/sessions', 'my-agent');
38
+ * if (session) {
39
+ * console.log(`Session ${session.session_id} has ${session.job_count} jobs`);
40
+ * } else {
41
+ * console.log('No existing session');
42
+ * }
43
+ * ```
44
+ */
45
+ export declare function getSessionInfo(sessionsDir: string, agentName: string, options?: SessionOptions): Promise<SessionInfo | null>;
46
+ /**
47
+ * Update session info for an agent
48
+ *
49
+ * If no session exists, creates a new one with the provided updates.
50
+ * Automatically updates last_used_at timestamp.
51
+ *
52
+ * @param sessionsDir - Path to the sessions directory
53
+ * @param agentName - Name of the agent
54
+ * @param updates - Updates to apply to the session
55
+ * @returns The updated session info
56
+ * @throws StateFileError if the file cannot be written
57
+ *
58
+ * @example
59
+ * ```typescript
60
+ * // Update existing session
61
+ * const session = await updateSessionInfo('/path/to/.herdctl/sessions', 'my-agent', {
62
+ * job_count: 5,
63
+ * mode: 'interactive',
64
+ * });
65
+ *
66
+ * // Create new session
67
+ * const newSession = await updateSessionInfo('/path/to/.herdctl/sessions', 'new-agent', {
68
+ * session_id: 'claude-session-abc123',
69
+ * mode: 'autonomous',
70
+ * });
71
+ * ```
72
+ */
73
+ export declare function updateSessionInfo(sessionsDir: string, agentName: string, updates: SessionInfoUpdates): Promise<SessionInfo>;
74
+ /**
75
+ * Clear session info for an agent (delete the session file)
76
+ *
77
+ * @param sessionsDir - Path to the sessions directory
78
+ * @param agentName - Name of the agent
79
+ * @returns true if the session was deleted, false if it didn't exist
80
+ *
81
+ * @example
82
+ * ```typescript
83
+ * const cleared = await clearSession('/path/to/.herdctl/sessions', 'my-agent');
84
+ * if (cleared) {
85
+ * console.log('Session cleared');
86
+ * } else {
87
+ * console.log('No session to clear');
88
+ * }
89
+ * ```
90
+ */
91
+ export declare function clearSession(sessionsDir: string, agentName: string): Promise<boolean>;
92
+ //# sourceMappingURL=session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/state/session.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAGL,KAAK,WAAW,EAGjB,MAAM,2BAA2B,CAAC;AAOnC;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,0BAA0B;IAC1B,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,CACtC,IAAI,CAAC,WAAW,EAAE,YAAY,GAAG,YAAY,CAAC,CAC/C,CAAC;AAiBF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,cAAc,CAClC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CA6B7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,iBAAiB,CACrC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,WAAW,CAAC,CAkEtB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,YAAY,CAChC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,CAAC,CAiBlB"}