attocode 0.2.2 → 0.2.4

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 (382) hide show
  1. package/CHANGELOG.md +169 -3
  2. package/README.md +65 -5
  3. package/dist/src/adapters.d.ts.map +1 -1
  4. package/dist/src/adapters.js +15 -11
  5. package/dist/src/adapters.js.map +1 -1
  6. package/dist/src/agent.d.ts +44 -98
  7. package/dist/src/agent.d.ts.map +1 -1
  8. package/dist/src/agent.js +716 -2648
  9. package/dist/src/agent.js.map +1 -1
  10. package/dist/src/cli.d.ts.map +1 -1
  11. package/dist/src/cli.js +25 -3
  12. package/dist/src/cli.js.map +1 -1
  13. package/dist/src/commands/handler.d.ts.map +1 -1
  14. package/dist/src/commands/handler.js +11 -3
  15. package/dist/src/commands/handler.js.map +1 -1
  16. package/dist/src/commands/init-commands.d.ts.map +1 -1
  17. package/dist/src/commands/init-commands.js +16 -1
  18. package/dist/src/commands/init-commands.js.map +1 -1
  19. package/dist/src/commands/init.d.ts.map +1 -1
  20. package/dist/src/commands/init.js +31 -0
  21. package/dist/src/commands/init.js.map +1 -1
  22. package/dist/src/config/base-types.d.ts +45 -0
  23. package/dist/src/config/base-types.d.ts.map +1 -0
  24. package/dist/src/config/base-types.js +9 -0
  25. package/dist/src/config/base-types.js.map +1 -0
  26. package/dist/src/config/config-manager.d.ts +35 -0
  27. package/dist/src/config/config-manager.d.ts.map +1 -0
  28. package/dist/src/config/config-manager.js +108 -0
  29. package/dist/src/config/config-manager.js.map +1 -0
  30. package/dist/src/config/index.d.ts +4 -0
  31. package/dist/src/config/index.d.ts.map +1 -0
  32. package/dist/src/config/index.js +3 -0
  33. package/dist/src/config/index.js.map +1 -0
  34. package/dist/src/config/schema.d.ts +1546 -0
  35. package/dist/src/config/schema.d.ts.map +1 -0
  36. package/dist/src/config/schema.js +268 -0
  37. package/dist/src/config/schema.js.map +1 -0
  38. package/dist/src/config.d.ts +4 -1
  39. package/dist/src/config.d.ts.map +1 -1
  40. package/dist/src/config.js +8 -12
  41. package/dist/src/config.js.map +1 -1
  42. package/dist/src/core/agent-state-machine.d.ts +131 -0
  43. package/dist/src/core/agent-state-machine.d.ts.map +1 -0
  44. package/dist/src/core/agent-state-machine.js +302 -0
  45. package/dist/src/core/agent-state-machine.js.map +1 -0
  46. package/dist/src/core/base-manager.d.ts +79 -0
  47. package/dist/src/core/base-manager.d.ts.map +1 -0
  48. package/dist/src/core/base-manager.js +170 -0
  49. package/dist/src/core/base-manager.js.map +1 -0
  50. package/dist/src/core/completion-analyzer.d.ts +15 -0
  51. package/dist/src/core/completion-analyzer.d.ts.map +1 -0
  52. package/dist/src/core/completion-analyzer.js +53 -0
  53. package/dist/src/core/completion-analyzer.js.map +1 -0
  54. package/dist/src/core/execution-loop.d.ts +46 -0
  55. package/dist/src/core/execution-loop.d.ts.map +1 -0
  56. package/dist/src/core/execution-loop.js +1258 -0
  57. package/dist/src/core/execution-loop.js.map +1 -0
  58. package/dist/src/core/index.d.ts +7 -0
  59. package/dist/src/core/index.d.ts.map +1 -1
  60. package/dist/src/core/index.js +9 -0
  61. package/dist/src/core/index.js.map +1 -1
  62. package/dist/src/core/process-handlers.d.ts.map +1 -1
  63. package/dist/src/core/process-handlers.js +14 -0
  64. package/dist/src/core/process-handlers.js.map +1 -1
  65. package/dist/src/core/protocol/types.d.ts +4 -4
  66. package/dist/src/core/response-handler.d.ts +16 -0
  67. package/dist/src/core/response-handler.d.ts.map +1 -0
  68. package/dist/src/core/response-handler.js +234 -0
  69. package/dist/src/core/response-handler.js.map +1 -0
  70. package/dist/src/core/subagent-spawner.d.ts +43 -0
  71. package/dist/src/core/subagent-spawner.d.ts.map +1 -0
  72. package/dist/src/core/subagent-spawner.js +966 -0
  73. package/dist/src/core/subagent-spawner.js.map +1 -0
  74. package/dist/src/core/tool-executor.d.ts +59 -0
  75. package/dist/src/core/tool-executor.d.ts.map +1 -0
  76. package/dist/src/core/tool-executor.js +677 -0
  77. package/dist/src/core/tool-executor.js.map +1 -0
  78. package/dist/src/core/types.d.ts +133 -0
  79. package/dist/src/core/types.d.ts.map +1 -0
  80. package/dist/src/core/types.js +12 -0
  81. package/dist/src/core/types.js.map +1 -0
  82. package/dist/src/defaults.d.ts +8 -3
  83. package/dist/src/defaults.d.ts.map +1 -1
  84. package/dist/src/defaults.js +65 -3
  85. package/dist/src/defaults.js.map +1 -1
  86. package/dist/src/integrations/agent-registry.d.ts +11 -0
  87. package/dist/src/integrations/agent-registry.d.ts.map +1 -1
  88. package/dist/src/integrations/agent-registry.js.map +1 -1
  89. package/dist/src/integrations/auto-compaction.d.ts.map +1 -1
  90. package/dist/src/integrations/auto-compaction.js +8 -3
  91. package/dist/src/integrations/auto-compaction.js.map +1 -1
  92. package/dist/src/integrations/bash-policy.d.ts +33 -0
  93. package/dist/src/integrations/bash-policy.d.ts.map +1 -0
  94. package/dist/src/integrations/bash-policy.js +142 -0
  95. package/dist/src/integrations/bash-policy.js.map +1 -0
  96. package/dist/src/integrations/budget-pool.d.ts +7 -0
  97. package/dist/src/integrations/budget-pool.d.ts.map +1 -1
  98. package/dist/src/integrations/budget-pool.js +43 -0
  99. package/dist/src/integrations/budget-pool.js.map +1 -1
  100. package/dist/src/integrations/codebase-ast.d.ts +52 -0
  101. package/dist/src/integrations/codebase-ast.d.ts.map +1 -0
  102. package/dist/src/integrations/codebase-ast.js +457 -0
  103. package/dist/src/integrations/codebase-ast.js.map +1 -0
  104. package/dist/src/integrations/codebase-context.d.ts +23 -0
  105. package/dist/src/integrations/codebase-context.d.ts.map +1 -1
  106. package/dist/src/integrations/codebase-context.js +230 -17
  107. package/dist/src/integrations/codebase-context.js.map +1 -1
  108. package/dist/src/integrations/compaction.d.ts.map +1 -1
  109. package/dist/src/integrations/compaction.js +14 -6
  110. package/dist/src/integrations/compaction.js.map +1 -1
  111. package/dist/src/integrations/context-engineering.d.ts +8 -0
  112. package/dist/src/integrations/context-engineering.d.ts.map +1 -1
  113. package/dist/src/integrations/context-engineering.js +19 -0
  114. package/dist/src/integrations/context-engineering.js.map +1 -1
  115. package/dist/src/integrations/delegation-protocol.js +2 -2
  116. package/dist/src/integrations/delegation-protocol.js.map +1 -1
  117. package/dist/src/integrations/economics.d.ts +67 -1
  118. package/dist/src/integrations/economics.d.ts.map +1 -1
  119. package/dist/src/integrations/economics.js +328 -33
  120. package/dist/src/integrations/economics.js.map +1 -1
  121. package/dist/src/integrations/edit-validator.d.ts +30 -0
  122. package/dist/src/integrations/edit-validator.d.ts.map +1 -0
  123. package/dist/src/integrations/edit-validator.js +85 -0
  124. package/dist/src/integrations/edit-validator.js.map +1 -0
  125. package/dist/src/integrations/file-cache.d.ts +7 -0
  126. package/dist/src/integrations/file-cache.d.ts.map +1 -1
  127. package/dist/src/integrations/file-cache.js +54 -0
  128. package/dist/src/integrations/file-cache.js.map +1 -1
  129. package/dist/src/integrations/health-check.d.ts.map +1 -1
  130. package/dist/src/integrations/health-check.js +3 -2
  131. package/dist/src/integrations/health-check.js.map +1 -1
  132. package/dist/src/integrations/hierarchical-config.d.ts +3 -0
  133. package/dist/src/integrations/hierarchical-config.d.ts.map +1 -1
  134. package/dist/src/integrations/hierarchical-config.js +20 -0
  135. package/dist/src/integrations/hierarchical-config.js.map +1 -1
  136. package/dist/src/integrations/hooks.d.ts +2 -0
  137. package/dist/src/integrations/hooks.d.ts.map +1 -1
  138. package/dist/src/integrations/hooks.js +99 -15
  139. package/dist/src/integrations/hooks.js.map +1 -1
  140. package/dist/src/integrations/index.d.ts +10 -1
  141. package/dist/src/integrations/index.d.ts.map +1 -1
  142. package/dist/src/integrations/index.js +12 -2
  143. package/dist/src/integrations/index.js.map +1 -1
  144. package/dist/src/integrations/logger.d.ts +104 -0
  145. package/dist/src/integrations/logger.d.ts.map +1 -0
  146. package/dist/src/integrations/logger.js +219 -0
  147. package/dist/src/integrations/logger.js.map +1 -0
  148. package/dist/src/integrations/lsp.d.ts.map +1 -1
  149. package/dist/src/integrations/lsp.js +5 -4
  150. package/dist/src/integrations/lsp.js.map +1 -1
  151. package/dist/src/integrations/mcp-client.d.ts.map +1 -1
  152. package/dist/src/integrations/mcp-client.js +8 -7
  153. package/dist/src/integrations/mcp-client.js.map +1 -1
  154. package/dist/src/integrations/observability.d.ts.map +1 -1
  155. package/dist/src/integrations/observability.js +5 -4
  156. package/dist/src/integrations/observability.js.map +1 -1
  157. package/dist/src/integrations/openrouter-pricing.d.ts.map +1 -1
  158. package/dist/src/integrations/openrouter-pricing.js +4 -3
  159. package/dist/src/integrations/openrouter-pricing.js.map +1 -1
  160. package/dist/src/integrations/persistence.d.ts.map +1 -1
  161. package/dist/src/integrations/persistence.js +5 -4
  162. package/dist/src/integrations/persistence.js.map +1 -1
  163. package/dist/src/integrations/planning.d.ts.map +1 -1
  164. package/dist/src/integrations/planning.js +5 -4
  165. package/dist/src/integrations/planning.js.map +1 -1
  166. package/dist/src/integrations/policy-engine.d.ts +55 -0
  167. package/dist/src/integrations/policy-engine.d.ts.map +1 -0
  168. package/dist/src/integrations/policy-engine.js +247 -0
  169. package/dist/src/integrations/policy-engine.js.map +1 -0
  170. package/dist/src/integrations/retry.d.ts +1 -0
  171. package/dist/src/integrations/retry.d.ts.map +1 -1
  172. package/dist/src/integrations/retry.js.map +1 -1
  173. package/dist/src/integrations/routing.d.ts.map +1 -1
  174. package/dist/src/integrations/routing.js +2 -1
  175. package/dist/src/integrations/routing.js.map +1 -1
  176. package/dist/src/integrations/safety.d.ts +5 -4
  177. package/dist/src/integrations/safety.d.ts.map +1 -1
  178. package/dist/src/integrations/safety.js +45 -20
  179. package/dist/src/integrations/safety.js.map +1 -1
  180. package/dist/src/integrations/sandbox/basic.d.ts +7 -0
  181. package/dist/src/integrations/sandbox/basic.d.ts.map +1 -1
  182. package/dist/src/integrations/sandbox/basic.js +27 -2
  183. package/dist/src/integrations/sandbox/basic.js.map +1 -1
  184. package/dist/src/integrations/sandbox/docker.d.ts.map +1 -1
  185. package/dist/src/integrations/sandbox/docker.js +2 -1
  186. package/dist/src/integrations/sandbox/docker.js.map +1 -1
  187. package/dist/src/integrations/sandbox/index.d.ts +6 -0
  188. package/dist/src/integrations/sandbox/index.d.ts.map +1 -1
  189. package/dist/src/integrations/sandbox/index.js +8 -4
  190. package/dist/src/integrations/sandbox/index.js.map +1 -1
  191. package/dist/src/integrations/sandbox/landlock.d.ts.map +1 -1
  192. package/dist/src/integrations/sandbox/landlock.js +3 -0
  193. package/dist/src/integrations/sandbox/landlock.js.map +1 -1
  194. package/dist/src/integrations/self-improvement.d.ts.map +1 -1
  195. package/dist/src/integrations/self-improvement.js +12 -0
  196. package/dist/src/integrations/self-improvement.js.map +1 -1
  197. package/dist/src/integrations/session-store.d.ts +1 -0
  198. package/dist/src/integrations/session-store.d.ts.map +1 -1
  199. package/dist/src/integrations/session-store.js +1 -0
  200. package/dist/src/integrations/session-store.js.map +1 -1
  201. package/dist/src/integrations/shared-blackboard.d.ts +3 -0
  202. package/dist/src/integrations/shared-blackboard.d.ts.map +1 -1
  203. package/dist/src/integrations/shared-blackboard.js +47 -0
  204. package/dist/src/integrations/shared-blackboard.js.map +1 -1
  205. package/dist/src/integrations/smart-decomposer.d.ts +45 -1
  206. package/dist/src/integrations/smart-decomposer.d.ts.map +1 -1
  207. package/dist/src/integrations/smart-decomposer.js +486 -30
  208. package/dist/src/integrations/smart-decomposer.js.map +1 -1
  209. package/dist/src/integrations/sqlite-store.d.ts +2 -0
  210. package/dist/src/integrations/sqlite-store.d.ts.map +1 -1
  211. package/dist/src/integrations/sqlite-store.js +18 -6
  212. package/dist/src/integrations/sqlite-store.js.map +1 -1
  213. package/dist/src/integrations/swarm/failure-classifier.d.ts +11 -0
  214. package/dist/src/integrations/swarm/failure-classifier.d.ts.map +1 -0
  215. package/dist/src/integrations/swarm/failure-classifier.js +95 -0
  216. package/dist/src/integrations/swarm/failure-classifier.js.map +1 -0
  217. package/dist/src/integrations/swarm/index.d.ts +1 -1
  218. package/dist/src/integrations/swarm/index.d.ts.map +1 -1
  219. package/dist/src/integrations/swarm/index.js.map +1 -1
  220. package/dist/src/integrations/swarm/model-selector.d.ts +15 -0
  221. package/dist/src/integrations/swarm/model-selector.d.ts.map +1 -1
  222. package/dist/src/integrations/swarm/model-selector.js +100 -20
  223. package/dist/src/integrations/swarm/model-selector.js.map +1 -1
  224. package/dist/src/integrations/swarm/swarm-budget.d.ts +4 -0
  225. package/dist/src/integrations/swarm/swarm-budget.d.ts.map +1 -1
  226. package/dist/src/integrations/swarm/swarm-budget.js +6 -0
  227. package/dist/src/integrations/swarm/swarm-budget.js.map +1 -1
  228. package/dist/src/integrations/swarm/swarm-config-loader.d.ts +8 -0
  229. package/dist/src/integrations/swarm/swarm-config-loader.d.ts.map +1 -1
  230. package/dist/src/integrations/swarm/swarm-config-loader.js +249 -7
  231. package/dist/src/integrations/swarm/swarm-config-loader.js.map +1 -1
  232. package/dist/src/integrations/swarm/swarm-event-bridge.d.ts +86 -1
  233. package/dist/src/integrations/swarm/swarm-event-bridge.d.ts.map +1 -1
  234. package/dist/src/integrations/swarm/swarm-event-bridge.js +207 -23
  235. package/dist/src/integrations/swarm/swarm-event-bridge.js.map +1 -1
  236. package/dist/src/integrations/swarm/swarm-events.d.ts +58 -1
  237. package/dist/src/integrations/swarm/swarm-events.d.ts.map +1 -1
  238. package/dist/src/integrations/swarm/swarm-events.js +22 -5
  239. package/dist/src/integrations/swarm/swarm-events.js.map +1 -1
  240. package/dist/src/integrations/swarm/swarm-orchestrator.d.ts +147 -8
  241. package/dist/src/integrations/swarm/swarm-orchestrator.d.ts.map +1 -1
  242. package/dist/src/integrations/swarm/swarm-orchestrator.js +2179 -132
  243. package/dist/src/integrations/swarm/swarm-orchestrator.js.map +1 -1
  244. package/dist/src/integrations/swarm/swarm-quality-gate.d.ts +83 -2
  245. package/dist/src/integrations/swarm/swarm-quality-gate.d.ts.map +1 -1
  246. package/dist/src/integrations/swarm/swarm-quality-gate.js +278 -19
  247. package/dist/src/integrations/swarm/swarm-quality-gate.js.map +1 -1
  248. package/dist/src/integrations/swarm/swarm-state-store.d.ts +4 -1
  249. package/dist/src/integrations/swarm/swarm-state-store.d.ts.map +1 -1
  250. package/dist/src/integrations/swarm/swarm-state-store.js +8 -1
  251. package/dist/src/integrations/swarm/swarm-state-store.js.map +1 -1
  252. package/dist/src/integrations/swarm/task-queue.d.ts +54 -0
  253. package/dist/src/integrations/swarm/task-queue.d.ts.map +1 -1
  254. package/dist/src/integrations/swarm/task-queue.js +310 -12
  255. package/dist/src/integrations/swarm/task-queue.js.map +1 -1
  256. package/dist/src/integrations/swarm/types.d.ts +251 -13
  257. package/dist/src/integrations/swarm/types.d.ts.map +1 -1
  258. package/dist/src/integrations/swarm/types.js +70 -8
  259. package/dist/src/integrations/swarm/types.js.map +1 -1
  260. package/dist/src/integrations/swarm/worker-pool.d.ts +21 -4
  261. package/dist/src/integrations/swarm/worker-pool.d.ts.map +1 -1
  262. package/dist/src/integrations/swarm/worker-pool.js +223 -44
  263. package/dist/src/integrations/swarm/worker-pool.js.map +1 -1
  264. package/dist/src/integrations/task-manager.d.ts +33 -1
  265. package/dist/src/integrations/task-manager.d.ts.map +1 -1
  266. package/dist/src/integrations/task-manager.js +78 -4
  267. package/dist/src/integrations/task-manager.js.map +1 -1
  268. package/dist/src/integrations/tool-recommendation.d.ts +7 -4
  269. package/dist/src/integrations/tool-recommendation.d.ts.map +1 -1
  270. package/dist/src/integrations/tool-recommendation.js +58 -5
  271. package/dist/src/integrations/tool-recommendation.js.map +1 -1
  272. package/dist/src/integrations/work-log.js +4 -4
  273. package/dist/src/integrations/work-log.js.map +1 -1
  274. package/dist/src/main.js +106 -30
  275. package/dist/src/main.js.map +1 -1
  276. package/dist/src/modes/repl.d.ts.map +1 -1
  277. package/dist/src/modes/repl.js +50 -12
  278. package/dist/src/modes/repl.js.map +1 -1
  279. package/dist/src/modes/tui.d.ts.map +1 -1
  280. package/dist/src/modes/tui.js +41 -6
  281. package/dist/src/modes/tui.js.map +1 -1
  282. package/dist/src/modes.d.ts.map +1 -1
  283. package/dist/src/modes.js +4 -27
  284. package/dist/src/modes.js.map +1 -1
  285. package/dist/src/observability/tracer.d.ts.map +1 -1
  286. package/dist/src/observability/tracer.js +2 -1
  287. package/dist/src/observability/tracer.js.map +1 -1
  288. package/dist/src/persistence/schema.d.ts.map +1 -1
  289. package/dist/src/persistence/schema.js +11 -0
  290. package/dist/src/persistence/schema.js.map +1 -1
  291. package/dist/src/providers/adapters/anthropic.d.ts.map +1 -1
  292. package/dist/src/providers/adapters/anthropic.js +3 -2
  293. package/dist/src/providers/adapters/anthropic.js.map +1 -1
  294. package/dist/src/providers/adapters/openai.d.ts.map +1 -1
  295. package/dist/src/providers/adapters/openai.js +3 -2
  296. package/dist/src/providers/adapters/openai.js.map +1 -1
  297. package/dist/src/providers/adapters/openrouter.d.ts.map +1 -1
  298. package/dist/src/providers/adapters/openrouter.js +11 -11
  299. package/dist/src/providers/adapters/openrouter.js.map +1 -1
  300. package/dist/src/providers/circuit-breaker.d.ts +1 -0
  301. package/dist/src/providers/circuit-breaker.d.ts.map +1 -1
  302. package/dist/src/providers/circuit-breaker.js.map +1 -1
  303. package/dist/src/providers/provider.d.ts.map +1 -1
  304. package/dist/src/providers/provider.js +2 -1
  305. package/dist/src/providers/provider.js.map +1 -1
  306. package/dist/src/providers/resilient-provider.d.ts.map +1 -1
  307. package/dist/src/providers/resilient-provider.js +2 -1
  308. package/dist/src/providers/resilient-provider.js.map +1 -1
  309. package/dist/src/session-picker.d.ts.map +1 -1
  310. package/dist/src/session-picker.js +40 -5
  311. package/dist/src/session-picker.js.map +1 -1
  312. package/dist/src/shared/budget-tracker.d.ts +65 -0
  313. package/dist/src/shared/budget-tracker.d.ts.map +1 -0
  314. package/dist/src/shared/budget-tracker.js +128 -0
  315. package/dist/src/shared/budget-tracker.js.map +1 -0
  316. package/dist/src/shared/context-engine.d.ts +64 -0
  317. package/dist/src/shared/context-engine.d.ts.map +1 -0
  318. package/dist/src/shared/context-engine.js +117 -0
  319. package/dist/src/shared/context-engine.js.map +1 -0
  320. package/dist/src/shared/index.d.ts +12 -0
  321. package/dist/src/shared/index.d.ts.map +1 -0
  322. package/dist/src/shared/index.js +12 -0
  323. package/dist/src/shared/index.js.map +1 -0
  324. package/dist/src/shared/persistence.d.ts +57 -0
  325. package/dist/src/shared/persistence.d.ts.map +1 -0
  326. package/dist/src/shared/persistence.js +168 -0
  327. package/dist/src/shared/persistence.js.map +1 -0
  328. package/dist/src/shared/shared-context-state.d.ts +89 -0
  329. package/dist/src/shared/shared-context-state.d.ts.map +1 -0
  330. package/dist/src/shared/shared-context-state.js +175 -0
  331. package/dist/src/shared/shared-context-state.js.map +1 -0
  332. package/dist/src/shared/shared-economics-state.d.ts +61 -0
  333. package/dist/src/shared/shared-economics-state.d.ts.map +1 -0
  334. package/dist/src/shared/shared-economics-state.js +100 -0
  335. package/dist/src/shared/shared-economics-state.js.map +1 -0
  336. package/dist/src/tools/agent.d.ts.map +1 -1
  337. package/dist/src/tools/agent.js +11 -2
  338. package/dist/src/tools/agent.js.map +1 -1
  339. package/dist/src/tools/bash.d.ts +1 -1
  340. package/dist/src/tools/bash.d.ts.map +1 -1
  341. package/dist/src/tools/bash.js +2 -1
  342. package/dist/src/tools/bash.js.map +1 -1
  343. package/dist/src/tools/coercion.d.ts +6 -0
  344. package/dist/src/tools/coercion.d.ts.map +1 -1
  345. package/dist/src/tools/coercion.js +13 -0
  346. package/dist/src/tools/coercion.js.map +1 -1
  347. package/dist/src/tools/file.d.ts +5 -5
  348. package/dist/src/tools/file.js +2 -2
  349. package/dist/src/tools/file.js.map +1 -1
  350. package/dist/src/tools/permission.d.ts.map +1 -1
  351. package/dist/src/tools/permission.js +10 -116
  352. package/dist/src/tools/permission.js.map +1 -1
  353. package/dist/src/tools/types.d.ts +1 -0
  354. package/dist/src/tools/types.d.ts.map +1 -1
  355. package/dist/src/tools/types.js.map +1 -1
  356. package/dist/src/tracing/trace-collector.d.ts +292 -0
  357. package/dist/src/tracing/trace-collector.d.ts.map +1 -1
  358. package/dist/src/tracing/trace-collector.js +249 -5
  359. package/dist/src/tracing/trace-collector.js.map +1 -1
  360. package/dist/src/tracing/types.d.ts +200 -1
  361. package/dist/src/tracing/types.d.ts.map +1 -1
  362. package/dist/src/tracing/types.js.map +1 -1
  363. package/dist/src/tricks/failure-evidence.d.ts.map +1 -1
  364. package/dist/src/tricks/failure-evidence.js +2 -1
  365. package/dist/src/tricks/failure-evidence.js.map +1 -1
  366. package/dist/src/tui/app.d.ts +13 -0
  367. package/dist/src/tui/app.d.ts.map +1 -1
  368. package/dist/src/tui/app.js +162 -19
  369. package/dist/src/tui/app.js.map +1 -1
  370. package/dist/src/tui/components/ErrorBoundary.d.ts.map +1 -1
  371. package/dist/src/tui/components/ErrorBoundary.js +3 -2
  372. package/dist/src/tui/components/ErrorBoundary.js.map +1 -1
  373. package/dist/src/tui/event-display.d.ts.map +1 -1
  374. package/dist/src/tui/event-display.js +36 -62
  375. package/dist/src/tui/event-display.js.map +1 -1
  376. package/dist/src/tui/index.d.ts +4 -0
  377. package/dist/src/tui/index.d.ts.map +1 -1
  378. package/dist/src/tui/index.js +17 -0
  379. package/dist/src/tui/index.js.map +1 -1
  380. package/dist/src/types.d.ts +214 -1
  381. package/dist/src/types.d.ts.map +1 -1
  382. package/package.json +18 -3
@@ -1 +1 @@
1
- {"version":3,"file":"worker-pool.d.ts","sourceRoot":"","sources":["../../../../src/integrations/swarm/worker-pool.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAmB,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAG9G,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAQzD,+DAA+D;AAC/D,MAAM,MAAM,YAAY,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;AAcrF,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,UAAU,CAAe;IACjC,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,OAAO,CAAoB;IAEnC,OAAO,CAAC,aAAa,CAAwC;IAC7D,OAAO,CAAC,oBAAoB,CAA0B;IACtD,OAAO,CAAC,aAAa,CAAK;gBAGxB,MAAM,EAAE,WAAW,EACnB,aAAa,EAAE,aAAa,EAC5B,UAAU,EAAE,YAAY,EACxB,UAAU,EAAE,eAAe;IAS7B;;OAEG;IACH,IAAI,cAAc,IAAI,MAAM,CAE3B;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,eAAe,GAAG,SAAS;IAK1D;;;;;;OAMG;IACG,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,iBAAiB,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAsEnF;;;;;;;OAOG;IACG,UAAU,IAAI,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,WAAW,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAsC9F;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,WAAW,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAWzF;;;OAGG;IACH,YAAY,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,GAAG,eAAe;IAuB5F;;OAEG;IACH,qBAAqB,IAAI,iBAAiB,EAAE;IAY5C;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAYhC;;OAEG;IACH,OAAO,IAAI,IAAI;IAQf;;;;;;;;;OASG;IACH,OAAO,CAAC,uBAAuB;IA8K/B;;;OAGG;IACH,OAAO,CAAC,eAAe;CAwBxB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,WAAW,EACnB,aAAa,EAAE,aAAa,EAC5B,UAAU,EAAE,YAAY,EACxB,UAAU,EAAE,eAAe,GAC1B,eAAe,CAEjB"}
1
+ {"version":3,"file":"worker-pool.d.ts","sourceRoot":"","sources":["../../../../src/integrations/swarm/worker-pool.ts"],"names":[],"mappings":"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"}
@@ -4,12 +4,28 @@
4
4
  * Manages concurrent worker dispatch via existing spawnAgent() infrastructure.
5
5
  * Uses slot-based concurrency control and dynamic agent registration.
6
6
  */
7
- import { SUBTASK_TO_CAPABILITY } from './types.js';
7
+ import { getTaskTypeConfig } from './types.js';
8
8
  import { selectWorkerForCapability } from './model-selector.js';
9
+ import { createWorkerBudgetTracker } from '../../shared/budget-tracker.js';
9
10
  import { buildDelegationPrompt, createMinimalDelegationSpec } from '../delegation-protocol.js';
10
11
  import { getSubagentQualityPrompt } from '../thinking-strategy.js';
11
12
  import { getEnvironmentFacts, formatFactsBlock, formatFactsCompact } from '../environment-facts.js';
12
13
  import { calculateCost, isModelCacheInitialized } from '../openrouter-pricing.js';
14
+ import { resolvePolicyProfile } from '../policy-engine.js';
15
+ // ─── D2: Lightweight Model Detection ───────────────────────────────────────
16
+ /** D2: Detect cheap/weak models that benefit from minimal prompts. */
17
+ export function isLightweightModel(model) {
18
+ const lower = model.toLowerCase();
19
+ return /\b(mini|micro|small|nano|tiny|lite|glm|phi|gemma-2b|qwen.*0\.5|qwen.*1\.5)\b/.test(lower);
20
+ }
21
+ // ─── Worker Timeout Error ──────────────────────────────────────────────────
22
+ /** Typed error for worker timeouts, used to distinguish timeouts from hollow completions. */
23
+ export class WorkerTimeoutError extends Error {
24
+ constructor(message) {
25
+ super(message);
26
+ this.name = 'WorkerTimeoutError';
27
+ }
28
+ }
13
29
  // ─── Worker Pool ───────────────────────────────────────────────────────────
14
30
  export class SwarmWorkerPool {
15
31
  config;
@@ -17,15 +33,20 @@ export class SwarmWorkerPool {
17
33
  spawnAgent;
18
34
  budgetPool;
19
35
  workers;
36
+ healthTracker;
37
+ sharedContextEngine;
20
38
  activeWorkers = new Map();
39
+ completedTrackers = new Map();
21
40
  registeredAgentNames = new Set();
22
41
  dispatchCount = 0;
23
- constructor(config, agentRegistry, spawnAgent, budgetPool) {
42
+ constructor(config, agentRegistry, spawnAgent, budgetPool, healthTracker, sharedContextEngine) {
24
43
  this.config = config;
25
44
  this.agentRegistry = agentRegistry;
26
45
  this.spawnAgent = spawnAgent;
27
46
  this.budgetPool = budgetPool;
28
47
  this.workers = config.workers;
48
+ this.healthTracker = healthTracker;
49
+ this.sharedContextEngine = sharedContextEngine;
29
50
  }
30
51
  /**
31
52
  * Get number of available slots.
@@ -43,8 +64,8 @@ export class SwarmWorkerPool {
43
64
  * Select the best worker spec for a task based on capability matching.
44
65
  */
45
66
  selectWorker(task) {
46
- const capability = SUBTASK_TO_CAPABILITY[task.type] ?? 'code';
47
- return selectWorkerForCapability(this.workers, capability, this.dispatchCount++);
67
+ const capability = getTaskTypeConfig(task.type, this.config).capability ?? 'code';
68
+ return selectWorkerForCapability(this.workers, capability, this.dispatchCount++, this.healthTracker);
48
69
  }
49
70
  /**
50
71
  * Dispatch a task to a worker.
@@ -66,22 +87,89 @@ export class SwarmWorkerPool {
66
87
  }
67
88
  // Create a unique agent name for this worker instance
68
89
  const agentName = `swarm-${worker.name}-${task.id}`;
69
- // Register dynamic agent definition
70
- // V2: toolAccessMode 'all' gives workers all tools (including MCP) by setting tools to undefined.
71
- // This leverages existing behavior in agent-registry.ts:filterToolsForAgent() which returns
72
- // all tools when agent.tools is undefined.
73
- const tools = this.config.toolAccessMode === 'all'
90
+ const requestedProfile = worker.policyProfile;
91
+ const policyResolution = resolvePolicyProfile({
92
+ isSwarmWorker: true,
93
+ requestedProfile,
94
+ swarmConfig: this.config,
95
+ worker,
96
+ taskType: task.type,
97
+ legacyAllowedTools: this.config.toolAccessMode === 'whitelist' ? worker.allowedTools : undefined,
98
+ legacyDeniedTools: worker.deniedTools,
99
+ globalDeniedTools: this.config.globalDeniedTools,
100
+ });
101
+ const { profile } = policyResolution;
102
+ // If profile requires whitelist, expose only allowed tools to this worker.
103
+ const tools = (this.config.toolAccessMode === 'all' && !requestedProfile)
74
104
  ? undefined
75
- : worker.allowedTools;
105
+ : (profile.toolAccessMode === 'whitelist'
106
+ ? profile.allowedTools
107
+ : worker.allowedTools);
108
+ // V7: Get effective per-type config (user overrides > builtin defaults > fallback)
109
+ const typeConfig = getTaskTypeConfig(task.type, this.config);
110
+ // F3: Wider complexity scaling: 0.3 + complexity * 0.14 (range 0.44x-1.7x)
111
+ // Previously 0.5 + complexity * 0.1 (range 0.6x-1.5x) — too narrow for diverse tasks.
112
+ const complexityMultiplier = 0.3 + (task.complexity ?? 5) * 0.14;
113
+ // Escalating retry budget — if a worker ran out on the first attempt,
114
+ // giving it the same budget will produce the same result.
115
+ // 1st retry: 1.3x, 2nd: 1.6x, 3rd+: 2.0x (double budget).
116
+ const retryMultiplier = task.attempts === 0 ? 1.0
117
+ : task.attempts === 1 ? 1.3
118
+ : task.attempts === 2 ? 1.6
119
+ : 2.0;
120
+ // F3: Task-aware budget using tokenBudgetRange from TaskTypeConfig.
121
+ // Foundation tasks get max budget, leaf tasks get proportional to complexity.
122
+ let baseTokenBudget;
123
+ if (typeConfig.tokenBudgetRange) {
124
+ const { min, max } = typeConfig.tokenBudgetRange;
125
+ if (task.isFoundation) {
126
+ baseTokenBudget = max;
127
+ }
128
+ else {
129
+ // Scale linearly: complexity 1 → min, complexity 10 → max
130
+ const ratio = Math.min(1, Math.max(0, ((task.complexity ?? 5) - 1) / 9));
131
+ baseTokenBudget = Math.round(min + ratio * (max - min));
132
+ }
133
+ }
134
+ else {
135
+ baseTokenBudget = typeConfig.tokenBudget ?? worker.maxTokens ?? this.config.maxTokensPerWorker;
136
+ }
137
+ const baseMaxIterations = typeConfig.maxIterations ?? this.config.workerMaxIterations;
138
+ // 2nd+ retries get 50% more iterations — more turns to complete the task
139
+ const iterationMultiplier = task.attempts >= 2 ? 1.5 : 1.0;
140
+ // V7: Per-task-type timeout from TaskTypeConfig, with backward compat to taskTypeTimeouts
141
+ // Computed before agentDef so we can pass it through to spawnAgent's timeout chain
142
+ const baseTimeoutMs = typeConfig.timeout ?? this.config.taskTypeTimeouts?.[task.type] ?? Math.max(this.config.workerTimeout, 240_000);
143
+ // Foundation tasks (3+ dependents) get 2.5x timeout to reduce cascade failure risk
144
+ const adjustedTimeoutMs = task.isFoundation ? Math.round(baseTimeoutMs * 2.5) : baseTimeoutMs;
145
+ // Apply both complexity and retry multipliers — retries get more wall-clock time too
146
+ const timeoutMs = Math.round(adjustedTimeoutMs * complexityMultiplier * retryMultiplier);
76
147
  const agentDef = {
77
148
  name: agentName,
78
149
  description: `Swarm worker (${worker.name}) for: ${task.description.slice(0, 100)}`,
79
150
  systemPrompt: this.buildWorkerSystemPrompt(task, worker),
80
151
  tools,
81
- model: worker.model,
82
- maxTokenBudget: worker.maxTokens ?? this.config.maxTokensPerWorker,
83
- maxIterations: this.config.workerMaxIterations,
152
+ // Pin the resolved profile so spawnAgent does not re-infer a different one.
153
+ policyProfile: policyResolution.profileName,
154
+ // Respect failover-assigned model on retries.
155
+ model: task.assignedModel ?? worker.model,
156
+ taskType: task.type,
157
+ maxTokenBudget: Math.round(baseTokenBudget * complexityMultiplier * retryMultiplier),
158
+ maxIterations: Math.round(baseMaxIterations * complexityMultiplier * retryMultiplier * iterationMultiplier),
159
+ timeout: timeoutMs, // Pass calculated timeout through to spawnAgent (highest priority in timeout chain)
160
+ idleTimeout: typeConfig.idleTimeout, // V7: Configurable idle timeout (for long-running tasks)
84
161
  capabilities: worker.capabilities,
162
+ // W3: Swarm workers get tighter economics thresholds by default
163
+ // These can be overridden via swarmConfig.economicsTuning
164
+ economicsTuning: {
165
+ doomLoopThreshold: 2,
166
+ doomLoopFuzzyThreshold: 3,
167
+ explorationFileThreshold: 5,
168
+ explorationIterThreshold: 3,
169
+ zeroProgressThreshold: 3,
170
+ progressCheckpoint: 3,
171
+ ...(this.config.economicsTuning ?? {}),
172
+ },
85
173
  };
86
174
  this.agentRegistry.registerAgent(agentDef);
87
175
  this.registeredAgentNames.add(agentName);
@@ -89,19 +177,29 @@ export class SwarmWorkerPool {
89
177
  const taskPrompt = this.buildTaskPrompt(task);
90
178
  // Create the promise that tracks execution
91
179
  const startedAt = Date.now();
92
- // V6: Per-task-type timeout research/analysis tasks get more time by default
93
- const typeTimeout = this.config.taskTypeTimeouts?.[task.type];
94
- const timeoutMs = typeTimeout ?? this.config.workerTimeout;
95
- // H3: Wrap spawn with timeout enforcement
180
+ // V8: Worker pool timeout is a backstop AFTER the agent's graceful timeout.
181
+ // The agent's graceful timeout (in spawnAgent) provides a wrapup window before hard kill.
182
+ // This backstop fires 60s later to catch cases where graceful timeout fails.
183
+ const backstopTimeoutMs = timeoutMs + 60_000;
96
184
  const spawnPromise = this.spawnAgent(agentName, taskPrompt);
97
185
  let timeoutHandle;
98
186
  const timeoutPromise = new Promise((_, reject) => {
99
- timeoutHandle = setTimeout(() => reject(new Error(`Worker timeout after ${timeoutMs}ms`)), timeoutMs);
187
+ timeoutHandle = setTimeout(() => reject(new WorkerTimeoutError(`Worker timeout after ${backstopTimeoutMs}ms (base: ${timeoutMs}ms + 60s backstop)`)), backstopTimeoutMs);
100
188
  });
101
189
  const promise = Promise.race([spawnPromise, timeoutPromise]).then(result => {
102
190
  clearTimeout(timeoutHandle);
103
191
  return { taskId: task.id, result, startedAt };
104
192
  });
193
+ // Create per-worker budget tracker (orchestrator-side visibility)
194
+ const budgetTracker = createWorkerBudgetTracker({
195
+ workerId: task.id,
196
+ maxTokens: agentDef.maxTokenBudget,
197
+ maxIterations: agentDef.maxIterations,
198
+ doomLoopThreshold: agentDef.economicsTuning?.doomLoopThreshold ?? 3,
199
+ });
200
+ if (process.env.DEBUG) {
201
+ console.log(`[WorkerBudgetTracker] Created for ${task.id}: maxTokens=${agentDef.maxTokenBudget}, maxIter=${agentDef.maxIterations}`);
202
+ }
105
203
  // Track active worker
106
204
  this.activeWorkers.set(task.id, {
107
205
  taskId: task.id,
@@ -109,6 +207,7 @@ export class SwarmWorkerPool {
109
207
  workerName: worker.name,
110
208
  model: worker.model,
111
209
  startedAt,
210
+ budgetTracker,
112
211
  promise,
113
212
  });
114
213
  }
@@ -135,16 +234,23 @@ export class SwarmWorkerPool {
135
234
  duration: Date.now() - worker.startedAt,
136
235
  // V7: Use -1 for timeout errors so the orchestrator can distinguish
137
236
  // timeouts (worker was working but ran out of time) from hollow completions
138
- // (worker produced no tool calls at all)
139
- toolCalls: error.message.includes('timeout') ? -1 : 0,
237
+ // (worker produced no tool calls at all).
238
+ // Uses instanceof check instead of fragile string matching.
239
+ toolCalls: (error instanceof WorkerTimeoutError) ? -1 : 0,
140
240
  },
141
241
  },
142
242
  startedAt: worker.startedAt,
143
243
  })));
144
244
  const completed = await Promise.race(wrappedPromises);
145
- // Clean up the completed worker
245
+ // Clean up the completed worker and populate budget tracker
146
246
  const worker = this.activeWorkers.get(completed.taskId);
147
247
  if (worker) {
248
+ // Populate budget tracker with actual usage from SpawnResult
249
+ const tokens = completed.result.metrics.tokens;
250
+ worker.budgetTracker.recordLLMUsage(Math.floor(tokens * 0.6), // estimate input
251
+ Math.floor(tokens * 0.4));
252
+ // Store tracker for utilization lookup before removing active worker
253
+ this.completedTrackers.set(completed.taskId, worker.budgetTracker);
148
254
  this.activeWorkers.delete(completed.taskId);
149
255
  const agentName = `swarm-${worker.workerName}-${completed.taskId}`;
150
256
  this.agentRegistry.unregisterAgent(agentName);
@@ -175,6 +281,12 @@ export class SwarmWorkerPool {
175
281
  const estimatedCost = isModelCacheInitialized()
176
282
  ? calculateCost(model, Math.floor(tokens * 0.6), Math.floor(tokens * 0.4))
177
283
  : tokens * 0.0000005;
284
+ // Look up per-worker budget utilization from completed tracker
285
+ const tracker = this.completedTrackers.get(task.id);
286
+ const budgetUtilization = tracker ? tracker.getUtilization() : undefined;
287
+ if (process.env.DEBUG && budgetUtilization) {
288
+ console.log(`[WorkerBudgetTracker] ${task.id}: token=${budgetUtilization.tokenPercent}%, iter=${budgetUtilization.iterationPercent}%`);
289
+ }
178
290
  return {
179
291
  success: spawnResult.success,
180
292
  output: spawnResult.output,
@@ -183,12 +295,18 @@ export class SwarmWorkerPool {
183
295
  costUsed: estimatedCost,
184
296
  durationMs,
185
297
  model: task.assignedModel ?? 'unknown',
186
- filesModified: spawnResult.structured?.actionsTaken
187
- ?.filter((a) => a.includes('file') || a.includes('wrote') || a.includes('created'))
188
- ?? [],
298
+ filesModified: spawnResult.filesModified ?? [],
189
299
  findings: spawnResult.structured?.findings,
300
+ toolCalls: spawnResult.metrics.toolCalls,
301
+ budgetUtilization,
190
302
  };
191
303
  }
304
+ /**
305
+ * Get budget utilization for a completed worker.
306
+ */
307
+ getWorkerUtilization(taskId) {
308
+ return this.completedTrackers.get(taskId)?.getUtilization();
309
+ }
192
310
  /**
193
311
  * Get status of all active workers (for TUI).
194
312
  */
@@ -227,6 +345,7 @@ export class SwarmWorkerPool {
227
345
  }
228
346
  this.registeredAgentNames.clear();
229
347
  this.activeWorkers.clear();
348
+ this.completedTrackers.clear();
230
349
  }
231
350
  /**
232
351
  * Build a system prompt for a worker.
@@ -235,16 +354,36 @@ export class SwarmWorkerPool {
235
354
  *
236
355
  * Prompt tiers based on attempt number:
237
356
  * attempt 0: 'full' — all additions (delegation, env facts block, quality self-assessment)
238
- * attempt 1: 'reduced' — compact facts, skip delegation for research/analysis tasks
239
- * attempt 2+: 'minimal' — only persona + task description + type rules + retry context
357
+ * attempt 1+: 'reduced' — compact facts, skip delegation for research/analysis tasks
240
358
  */
241
359
  buildWorkerSystemPrompt(task, worker) {
242
360
  const stuckThreshold = this.config.workerStuckThreshold ?? 3;
243
361
  const parts = [];
244
- // Determine prompt tier based on attempt number
245
- const promptTier = task.attempts === 0 ? 'full'
246
- : task.attempts === 1 ? 'reduced'
247
- : 'minimal';
362
+ // D2: Determine prompt tier explicit override > retry detection > model detection > full
363
+ const promptTier = worker.promptTier ??
364
+ (task.attempts > 0 ? 'reduced' :
365
+ isLightweightModel(task.assignedModel ?? worker.model) ? 'reduced' : 'full');
366
+ // D2: Minimal prompt tier for cheap/weak models — drastically reduced prompt
367
+ if (promptTier === 'minimal') {
368
+ parts.push(`You are a ${worker.name} worker. Your task: ${task.description}`, '', '═══ RULES ═══', '', 'CRITICAL:', '- Use tools to do your work. A response with zero tool calls is failure.', '- Use read_file/grep to read code. Use write_file/edit_file to modify code.', '- Do NOT use bash for file reading (no cat/head/tail). Use read_file instead.', `- You have ${this.config.workerMaxIterations} max iterations. Work fast.`, '', `AVAILABLE TOOLS: ${(worker.allowedTools ?? ['write_file', 'edit_file', 'read_file', 'glob', 'grep', 'bash']).join(', ')}`);
369
+ if (task.targetFiles && task.targetFiles.length > 0) {
370
+ parts.push('', `TARGET FILES: ${task.targetFiles.join(', ')}`);
371
+ }
372
+ if (task.readFiles && task.readFiles.length > 0) {
373
+ parts.push('', `REFERENCE FILES: ${task.readFiles.join(', ')}`);
374
+ }
375
+ if (task.attempts > 0 && task.retryContext) {
376
+ parts.push('', `RETRY #${task.attempts}: Previous score ${task.retryContext.previousScore}/5. Fix: ${task.retryContext.previousFeedback}`);
377
+ // F12: Hollow completion — prescribe exact first action
378
+ if (task.retryContext.previousScore <= 1) {
379
+ const firstTarget = task.targetFiles?.[0] ?? task.readFiles?.[0];
380
+ parts.push('', '⚠ YOUR PREVIOUS ATTEMPT HAD ZERO TOOL CALLS — THIS IS AN AUTOMATIC FAILURE.', firstTarget
381
+ ? `YOUR VERY FIRST ACTION: Call ${task.targetFiles?.[0] ? 'write_file' : 'read_file'} on "${firstTarget}".`
382
+ : 'YOUR VERY FIRST ACTION: Call read_file or write_file. Text-only responses = failure.');
383
+ }
384
+ }
385
+ return parts.join('\n');
386
+ }
248
387
  // V3: Inject worker persona if configured
249
388
  if (worker.persona) {
250
389
  parts.push(worker.persona, '');
@@ -255,39 +394,65 @@ export class SwarmWorkerPool {
255
394
  if (promptTier === 'full') {
256
395
  parts.push(formatFactsBlock(getEnvironmentFacts(customFacts)), '');
257
396
  }
258
- else if (promptTier === 'reduced') {
397
+ else {
259
398
  parts.push(formatFactsCompact(getEnvironmentFacts(customFacts)), '');
260
399
  }
261
- // 'minimal' tier: skip environment facts entirely
262
- // V3: Inject philosophy if configured (skip on minimal tier)
263
- if (this.config.philosophy && promptTier !== 'minimal') {
400
+ // V3: Inject philosophy if configured
401
+ if (this.config.philosophy) {
264
402
  parts.push('═══ PHILOSOPHY ═══', '', this.config.philosophy, '');
265
403
  }
266
- // Task-type-specific rules: research/analysis/design get research rules,
267
- // merge gets synthesis rules, document gets doc rules, everything else gets code rules
404
+ // V7: Use promptTemplate from TaskTypeConfig for dispatching prompt rules.
405
+ // Built-in templates: 'research', 'synthesis', 'document', 'code' (default).
406
+ const typeConfig = getTaskTypeConfig(task.type, this.config);
407
+ const promptTemplate = typeConfig.promptTemplate ?? 'code';
268
408
  const taskType = task.type;
269
- if (taskType === 'research' || taskType === 'analysis' || taskType === 'design') {
409
+ if (promptTemplate === 'research') {
270
410
  parts.push('═══ RESEARCH TASK RULES ═══', '', 'RESEARCH RULES (violations waste budget):', '- Use web_search, read_file, glob, grep to gather information.', '- You are NOT expected to write or edit code files.', `- After ${stuckThreshold} iterations without new findings, write up what you have.`, '- Do NOT run ls/find/tree to "understand the project". You have context below.', '- If you get the same result from a tool twice, try a COMPLETELY different approach.', '', 'EFFICIENCY RULES:', '- Focus ONLY on your assigned research topic. Do not explore unrelated areas.', `- You have ${this.config.workerMaxIterations} max iterations and a limited token budget.`, '- Prefer grep and targeted reads over reading entire files.', '- Synthesize findings as you go — do not wait until the end.', '', 'OUTPUT FORMAT — When finished, summarize:', '1. Key findings and insights', '2. Sources consulted (files read, searches performed)', '3. Any gaps or areas needing further investigation');
271
411
  }
272
- else if (taskType === 'merge') {
412
+ else if (promptTemplate === 'synthesis') {
273
413
  parts.push('═══ SYNTHESIS TASK RULES ═══', '', 'SYNTHESIS RULES (violations waste budget):', '- Read outputs from dependency tasks provided in context below.', '- Combine, synthesize, and summarize the material into a coherent result.', '- Do NOT re-research — work with the material given to you.', '- Do NOT run web_search or explore the codebase independently.', '- If you get the same result from a tool twice, try a COMPLETELY different approach.', '', 'EFFICIENCY RULES:', '- Focus ONLY on synthesizing the provided inputs.', `- You have ${this.config.workerMaxIterations} max iterations and a limited token budget.`, '- Read dependency outputs first, then produce your synthesis.', '', 'OUTPUT FORMAT — When finished, provide:', '1. Synthesized result combining all inputs', '2. Key themes or patterns across inputs', '3. Any conflicts or gaps between inputs');
274
414
  }
275
- else if (taskType === 'document') {
276
- parts.push('═══ DOCUMENTATION TASK RULES ═══', '', 'DOCUMENTATION RULES (violations waste budget):', `- Never run ls, find, pwd, or tree more than once each.`, '- If you get the same result from a tool twice, try a COMPLETELY different approach.', `- After ${stuckThreshold} iterations without writing a file, START WRITING IMMEDIATELY.`, '- Do NOT run ls/find/tree to "understand the project". You have context below.', '', 'EFFICIENCY RULES:', '- Focus ONLY on your assigned documentation task.', `- You have ${this.config.workerMaxIterations} max iterations and a limited token budget.`, '- Read files for context, then write documentation.', '', 'OUTPUT FORMAT — When finished, summarize:', '1. Documentation files created/modified', '2. Key sections documented', '3. Any areas needing further documentation');
415
+ else if (promptTemplate === 'document') {
416
+ parts.push('═══ DOCUMENTATION TASK RULES ═══', '', 'DOCUMENTATION RULES (violations waste budget):', `- Never run ls, find, pwd, or tree more than once each.`, '- If you get the same result from a tool twice, try a COMPLETELY different approach.', `- After ${stuckThreshold} iterations without writing a file, START WRITING IMMEDIATELY.`, '- Do NOT run ls/find/tree to "understand the project". You have context below.', '', 'EFFICIENCY RULES:', '- Focus ONLY on your assigned documentation task.', `- You have ${this.config.workerMaxIterations} max iterations and a limited token budget.`, '- Read files for context, then write documentation.', '', 'TOOL USAGE:', '- To CREATE a new file: use write_file (NOT bash with cat/echo/heredoc)', '- To MODIFY an existing file: use edit_file (NOT bash with sed/awk)', '- To READ a file: use read_file (NOT bash with cat/head/tail)', '- Use bash ONLY for: running commands (npm, node, git, tsc, tests, etc.)', '- NEVER send file contents as a bash command argument', '', 'OUTPUT FORMAT — When finished, summarize:', '1. Documentation files created/modified', '2. Key sections documented', '3. Any areas needing further documentation');
277
417
  }
278
418
  else {
279
419
  // Default: code/test/refactor/integrate/deploy — original behavior preserved exactly
280
- parts.push('═══ CRITICAL RULES ═══', '', 'ANTI-LOOP RULES (violations waste budget):', `- Never run ls, find, pwd, or tree more than once each.`, '- If you get the same result from a tool twice, try a COMPLETELY different approach.', `- After ${stuckThreshold} iterations without writing/editing a file, START CODING IMMEDIATELY.`, '- Do NOT run ls/find/tree to "understand the project". You have context below.', '', 'EFFICIENCY RULES:', '- Focus ONLY on your assigned task. Do not explore unrelated code.', `- You have ${this.config.workerMaxIterations} max iterations and a limited token budget.`, '- Read files only when you need specific content. Prefer grep over reading entire files.', '- Make changes incrementally — edit one file, verify, move on.', '', 'OUTPUT FORMAT — When finished, summarize:', '1. What you accomplished (files created/modified)', '2. Key decisions made', '3. Any issues encountered or unresolved items');
420
+ parts.push('═══ CRITICAL RULES ═══', '', 'ANTI-LOOP RULES (violations waste budget):', `- Never run ls, find, pwd, or tree more than once each.`, '- If you get the same result from a tool twice, try a COMPLETELY different approach.', `- After ${stuckThreshold} iterations without writing/editing a file, START CODING IMMEDIATELY.`, '- Do NOT run ls/find/tree to "understand the project". You have context below.', '', 'EFFICIENCY RULES:', '- Focus ONLY on your assigned task. Do not explore unrelated code.', `- You have ${this.config.workerMaxIterations} max iterations and a limited token budget.`, '- Read files only when you need specific content. Prefer grep over reading entire files.', '- Make changes incrementally — edit one file, verify, move on.', '', 'TOOL USAGE:', '- To CREATE a new file: use write_file (NOT bash with cat/echo/heredoc)', '- To MODIFY an existing file: use edit_file (NOT bash with sed/awk)', '- To READ a file: use read_file (NOT bash with cat/head/tail)', '- To SEARCH for files: use glob (NOT bash with find/ls)', '- To SEARCH file contents: use grep (NOT bash with grep/rg)', '- Use bash ONLY for: running commands (npm, node, git, tsc, tests, etc.)', '- NEVER send file contents as a bash command argument', '', 'OUTPUT FORMAT — When finished, summarize:', '1. What you accomplished (files created/modified)', '2. Key decisions made', '3. Any issues encountered or unresolved items');
421
+ }
422
+ // Inject available tool names so the model knows exactly what it can call
423
+ if (worker.allowedTools && worker.allowedTools.length > 0) {
424
+ parts.push('', `AVAILABLE TOOLS: ${worker.allowedTools.join(', ')}`);
425
+ }
426
+ else {
427
+ parts.push('', 'You have access to ALL tools including: write_file, edit_file, read_file, glob, grep, bash, web_search');
428
+ }
429
+ // V9: Action-orientation reinforcement for task types that MUST produce file changes
430
+ if (taskType === 'implement' || taskType === 'test' || taskType === 'refactor') {
431
+ parts.push('', '═══ ACTION ORIENTATION ═══', '', 'You are judged by actual file changes and tool usage, not by the quality of your written analysis.', 'If your task type is implement, test, or refactor, you MUST make file changes.', 'A response with zero tool calls is an automatic failure.');
281
432
  }
282
433
  // V5: Retry context — inject previous feedback so worker doesn't repeat mistakes
283
434
  if (task.attempts > 0 && task.retryContext) {
435
+ // F22: Include swarm progress so retrying workers know what's been accomplished
436
+ if (task.retryContext.swarmProgress) {
437
+ parts.push('', '═══ SWARM PROGRESS ═══', '', task.retryContext.swarmProgress);
438
+ }
284
439
  parts.push('', '═══ RETRY CONTEXT (THIS IS YOUR 2ND+ ATTEMPT) ═══', '');
285
440
  if (task.retryContext.previousScore === 0) {
286
- parts.push(`Your previous attempt FAILED with error:`, task.retryContext.previousFeedback, '', 'Diagnose what went wrong and try a completely different approach.');
441
+ parts.push(`Your previous attempt FAILED with error:`, task.retryContext.previousFeedback, '', 'Diagnose what went wrong and try a completely different approach.', 'REMINDER: Use write_file to create files and edit_file to modify them. Do NOT use bash for file operations.');
287
442
  }
288
443
  else {
289
444
  parts.push(`Previous attempt scored ${task.retryContext.previousScore}/5.`, `Judge feedback: ${task.retryContext.previousFeedback}`, '', 'You MUST address the feedback above. Try a DIFFERENT approach from your previous attempt.', 'Focus specifically on what the judge flagged as wrong.');
290
445
  }
446
+ // F12: Hollow completion — prescribe exact first action
447
+ if (task.retryContext.previousScore <= 1) {
448
+ const firstTarget = task.targetFiles?.[0] ?? task.readFiles?.[0];
449
+ parts.push('', '⚠ YOUR PREVIOUS ATTEMPT HAD ZERO TOOL CALLS — THIS IS AN AUTOMATIC FAILURE.', firstTarget
450
+ ? `YOUR VERY FIRST ACTION: Call ${task.targetFiles?.[0] ? 'write_file' : 'read_file'} on "${firstTarget}".`
451
+ : 'YOUR VERY FIRST ACTION: Call read_file or write_file. Text-only responses = failure.');
452
+ }
453
+ }
454
+ if (task.retryContext?.previousFiles?.length) {
455
+ parts.push('', '═══ FILES FROM PREVIOUS ATTEMPT ═══', '', 'These files ALREADY EXIST on disk from the previous attempt:', ...task.retryContext.previousFiles.map(f => ` - ${f}`), '', 'DO NOT recreate these with write_file. Use edit_file to fix issues, or read_file to check state.');
291
456
  }
292
457
  if (task.targetFiles && task.targetFiles.length > 0) {
293
458
  parts.push('', `TARGET FILES (you should modify these):`, ...task.targetFiles.map(f => ` - ${f}`));
@@ -305,6 +470,20 @@ export class SwarmWorkerPool {
305
470
  if (promptTier === 'full') {
306
471
  parts.push('', getSubagentQualityPrompt());
307
472
  }
473
+ // Phase 3.1: Cross-worker failure learning via SharedContextEngine
474
+ if (this.sharedContextEngine) {
475
+ const failureGuidance = this.sharedContextEngine.getFailureGuidance();
476
+ if (failureGuidance) {
477
+ parts.push('', '═══ CROSS-WORKER FAILURE LEARNING ═══', '', failureGuidance);
478
+ }
479
+ // Goal recitation only on full prompts (not reduced/minimal)
480
+ if (promptTier === 'full') {
481
+ const workerTask = { id: task.id, description: task.description, goal: task.description, dependencies: task.dependencies };
482
+ const goalRecitation = this.sharedContextEngine.getGoalRecitation(workerTask);
483
+ if (goalRecitation)
484
+ parts.push('', goalRecitation);
485
+ }
486
+ }
308
487
  return parts.join('\n');
309
488
  }
310
489
  /**
@@ -335,7 +514,7 @@ export class SwarmWorkerPool {
335
514
  /**
336
515
  * Factory function.
337
516
  */
338
- export function createSwarmWorkerPool(config, agentRegistry, spawnAgent, budgetPool) {
339
- return new SwarmWorkerPool(config, agentRegistry, spawnAgent, budgetPool);
517
+ export function createSwarmWorkerPool(config, agentRegistry, spawnAgent, budgetPool, healthTracker, sharedContextEngine) {
518
+ return new SwarmWorkerPool(config, agentRegistry, spawnAgent, budgetPool, healthTracker, sharedContextEngine);
340
519
  }
341
520
  //# sourceMappingURL=worker-pool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"worker-pool.js","sourceRoot":"","sources":["../../../../src/integrations/swarm/worker-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker-pool.js","sourceRoot":"","sources":["../../../../src/integrations/swarm/worker-pool.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,8 @@ export interface Task {
27
27
  status: TaskStatus;
28
28
  /** Agent ID that owns this task */
29
29
  owner?: string;
30
+ /** Last heartbeat for the in-progress lease */
31
+ leaseHeartbeatAt?: number;
30
32
  /** Task IDs that must complete before this task can start */
31
33
  blockedBy: string[];
32
34
  /** Task IDs that are waiting on this task to complete */
@@ -61,9 +63,29 @@ export interface TaskSummary {
61
63
  owner?: string;
62
64
  blockedBy: string[];
63
65
  }
66
+ export interface ReconcileStaleInProgressOptions {
67
+ /** Mark in-progress tasks stale after this many ms (default: 5 minutes) */
68
+ staleAfterMs?: number;
69
+ /** Override clock for deterministic tests */
70
+ now?: number;
71
+ /** Optional reason stored in task metadata for observability */
72
+ reason?: string;
73
+ /** Owners currently active in-process and therefore exempt from recovery */
74
+ activeOwners?: string[];
75
+ }
76
+ export interface ReconcileResult {
77
+ reconciled: number;
78
+ taskIds: string[];
79
+ }
64
80
  export declare class TaskManager extends EventEmitter {
65
81
  private tasks;
66
82
  private nextId;
83
+ private static readonly DEFAULT_STALE_AFTER_MS;
84
+ /**
85
+ * Normalize ownership invariants:
86
+ * only in_progress tasks may retain owner/lease metadata.
87
+ */
88
+ private normalizeTaskOwnershipInvariants;
67
89
  constructor();
68
90
  /**
69
91
  * Create a new task.
@@ -95,13 +117,23 @@ export declare class TaskManager extends EventEmitter {
95
117
  getOpenBlockers(taskId: string): string[];
96
118
  /**
97
119
  * Get tasks that are available to work on.
98
- * Available = pending, no owner, not blocked.
120
+ * Available = pending, not blocked.
121
+ * Ownership is only authoritative while in_progress.
99
122
  */
100
123
  getAvailableTasks(): Task[];
101
124
  /**
102
125
  * Claim a task for an agent.
103
126
  */
104
127
  claim(taskId: string, owner: string): Task | undefined;
128
+ /**
129
+ * Refresh lease heartbeat for an in-progress task.
130
+ */
131
+ heartbeat(taskIdRaw: string, owner?: string): Task | undefined;
132
+ /**
133
+ * Requeue stale in-progress tasks back to pending.
134
+ * Used to recover orphaned task ownership across interrupted runs.
135
+ */
136
+ reconcileStaleInProgress(options?: ReconcileStaleInProgressOptions): ReconcileResult;
105
137
  /**
106
138
  * Complete a task.
107
139
  */
@@ -1 +1 @@
1
- {"version":3,"file":"task-manager.d.ts","sourceRoot":"","sources":["../../../src/integrations/task-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-manager.d.ts","sourceRoot":"","sources":["../../../src/integrations/task-manager.ts"],"names":[],"mappings":"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"}