@fleettools/server 0.1.0 → 0.2.0

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 (307) hide show
  1. package/package.json +6 -2
  2. package/tsconfig.json +7 -1
  3. package/.flightline/checkpoints.db +0 -0
  4. package/.flightline/ctk/04a5510b-1e09-40c6-91c8-399c22138708.json +0 -9
  5. package/.flightline/ctk/0ecde721-7827-4039-995a-974e24493cc5.json +0 -9
  6. package/.flightline/ctk/268bbdbd-ddd7-46b2-845f-56a138aa518a.json +0 -9
  7. package/.flightline/ctk/6f476f2e-776c-407a-b441-b9365c0bae95.json +0 -9
  8. package/.flightline/ctk/7e10d0d5-fbc2-4661-af03-53de89e064db.json +0 -9
  9. package/.flightline/ctk/90783096-b7d4-49c5-8153-3c35018a2e61.json +0 -9
  10. package/.flightline/ctk/9a3b6d18-8a46-4728-90aa-279800a8e397.json +0 -9
  11. package/.flightline/ctk/ae30e192-b386-4ee2-899c-93f86785d3f3.json +0 -9
  12. package/.flightline/ctk/d0e9c49e-10df-413e-8cf7-37232b1838ca.json +0 -9
  13. package/.flightline/ctk/eae1a12b-2e9d-4c3f-8619-dafbb1346e96.json +0 -9
  14. package/.flightline/mailboxes/mbx_00dae6ba-0b5e-4a8d-a86d-93c8640872c3/manifest.json +0 -6
  15. package/.flightline/mailboxes/mbx_05b0bfa9-c4f5-4f68-ba75-6202820f49c3/manifest.json +0 -6
  16. package/.flightline/mailboxes/mbx_0a6b8fb2-729e-4385-8241-839c36b929d7/manifest.json +0 -6
  17. package/.flightline/mailboxes/mbx_0abca4ab-8e34-409c-997f-481e80e450dc/manifest.json +0 -6
  18. package/.flightline/mailboxes/mbx_173e5fb9-8203-418d-93c2-4f8c91f2d842/manifest.json +0 -6
  19. package/.flightline/mailboxes/mbx_22b62201-0570-4ce8-b0a7-0f4b445f6d9e/manifest.json +0 -6
  20. package/.flightline/mailboxes/mbx_2724efb1-76e1-4147-9620-4defcc65510f/manifest.json +0 -6
  21. package/.flightline/mailboxes/mbx_35b8bfcd-5a54-48f1-8759-cb1f8ffe775d/manifest.json +0 -6
  22. package/.flightline/mailboxes/mbx_3bc5193a-604d-4f52-be00-e56277643358/manifest.json +0 -6
  23. package/.flightline/mailboxes/mbx_3bd500f3-c111-427a-8cd7-a004125d6dc1/manifest.json +0 -6
  24. package/.flightline/mailboxes/mbx_45ce9ae8-5299-44dc-a1b5-4d63914a9609/manifest.json +0 -6
  25. package/.flightline/mailboxes/mbx_4779c645-1efc-4c76-ab21-ff93f973ee8f/manifest.json +0 -6
  26. package/.flightline/mailboxes/mbx_482237cf-87c8-486e-a24d-0941be2f480d/manifest.json +0 -6
  27. package/.flightline/mailboxes/mbx_4b7e23c8-5680-4edd-a276-88803dd5fb6f/manifest.json +0 -6
  28. package/.flightline/mailboxes/mbx_4dd3b945-d846-4c7a-94eb-6eeb25a0dc6b/manifest.json +0 -6
  29. package/.flightline/mailboxes/mbx_4ec41a62-62bb-4be4-b3ce-282d5a33acce/manifest.json +0 -6
  30. package/.flightline/mailboxes/mbx_4ff7ee7e-0c8a-43d6-a829-7c62c10af3b0/manifest.json +0 -6
  31. package/.flightline/mailboxes/mbx_7661e4fb-a919-4af1-86f7-3eaef22f1d81/manifest.json +0 -6
  32. package/.flightline/mailboxes/mbx_7ca872bb-69ab-4e7d-a7c6-4888ec8e7749/manifest.json +0 -6
  33. package/.flightline/mailboxes/mbx_7e6d5707-2aa5-4770-a7be-6b1be93d0d87/manifest.json +0 -6
  34. package/.flightline/mailboxes/mbx_87bef50d-3c59-429b-a995-5872f6278c37/manifest.json +0 -6
  35. package/.flightline/mailboxes/mbx_88d1ea56-0b69-48c4-9fcf-ce1e1f7527ba/manifest.json +0 -6
  36. package/.flightline/mailboxes/mbx_8bfb6bd7-07d1-4836-ae9d-3c93668c6dfe/manifest.json +0 -6
  37. package/.flightline/mailboxes/mbx_93355083-e95b-4341-b625-56fcc1e4fc0c/manifest.json +0 -6
  38. package/.flightline/mailboxes/mbx_999fd94c-ca56-4fec-8d30-8b677cf40ad6/manifest.json +0 -6
  39. package/.flightline/mailboxes/mbx_a039fd15-7ee1-4bd6-906d-55dea8d0e489/manifest.json +0 -6
  40. package/.flightline/mailboxes/mbx_a0b7363f-7cc6-4940-8e29-2dc85793a77d/manifest.json +0 -6
  41. package/.flightline/mailboxes/mbx_a31e8b61-9643-4c78-939d-d1696d0420d9/manifest.json +0 -6
  42. package/.flightline/mailboxes/mbx_acc51591-256c-4bed-9a51-514b1811f4cd/manifest.json +0 -6
  43. package/.flightline/mailboxes/mbx_b1efebd9-5981-49fa-8775-20fa00d0c902/manifest.json +0 -6
  44. package/.flightline/mailboxes/mbx_ba9d4c61-39a3-4852-95d7-bd34e3605a43/manifest.json +0 -6
  45. package/.flightline/mailboxes/mbx_c549b60f-65fd-48d5-8cd6-2f053292b112/manifest.json +0 -6
  46. package/.flightline/mailboxes/mbx_d0f839a5-3ab9-42e2-b438-df5825d049fe/manifest.json +0 -6
  47. package/.flightline/mailboxes/mbx_d826d57e-9817-4f3c-ab94-2bfafa352f6d/manifest.json +0 -6
  48. package/.flightline/mailboxes/mbx_da102f37-632c-4c0b-be4c-4270a74c06b9/manifest.json +0 -6
  49. package/.flightline/mailboxes/mbx_df4506f5-67f2-4cf6-9113-93994b76f39b/manifest.json +0 -6
  50. package/.flightline/mailboxes/mbx_e038e93b-87ea-4122-9578-6540018697b7/manifest.json +0 -6
  51. package/.flightline/mailboxes/mbx_e0c171c5-407f-44dc-9ef9-e26e8b99ceac/manifest.json +0 -6
  52. package/.flightline/mailboxes/mbx_e64770bf-7220-4d0f-848c-d751ea1c7376/manifest.json +0 -6
  53. package/.flightline/mailboxes/mbx_e7f0edda-0fab-484d-ab4d-d8a8e363cd14/manifest.json +0 -6
  54. package/.flightline/mailboxes/mbx_ec7d9118-8594-4d79-bf79-f43afdfaf156/manifest.json +0 -6
  55. package/.flightline/mailboxes/mbx_ee06ec01-03e4-485a-ae2b-d8bdb6e7a3a8/manifest.json +0 -6
  56. package/.flightline/mailboxes/mbx_fd467681-f9cf-4a54-b06a-836df6de2ccc/manifest.json +0 -6
  57. package/.flightline/progress.db +0 -0
  58. package/.flightline/recovery.log +0 -1
  59. package/.flightline/tasks.db +0 -0
  60. package/.flightline/tech-orders/to_0c93d981-6b4e-4055-8678-f39c009d1db1.json +0 -11
  61. package/.flightline/tech-orders/to_1862f8ed-c487-4914-9f1e-528af6d4f053.json +0 -11
  62. package/.flightline/tech-orders/to_2335a57d-f400-4efa-b108-e13ece57520d.json +0 -11
  63. package/.flightline/tech-orders/to_2bd8dbdd-ac57-4b84-b977-33a3637d10d1.json +0 -11
  64. package/.flightline/tech-orders/to_37057c01-39b5-403a-991f-afb186abde95.json +0 -11
  65. package/.flightline/tech-orders/to_9e7288bb-c0fd-488a-a83d-1e9337bd0f1f.json +0 -11
  66. package/.flightline/tech-orders/to_aa0fe80b-9de7-40f6-a106-353b5bca10bd.json +0 -11
  67. package/.flightline/tech-orders/to_c1a0f480-c863-4203-a070-76ad77137845.json +0 -11
  68. package/.flightline/tech-orders/to_cf1e882a-cf56-45a4-8d19-494925e5f449.json +0 -11
  69. package/.flightline/work-orders/wo_5a29168d-5fb4-41d7-8dac-1d1151d9248f/manifest.json +0 -15
  70. package/.flightline/work-orders/wo_6c8c38bb-17a1-4885-ada4-dbfc5cc12d7a/manifest.json +0 -15
  71. package/.flightline/work-orders/wo_cadeb9b2-ea42-4491-b429-e2d467942b5c/manifest.json +0 -12
  72. package/.flightline/work-orders/wo_cc7b669c-16c4-4ef7-8a76-d1813219d0be/manifest.json +0 -15
  73. package/dist/agent-lifecycle.js +0 -148
  74. package/dist/agent-spawner.js +0 -460
  75. package/dist/agent-validation.js +0 -111
  76. package/dist/index.js +0 -255
  77. package/dist/server/api/src/coordination/agent-lifecycle.d.ts +0 -12
  78. package/dist/server/api/src/coordination/agent-lifecycle.d.ts.map +0 -1
  79. package/dist/server/api/src/coordination/agent-lifecycle.js +0 -12
  80. package/dist/server/api/src/coordination/agent-lifecycle.js.map +0 -1
  81. package/dist/server/api/src/coordination/agent-runner.d.ts +0 -9
  82. package/dist/server/api/src/coordination/agent-runner.d.ts.map +0 -1
  83. package/dist/server/api/src/coordination/agent-runner.js +0 -416
  84. package/dist/server/api/src/coordination/agent-runner.js.map +0 -1
  85. package/dist/server/api/src/coordination/agent-spawner-routes.d.ts +0 -7
  86. package/dist/server/api/src/coordination/agent-spawner-routes.d.ts.map +0 -1
  87. package/dist/server/api/src/coordination/agent-spawner-routes.js +0 -321
  88. package/dist/server/api/src/coordination/agent-spawner-routes.js.map +0 -1
  89. package/dist/server/api/src/coordination/agent-spawner.d.ts +0 -187
  90. package/dist/server/api/src/coordination/agent-spawner.d.ts.map +0 -1
  91. package/dist/server/api/src/coordination/agent-spawner.js +0 -712
  92. package/dist/server/api/src/coordination/agent-spawner.js.map +0 -1
  93. package/dist/server/api/src/coordination/agents.d.ts +0 -13
  94. package/dist/server/api/src/coordination/agents.d.ts.map +0 -1
  95. package/dist/server/api/src/coordination/agents.js +0 -464
  96. package/dist/server/api/src/coordination/agents.js.map +0 -1
  97. package/dist/server/api/src/coordination/checkpoint-routes.d.ts +0 -33
  98. package/dist/server/api/src/coordination/checkpoint-routes.d.ts.map +0 -1
  99. package/dist/server/api/src/coordination/checkpoint-routes.js +0 -323
  100. package/dist/server/api/src/coordination/checkpoint-routes.js.map +0 -1
  101. package/dist/server/api/src/coordination/conflict-resolver.d.ts +0 -152
  102. package/dist/server/api/src/coordination/conflict-resolver.d.ts.map +0 -1
  103. package/dist/server/api/src/coordination/conflict-resolver.js +0 -502
  104. package/dist/server/api/src/coordination/conflict-resolver.js.map +0 -1
  105. package/dist/server/api/src/coordination/missions.d.ts +0 -9
  106. package/dist/server/api/src/coordination/missions.d.ts.map +0 -1
  107. package/dist/server/api/src/coordination/missions.js +0 -148
  108. package/dist/server/api/src/coordination/missions.js.map +0 -1
  109. package/dist/server/api/src/coordination/monitor.d.ts +0 -175
  110. package/dist/server/api/src/coordination/monitor.d.ts.map +0 -1
  111. package/dist/server/api/src/coordination/monitor.js +0 -410
  112. package/dist/server/api/src/coordination/monitor.js.map +0 -1
  113. package/dist/server/api/src/coordination/notifier.d.ts +0 -160
  114. package/dist/server/api/src/coordination/notifier.d.ts.map +0 -1
  115. package/dist/server/api/src/coordination/notifier.js +0 -422
  116. package/dist/server/api/src/coordination/notifier.js.map +0 -1
  117. package/dist/server/api/src/coordination/progress-tracker.d.ts +0 -98
  118. package/dist/server/api/src/coordination/progress-tracker.d.ts.map +0 -1
  119. package/dist/server/api/src/coordination/progress-tracker.js +0 -323
  120. package/dist/server/api/src/coordination/progress-tracker.js.map +0 -1
  121. package/dist/server/api/src/coordination/recovery-manager.d.ts +0 -135
  122. package/dist/server/api/src/coordination/recovery-manager.d.ts.map +0 -1
  123. package/dist/server/api/src/coordination/recovery-manager.js +0 -435
  124. package/dist/server/api/src/coordination/recovery-manager.js.map +0 -1
  125. package/dist/server/api/src/coordination/task-decomposer.d.ts +0 -90
  126. package/dist/server/api/src/coordination/task-decomposer.d.ts.map +0 -1
  127. package/dist/server/api/src/coordination/task-decomposer.js +0 -412
  128. package/dist/server/api/src/coordination/task-decomposer.js.map +0 -1
  129. package/dist/server/api/src/coordination/task-queue-routes.d.ts +0 -7
  130. package/dist/server/api/src/coordination/task-queue-routes.d.ts.map +0 -1
  131. package/dist/server/api/src/coordination/task-queue-routes.js +0 -266
  132. package/dist/server/api/src/coordination/task-queue-routes.js.map +0 -1
  133. package/dist/server/api/src/coordination/task-queue.d.ts +0 -104
  134. package/dist/server/api/src/coordination/task-queue.d.ts.map +0 -1
  135. package/dist/server/api/src/coordination/task-queue.js +0 -378
  136. package/dist/server/api/src/coordination/task-queue.js.map +0 -1
  137. package/dist/server/api/src/coordination/tasks.d.ts +0 -7
  138. package/dist/server/api/src/coordination/tasks.d.ts.map +0 -1
  139. package/dist/server/api/src/coordination/tasks.js +0 -59
  140. package/dist/server/api/src/coordination/tasks.js.map +0 -1
  141. package/dist/server/api/src/decomposition/cli.d.ts +0 -18
  142. package/dist/server/api/src/decomposition/cli.d.ts.map +0 -1
  143. package/dist/server/api/src/decomposition/cli.js +0 -191
  144. package/dist/server/api/src/decomposition/cli.js.map +0 -1
  145. package/dist/server/api/src/decomposition/codebase-analyzer.d.ts +0 -59
  146. package/dist/server/api/src/decomposition/codebase-analyzer.d.ts.map +0 -1
  147. package/dist/server/api/src/decomposition/codebase-analyzer.js +0 -274
  148. package/dist/server/api/src/decomposition/codebase-analyzer.js.map +0 -1
  149. package/dist/server/api/src/decomposition/dependency-resolver.d.ts +0 -68
  150. package/dist/server/api/src/decomposition/dependency-resolver.d.ts.map +0 -1
  151. package/dist/server/api/src/decomposition/dependency-resolver.js +0 -261
  152. package/dist/server/api/src/decomposition/dependency-resolver.js.map +0 -1
  153. package/dist/server/api/src/decomposition/index.d.ts +0 -17
  154. package/dist/server/api/src/decomposition/index.d.ts.map +0 -1
  155. package/dist/server/api/src/decomposition/index.js +0 -19
  156. package/dist/server/api/src/decomposition/index.js.map +0 -1
  157. package/dist/server/api/src/decomposition/parallelization.d.ts +0 -40
  158. package/dist/server/api/src/decomposition/parallelization.d.ts.map +0 -1
  159. package/dist/server/api/src/decomposition/parallelization.js +0 -144
  160. package/dist/server/api/src/decomposition/parallelization.js.map +0 -1
  161. package/dist/server/api/src/decomposition/planner.d.ts +0 -84
  162. package/dist/server/api/src/decomposition/planner.d.ts.map +0 -1
  163. package/dist/server/api/src/decomposition/planner.js +0 -415
  164. package/dist/server/api/src/decomposition/planner.js.map +0 -1
  165. package/dist/server/api/src/decomposition/routes.d.ts +0 -13
  166. package/dist/server/api/src/decomposition/routes.d.ts.map +0 -1
  167. package/dist/server/api/src/decomposition/routes.js +0 -114
  168. package/dist/server/api/src/decomposition/routes.js.map +0 -1
  169. package/dist/server/api/src/decomposition/strategies.d.ts +0 -43
  170. package/dist/server/api/src/decomposition/strategies.d.ts.map +0 -1
  171. package/dist/server/api/src/decomposition/strategies.js +0 -147
  172. package/dist/server/api/src/decomposition/strategies.js.map +0 -1
  173. package/dist/server/api/src/decomposition/types.d.ts +0 -1090
  174. package/dist/server/api/src/decomposition/types.d.ts.map +0 -1
  175. package/dist/server/api/src/decomposition/types.js +0 -65
  176. package/dist/server/api/src/decomposition/types.js.map +0 -1
  177. package/dist/server/api/src/decomposition/validator.d.ts +0 -84
  178. package/dist/server/api/src/decomposition/validator.d.ts.map +0 -1
  179. package/dist/server/api/src/decomposition/validator.js +0 -314
  180. package/dist/server/api/src/decomposition/validator.js.map +0 -1
  181. package/dist/server/api/src/flightline/ctk.d.ts +0 -2
  182. package/dist/server/api/src/flightline/ctk.d.ts.map +0 -1
  183. package/dist/server/api/src/flightline/ctk.js +0 -114
  184. package/dist/server/api/src/flightline/ctk.js.map +0 -1
  185. package/dist/server/api/src/flightline/tech-orders.d.ts +0 -2
  186. package/dist/server/api/src/flightline/tech-orders.d.ts.map +0 -1
  187. package/dist/server/api/src/flightline/tech-orders.js +0 -74
  188. package/dist/server/api/src/flightline/tech-orders.js.map +0 -1
  189. package/dist/server/api/src/flightline/work-orders.d.ts +0 -2
  190. package/dist/server/api/src/flightline/work-orders.d.ts.map +0 -1
  191. package/dist/server/api/src/flightline/work-orders.js +0 -178
  192. package/dist/server/api/src/flightline/work-orders.js.map +0 -1
  193. package/dist/server/api/src/index.d.ts +0 -3
  194. package/dist/server/api/src/index.d.ts.map +0 -1
  195. package/dist/server/api/src/index.js +0 -192
  196. package/dist/server/api/src/index.js.map +0 -1
  197. package/dist/server/api/src/middleware/agent-validation.d.ts +0 -161
  198. package/dist/server/api/src/middleware/agent-validation.d.ts.map +0 -1
  199. package/dist/server/api/src/middleware/agent-validation.js +0 -112
  200. package/dist/server/api/src/middleware/agent-validation.js.map +0 -1
  201. package/dist/server/api/src/middleware/error-handler.d.ts +0 -8
  202. package/dist/server/api/src/middleware/error-handler.d.ts.map +0 -1
  203. package/dist/server/api/src/middleware/error-handler.js +0 -54
  204. package/dist/server/api/src/middleware/error-handler.js.map +0 -1
  205. package/dist/server/api/src/middleware/logger.d.ts +0 -8
  206. package/dist/server/api/src/middleware/logger.d.ts.map +0 -1
  207. package/dist/server/api/src/middleware/logger.js +0 -31
  208. package/dist/server/api/src/middleware/logger.js.map +0 -1
  209. package/dist/server/api/src/middleware/validation.d.ts +0 -322
  210. package/dist/server/api/src/middleware/validation.d.ts.map +0 -1
  211. package/dist/server/api/src/middleware/validation.js +0 -189
  212. package/dist/server/api/src/middleware/validation.js.map +0 -1
  213. package/dist/server/api/src/squawk/blocker-handler.d.ts +0 -111
  214. package/dist/server/api/src/squawk/blocker-handler.d.ts.map +0 -1
  215. package/dist/server/api/src/squawk/blocker-handler.js +0 -262
  216. package/dist/server/api/src/squawk/blocker-handler.js.map +0 -1
  217. package/dist/server/api/src/squawk/coordinator.d.ts +0 -2
  218. package/dist/server/api/src/squawk/coordinator.d.ts.map +0 -1
  219. package/dist/server/api/src/squawk/coordinator.js +0 -24
  220. package/dist/server/api/src/squawk/coordinator.js.map +0 -1
  221. package/dist/server/api/src/squawk/cursor.d.ts +0 -2
  222. package/dist/server/api/src/squawk/cursor.d.ts.map +0 -1
  223. package/dist/server/api/src/squawk/cursor.js +0 -55
  224. package/dist/server/api/src/squawk/cursor.js.map +0 -1
  225. package/dist/server/api/src/squawk/dependency-resolver.d.ts +0 -107
  226. package/dist/server/api/src/squawk/dependency-resolver.d.ts.map +0 -1
  227. package/dist/server/api/src/squawk/dependency-resolver.js +0 -324
  228. package/dist/server/api/src/squawk/dependency-resolver.js.map +0 -1
  229. package/dist/server/api/src/squawk/dispatch-orchestrator.d.ts +0 -117
  230. package/dist/server/api/src/squawk/dispatch-orchestrator.d.ts.map +0 -1
  231. package/dist/server/api/src/squawk/dispatch-orchestrator.js +0 -296
  232. package/dist/server/api/src/squawk/dispatch-orchestrator.js.map +0 -1
  233. package/dist/server/api/src/squawk/lock-coordinator.d.ts +0 -118
  234. package/dist/server/api/src/squawk/lock-coordinator.d.ts.map +0 -1
  235. package/dist/server/api/src/squawk/lock-coordinator.js +0 -279
  236. package/dist/server/api/src/squawk/lock-coordinator.js.map +0 -1
  237. package/dist/server/api/src/squawk/lock.d.ts +0 -2
  238. package/dist/server/api/src/squawk/lock.d.ts.map +0 -1
  239. package/dist/server/api/src/squawk/lock.js +0 -87
  240. package/dist/server/api/src/squawk/lock.js.map +0 -1
  241. package/dist/server/api/src/squawk/mailbox.d.ts +0 -2
  242. package/dist/server/api/src/squawk/mailbox.d.ts.map +0 -1
  243. package/dist/server/api/src/squawk/mailbox.js +0 -66
  244. package/dist/server/api/src/squawk/mailbox.js.map +0 -1
  245. package/dist/server/api/src/squawk/spawning.d.ts +0 -79
  246. package/dist/server/api/src/squawk/spawning.d.ts.map +0 -1
  247. package/dist/server/api/src/squawk/spawning.js +0 -226
  248. package/dist/server/api/src/squawk/spawning.js.map +0 -1
  249. package/dist/server/api/src/squawk/specialist-tools.d.ts +0 -206
  250. package/dist/server/api/src/squawk/specialist-tools.d.ts.map +0 -1
  251. package/dist/server/api/src/squawk/specialist-tools.js +0 -411
  252. package/dist/server/api/src/squawk/specialist-tools.js.map +0 -1
  253. package/dist/server/api/src/types/api.d.ts +0 -63
  254. package/dist/server/api/src/types/api.d.ts.map +0 -1
  255. package/dist/server/api/src/types/api.js +0 -5
  256. package/dist/server/api/src/types/api.js.map +0 -1
  257. package/dist/squawk/src/db/index.d.ts +0 -30
  258. package/dist/squawk/src/db/index.d.ts.map +0 -1
  259. package/dist/squawk/src/db/index.js +0 -329
  260. package/dist/squawk/src/db/index.js.map +0 -1
  261. package/dist/squawk/src/db/sqlite.d.ts +0 -31
  262. package/dist/squawk/src/db/sqlite.d.ts.map +0 -1
  263. package/dist/squawk/src/db/sqlite.js +0 -558
  264. package/dist/squawk/src/db/sqlite.js.map +0 -1
  265. package/dist/squawk/src/db/types.d.ts +0 -611
  266. package/dist/squawk/src/db/types.d.ts.map +0 -1
  267. package/dist/squawk/src/db/types.js +0 -4
  268. package/dist/squawk/src/db/types.js.map +0 -1
  269. package/dist/task-queue.js +0 -377
  270. package/dist/validation.js +0 -188
  271. package/e2e-integration.test.ts +0 -290
  272. package/integration.test.ts +0 -186
  273. package/phase1-integration.test.ts +0 -455
  274. package/phase2-verification.test.ts +0 -135
  275. package/server.log +0 -58
  276. package/src/agent-runner.js +0 -877
  277. package/src/coordination/agent-lifecycle.ts +0 -13
  278. package/src/coordination/agent-runner.ts +0 -479
  279. package/src/coordination/agent-spawner-routes.ts +0 -340
  280. package/src/coordination/agent-spawner.ts +0 -885
  281. package/src/coordination/agents.ts +0 -525
  282. package/src/coordination/checkpoint-routes.ts +0 -382
  283. package/src/coordination/conflict-resolver.ts +0 -640
  284. package/src/coordination/missions.ts +0 -219
  285. package/src/coordination/monitor.ts +0 -593
  286. package/src/coordination/notifier.ts +0 -547
  287. package/src/coordination/progress-tracker.ts +0 -410
  288. package/src/coordination/recovery-manager.ts +0 -531
  289. package/src/coordination/task-decomposer.ts +0 -491
  290. package/src/coordination/task-queue-routes.ts +0 -284
  291. package/src/coordination/task-queue.ts +0 -480
  292. package/src/coordination/tasks.ts +0 -72
  293. package/src/flightline/ctk.ts +0 -131
  294. package/src/flightline/tech-orders.ts +0 -85
  295. package/src/flightline/work-orders.ts +0 -202
  296. package/src/index.ts +0 -211
  297. package/src/middleware/agent-validation.ts +0 -130
  298. package/src/middleware/error-handler.ts +0 -59
  299. package/src/middleware/logger.ts +0 -37
  300. package/src/middleware/validation.ts +0 -235
  301. package/src/squawk/coordinator.ts +0 -26
  302. package/src/squawk/cursor.ts +0 -62
  303. package/src/squawk/lock.ts +0 -98
  304. package/src/squawk/mailbox.ts +0 -75
  305. package/src/types/api.ts +0 -71
  306. package/test-api.ts +0 -310
  307. package/test-enhanced-agents.ts +0 -428
@@ -1,525 +0,0 @@
1
- /**
2
- * Agent API Routes
3
- *
4
- * RESTful endpoints for agent lifecycle management
5
- * POST /api/v1/agents/spawn - Spawn new agent
6
- * GET /api/v1/agents - List all agents
7
- * GET /api/v1/agents/:id - Get agent details
8
- * DELETE /api/v1/agents/:id - Terminate agent
9
- * POST /api/v1/agents/:id/progress - Report agent progress
10
- * POST /api/v1/agents/:id/heartbeat - Agent heartbeat
11
- */
12
-
13
- import { AgentSpawner, AgentType, AgentStatus } from './agent-spawner.js';
14
-
15
- const spawner = new AgentSpawner();
16
-
17
- export function registerAgentRoutes(
18
- router: any,
19
- headers: Record<string, string>
20
- ): void {
21
- router.post('/api/v1/agents/spawn', async (req: Request) => {
22
- try {
23
- const body = (await req.json()) as {
24
- type?: AgentType;
25
- task?: string;
26
- metadata?: Record<string, unknown>;
27
- config?: Record<string, unknown>;
28
- };
29
-
30
- const { type, task, metadata, config } = body;
31
-
32
- if (!type || !Object.values(AgentType).includes(type)) {
33
- return new Response(JSON.stringify({
34
- error: 'Invalid agent type',
35
- validTypes: Object.values(AgentType)
36
- }), {
37
- status: 400,
38
- headers: { ...headers, 'Content-Type': 'application/json' }
39
- });
40
- }
41
-
42
- const agent = await spawner.spawn({
43
- type,
44
- task,
45
- metadata,
46
- config
47
- });
48
-
49
- return new Response(JSON.stringify({
50
- success: true,
51
- data: {
52
- agent: {
53
- id: agent.id,
54
- type: agent.type,
55
- status: agent.status,
56
- mailboxId: agent.mailboxId,
57
- pid: agent.pid,
58
- createdAt: agent.createdAt,
59
- updatedAt: agent.updatedAt,
60
- metadata: agent.metadata
61
- }
62
- }
63
- }), {
64
- headers: { ...headers, 'Content-Type': 'application/json' }
65
- });
66
- } catch (error: any) {
67
- console.error('Agent spawn error:', error);
68
- return new Response(JSON.stringify({
69
- error: 'Failed to spawn agent',
70
- message: error?.message || 'Unknown error'
71
- }), {
72
- status: 500,
73
- headers: { ...headers, 'Content-Type': 'application/json' }
74
- });
75
- }
76
- });
77
-
78
- router.get('/api/v1/agents', async (req: Request) => {
79
- try {
80
- const url = new URL(req.url);
81
- const typeParam = url.searchParams.get('type');
82
- const statusParam = url.searchParams.get('status');
83
-
84
- let agents = spawner.getActiveAgents();
85
-
86
- if (typeParam && Object.values(AgentType).includes(typeParam as AgentType)) {
87
- agents = spawner.getAgentsByType(typeParam as AgentType);
88
- }
89
-
90
- if (statusParam && Object.values(AgentStatus).includes(statusParam as AgentStatus)) {
91
- agents = agents.filter(a => a.status === statusParam);
92
- }
93
-
94
- const agentsWithStatus = await Promise.all(
95
- agents.map(async (agent) => {
96
- const monitor = await spawner.monitor(agent.id);
97
- return {
98
- id: agent.id,
99
- type: agent.type,
100
- callsign: `${agent.type}-${agent.id.slice(0, 8)}`,
101
- status: monitor.status,
102
- pid: agent.pid,
103
- mailboxId: agent.mailboxId,
104
- createdAt: agent.createdAt,
105
- updatedAt: agent.updatedAt,
106
- uptime: monitor.uptime,
107
- lastHeartbeat: monitor.lastHeartbeat,
108
- resourceUsage: monitor.resourceUsage,
109
- errors: monitor.errors,
110
- metadata: agent.metadata
111
- };
112
- })
113
- );
114
-
115
- return new Response(JSON.stringify({
116
- success: true,
117
- data: {
118
- agents: agentsWithStatus,
119
- total: agentsWithStatus.length
120
- }
121
- }), {
122
- headers: { ...headers, 'Content-Type': 'application/json' }
123
- });
124
- } catch (error: any) {
125
- console.error('List agents error:', error);
126
- return new Response(JSON.stringify({
127
- error: 'Failed to list agents',
128
- message: error?.message || 'Unknown error'
129
- }), {
130
- status: 500,
131
- headers: { ...headers, 'Content-Type': 'application/json' }
132
- });
133
- }
134
- });
135
-
136
- router.get('/api/v1/agents/:id', async (req: Request, params: { id: string }) => {
137
- try {
138
- const agent = spawner.getAgent(params.id);
139
-
140
- if (!agent) {
141
- return new Response(JSON.stringify({
142
- error: 'Agent not found',
143
- id: params.id
144
- }), {
145
- status: 404,
146
- headers: { ...headers, 'Content-Type': 'application/json' }
147
- });
148
- }
149
-
150
- const monitor = await spawner.monitor(agent.id);
151
-
152
- return new Response(JSON.stringify({
153
- success: true,
154
- data: {
155
- agent: {
156
- id: agent.id,
157
- type: agent.type,
158
- callsign: `${agent.type}-${agent.id.slice(0, 8)}`,
159
- status: monitor.status,
160
- pid: agent.pid,
161
- mailboxId: agent.mailboxId,
162
- createdAt: agent.createdAt,
163
- updatedAt: agent.updatedAt,
164
- uptime: monitor.uptime,
165
- lastHeartbeat: monitor.lastHeartbeat,
166
- resourceUsage: monitor.resourceUsage,
167
- errors: monitor.errors,
168
- metadata: agent.metadata
169
- }
170
- }
171
- }), {
172
- headers: { ...headers, 'Content-Type': 'application/json' }
173
- });
174
- } catch (error: any) {
175
- console.error('Get agent error:', error);
176
- return new Response(JSON.stringify({
177
- error: 'Failed to get agent',
178
- message: error?.message || 'Unknown error'
179
- }), {
180
- status: 500,
181
- headers: { ...headers, 'Content-Type': 'application/json' }
182
- });
183
- }
184
- });
185
-
186
- router.delete('/api/v1/agents/:id', async (req: Request, params: { id: string }) => {
187
- try {
188
- const url = new URL(req.url);
189
- const forceParam = url.searchParams.get('force');
190
- const reasonParam = url.searchParams.get('reason') || 'manual';
191
-
192
- const agent = spawner.getAgent(params.id);
193
-
194
- if (!agent) {
195
- return new Response(JSON.stringify({
196
- error: 'Agent not found',
197
- id: params.id
198
- }), {
199
- status: 404,
200
- headers: { ...headers, 'Content-Type': 'application/json' }
201
- });
202
- }
203
-
204
- await spawner.terminate(params.id, forceParam === 'true');
205
-
206
- return new Response(JSON.stringify({
207
- success: true,
208
- data: {
209
- agent: {
210
- id: agent.id,
211
- type: agent.type,
212
- callsign: `${agent.type}-${agent.id.slice(0, 8)}`,
213
- status: AgentStatus.TERMINATED,
214
- reason: reasonParam
215
- }
216
- }
217
- }), {
218
- headers: { ...headers, 'Content-Type': 'application/json' }
219
- });
220
- } catch (error: any) {
221
- console.error('Terminate agent error:', error);
222
- return new Response(JSON.stringify({
223
- error: 'Failed to terminate agent',
224
- message: error?.message || 'Unknown error'
225
- }), {
226
- status: 500,
227
- headers: { ...headers, 'Content-Type': 'application/json' }
228
- });
229
- }
230
- });
231
-
232
- router.post('/api/v1/agents/:id/progress', async (req: Request, params: { id: string }) => {
233
- try {
234
- const body = (await req.json()) as {
235
- status?: AgentStatus;
236
- progress?: number;
237
- message?: string;
238
- };
239
- const { status, progress, message } = body;
240
-
241
- const agent = spawner.getAgent(params.id);
242
- if (!agent) {
243
- return new Response(JSON.stringify({
244
- error: 'Agent not found',
245
- id: params.id
246
- }), {
247
- status: 404,
248
- headers: { ...headers, 'Content-Type': 'application/json' }
249
- });
250
- }
251
-
252
- if (status && Object.values(AgentStatus).includes(status)) {
253
- agent.status = status;
254
- }
255
-
256
- if (typeof progress === 'number' && progress >= 0 && progress <= 100) {
257
- agent.metadata = agent.metadata || {};
258
- agent.metadata.progress = progress;
259
- }
260
-
261
- if (message) {
262
- agent.metadata = agent.metadata || {};
263
- agent.metadata.lastMessage = message;
264
- }
265
-
266
- agent.updatedAt = new Date().toISOString();
267
-
268
- return new Response(JSON.stringify({
269
- success: true,
270
- data: {
271
- agentId: agent.id,
272
- status: agent.status,
273
- progress: agent.metadata?.progress,
274
- timestamp: new Date().toISOString()
275
- }
276
- }), {
277
- headers: { ...headers, 'Content-Type': 'application/json' }
278
- });
279
- } catch (error: any) {
280
- console.error('Progress update error:', error);
281
- return new Response(JSON.stringify({
282
- error: 'Failed to update progress',
283
- message: error?.message || 'Unknown error'
284
- }), {
285
- status: 500,
286
- headers: { ...headers, 'Content-Type': 'application/json' }
287
- });
288
- }
289
- });
290
-
291
- router.post('/api/v1/agents/:id/heartbeat', async (req: Request, params: { id: string }) => {
292
- try {
293
- const body = (await req.json()) as {
294
- timestamp?: string;
295
- resourceUsage?: Record<string, unknown>;
296
- };
297
- const { timestamp, resourceUsage } = body;
298
-
299
- const agent = spawner.getAgent(params.id);
300
- if (!agent) {
301
- return new Response(JSON.stringify({
302
- error: 'Agent not found',
303
- id: params.id
304
- }), {
305
- status: 404,
306
- headers: { ...headers, 'Content-Type': 'application/json' }
307
- });
308
- }
309
-
310
- await spawner.updateHeartbeat(params.id);
311
-
312
- if (timestamp) {
313
- agent.metadata = agent.metadata || {};
314
- agent.metadata.lastHeartbeat = timestamp;
315
- }
316
-
317
- if (resourceUsage) {
318
- agent.metadata = agent.metadata || {};
319
- agent.metadata.resourceUsage = resourceUsage;
320
- }
321
-
322
- agent.updatedAt = new Date().toISOString();
323
-
324
- return new Response(JSON.stringify({
325
- success: true,
326
- data: {
327
- agentId: agent.id,
328
- heartbeatReceived: true,
329
- timestamp: new Date().toISOString()
330
- }
331
- }), {
332
- headers: { ...headers, 'Content-Type': 'application/json' }
333
- });
334
- } catch (error: any) {
335
- console.error('Heartbeat error:', error);
336
- return new Response(JSON.stringify({
337
- error: 'Failed to process heartbeat',
338
- message: error?.message || 'Unknown error'
339
- }), {
340
- status: 500,
341
- headers: { ...headers, 'Content-Type': 'application/json' }
342
- });
343
- }
344
- });
345
-
346
- router.get('/api/v1/agents/:id/health', async (req: Request, params: { id: string }) => {
347
- try {
348
- const health = await spawner.getAgentHealth(params.id);
349
-
350
- if (!health) {
351
- return new Response(JSON.stringify({
352
- error: 'Agent not found',
353
- id: params.id
354
- }), {
355
- status: 404,
356
- headers: { ...headers, 'Content-Type': 'application/json' }
357
- });
358
- }
359
-
360
- return new Response(JSON.stringify({
361
- success: true,
362
- data: {
363
- id: params.id,
364
- ...health
365
- }
366
- }), {
367
- headers: { ...headers, 'Content-Type': 'application/json' }
368
- });
369
- } catch (error: any) {
370
- console.error('Agent health error:', error);
371
- return new Response(JSON.stringify({
372
- error: 'Failed to get agent health',
373
- message: error?.message || 'Unknown error'
374
- }), {
375
- status: 500,
376
- headers: { ...headers, 'Content-Type': 'application/json' }
377
- });
378
- }
379
- });
380
-
381
- router.get('/api/v1/agents/system-health', async (req: Request) => {
382
- try {
383
- const systemHealth = await spawner.getSystemHealth();
384
-
385
- return new Response(JSON.stringify({
386
- success: true,
387
- data: systemHealth
388
- }), {
389
- headers: { ...headers, 'Content-Type': 'application/json' }
390
- });
391
- } catch (error: any) {
392
- console.error('System health error:', error);
393
- return new Response(JSON.stringify({
394
- error: 'Failed to get system health',
395
- message: error?.message || 'Unknown error'
396
- }), {
397
- status: 500,
398
- headers: { ...headers, 'Content-Type': 'application/json' }
399
- });
400
- }
401
- });
402
-
403
- router.get('/api/v1/agents/:id/resource-history', async (req: Request, params: { id: string }) => {
404
- try {
405
- const history = await spawner.getResourceHistory(params.id);
406
-
407
- return new Response(JSON.stringify({
408
- success: true,
409
- data: {
410
- agentId: params.id,
411
- history
412
- }
413
- }), {
414
- headers: { ...headers, 'Content-Type': 'application/json' }
415
- });
416
- } catch (error: any) {
417
- console.error('Resource history error:', error);
418
- return new Response(JSON.stringify({
419
- error: 'Failed to get resource history',
420
- message: error?.message || 'Unknown error'
421
- }), {
422
- status: 500,
423
- headers: { ...headers, 'Content-Type': 'application/json' }
424
- });
425
- }
426
- });
427
-
428
- router.get('/api/v1/agents/:id/resource-trends', async (req: Request, params: { id: string }) => {
429
- try {
430
- const trends = await spawner.getResourceTrends(params.id);
431
-
432
- return new Response(JSON.stringify({
433
- success: true,
434
- data: {
435
- agentId: params.id,
436
- ...trends
437
- }
438
- }), {
439
- headers: { ...headers, 'Content-Type': 'application/json' }
440
- });
441
- } catch (error: any) {
442
- console.error('Resource trends error:', error);
443
- return new Response(JSON.stringify({
444
- error: 'Failed to get resource trends',
445
- message: error?.message || 'Unknown error'
446
- }), {
447
- status: 500,
448
- headers: { ...headers, 'Content-Type': 'application/json' }
449
- });
450
- }
451
- });
452
-
453
- router.get('/api/v1/agents/:id/logs', async (req: Request, params: { id: string }) => {
454
- try {
455
- const url = new URL(req.url);
456
- const linesParam = url.searchParams.get('lines');
457
- const eventsOnlyParam = url.searchParams.get('eventsOnly');
458
-
459
- const lines = linesParam ? parseInt(linesParam) : 50;
460
- const eventsOnly = eventsOnlyParam === 'true';
461
-
462
- // In a real implementation, this would query actual logs
463
- // For now, return mock log data
464
- const logs = generateMockLogs(params.id, lines, eventsOnly);
465
-
466
- return new Response(JSON.stringify({
467
- success: true,
468
- data: {
469
- agentId: params.id,
470
- logs
471
- }
472
- }), {
473
- headers: { ...headers, 'Content-Type': 'application/json' }
474
- });
475
- } catch (error: any) {
476
- console.error('Agent logs error:', error);
477
- return new Response(JSON.stringify({
478
- error: 'Failed to get agent logs',
479
- message: error?.message || 'Unknown error'
480
- }), {
481
- status: 500,
482
- headers: { ...headers, 'Content-Type': 'application/json' }
483
- });
484
- }
485
- });
486
- }
487
-
488
- /**
489
- * Generate mock log data for demonstration
490
- * In real implementation, this would query actual log storage
491
- */
492
- function generateMockLogs(agentId: string, limit: number, eventsOnly: boolean): any[] {
493
- const logs: any[] = [];
494
- const now = Date.now();
495
- const levels = ['INFO', 'DEBUG', 'WARN', 'ERROR'];
496
- const eventTypes = ['agent_started', 'task_progress', 'heartbeat', 'agent_completed'];
497
-
498
- for (let i = 0; i < limit; i++) {
499
- const timestamp = new Date(now - (i * 60000)).toISOString(); // 1 minute intervals
500
-
501
- if (eventsOnly && Math.random() > 0.3) continue; // Fewer events when filtering
502
-
503
- const isEvent = eventsOnly || Math.random() > 0.7;
504
-
505
- const logEntry: any = {
506
- timestamp,
507
- level: isEvent ? 'EVENT' : levels[Math.floor(Math.random() * levels.length)],
508
- message: isEvent
509
- ? `${eventTypes[Math.floor(Math.random() * eventTypes.length)]} event occurred`
510
- : `Agent ${agentId} ${['is processing', 'completed task', 'updated status', 'checking resources'][Math.floor(Math.random() * 4)]}`
511
- };
512
-
513
- if (isEvent) {
514
- logEntry.data = {
515
- agentId,
516
- progress: Math.floor(Math.random() * 100),
517
- stage: ['analysis', 'implementation', 'testing', 'completion'][Math.floor(Math.random() * 4)]
518
- };
519
- }
520
-
521
- logs.push(logEntry);
522
- }
523
-
524
- return logs.reverse(); // Most recent first
525
- }