@herdctl/core 0.0.1 → 0.0.2

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 (275) hide show
  1. package/dist/config/__tests__/agent.test.js +31 -13
  2. package/dist/config/__tests__/agent.test.js.map +1 -1
  3. package/dist/config/__tests__/merge.test.js +9 -2
  4. package/dist/config/__tests__/merge.test.js.map +1 -1
  5. package/dist/config/__tests__/schema.test.js +350 -1
  6. package/dist/config/__tests__/schema.test.js.map +1 -1
  7. package/dist/config/index.d.ts +1 -1
  8. package/dist/config/index.d.ts.map +1 -1
  9. package/dist/config/index.js +3 -1
  10. package/dist/config/index.js.map +1 -1
  11. package/dist/config/schema.d.ts +828 -24
  12. package/dist/config/schema.d.ts.map +1 -1
  13. package/dist/config/schema.js +118 -6
  14. package/dist/config/schema.js.map +1 -1
  15. package/dist/fleet-manager/__tests__/coverage.test.js +11 -332
  16. package/dist/fleet-manager/__tests__/coverage.test.js.map +1 -1
  17. package/dist/fleet-manager/__tests__/errors.test.js +1 -49
  18. package/dist/fleet-manager/__tests__/errors.test.js.map +1 -1
  19. package/dist/fleet-manager/__tests__/integration.test.js +109 -0
  20. package/dist/fleet-manager/__tests__/integration.test.js.map +1 -1
  21. package/dist/fleet-manager/__tests__/reload.test.js +1 -1
  22. package/dist/fleet-manager/__tests__/reload.test.js.map +1 -1
  23. package/dist/fleet-manager/config-reload.d.ts +164 -0
  24. package/dist/fleet-manager/config-reload.d.ts.map +1 -0
  25. package/dist/fleet-manager/config-reload.js +445 -0
  26. package/dist/fleet-manager/config-reload.js.map +1 -0
  27. package/dist/fleet-manager/context.d.ts +76 -0
  28. package/dist/fleet-manager/context.d.ts.map +1 -0
  29. package/dist/fleet-manager/context.js +11 -0
  30. package/dist/fleet-manager/context.js.map +1 -0
  31. package/dist/fleet-manager/errors.d.ts +0 -25
  32. package/dist/fleet-manager/errors.d.ts.map +1 -1
  33. package/dist/fleet-manager/errors.js +0 -38
  34. package/dist/fleet-manager/errors.js.map +1 -1
  35. package/dist/fleet-manager/event-emitters.d.ts +123 -0
  36. package/dist/fleet-manager/event-emitters.d.ts.map +1 -0
  37. package/dist/fleet-manager/event-emitters.js +136 -0
  38. package/dist/fleet-manager/event-emitters.js.map +1 -0
  39. package/dist/fleet-manager/event-types.d.ts +0 -15
  40. package/dist/fleet-manager/event-types.d.ts.map +1 -1
  41. package/dist/fleet-manager/fleet-manager.d.ts +40 -653
  42. package/dist/fleet-manager/fleet-manager.d.ts.map +1 -1
  43. package/dist/fleet-manager/fleet-manager.js +95 -1720
  44. package/dist/fleet-manager/fleet-manager.js.map +1 -1
  45. package/dist/fleet-manager/index.d.ts +13 -2
  46. package/dist/fleet-manager/index.d.ts.map +1 -1
  47. package/dist/fleet-manager/index.js +19 -6
  48. package/dist/fleet-manager/index.js.map +1 -1
  49. package/dist/fleet-manager/job-control.d.ts +64 -0
  50. package/dist/fleet-manager/job-control.d.ts.map +1 -0
  51. package/dist/fleet-manager/job-control.js +296 -0
  52. package/dist/fleet-manager/job-control.js.map +1 -0
  53. package/dist/fleet-manager/log-streaming.d.ts +171 -0
  54. package/dist/fleet-manager/log-streaming.d.ts.map +1 -0
  55. package/dist/fleet-manager/log-streaming.js +503 -0
  56. package/dist/fleet-manager/log-streaming.js.map +1 -0
  57. package/dist/fleet-manager/schedule-executor.d.ts +63 -0
  58. package/dist/fleet-manager/schedule-executor.d.ts.map +1 -0
  59. package/dist/fleet-manager/schedule-executor.js +209 -0
  60. package/dist/fleet-manager/schedule-executor.js.map +1 -0
  61. package/dist/fleet-manager/schedule-management.d.ts +71 -0
  62. package/dist/fleet-manager/schedule-management.d.ts.map +1 -0
  63. package/dist/fleet-manager/schedule-management.js +171 -0
  64. package/dist/fleet-manager/schedule-management.js.map +1 -0
  65. package/dist/fleet-manager/status-queries.d.ts +105 -0
  66. package/dist/fleet-manager/status-queries.d.ts.map +1 -0
  67. package/dist/fleet-manager/status-queries.js +247 -0
  68. package/dist/fleet-manager/status-queries.js.map +1 -0
  69. package/dist/fleet-manager/types.d.ts +0 -39
  70. package/dist/fleet-manager/types.d.ts.map +1 -1
  71. package/dist/runner/__tests__/job-executor.test.js +206 -1
  72. package/dist/runner/__tests__/job-executor.test.js.map +1 -1
  73. package/dist/runner/job-executor.d.ts +9 -0
  74. package/dist/runner/job-executor.d.ts.map +1 -1
  75. package/dist/runner/job-executor.js +78 -4
  76. package/dist/runner/job-executor.js.map +1 -1
  77. package/dist/runner/types.d.ts +2 -0
  78. package/dist/runner/types.d.ts.map +1 -1
  79. package/dist/scheduler/__tests__/cron.test.d.ts +2 -0
  80. package/dist/scheduler/__tests__/cron.test.d.ts.map +1 -0
  81. package/dist/scheduler/__tests__/cron.test.js +867 -0
  82. package/dist/scheduler/__tests__/cron.test.js.map +1 -0
  83. package/dist/scheduler/__tests__/scheduler.test.js +164 -5
  84. package/dist/scheduler/__tests__/scheduler.test.js.map +1 -1
  85. package/dist/scheduler/cron.d.ts +126 -0
  86. package/dist/scheduler/cron.d.ts.map +1 -0
  87. package/dist/scheduler/cron.js +390 -0
  88. package/dist/scheduler/cron.js.map +1 -0
  89. package/dist/scheduler/errors.d.ts +81 -1
  90. package/dist/scheduler/errors.d.ts.map +1 -1
  91. package/dist/scheduler/errors.js +81 -6
  92. package/dist/scheduler/errors.js.map +1 -1
  93. package/dist/scheduler/index.d.ts +1 -0
  94. package/dist/scheduler/index.d.ts.map +1 -1
  95. package/dist/scheduler/index.js +2 -0
  96. package/dist/scheduler/index.js.map +1 -1
  97. package/dist/scheduler/schedule-runner.d.ts +2 -2
  98. package/dist/scheduler/schedule-runner.d.ts.map +1 -1
  99. package/dist/scheduler/schedule-runner.js +20 -8
  100. package/dist/scheduler/schedule-runner.js.map +1 -1
  101. package/dist/scheduler/scheduler.d.ts +4 -4
  102. package/dist/scheduler/scheduler.d.ts.map +1 -1
  103. package/dist/scheduler/scheduler.js +86 -20
  104. package/dist/scheduler/scheduler.js.map +1 -1
  105. package/dist/scheduler/types.d.ts +1 -1
  106. package/dist/scheduler/types.d.ts.map +1 -1
  107. package/dist/state/schemas/job-metadata.d.ts +2 -2
  108. package/package.json +33 -8
  109. package/.turbo/turbo-build.log +0 -4
  110. package/.turbo/turbo-test.log +0 -219
  111. package/.turbo/turbo-typecheck.log +0 -4
  112. package/coverage/base.css +0 -224
  113. package/coverage/block-navigation.js +0 -87
  114. package/coverage/coverage-final.json +0 -51
  115. package/coverage/favicon.png +0 -0
  116. package/coverage/index.html +0 -251
  117. package/coverage/prettify.css +0 -1
  118. package/coverage/prettify.js +0 -2
  119. package/coverage/sort-arrow-sprite.png +0 -0
  120. package/coverage/sorter.js +0 -210
  121. package/coverage/src/config/index.html +0 -191
  122. package/coverage/src/config/index.ts.html +0 -442
  123. package/coverage/src/config/interpolate.ts.html +0 -652
  124. package/coverage/src/config/loader.ts.html +0 -1501
  125. package/coverage/src/config/merge.ts.html +0 -823
  126. package/coverage/src/config/parser.ts.html +0 -1213
  127. package/coverage/src/config/schema.ts.html +0 -1123
  128. package/coverage/src/fleet-manager/errors.ts.html +0 -2326
  129. package/coverage/src/fleet-manager/event-types.ts.html +0 -1219
  130. package/coverage/src/fleet-manager/fleet-manager.ts.html +0 -7030
  131. package/coverage/src/fleet-manager/index.html +0 -206
  132. package/coverage/src/fleet-manager/index.ts.html +0 -469
  133. package/coverage/src/fleet-manager/job-manager.ts.html +0 -2074
  134. package/coverage/src/fleet-manager/job-queue.ts.html +0 -2479
  135. package/coverage/src/fleet-manager/types.ts.html +0 -2602
  136. package/coverage/src/index.html +0 -116
  137. package/coverage/src/index.ts.html +0 -181
  138. package/coverage/src/runner/errors.ts.html +0 -1006
  139. package/coverage/src/runner/index.html +0 -191
  140. package/coverage/src/runner/index.ts.html +0 -256
  141. package/coverage/src/runner/job-executor.ts.html +0 -1429
  142. package/coverage/src/runner/message-processor.ts.html +0 -1150
  143. package/coverage/src/runner/sdk-adapter.ts.html +0 -658
  144. package/coverage/src/runner/types.ts.html +0 -559
  145. package/coverage/src/scheduler/errors.ts.html +0 -388
  146. package/coverage/src/scheduler/index.html +0 -206
  147. package/coverage/src/scheduler/index.ts.html +0 -244
  148. package/coverage/src/scheduler/interval.ts.html +0 -652
  149. package/coverage/src/scheduler/schedule-runner.ts.html +0 -1411
  150. package/coverage/src/scheduler/schedule-state.ts.html +0 -718
  151. package/coverage/src/scheduler/scheduler.ts.html +0 -1795
  152. package/coverage/src/scheduler/types.ts.html +0 -733
  153. package/coverage/src/state/directory.ts.html +0 -736
  154. package/coverage/src/state/errors.ts.html +0 -376
  155. package/coverage/src/state/fleet-state.ts.html +0 -937
  156. package/coverage/src/state/index.html +0 -221
  157. package/coverage/src/state/index.ts.html +0 -322
  158. package/coverage/src/state/job-metadata.ts.html +0 -1420
  159. package/coverage/src/state/job-output.ts.html +0 -1033
  160. package/coverage/src/state/schemas/fleet-state.ts.html +0 -445
  161. package/coverage/src/state/schemas/index.html +0 -176
  162. package/coverage/src/state/schemas/index.ts.html +0 -286
  163. package/coverage/src/state/schemas/job-metadata.ts.html +0 -628
  164. package/coverage/src/state/schemas/job-output.ts.html +0 -616
  165. package/coverage/src/state/schemas/session-info.ts.html +0 -361
  166. package/coverage/src/state/session.ts.html +0 -844
  167. package/coverage/src/state/types.ts.html +0 -262
  168. package/coverage/src/state/utils/atomic.ts.html +0 -748
  169. package/coverage/src/state/utils/index.html +0 -146
  170. package/coverage/src/state/utils/index.ts.html +0 -103
  171. package/coverage/src/state/utils/reads.ts.html +0 -1621
  172. package/coverage/src/work-sources/adapters/github.ts.html +0 -3583
  173. package/coverage/src/work-sources/adapters/index.html +0 -131
  174. package/coverage/src/work-sources/adapters/index.ts.html +0 -277
  175. package/coverage/src/work-sources/errors.ts.html +0 -298
  176. package/coverage/src/work-sources/index.html +0 -176
  177. package/coverage/src/work-sources/index.ts.html +0 -529
  178. package/coverage/src/work-sources/manager.ts.html +0 -1324
  179. package/coverage/src/work-sources/registry.ts.html +0 -619
  180. package/coverage/src/work-sources/types.ts.html +0 -568
  181. package/dist/fleet-manager/__tests__/event-helpers.test.d.ts +0 -7
  182. package/dist/fleet-manager/__tests__/event-helpers.test.d.ts.map +0 -1
  183. package/dist/fleet-manager/__tests__/event-helpers.test.js +0 -368
  184. package/dist/fleet-manager/__tests__/event-helpers.test.js.map +0 -1
  185. package/src/config/__tests__/agent.test.ts +0 -864
  186. package/src/config/__tests__/interpolate.test.ts +0 -644
  187. package/src/config/__tests__/loader.test.ts +0 -784
  188. package/src/config/__tests__/merge.test.ts +0 -751
  189. package/src/config/__tests__/parser.test.ts +0 -533
  190. package/src/config/__tests__/schema.test.ts +0 -873
  191. package/src/config/index.ts +0 -119
  192. package/src/config/interpolate.ts +0 -189
  193. package/src/config/loader.ts +0 -472
  194. package/src/config/merge.ts +0 -246
  195. package/src/config/parser.ts +0 -376
  196. package/src/config/schema.ts +0 -346
  197. package/src/fleet-manager/__tests__/coverage.test.ts +0 -2869
  198. package/src/fleet-manager/__tests__/errors.test.ts +0 -660
  199. package/src/fleet-manager/__tests__/event-helpers.test.ts +0 -448
  200. package/src/fleet-manager/__tests__/integration.test.ts +0 -1209
  201. package/src/fleet-manager/__tests__/job-control.test.ts +0 -283
  202. package/src/fleet-manager/__tests__/job-manager.test.ts +0 -869
  203. package/src/fleet-manager/__tests__/job-queue.test.ts +0 -401
  204. package/src/fleet-manager/__tests__/reload.test.ts +0 -751
  205. package/src/fleet-manager/__tests__/status-queries.test.ts +0 -595
  206. package/src/fleet-manager/__tests__/trigger.test.ts +0 -601
  207. package/src/fleet-manager/errors.ts +0 -747
  208. package/src/fleet-manager/event-types.ts +0 -378
  209. package/src/fleet-manager/fleet-manager.ts +0 -2315
  210. package/src/fleet-manager/index.ts +0 -128
  211. package/src/fleet-manager/job-manager.ts +0 -663
  212. package/src/fleet-manager/job-queue.ts +0 -798
  213. package/src/fleet-manager/types.ts +0 -839
  214. package/src/index.ts +0 -32
  215. package/src/runner/__tests__/errors.test.ts +0 -382
  216. package/src/runner/__tests__/job-executor.test.ts +0 -1708
  217. package/src/runner/__tests__/message-processor.test.ts +0 -960
  218. package/src/runner/__tests__/sdk-adapter.test.ts +0 -626
  219. package/src/runner/errors.ts +0 -307
  220. package/src/runner/index.ts +0 -57
  221. package/src/runner/job-executor.ts +0 -448
  222. package/src/runner/message-processor.ts +0 -355
  223. package/src/runner/sdk-adapter.ts +0 -191
  224. package/src/runner/types.ts +0 -158
  225. package/src/scheduler/__tests__/errors.test.ts +0 -159
  226. package/src/scheduler/__tests__/interval.test.ts +0 -515
  227. package/src/scheduler/__tests__/schedule-runner.test.ts +0 -798
  228. package/src/scheduler/__tests__/schedule-state.test.ts +0 -671
  229. package/src/scheduler/__tests__/scheduler.test.ts +0 -1280
  230. package/src/scheduler/errors.ts +0 -101
  231. package/src/scheduler/index.ts +0 -53
  232. package/src/scheduler/interval.ts +0 -189
  233. package/src/scheduler/schedule-runner.ts +0 -442
  234. package/src/scheduler/schedule-state.ts +0 -211
  235. package/src/scheduler/scheduler.ts +0 -570
  236. package/src/scheduler/types.ts +0 -216
  237. package/src/state/__tests__/directory.test.ts +0 -595
  238. package/src/state/__tests__/fleet-state.test.ts +0 -868
  239. package/src/state/__tests__/job-metadata-schema.test.ts +0 -414
  240. package/src/state/__tests__/job-metadata.test.ts +0 -831
  241. package/src/state/__tests__/job-output.test.ts +0 -856
  242. package/src/state/__tests__/session-schema.test.ts +0 -378
  243. package/src/state/__tests__/session.test.ts +0 -604
  244. package/src/state/directory.ts +0 -217
  245. package/src/state/errors.ts +0 -97
  246. package/src/state/fleet-state.ts +0 -284
  247. package/src/state/index.ts +0 -79
  248. package/src/state/job-metadata.ts +0 -445
  249. package/src/state/job-output.ts +0 -316
  250. package/src/state/schemas/__tests__/job-output.test.ts +0 -338
  251. package/src/state/schemas/fleet-state.ts +0 -120
  252. package/src/state/schemas/index.ts +0 -67
  253. package/src/state/schemas/job-metadata.ts +0 -181
  254. package/src/state/schemas/job-output.ts +0 -177
  255. package/src/state/schemas/session-info.ts +0 -92
  256. package/src/state/session.ts +0 -253
  257. package/src/state/types.ts +0 -59
  258. package/src/state/utils/__tests__/atomic.test.ts +0 -723
  259. package/src/state/utils/__tests__/reads.test.ts +0 -1071
  260. package/src/state/utils/atomic.ts +0 -221
  261. package/src/state/utils/index.ts +0 -6
  262. package/src/state/utils/reads.ts +0 -512
  263. package/src/work-sources/__tests__/github.test.ts +0 -1800
  264. package/src/work-sources/__tests__/manager.test.ts +0 -529
  265. package/src/work-sources/__tests__/registry.test.ts +0 -477
  266. package/src/work-sources/__tests__/types.test.ts +0 -479
  267. package/src/work-sources/adapters/github.ts +0 -1166
  268. package/src/work-sources/adapters/index.ts +0 -64
  269. package/src/work-sources/errors.ts +0 -71
  270. package/src/work-sources/index.ts +0 -148
  271. package/src/work-sources/manager.ts +0 -413
  272. package/src/work-sources/registry.ts +0 -178
  273. package/src/work-sources/types.ts +0 -161
  274. package/tsconfig.json +0 -9
  275. package/vitest.config.ts +0 -19
@@ -1,219 +0,0 @@
1
-
2
- > @herdctl/core@0.0.1 test /Users/ed/Code/overseer-clones/herdctl/packages/core
3
- > vitest run --coverage
4
-
5
-
6
-  RUN  v4.0.17 /Users/ed/Code/overseer-clones/herdctl/packages/core
7
- Coverage enabled with v8
8
-
9
- ✓ src/config/__tests__/parser.test.ts (40 tests) 15ms
10
- ✓ src/config/__tests__/agent.test.ts (58 tests) 29ms
11
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > basic execution > executes a schedule successfully
12
- [herdctl] Created job job-2026-01-19-iemkow for agent test-agent
13
-
14
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > basic execution > executes a schedule successfully
15
- [herdctl] Persisted session test-session-123 for agent test-agent
16
-
17
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > basic execution > updates schedule state to running during execution
18
- [herdctl] Created job job-2026-01-19-9z7qdw for agent test-agent
19
-
20
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > basic execution > updates schedule state to running during execution
21
- [herdctl] Persisted session test for agent test-agent
22
-
23
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > basic execution > updates schedule state with last_run_at after completion
24
- [herdctl] Created job job-2026-01-19-t1d7fn for agent test-agent
25
-
26
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > basic execution > updates schedule state with last_run_at after completion
27
- [herdctl] Persisted session test-session-123 for agent test-agent
28
-
29
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > basic execution > calculates next_run_at based on interval
30
- [herdctl] Created job job-2026-01-19-k06fqv for agent test-agent
31
-
32
- ✓ src/scheduler/__tests__/schedule-state.test.ts (26 tests) 84ms
33
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > basic execution > calculates next_run_at based on interval
34
- [herdctl] Persisted session test-session-123 for agent test-agent
35
-
36
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > basic execution > passes correct trigger type and schedule name to executor
37
- [herdctl] Created job job-2026-01-19-vy6t6o for agent test-agent
38
-
39
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > basic execution > passes correct trigger type and schedule name to executor
40
- [herdctl] Persisted session test-session-123 for agent test-agent
41
-
42
- ✓ src/state/__tests__/session.test.ts (34 tests) 96ms
43
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > with work source > fetches work item when schedule has work_source
44
- [herdctl] Created job job-2026-01-19-hvuncf for agent test-agent
45
-
46
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > with work source > fetches work item when schedule has work_source
47
- [herdctl] Persisted session test-session-123 for agent test-agent
48
-
49
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > with work source > reports outcome to work source after successful execution
50
- [herdctl] Created job job-2026-01-19-9yerj4 for agent test-agent
51
-
52
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > with work source > reports outcome to work source after successful execution
53
- [herdctl] Persisted session test-session-123 for agent test-agent
54
-
55
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > with work source > reports failure outcome when job fails
56
- [herdctl] Created job job-2026-01-19-349so4 for agent test-agent
57
-
58
- ✓ src/config/__tests__/loader.test.ts (47 tests) 102ms
59
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > with work source > reports failure outcome when job fails
60
- [herdctl] Persisted session test for agent test-agent
61
-
62
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > with work source > continues when no work is available
63
- [herdctl] Created job job-2026-01-19-6xrv11 for agent test-agent
64
-
65
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > with work source > continues when no work is available
66
- [herdctl] Persisted session test-session-123 for agent test-agent
67
-
68
- ✓ src/scheduler/__tests__/interval.test.ts (54 tests) 8ms
69
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > with work source > handles claim failure gracefully
70
- [herdctl] Created job job-2026-01-19-jv6j5y for agent test-agent
71
-
72
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > with work source > handles claim failure gracefully
73
- [herdctl] Persisted session test-session-123 for agent test-agent
74
-
75
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > with work source > skips work source when no manager provided
76
- [herdctl] Created job job-2026-01-19-wge4iy for agent test-agent
77
-
78
- ✓ src/config/__tests__/schema.test.ts (79 tests) 7ms
79
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > with work source > skips work source when no manager provided
80
- [herdctl] Persisted session test-session-123 for agent test-agent
81
-
82
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > error handling > reports failure outcome when SDK throws
83
- [herdctl] Created job job-2026-01-19-smlw48 for agent test-agent
84
-
85
- stderr | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > error handling > reports failure outcome when SDK throws
86
- [herdctl] SDKInitializationError: Unexpected SDK failure | Agent: test-agent | Job: job-2026-01-19-smlw48
87
-
88
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > error handling > records error in schedule state on SDK failure
89
- [herdctl] Created job job-2026-01-19-yotq80 for agent test-agent
90
-
91
- stderr | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > error handling > records error in schedule state on SDK failure
92
- [herdctl] SDKInitializationError: Execution failed | Agent: test-agent | Job: job-2026-01-19-yotq80
93
-
94
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > error handling > still calculates next_run_at on SDK failure
95
- [herdctl] Created job job-2026-01-19-zv3rjc for agent test-agent
96
-
97
- stderr | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > error handling > still calculates next_run_at on SDK failure
98
- [herdctl] SDKInitializationError: Execution failed | Agent: test-agent | Job: job-2026-01-19-zv3rjc
99
-
100
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > error handling > continues if reporting outcome fails
101
- [herdctl] Created job job-2026-01-19-dal77f for agent test-agent
102
-
103
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > error handling > continues if reporting outcome fails
104
- [herdctl] Persisted session test-session-123 for agent test-agent
105
-
106
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > logging > logs schedule start
107
- [herdctl] Created job job-2026-01-19-8uydhn for agent my-agent
108
-
109
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > logging > logs schedule start
110
- [herdctl] Persisted session test-session-123 for agent my-agent
111
-
112
- ✓ src/state/__tests__/directory.test.ts (41 tests) 164ms
113
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > logging > logs schedule completion
114
- [herdctl] Created job job-2026-01-19-hbqlpi for agent my-agent
115
-
116
- ✓ src/state/utils/__tests__/atomic.test.ts (45 tests) 205ms
117
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > logging > logs schedule completion
118
- [herdctl] Persisted session test-session-123 for agent my-agent
119
-
120
- ✓ src/state/__tests__/job-metadata-schema.test.ts (39 tests) 7ms
121
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > logging > logs work item claim
122
- [herdctl] Created job job-2026-01-19-cyosus for agent test-agent
123
-
124
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > logging > logs work item claim
125
- [herdctl] Persisted session test-session-123 for agent test-agent
126
-
127
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > logging > logs outcome reporting
128
- [herdctl] Created job job-2026-01-19-epp21x for agent test-agent
129
-
130
- stdout | src/scheduler/__tests__/schedule-runner.test.ts > runSchedule > logging > logs outcome reporting
131
- [herdctl] Persisted session test-session-123 for agent test-agent
132
-
133
- ✓ src/state/__tests__/session-schema.test.ts (32 tests) 6ms
134
- ✓ src/scheduler/__tests__/schedule-runner.test.ts (25 tests) 169ms
135
- ✓ src/config/__tests__/merge.test.ts (54 tests) 5ms
136
- ✓ src/config/__tests__/interpolate.test.ts (63 tests) 6ms
137
- ✓ src/runner/__tests__/message-processor.test.ts (72 tests) 5ms
138
- ✓ src/state/__tests__/job-output.test.ts (42 tests) 238ms
139
- ✓ src/state/schemas/__tests__/job-output.test.ts (33 tests) 5ms
140
- ✓ src/runner/__tests__/sdk-adapter.test.ts (48 tests) 4ms
141
- ✓ src/state/__tests__/job-metadata.test.ts (40 tests) 292ms
142
- ✓ src/work-sources/__tests__/types.test.ts (27 tests) 4ms
143
- ✓ src/work-sources/__tests__/registry.test.ts (29 tests) 5ms
144
- ✓ src/work-sources/__tests__/manager.test.ts (21 tests) 3ms
145
- ✓ src/runner/__tests__/errors.test.ts (34 tests) 3ms
146
- ✓ src/work-sources/__tests__/github.test.ts (111 tests) 338ms
147
- ✓ src/scheduler/__tests__/errors.test.ts (12 tests) 2ms
148
- ✓ src/state/utils/__tests__/reads.test.ts (45 tests) 353ms
149
- ✓ src/state/__tests__/fleet-state.test.ts (44 tests) 340ms
150
- ✓ src/runner/__tests__/job-executor.test.ts (66 tests) 484ms
151
- ✓ src/scheduler/__tests__/scheduler.test.ts (42 tests) 4777ms
152
- ✓ skips second schedule when agent is at capacity  305ms
153
- ✓ tracks multiple schedules for the same agent  324ms
154
- ✓ does not wait for jobs when waitForJobs is false  506ms
155
- ✓ stops new triggers immediately when stop is called  311ms
156
-
157
-  Test Files  29 passed (29)
158
-  Tests  1303 passed (1303)
159
-  Start at  23:05:01
160
-  Duration  5.14s (transform 1.24s, setup 0ms, import 2.13s, tests 7.75s, environment 2ms)
161
-
162
-  % Coverage report from v8
163
- -------------------|---------|----------|---------|---------|-------------------
164
- File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
165
- -------------------|---------|----------|---------|---------|-------------------
166
- All files | 93.73 | 89.01 | 94.73 | 93.67 |
167
- src | 0 | 100 | 100 | 0 |
168
- index.ts | 0 | 100 | 100 | 0 | 14
169
- src/config | 95.4 | 84.4 | 100 | 95.33 |
170
- index.ts | 0 | 0 | 0 | 0 |
171
- interpolate.ts | 100 | 100 | 100 | 100 |
172
- loader.ts | 94.39 | 76.19 | 100 | 94.33 | ...47,252,270,465
173
- merge.ts | 100 | 100 | 100 | 100 |
174
- parser.ts | 91.2 | 70.21 | 100 | 91.01 | ...57,272,294,318
175
- schema.ts | 100 | 100 | 100 | 100 |
176
- src/runner | 91.98 | 96.12 | 94.11 | 91.98 |
177
- errors.ts | 100 | 100 | 100 | 100 |
178
- index.ts | 0 | 0 | 0 | 0 |
179
- job-executor.ts | 80.68 | 90.38 | 83.33 | 80.68 | ...41-346,367,390
180
- ...-processor.ts | 95.55 | 95.78 | 91.66 | 95.55 | 30-41
181
- sdk-adapter.ts | 100 | 100 | 100 | 100 |
182
- types.ts | 0 | 0 | 0 | 0 |
183
- src/scheduler | 92.2 | 85.11 | 78.72 | 92.15 |
184
- errors.ts | 100 | 100 | 100 | 100 |
185
- index.ts | 0 | 0 | 0 | 0 |
186
- interval.ts | 100 | 100 | 100 | 100 |
187
- ...ule-runner.ts | 81.33 | 71.92 | 50 | 81.33 | 94-97,380-421
188
- ...dule-state.ts | 96.29 | 100 | 80 | 96.29 | 28
189
- scheduler.ts | 94.32 | 85.93 | 81.48 | 94.24 | 50-54,153,375-378
190
- types.ts | 0 | 0 | 0 | 0 |
191
- src/state | 94.44 | 91.83 | 100 | 94.42 |
192
- directory.ts | 92.45 | 91.3 | 100 | 92.45 | 87,173,209-210
193
- errors.ts | 100 | 100 | 100 | 100 |
194
- fleet-state.ts | 95.12 | 92 | 100 | 95.12 | 114-117
195
- index.ts | 0 | 0 | 0 | 0 |
196
- job-metadata.ts | 91.2 | 90.19 | 100 | 91.2 | ...27,364-368,438
197
- job-output.ts | 96.29 | 95 | 100 | 96.22 | 170,219
198
- session.ts | 97.5 | 88.88 | 100 | 97.5 | 246
199
- types.ts | 100 | 100 | 100 | 100 |
200
- src/state/schemas | 100 | 100 | 100 | 100 |
201
- fleet-state.ts | 100 | 100 | 100 | 100 |
202
- index.ts | 0 | 0 | 0 | 0 |
203
- job-metadata.ts | 100 | 100 | 100 | 100 |
204
- job-output.ts | 100 | 100 | 100 | 100 |
205
- session-info.ts | 100 | 100 | 100 | 100 |
206
- src/state/utils | 92.41 | 89.01 | 95.65 | 92.7 |
207
- atomic.ts | 100 | 94.73 | 100 | 100 | 107
208
- index.ts | 0 | 0 | 0 | 0 |
209
- reads.ts | 89.42 | 87.5 | 92.85 | 89.79 | ...65-466,482-511
210
- src/work-sources | 100 | 100 | 100 | 100 |
211
- errors.ts | 100 | 100 | 100 | 100 |
212
- index.ts | 0 | 0 | 0 | 0 |
213
- manager.ts | 0 | 0 | 0 | 0 |
214
- registry.ts | 100 | 100 | 100 | 100 |
215
- types.ts | 0 | 0 | 0 | 0 |
216
- ...urces/adapters | 94 | 85.33 | 100 | 93.7 |
217
- github.ts | 93.94 | 85.65 | 100 | 93.64 | ...0,859,942,1019
218
- index.ts | 100 | 50 | 100 | 100 | 58
219
- -------------------|---------|----------|---------|---------|-------------------
@@ -1,4 +0,0 @@
1
-
2
- > @herdctl/core@0.0.1 typecheck /Users/ed/Code/overseer-clones/herdctl/packages/core
3
- > tsc --noEmit
4
-
package/coverage/base.css DELETED
@@ -1,224 +0,0 @@
1
- body, html {
2
- margin:0; padding: 0;
3
- height: 100%;
4
- }
5
- body {
6
- font-family: Helvetica Neue, Helvetica, Arial;
7
- font-size: 14px;
8
- color:#333;
9
- }
10
- .small { font-size: 12px; }
11
- *, *:after, *:before {
12
- -webkit-box-sizing:border-box;
13
- -moz-box-sizing:border-box;
14
- box-sizing:border-box;
15
- }
16
- h1 { font-size: 20px; margin: 0;}
17
- h2 { font-size: 14px; }
18
- pre {
19
- font: 12px/1.4 Consolas, "Liberation Mono", Menlo, Courier, monospace;
20
- margin: 0;
21
- padding: 0;
22
- -moz-tab-size: 2;
23
- -o-tab-size: 2;
24
- tab-size: 2;
25
- }
26
- a { color:#0074D9; text-decoration:none; }
27
- a:hover { text-decoration:underline; }
28
- .strong { font-weight: bold; }
29
- .space-top1 { padding: 10px 0 0 0; }
30
- .pad2y { padding: 20px 0; }
31
- .pad1y { padding: 10px 0; }
32
- .pad2x { padding: 0 20px; }
33
- .pad2 { padding: 20px; }
34
- .pad1 { padding: 10px; }
35
- .space-left2 { padding-left:55px; }
36
- .space-right2 { padding-right:20px; }
37
- .center { text-align:center; }
38
- .clearfix { display:block; }
39
- .clearfix:after {
40
- content:'';
41
- display:block;
42
- height:0;
43
- clear:both;
44
- visibility:hidden;
45
- }
46
- .fl { float: left; }
47
- @media only screen and (max-width:640px) {
48
- .col3 { width:100%; max-width:100%; }
49
- .hide-mobile { display:none!important; }
50
- }
51
-
52
- .quiet {
53
- color: #7f7f7f;
54
- color: rgba(0,0,0,0.5);
55
- }
56
- .quiet a { opacity: 0.7; }
57
-
58
- .fraction {
59
- font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace;
60
- font-size: 10px;
61
- color: #555;
62
- background: #E8E8E8;
63
- padding: 4px 5px;
64
- border-radius: 3px;
65
- vertical-align: middle;
66
- }
67
-
68
- div.path a:link, div.path a:visited { color: #333; }
69
- table.coverage {
70
- border-collapse: collapse;
71
- margin: 10px 0 0 0;
72
- padding: 0;
73
- }
74
-
75
- table.coverage td {
76
- margin: 0;
77
- padding: 0;
78
- vertical-align: top;
79
- }
80
- table.coverage td.line-count {
81
- text-align: right;
82
- padding: 0 5px 0 20px;
83
- }
84
- table.coverage td.line-coverage {
85
- text-align: right;
86
- padding-right: 10px;
87
- min-width:20px;
88
- }
89
-
90
- table.coverage td span.cline-any {
91
- display: inline-block;
92
- padding: 0 5px;
93
- width: 100%;
94
- }
95
- .missing-if-branch {
96
- display: inline-block;
97
- margin-right: 5px;
98
- border-radius: 3px;
99
- position: relative;
100
- padding: 0 4px;
101
- background: #333;
102
- color: yellow;
103
- }
104
-
105
- .skip-if-branch {
106
- display: none;
107
- margin-right: 10px;
108
- position: relative;
109
- padding: 0 4px;
110
- background: #ccc;
111
- color: white;
112
- }
113
- .missing-if-branch .typ, .skip-if-branch .typ {
114
- color: inherit !important;
115
- }
116
- .coverage-summary {
117
- border-collapse: collapse;
118
- width: 100%;
119
- }
120
- .coverage-summary tr { border-bottom: 1px solid #bbb; }
121
- .keyline-all { border: 1px solid #ddd; }
122
- .coverage-summary td, .coverage-summary th { padding: 10px; }
123
- .coverage-summary tbody { border: 1px solid #bbb; }
124
- .coverage-summary td { border-right: 1px solid #bbb; }
125
- .coverage-summary td:last-child { border-right: none; }
126
- .coverage-summary th {
127
- text-align: left;
128
- font-weight: normal;
129
- white-space: nowrap;
130
- }
131
- .coverage-summary th.file { border-right: none !important; }
132
- .coverage-summary th.pct { }
133
- .coverage-summary th.pic,
134
- .coverage-summary th.abs,
135
- .coverage-summary td.pct,
136
- .coverage-summary td.abs { text-align: right; }
137
- .coverage-summary td.file { white-space: nowrap; }
138
- .coverage-summary td.pic { min-width: 120px !important; }
139
- .coverage-summary tfoot td { }
140
-
141
- .coverage-summary .sorter {
142
- height: 10px;
143
- width: 7px;
144
- display: inline-block;
145
- margin-left: 0.5em;
146
- background: url(sort-arrow-sprite.png) no-repeat scroll 0 0 transparent;
147
- }
148
- .coverage-summary .sorted .sorter {
149
- background-position: 0 -20px;
150
- }
151
- .coverage-summary .sorted-desc .sorter {
152
- background-position: 0 -10px;
153
- }
154
- .status-line { height: 10px; }
155
- /* yellow */
156
- .cbranch-no { background: yellow !important; color: #111; }
157
- /* dark red */
158
- .red.solid, .status-line.low, .low .cover-fill { background:#C21F39 }
159
- .low .chart { border:1px solid #C21F39 }
160
- .highlighted,
161
- .highlighted .cstat-no, .highlighted .fstat-no, .highlighted .cbranch-no{
162
- background: #C21F39 !important;
163
- }
164
- /* medium red */
165
- .cstat-no, .fstat-no, .cbranch-no, .cbranch-no { background:#F6C6CE }
166
- /* light red */
167
- .low, .cline-no { background:#FCE1E5 }
168
- /* light green */
169
- .high, .cline-yes { background:rgb(230,245,208) }
170
- /* medium green */
171
- .cstat-yes { background:rgb(161,215,106) }
172
- /* dark green */
173
- .status-line.high, .high .cover-fill { background:rgb(77,146,33) }
174
- .high .chart { border:1px solid rgb(77,146,33) }
175
- /* dark yellow (gold) */
176
- .status-line.medium, .medium .cover-fill { background: #f9cd0b; }
177
- .medium .chart { border:1px solid #f9cd0b; }
178
- /* light yellow */
179
- .medium { background: #fff4c2; }
180
-
181
- .cstat-skip { background: #ddd; color: #111; }
182
- .fstat-skip { background: #ddd; color: #111 !important; }
183
- .cbranch-skip { background: #ddd !important; color: #111; }
184
-
185
- span.cline-neutral { background: #eaeaea; }
186
-
187
- .coverage-summary td.empty {
188
- opacity: .5;
189
- padding-top: 4px;
190
- padding-bottom: 4px;
191
- line-height: 1;
192
- color: #888;
193
- }
194
-
195
- .cover-fill, .cover-empty {
196
- display:inline-block;
197
- height: 12px;
198
- }
199
- .chart {
200
- line-height: 0;
201
- }
202
- .cover-empty {
203
- background: white;
204
- }
205
- .cover-full {
206
- border-right: none !important;
207
- }
208
- pre.prettyprint {
209
- border: none !important;
210
- padding: 0 !important;
211
- margin: 0 !important;
212
- }
213
- .com { color: #999 !important; }
214
- .ignore-none { color: #999; font-weight: normal; }
215
-
216
- .wrapper {
217
- min-height: 100%;
218
- height: auto !important;
219
- height: 100%;
220
- margin: 0 auto -48px;
221
- }
222
- .footer, .push {
223
- height: 48px;
224
- }
@@ -1,87 +0,0 @@
1
- /* eslint-disable */
2
- var jumpToCode = (function init() {
3
- // Classes of code we would like to highlight in the file view
4
- var missingCoverageClasses = ['.cbranch-no', '.cstat-no', '.fstat-no'];
5
-
6
- // Elements to highlight in the file listing view
7
- var fileListingElements = ['td.pct.low'];
8
-
9
- // We don't want to select elements that are direct descendants of another match
10
- var notSelector = ':not(' + missingCoverageClasses.join('):not(') + ') > '; // becomes `:not(a):not(b) > `
11
-
12
- // Selector that finds elements on the page to which we can jump
13
- var selector =
14
- fileListingElements.join(', ') +
15
- ', ' +
16
- notSelector +
17
- missingCoverageClasses.join(', ' + notSelector); // becomes `:not(a):not(b) > a, :not(a):not(b) > b`
18
-
19
- // The NodeList of matching elements
20
- var missingCoverageElements = document.querySelectorAll(selector);
21
-
22
- var currentIndex;
23
-
24
- function toggleClass(index) {
25
- missingCoverageElements
26
- .item(currentIndex)
27
- .classList.remove('highlighted');
28
- missingCoverageElements.item(index).classList.add('highlighted');
29
- }
30
-
31
- function makeCurrent(index) {
32
- toggleClass(index);
33
- currentIndex = index;
34
- missingCoverageElements.item(index).scrollIntoView({
35
- behavior: 'smooth',
36
- block: 'center',
37
- inline: 'center'
38
- });
39
- }
40
-
41
- function goToPrevious() {
42
- var nextIndex = 0;
43
- if (typeof currentIndex !== 'number' || currentIndex === 0) {
44
- nextIndex = missingCoverageElements.length - 1;
45
- } else if (missingCoverageElements.length > 1) {
46
- nextIndex = currentIndex - 1;
47
- }
48
-
49
- makeCurrent(nextIndex);
50
- }
51
-
52
- function goToNext() {
53
- var nextIndex = 0;
54
-
55
- if (
56
- typeof currentIndex === 'number' &&
57
- currentIndex < missingCoverageElements.length - 1
58
- ) {
59
- nextIndex = currentIndex + 1;
60
- }
61
-
62
- makeCurrent(nextIndex);
63
- }
64
-
65
- return function jump(event) {
66
- if (
67
- document.getElementById('fileSearch') === document.activeElement &&
68
- document.activeElement != null
69
- ) {
70
- // if we're currently focused on the search input, we don't want to navigate
71
- return;
72
- }
73
-
74
- switch (event.which) {
75
- case 78: // n
76
- case 74: // j
77
- goToNext();
78
- break;
79
- case 66: // b
80
- case 75: // k
81
- case 80: // p
82
- goToPrevious();
83
- break;
84
- }
85
- };
86
- })();
87
- window.addEventListener('keydown', jumpToCode);