@telora/daemon 0.15.2 → 0.15.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 (401) hide show
  1. package/README.md +11 -11
  2. package/build-info.json +2 -2
  3. package/dist/assembly-engine.d.ts +1 -1
  4. package/dist/assembly-engine.d.ts.map +1 -1
  5. package/dist/assembly-resolvers.js +41 -41
  6. package/dist/assembly-resolvers.js.map +1 -1
  7. package/dist/branch-status.d.ts +4 -4
  8. package/dist/branch-status.d.ts.map +1 -1
  9. package/dist/branch-status.js +23 -23
  10. package/dist/branch-status.js.map +1 -1
  11. package/dist/cli/connect.js +1 -1
  12. package/dist/cli/connect.js.map +1 -1
  13. package/dist/completion-detector.d.ts +1 -1
  14. package/dist/completion-detector.js +1 -1
  15. package/dist/completion-handler.d.ts +1 -1
  16. package/dist/completion-handler.js +4 -4
  17. package/dist/completion-handler.js.map +1 -1
  18. package/dist/condition-evaluators.js +4 -4
  19. package/dist/condition-evaluators.js.map +1 -1
  20. package/dist/control-state.d.ts +6 -6
  21. package/dist/control-state.d.ts.map +1 -1
  22. package/dist/control-state.js +43 -43
  23. package/dist/control-state.js.map +1 -1
  24. package/dist/crash-recovery-scan.d.ts +1 -1
  25. package/dist/crash-recovery-scan.js +20 -20
  26. package/dist/crash-recovery-scan.js.map +1 -1
  27. package/dist/crash-recovery-types.d.ts +3 -3
  28. package/dist/crash-recovery-types.d.ts.map +1 -1
  29. package/dist/crash-recovery-types.js +2 -2
  30. package/dist/crash-recovery-types.js.map +1 -1
  31. package/dist/crash-recovery.d.ts +3 -3
  32. package/dist/crash-recovery.d.ts.map +1 -1
  33. package/dist/crash-recovery.js +21 -21
  34. package/dist/crash-recovery.js.map +1 -1
  35. package/dist/daemon-process.d.ts +1 -1
  36. package/dist/daemon-process.d.ts.map +1 -1
  37. package/dist/dag-validator.d.ts +6 -6
  38. package/dist/dag-validator.d.ts.map +1 -1
  39. package/dist/dag-validator.js +2 -2
  40. package/dist/dag-validator.js.map +1 -1
  41. package/dist/delivery-guards.d.ts +1 -1
  42. package/dist/delivery-guards.js +1 -1
  43. package/dist/delivery-lifecycle.d.ts +5 -5
  44. package/dist/delivery-lifecycle.d.ts.map +1 -1
  45. package/dist/delivery-lifecycle.js +12 -12
  46. package/dist/delivery-lifecycle.js.map +1 -1
  47. package/dist/delivery-merge.js +1 -1
  48. package/dist/delivery-merge.js.map +1 -1
  49. package/dist/dependency-resolver.d.ts +7 -7
  50. package/dist/dependency-resolver.d.ts.map +1 -1
  51. package/dist/dependency-resolver.js.map +1 -1
  52. package/dist/directive-executor.d.ts +32 -17
  53. package/dist/directive-executor.d.ts.map +1 -1
  54. package/dist/directive-executor.js +119 -78
  55. package/dist/directive-executor.js.map +1 -1
  56. package/dist/evaluation-context.d.ts +2 -2
  57. package/dist/evaluation-context.d.ts.map +1 -1
  58. package/dist/evaluation-context.js +4 -4
  59. package/dist/evaluation-context.js.map +1 -1
  60. package/dist/focus-completion-event.d.ts +97 -0
  61. package/dist/focus-completion-event.d.ts.map +1 -0
  62. package/dist/focus-completion-event.js +257 -0
  63. package/dist/focus-completion-event.js.map +1 -0
  64. package/dist/{strategy-completion.d.ts → focus-completion.d.ts} +11 -11
  65. package/dist/focus-completion.d.ts.map +1 -0
  66. package/dist/{strategy-completion.js → focus-completion.js} +68 -68
  67. package/dist/focus-completion.js.map +1 -0
  68. package/dist/{strategy-engine.d.ts → focus-engine.d.ts} +5 -5
  69. package/dist/focus-engine.d.ts.map +1 -0
  70. package/dist/{strategy-engine.js → focus-engine.js} +35 -35
  71. package/dist/focus-engine.js.map +1 -0
  72. package/dist/focus-executor.d.ts +55 -0
  73. package/dist/focus-executor.d.ts.map +1 -0
  74. package/dist/{strategy-executor.js → focus-executor.js} +167 -120
  75. package/dist/focus-executor.js.map +1 -0
  76. package/dist/focus-lifecycle.d.ts +61 -0
  77. package/dist/focus-lifecycle.d.ts.map +1 -0
  78. package/dist/{strategy-lifecycle.js → focus-lifecycle.js} +164 -164
  79. package/dist/focus-lifecycle.js.map +1 -0
  80. package/dist/{strategy-merge.d.ts → focus-merge.d.ts} +10 -10
  81. package/dist/focus-merge.d.ts.map +1 -0
  82. package/dist/{strategy-merge.js → focus-merge.js} +51 -51
  83. package/dist/focus-merge.js.map +1 -0
  84. package/dist/focus-phase.d.ts +22 -0
  85. package/dist/focus-phase.d.ts.map +1 -0
  86. package/dist/focus-phase.js +54 -0
  87. package/dist/focus-phase.js.map +1 -0
  88. package/dist/focus-prompt-builder.d.ts +35 -0
  89. package/dist/focus-prompt-builder.d.ts.map +1 -0
  90. package/dist/{strategy-prompt-builder.js → focus-prompt-builder.js} +55 -4
  91. package/dist/focus-prompt-builder.js.map +1 -0
  92. package/dist/focus-provisioning.d.ts +16 -0
  93. package/dist/focus-provisioning.d.ts.map +1 -0
  94. package/dist/focus-provisioning.js +119 -0
  95. package/dist/focus-provisioning.js.map +1 -0
  96. package/dist/{strategy-spawn-helpers.d.ts → focus-spawn-helpers.d.ts} +15 -15
  97. package/dist/focus-spawn-helpers.d.ts.map +1 -0
  98. package/dist/{strategy-spawn-helpers.js → focus-spawn-helpers.js} +28 -28
  99. package/dist/focus-spawn-helpers.js.map +1 -0
  100. package/dist/{strategy-team-lifecycle.d.ts → focus-team-lifecycle.d.ts} +13 -13
  101. package/dist/focus-team-lifecycle.d.ts.map +1 -0
  102. package/dist/{strategy-team-lifecycle.js → focus-team-lifecycle.js} +57 -57
  103. package/dist/focus-team-lifecycle.js.map +1 -0
  104. package/dist/focus-team-state.d.ts +24 -0
  105. package/dist/focus-team-state.d.ts.map +1 -0
  106. package/dist/{strategy-team-state.js → focus-team-state.js} +9 -9
  107. package/dist/focus-team-state.js.map +1 -0
  108. package/dist/focus-worktree-state.d.ts +47 -0
  109. package/dist/focus-worktree-state.d.ts.map +1 -0
  110. package/dist/{strategy-worktree-state.js → focus-worktree-state.js} +29 -29
  111. package/dist/focus-worktree-state.js.map +1 -0
  112. package/dist/git-merge.d.ts +5 -5
  113. package/dist/git-merge.d.ts.map +1 -1
  114. package/dist/git-merge.js +5 -5
  115. package/dist/git-merge.js.map +1 -1
  116. package/dist/git-state-detector.d.ts +1 -1
  117. package/dist/git-state-detector.js +9 -9
  118. package/dist/git-state-detector.js.map +1 -1
  119. package/dist/git-utils.d.ts +1 -1
  120. package/dist/git-utils.js +1 -1
  121. package/dist/git.d.ts +2 -2
  122. package/dist/git.d.ts.map +1 -1
  123. package/dist/git.js +3 -3
  124. package/dist/git.js.map +1 -1
  125. package/dist/heartbeat.d.ts +4 -4
  126. package/dist/heartbeat.d.ts.map +1 -1
  127. package/dist/heartbeat.js +7 -7
  128. package/dist/heartbeat.js.map +1 -1
  129. package/dist/index.d.ts +1 -1
  130. package/dist/index.js +10 -10
  131. package/dist/index.js.map +1 -1
  132. package/dist/listener-auto-advance.d.ts +2 -2
  133. package/dist/listener-auto-advance.js +21 -21
  134. package/dist/listener-auto-advance.js.map +1 -1
  135. package/dist/listener.d.ts +12 -12
  136. package/dist/listener.d.ts.map +1 -1
  137. package/dist/listener.js +80 -75
  138. package/dist/listener.js.map +1 -1
  139. package/dist/loop-engine.d.ts +20 -20
  140. package/dist/loop-engine.d.ts.map +1 -1
  141. package/dist/loop-engine.js +82 -82
  142. package/dist/loop-engine.js.map +1 -1
  143. package/dist/loop-event-bus.d.ts +5 -5
  144. package/dist/loop-event-bus.d.ts.map +1 -1
  145. package/dist/loop-event-bus.js +3 -3
  146. package/dist/loop-llm-client.d.ts +1 -1
  147. package/dist/loop-llm-client.js +1 -1
  148. package/dist/loop-variance.d.ts +1 -1
  149. package/dist/loop-variance.js +1 -1
  150. package/dist/merge-detector.d.ts +6 -6
  151. package/dist/merge-detector.d.ts.map +1 -1
  152. package/dist/merge-detector.js +47 -47
  153. package/dist/merge-detector.js.map +1 -1
  154. package/dist/otlp-log-parser.js +2 -2
  155. package/dist/otlp-log-parser.js.map +1 -1
  156. package/dist/otlp-metric-parser.js +1 -1
  157. package/dist/otlp-metric-parser.js.map +1 -1
  158. package/dist/otlp-receiver.d.ts +1 -1
  159. package/dist/otlp-receiver.js +7 -7
  160. package/dist/otlp-receiver.js.map +1 -1
  161. package/dist/otlp-types.d.ts +1 -1
  162. package/dist/otlp-types.d.ts.map +1 -1
  163. package/dist/otlp-types.js +3 -3
  164. package/dist/otlp-types.js.map +1 -1
  165. package/dist/output-monitor.d.ts +6 -6
  166. package/dist/output-monitor.d.ts.map +1 -1
  167. package/dist/output-monitor.js +11 -11
  168. package/dist/output-monitor.js.map +1 -1
  169. package/dist/planning-prompt-builder.d.ts +11 -11
  170. package/dist/planning-prompt-builder.d.ts.map +1 -1
  171. package/dist/planning-prompt-builder.js +28 -28
  172. package/dist/planning-prompt-builder.js.map +1 -1
  173. package/dist/pm/mitigation-correlator.d.ts +7 -7
  174. package/dist/pm/mitigation-correlator.d.ts.map +1 -1
  175. package/dist/pm/mitigation-correlator.js +33 -33
  176. package/dist/pm/mitigation-correlator.js.map +1 -1
  177. package/dist/pm-engine.js +1 -1
  178. package/dist/pm-engine.js.map +1 -1
  179. package/dist/prompt-builder.d.ts +1 -1
  180. package/dist/prompt-builder.js +9 -9
  181. package/dist/prompt-builder.js.map +1 -1
  182. package/dist/prompts/starter-prompt.d.ts +2 -2
  183. package/dist/prompts/starter-prompt.d.ts.map +1 -1
  184. package/dist/prompts/starter-prompt.js +6 -6
  185. package/dist/qa-crash-recovery.d.ts +10 -10
  186. package/dist/qa-crash-recovery.d.ts.map +1 -1
  187. package/dist/qa-crash-recovery.js +32 -32
  188. package/dist/qa-crash-recovery.js.map +1 -1
  189. package/dist/qa-dev-server.d.ts +3 -3
  190. package/dist/qa-dev-server.d.ts.map +1 -1
  191. package/dist/qa-dev-server.js +3 -3
  192. package/dist/qa-dev-server.js.map +1 -1
  193. package/dist/qa-orchestrator.d.ts +18 -18
  194. package/dist/qa-orchestrator.d.ts.map +1 -1
  195. package/dist/qa-orchestrator.js +47 -47
  196. package/dist/qa-orchestrator.js.map +1 -1
  197. package/dist/qa-provisioner.d.ts +3 -3
  198. package/dist/qa-provisioner.d.ts.map +1 -1
  199. package/dist/qa-provisioner.js +14 -14
  200. package/dist/qa-provisioner.js.map +1 -1
  201. package/dist/qa-state.d.ts +10 -10
  202. package/dist/qa-state.d.ts.map +1 -1
  203. package/dist/qa-state.js +11 -11
  204. package/dist/qa-state.js.map +1 -1
  205. package/dist/queries/control-state.d.ts +5 -5
  206. package/dist/queries/control-state.d.ts.map +1 -1
  207. package/dist/queries/control-state.js +4 -4
  208. package/dist/queries/control-state.js.map +1 -1
  209. package/dist/queries/deliveries.d.ts +24 -23
  210. package/dist/queries/deliveries.d.ts.map +1 -1
  211. package/dist/queries/deliveries.js +30 -29
  212. package/dist/queries/deliveries.js.map +1 -1
  213. package/dist/queries/{strategies.d.ts → focuses.d.ts} +24 -21
  214. package/dist/queries/focuses.d.ts.map +1 -0
  215. package/dist/queries/{strategies.js → focuses.js} +39 -31
  216. package/dist/queries/focuses.js.map +1 -0
  217. package/dist/queries/index.d.ts +3 -3
  218. package/dist/queries/index.d.ts.map +1 -1
  219. package/dist/queries/index.js +2 -2
  220. package/dist/queries/index.js.map +1 -1
  221. package/dist/queries/qa.d.ts +16 -16
  222. package/dist/queries/qa.d.ts.map +1 -1
  223. package/dist/queries/qa.js +22 -22
  224. package/dist/queries/qa.js.map +1 -1
  225. package/dist/queries/schemas.d.ts +36 -30
  226. package/dist/queries/schemas.d.ts.map +1 -1
  227. package/dist/queries/schemas.js +28 -25
  228. package/dist/queries/schemas.js.map +1 -1
  229. package/dist/queries/sessions.d.ts +1 -1
  230. package/dist/queries/sessions.d.ts.map +1 -1
  231. package/dist/queries/sessions.js +2 -2
  232. package/dist/queries/sessions.js.map +1 -1
  233. package/dist/queries/shared.js +10 -10
  234. package/dist/queries/shared.js.map +1 -1
  235. package/dist/queries/workflows.d.ts +1 -1
  236. package/dist/queries/workflows.js +1 -1
  237. package/dist/queries/worktrees.d.ts +7 -7
  238. package/dist/queries/worktrees.d.ts.map +1 -1
  239. package/dist/queries/worktrees.js +7 -7
  240. package/dist/queries/worktrees.js.map +1 -1
  241. package/dist/review-defect-detector.d.ts +125 -0
  242. package/dist/review-defect-detector.d.ts.map +1 -0
  243. package/dist/review-defect-detector.js +289 -0
  244. package/dist/review-defect-detector.js.map +1 -0
  245. package/dist/session-lifecycle.d.ts +17 -17
  246. package/dist/session-lifecycle.d.ts.map +1 -1
  247. package/dist/session-lifecycle.js +82 -82
  248. package/dist/session-lifecycle.js.map +1 -1
  249. package/dist/spawn-cooldown.d.ts +8 -8
  250. package/dist/spawn-cooldown.d.ts.map +1 -1
  251. package/dist/spawn-cooldown.js +15 -15
  252. package/dist/spawn-cooldown.js.map +1 -1
  253. package/dist/spawn-environment.d.ts +2 -2
  254. package/dist/spawn-environment.d.ts.map +1 -1
  255. package/dist/spawn-environment.js +3 -3
  256. package/dist/spawn-environment.js.map +1 -1
  257. package/dist/spawner-lifecycle.d.ts +2 -2
  258. package/dist/spawner-lifecycle.d.ts.map +1 -1
  259. package/dist/spawner-lifecycle.js +3 -3
  260. package/dist/spawner-lifecycle.js.map +1 -1
  261. package/dist/spawner-resolution.d.ts +3 -3
  262. package/dist/spawner-resolution.d.ts.map +1 -1
  263. package/dist/spawner-resolution.js +4 -4
  264. package/dist/spawner-resolution.js.map +1 -1
  265. package/dist/spawner-stream-handlers.js +2 -2
  266. package/dist/spawner-stream-handlers.js.map +1 -1
  267. package/dist/spawner.d.ts +1 -1
  268. package/dist/spawner.d.ts.map +1 -1
  269. package/dist/spawner.js +6 -6
  270. package/dist/spawner.js.map +1 -1
  271. package/dist/stage-classifier.d.ts +1 -1
  272. package/dist/stage-classifier.js +1 -1
  273. package/dist/state-cascade.d.ts +25 -25
  274. package/dist/state-cascade.d.ts.map +1 -1
  275. package/dist/state-cascade.js +89 -89
  276. package/dist/state-cascade.js.map +1 -1
  277. package/dist/supabase.d.ts +4 -4
  278. package/dist/supabase.d.ts.map +1 -1
  279. package/dist/supabase.js +5 -5
  280. package/dist/supabase.js.map +1 -1
  281. package/dist/task-converter.d.ts +4 -4
  282. package/dist/task-converter.d.ts.map +1 -1
  283. package/dist/task-converter.js +1 -1
  284. package/dist/task-converter.js.map +1 -1
  285. package/dist/team-prompt-base.d.ts +49 -22
  286. package/dist/team-prompt-base.d.ts.map +1 -1
  287. package/dist/team-prompt-base.js +96 -32
  288. package/dist/team-prompt-base.js.map +1 -1
  289. package/dist/team-spawner.d.ts +9 -9
  290. package/dist/team-spawner.d.ts.map +1 -1
  291. package/dist/team-spawner.js +84 -82
  292. package/dist/team-spawner.js.map +1 -1
  293. package/dist/telemetry-writer.d.ts +2 -2
  294. package/dist/telemetry-writer.d.ts.map +1 -1
  295. package/dist/templates/claude-md.js +8 -8
  296. package/dist/templates/claude-settings.d.ts +1 -1
  297. package/dist/templates/claude-settings.js +2 -2
  298. package/dist/templates/claude-settings.js.map +1 -1
  299. package/dist/trigger-executor.d.ts +4 -4
  300. package/dist/trigger-executor.d.ts.map +1 -1
  301. package/dist/trigger-executor.js +11 -11
  302. package/dist/trigger-executor.js.map +1 -1
  303. package/dist/types/dag.d.ts +1 -1
  304. package/dist/types/delivery.d.ts +3 -3
  305. package/dist/types/delivery.d.ts.map +1 -1
  306. package/dist/types/{strategy.d.ts → focus.d.ts} +65 -31
  307. package/dist/types/focus.d.ts.map +1 -0
  308. package/dist/types/focus.js +5 -0
  309. package/dist/types/focus.js.map +1 -0
  310. package/dist/types/index.d.ts +1 -1
  311. package/dist/types/index.d.ts.map +1 -1
  312. package/dist/types/index.js +1 -1
  313. package/dist/types/index.js.map +1 -1
  314. package/dist/types/merge.d.ts +1 -1
  315. package/dist/types/session.d.ts +2 -2
  316. package/dist/types/session.d.ts.map +1 -1
  317. package/dist/unified-engine-lifecycle.js +11 -11
  318. package/dist/unified-engine-lifecycle.js.map +1 -1
  319. package/dist/unified-init.d.ts +1 -1
  320. package/dist/unified-init.js +9 -9
  321. package/dist/unified-init.js.map +1 -1
  322. package/dist/unified-shell-config.d.ts +4 -4
  323. package/dist/unified-shell-config.d.ts.map +1 -1
  324. package/dist/unified-shell-config.js +5 -5
  325. package/dist/unified-shell-config.js.map +1 -1
  326. package/dist/unified-shell-status.js +3 -3
  327. package/dist/unified-shell-status.js.map +1 -1
  328. package/dist/unified-shell.d.ts +1 -1
  329. package/dist/unified-shell.js +4 -4
  330. package/dist/unified-shell.js.map +1 -1
  331. package/dist/workflow-engine.d.ts +1 -1
  332. package/dist/workflow-engine.d.ts.map +1 -1
  333. package/dist/{worktree-strategy.d.ts → worktree-focus.d.ts} +15 -15
  334. package/dist/worktree-focus.d.ts.map +1 -0
  335. package/dist/{worktree-strategy.js → worktree-focus.js} +37 -37
  336. package/dist/worktree-focus.js.map +1 -0
  337. package/dist/worktree.d.ts +10 -10
  338. package/dist/worktree.d.ts.map +1 -1
  339. package/dist/worktree.js +39 -39
  340. package/dist/worktree.js.map +1 -1
  341. package/package.json +3 -3
  342. package/dist/listener-review.d.ts +0 -37
  343. package/dist/listener-review.d.ts.map +0 -1
  344. package/dist/listener-review.js +0 -217
  345. package/dist/listener-review.js.map +0 -1
  346. package/dist/queries/strategies.d.ts.map +0 -1
  347. package/dist/queries/strategies.js.map +0 -1
  348. package/dist/review-spawner.d.ts +0 -32
  349. package/dist/review-spawner.d.ts.map +0 -1
  350. package/dist/review-spawner.js +0 -170
  351. package/dist/review-spawner.js.map +0 -1
  352. package/dist/strategy-completion-event.d.ts +0 -63
  353. package/dist/strategy-completion-event.d.ts.map +0 -1
  354. package/dist/strategy-completion-event.js +0 -138
  355. package/dist/strategy-completion-event.js.map +0 -1
  356. package/dist/strategy-completion.d.ts.map +0 -1
  357. package/dist/strategy-completion.js.map +0 -1
  358. package/dist/strategy-engine.d.ts.map +0 -1
  359. package/dist/strategy-engine.js.map +0 -1
  360. package/dist/strategy-executor.d.ts +0 -55
  361. package/dist/strategy-executor.d.ts.map +0 -1
  362. package/dist/strategy-executor.js.map +0 -1
  363. package/dist/strategy-lifecycle.d.ts +0 -61
  364. package/dist/strategy-lifecycle.d.ts.map +0 -1
  365. package/dist/strategy-lifecycle.js.map +0 -1
  366. package/dist/strategy-merge.d.ts.map +0 -1
  367. package/dist/strategy-merge.js.map +0 -1
  368. package/dist/strategy-prompt-builder.d.ts +0 -24
  369. package/dist/strategy-prompt-builder.d.ts.map +0 -1
  370. package/dist/strategy-prompt-builder.js.map +0 -1
  371. package/dist/strategy-provisioning.d.ts +0 -16
  372. package/dist/strategy-provisioning.d.ts.map +0 -1
  373. package/dist/strategy-provisioning.js +0 -119
  374. package/dist/strategy-provisioning.js.map +0 -1
  375. package/dist/strategy-spawn-helpers.d.ts.map +0 -1
  376. package/dist/strategy-spawn-helpers.js.map +0 -1
  377. package/dist/strategy-team-lifecycle.d.ts.map +0 -1
  378. package/dist/strategy-team-lifecycle.js.map +0 -1
  379. package/dist/strategy-team-state.d.ts +0 -24
  380. package/dist/strategy-team-state.d.ts.map +0 -1
  381. package/dist/strategy-team-state.js.map +0 -1
  382. package/dist/strategy-teardown.d.ts +0 -24
  383. package/dist/strategy-teardown.d.ts.map +0 -1
  384. package/dist/strategy-teardown.js +0 -158
  385. package/dist/strategy-teardown.js.map +0 -1
  386. package/dist/strategy-worktree-state.d.ts +0 -47
  387. package/dist/strategy-worktree-state.d.ts.map +0 -1
  388. package/dist/strategy-worktree-state.js.map +0 -1
  389. package/dist/team-prompt-variants.d.ts +0 -17
  390. package/dist/team-prompt-variants.d.ts.map +0 -1
  391. package/dist/team-prompt-variants.js +0 -79
  392. package/dist/team-prompt-variants.js.map +0 -1
  393. package/dist/types/strategy.d.ts.map +0 -1
  394. package/dist/types/strategy.js +0 -5
  395. package/dist/types/strategy.js.map +0 -1
  396. package/dist/worktree-merge.d.ts +0 -23
  397. package/dist/worktree-merge.d.ts.map +0 -1
  398. package/dist/worktree-merge.js +0 -57
  399. package/dist/worktree-merge.js.map +0 -1
  400. package/dist/worktree-strategy.d.ts.map +0 -1
  401. package/dist/worktree-strategy.js.map +0 -1
@@ -1,30 +1,30 @@
1
1
  /**
2
- * Strategy team completion handling.
2
+ * Focus team completion handling.
3
3
  *
4
4
  * Manages the post-execution lifecycle: advancing delivery statuses
5
- * based on issue completion, merging the strategy branch, cleaning up
5
+ * based on issue completion, merging the focus branch, cleaning up
6
6
  * worktrees, and updating session records.
7
7
  */
8
8
  import { filterWorkIssues, filterContextGroups, ACTIVE_WORK_STATUSES } from './constants.js';
9
- import { updateSession, reportGitState, getDeliveryIssues, getDeliverySessionCount, updateIssueStatus, fetchEffectiveWorkflow, updateDeliveryStatus, getActiveStrategies, } from './supabase.js';
9
+ import { updateSession, reportGitState, getDeliveryIssues, getDeliverySessionCount, updateIssueStatus, fetchEffectiveWorkflow, updateDeliveryStatus, getActiveFocuses, } from './supabase.js';
10
10
  import { hasPendingSpawnDirective } from './directive-executor.js';
11
11
  import { advanceDeliveryStage } from './delivery-lifecycle.js';
12
12
  import { withRetry } from '@telora/daemon-core';
13
- import { mergeStrategyBranch, escalateMergeConflict } from './strategy-merge.js';
13
+ import { mergeFocusBranch, escalateMergeConflict } from './focus-merge.js';
14
14
  import { mergeIntegrationToMain } from './git-merge.js';
15
15
  import { recordSessionCompleted } from './agent-state.js';
16
16
  import { triggerCheck } from './listener.js';
17
17
  import { emitLoopTrigger } from './loop-event-bus.js';
18
- import { getActiveTeams } from './strategy-team-state.js';
18
+ import { getActiveTeams } from './focus-team-state.js';
19
19
  import { commitWipChanges, worktreeHasUncommittedChanges, branchHasUnmergedCommits, runGitSync } from './git.js';
20
20
  import { computeGitDiffStats } from './git-utils.js';
21
- import { getStrategyDeliveries, updateStrategyStatus, fetchStrategyWorkflowWithTransitions } from './queries/strategies.js';
21
+ import { getFocusDeliveries, updateFocusStatus, fetchFocusWorkflowWithTransitions } from './queries/focuses.js';
22
22
  // ── Stage classification (re-exported for consumers) ─────────────────
23
23
  import { isStatusAgentActionable } from './stage-classifier.js';
24
24
  export { isStatusTerminal, isStatusAgentActionable } from './stage-classifier.js';
25
25
  // ── Merge gate ───────────────────────────────────────────────────────
26
26
  /**
27
- * Decide whether to attempt mergeStrategyBranch on team exit.
27
+ * Decide whether to attempt mergeFocusBranch on team exit.
28
28
  *
29
29
  * Skip merge when:
30
30
  * - The team did not succeed (failed exit or unclean shutdown), OR
@@ -42,7 +42,7 @@ export function shouldAttemptMerge(succeeded, teamState) {
42
42
  * Responsibilities:
43
43
  * - Report git state for all known deliveries
44
44
  * - Advance delivery statuses based on issue completion
45
- * - Merge strategy branch to integration (if successful)
45
+ * - Merge focus branch to integration (if successful)
46
46
  * - Clean up worktree
47
47
  * - Update session record
48
48
  * - Record heartbeat counters
@@ -50,7 +50,7 @@ export function shouldAttemptMerge(succeeded, teamState) {
50
50
  */
51
51
  export async function handleTeamCompletion(params) {
52
52
  const { config, teamState, sessionId, code, signal } = params;
53
- const { strategyId, strategyName, organizationId, branchName } = teamState;
53
+ const { focusId, focusName, organizationId, branchName } = teamState;
54
54
  const worktreePath = teamState.worktreePath;
55
55
  const exitCode = code ?? 1;
56
56
  // Proactive termination: when the daemon terminates a team because all work
@@ -63,21 +63,21 @@ export async function handleTeamCompletion(params) {
63
63
  teamState.shutdownReason === 'work_complete';
64
64
  const succeeded = exitCode === 0 || proactivelyTerminated;
65
65
  let exitReason = exitCode === 0
66
- ? 'Strategy team completed.'
66
+ ? 'Focus team completed.'
67
67
  : proactivelyTerminated
68
68
  ? teamState.mergedDeliveryIds.size > 0
69
- ? `Strategy team terminated: ${teamState.mergedDeliveryIds.size} deliveries merged.`
70
- : 'Strategy team terminated: all work complete.'
69
+ ? `Focus team terminated: ${teamState.mergedDeliveryIds.size} deliveries merged.`
70
+ : 'Focus team terminated: all work complete.'
71
71
  : signal
72
72
  ? `Team lead terminated by signal: ${signal}`
73
73
  : `Team lead exited with code: ${exitCode}`;
74
74
  // Fetch fresh delivery list to include mid-flight additions
75
75
  let allDeliveries;
76
76
  try {
77
- allDeliveries = await getStrategyDeliveries(strategyId);
77
+ allDeliveries = await getFocusDeliveries(focusId);
78
78
  }
79
79
  catch (err) {
80
- console.warn(`[strategy-executor] Failed to fetch deliveries for gitState reporting, falling back to knownDeliveryIds:`, err.message);
80
+ console.warn(`[focus-executor] Failed to fetch deliveries for gitState reporting, falling back to knownDeliveryIds:`, err.message);
81
81
  // Empty knownDeliveryIds (planning teams that exited without scoping) yields
82
82
  // an empty fallback array -- subsequent loops are intentional no-ops.
83
83
  allDeliveries = [...teamState.knownDeliveryIds].map(id => ({
@@ -97,7 +97,7 @@ export async function handleTeamCompletion(params) {
97
97
  .map(d => d.id);
98
98
  // Report worktree_complete for worked deliveries only
99
99
  for (const deliveryId of workedDeliveryIds) {
100
- reportGitState(deliveryId, 'worktree_complete').catch(err => console.warn(`[strategy-executor] reportGitState worktree_complete failed for ${deliveryId}:`, err.message));
100
+ reportGitState(deliveryId, 'worktree_complete').catch(err => console.warn(`[focus-executor] reportGitState worktree_complete failed for ${deliveryId}:`, err.message));
101
101
  }
102
102
  // ── Read-only audit safety net ──────────────────────────────────
103
103
  // If this was a read-only session, revert any file modifications and
@@ -106,13 +106,13 @@ export async function handleTeamCompletion(params) {
106
106
  // Revert any uncommitted changes
107
107
  const hasChanges = worktreeHasUncommittedChanges(worktreePath);
108
108
  if (hasChanges) {
109
- console.warn(`[strategy-executor] Read-only audit "${strategyName}" left uncommitted changes. Reverting.`);
109
+ console.warn(`[focus-executor] Read-only audit "${focusName}" left uncommitted changes. Reverting.`);
110
110
  runGitSync(['checkout', '.'], worktreePath);
111
111
  runGitSync(['clean', '-fd'], worktreePath);
112
112
  }
113
113
  // Check if the agent somehow committed (bypassed hook)
114
114
  if (branchHasUnmergedCommits(branchName, config.integrationBranch, config.repoPath)) {
115
- console.error(`[strategy-executor] READ-ONLY VIOLATION: Audit "${strategyName}" has commits on ${branchName}. ` +
115
+ console.error(`[focus-executor] READ-ONLY VIOLATION: Audit "${focusName}" has commits on ${branchName}. ` +
116
116
  `These will NOT be merged. Manual review required.`);
117
117
  exitReason = `Read-only audit violation: commits detected on ${branchName}. Merge skipped.`;
118
118
  // Update session as failed due to read-only violation
@@ -125,13 +125,13 @@ export async function handleTeamCompletion(params) {
125
125
  }), { maxAttempts: 3, baseDelayMs: 1000, label: 'session-update-readonly-violation' });
126
126
  }
127
127
  catch (err) {
128
- console.warn(`[strategy-executor] Failed to update session after retries:`, err.message);
128
+ console.warn(`[focus-executor] Failed to update session after retries:`, err.message);
129
129
  }
130
130
  // Record heartbeat and clean up
131
131
  recordSessionCompleted(0, 0);
132
132
  const activeTeams = getActiveTeams();
133
133
  teamState.phase = 'terminated';
134
- activeTeams.delete(strategyId);
134
+ activeTeams.delete(focusId);
135
135
  return;
136
136
  }
137
137
  }
@@ -140,17 +140,17 @@ export async function handleTeamCompletion(params) {
140
140
  // agent committed its own work.
141
141
  if (!succeeded) {
142
142
  try {
143
- commitWipChanges(worktreePath, strategyName);
143
+ commitWipChanges(worktreePath, focusName);
144
144
  }
145
145
  catch (err) {
146
- console.warn(`[strategy-executor] WIP commit failed for "${strategyName}": ${err.message}`);
146
+ console.warn(`[focus-executor] WIP commit failed for "${focusName}": ${err.message}`);
147
147
  }
148
148
  }
149
149
  // Advance delivery statuses based on issue completion
150
150
  if (succeeded) {
151
151
  await advanceDeliveryStatuses(config, teamState, sessionId);
152
152
  }
153
- // Merge strategy branch to integration if team succeeded.
153
+ // Merge focus branch to integration if team succeeded.
154
154
  // For proactive terminations, this is a no-op merge since all deliveries
155
155
  // were already merged mid-flight. The merge still runs for safety
156
156
  // (handles any commits the team lead made after the last incremental merge).
@@ -163,7 +163,7 @@ export async function handleTeamCompletion(params) {
163
163
  // path explicit for cancellation mid-planning.
164
164
  let mergeSucceeded = false;
165
165
  if (shouldAttemptMerge(succeeded, teamState)) {
166
- const mergeResult = await mergeStrategyBranch(config, teamState, sessionId, branchName, workedDeliveryIds);
166
+ const mergeResult = await mergeFocusBranch(config, teamState, sessionId, branchName, workedDeliveryIds);
167
167
  mergeSucceeded = mergeResult.mergeSucceeded;
168
168
  if (mergeResult.exitReason) {
169
169
  exitReason += ` ${mergeResult.exitReason}`;
@@ -176,30 +176,30 @@ export async function handleTeamCompletion(params) {
176
176
  organizationId,
177
177
  sessionId,
178
178
  deliveryId,
179
- deliveryName: strategyName,
179
+ deliveryName: focusName,
180
180
  branchName,
181
181
  integrationBranch: config.integrationBranch,
182
182
  mergeError: mergeResult.exitReason,
183
- }).catch(err => console.warn(`[strategy-executor] escalateMergeConflict failed for ${deliveryId}:`, err.message));
183
+ }).catch(err => console.warn(`[focus-executor] escalateMergeConflict failed for ${deliveryId}:`, err.message));
184
184
  }
185
185
  }
186
186
  }
187
187
  }
188
188
  // ── CI: merge integration → main ──────────────────────────────
189
189
  // When CI is enabled, merge the integration branch into main after
190
- // a successful strategy merge. CD additionally pushes main to remote.
190
+ // a successful focus merge. CD additionally pushes main to remote.
191
191
  if (mergeSucceeded && teamState.pipelineConfig?.ci?.enabled) {
192
192
  const pushToRemote = teamState.pipelineConfig?.cd?.enabled ?? false;
193
193
  const ciLabel = pushToRemote ? 'CI+CD' : 'CI';
194
- console.log(`[${ciLabel}] Merging integration to main for "${strategyName}"${pushToRemote ? ' (will push to remote)' : ''}`);
194
+ console.log(`[${ciLabel}] Merging integration to main for "${focusName}"${pushToRemote ? ' (will push to remote)' : ''}`);
195
195
  try {
196
196
  const ciResult = await mergeIntegrationToMain({
197
197
  config,
198
- strategyName,
198
+ focusName,
199
199
  pushToRemote,
200
200
  });
201
201
  if (ciResult.success) {
202
- console.log(`[${ciLabel}] Successfully merged integration to main for "${strategyName}"`);
202
+ console.log(`[${ciLabel}] Successfully merged integration to main for "${focusName}"`);
203
203
  // Update git state for worked deliveries
204
204
  for (const deliveryId of workedDeliveryIds) {
205
205
  const newState = pushToRemote ? 'pushed_to_remote' : 'merged_to_main';
@@ -208,25 +208,25 @@ export async function handleTeamCompletion(params) {
208
208
  exitReason += ` ${ciLabel}: merged to main${pushToRemote ? ' and pushed to remote' : ''}.`;
209
209
  }
210
210
  else {
211
- console.error(`[${ciLabel}] Failed to merge integration to main for "${strategyName}": ${ciResult.error}`);
211
+ console.error(`[${ciLabel}] Failed to merge integration to main for "${focusName}": ${ciResult.error}`);
212
212
  exitReason += ` ${ciLabel} failed: ${ciResult.error}`;
213
213
  }
214
214
  }
215
215
  catch (err) {
216
- console.error(`[${ciLabel}] Error merging integration to main for "${strategyName}":`, err.message);
216
+ console.error(`[${ciLabel}] Error merging integration to main for "${focusName}":`, err.message);
217
217
  exitReason += ` ${ciLabel} error: ${err.message}`;
218
218
  }
219
219
  }
220
- // Worktree is strategy-owned — do NOT remove on team completion.
220
+ // Worktree is focus-owned — do NOT remove on team completion.
221
221
  // It persists for the next team session or QA use.
222
- // Removal only happens via coordinated teardown when strategy is deactivated.
222
+ // Removal only happens via coordinated teardown when focus is deactivated.
223
223
  // Compute git diff stats from all commits on this branch since integration
224
224
  let diffStats = { linesAdded: 0, linesRemoved: 0 };
225
225
  try {
226
226
  diffStats = computeGitDiffStats(worktreePath, `${config.integrationBranch}..${branchName}`);
227
227
  }
228
228
  catch (err) {
229
- console.debug(`[strategy-executor] Failed to compute git diff stats for "${strategyName}":`, err.message);
229
+ console.debug(`[focus-executor] Failed to compute git diff stats for "${focusName}":`, err.message);
230
230
  }
231
231
  // Determine exit category for failed sessions
232
232
  const exitCategory = succeeded
@@ -246,28 +246,28 @@ export async function handleTeamCompletion(params) {
246
246
  }), { maxAttempts: 3, baseDelayMs: 1000, label: 'session-update-completion' });
247
247
  }
248
248
  catch (err) {
249
- console.warn(`[strategy-executor] Failed to update session after retries:`, err.message);
249
+ console.warn(`[focus-executor] Failed to update session after retries:`, err.message);
250
250
  }
251
- // Review exit handler: if the strategy is in in_review when the review
251
+ // Review exit handler: if the focus is in in_review when the review
252
252
  // team exits, route deliveries based on outcome:
253
253
  // - Deliveries with open issues → iterating (review found gaps)
254
254
  // - Deliveries with no open issues → done (review passed)
255
- // Then move the strategy back to verify.
255
+ // Then move the focus back to verify.
256
256
  try {
257
- const strategies = await getActiveStrategies(organizationId, teamState.productId);
258
- const current = strategies.find(s => s.strategy_id === strategyId);
257
+ const focuses = await getActiveFocuses(organizationId, teamState.productId);
258
+ const current = focuses.find(s => s.focus_id === focusId);
259
259
  if (current?.status === 'in_review') {
260
260
  // If a spawn directive is pending, the team was terminated to make room
261
261
  // for a new team (e.g., directive executor spawning the review team).
262
262
  // Don't run the review exit handler — the new team will handle it.
263
- if (hasPendingSpawnDirective(strategyId)) {
264
- console.log(`[strategy-executor] Skipping review exit handler for "${strategyName}" -- pending spawn directive`);
263
+ if (hasPendingSpawnDirective(focusId)) {
264
+ console.log(`[focus-executor] Skipping review exit handler for "${focusName}" -- pending spawn directive`);
265
265
  }
266
266
  else {
267
267
  // Route in_review deliveries based on review outcome:
268
268
  // - Has open issues (review found gaps) → iterating
269
269
  // - No open issues (review passed) → done
270
- const reviewDeliveries = await getStrategyDeliveries(strategyId);
270
+ const reviewDeliveries = await getFocusDeliveries(focusId);
271
271
  for (const d of reviewDeliveries) {
272
272
  if (d.executionStatus === 'in_review') {
273
273
  try {
@@ -281,52 +281,52 @@ export async function handleTeamCompletion(params) {
281
281
  // Review created issues — send back to iterating for the team to address
282
282
  const iteratingStage = dWorkflow.stages.find(s => s.name === 'iterating');
283
283
  await updateDeliveryStatus(d.id, 'iterating', iteratingStage?.id ?? null);
284
- console.log(`[strategy-executor] Delivery "${d.name}" moved from in_review to iterating: ${openWork.length} open issue(s)`);
284
+ console.log(`[focus-executor] Delivery "${d.name}" moved from in_review to iterating: ${openWork.length} open issue(s)`);
285
285
  }
286
286
  else {
287
287
  // Review passed — move to done
288
288
  const doneStage = dWorkflow.stages.find(s => s.name === 'done');
289
289
  await updateDeliveryStatus(d.id, 'done', doneStage?.id ?? null);
290
- console.log(`[strategy-executor] Delivery "${d.name}" moved from in_review to done (review passed)`);
290
+ console.log(`[focus-executor] Delivery "${d.name}" moved from in_review to done (review passed)`);
291
291
  }
292
292
  }
293
293
  catch (err) {
294
- console.warn(`[strategy-executor] Failed to route delivery "${d.name}" after review: ${err.message}`);
294
+ console.warn(`[focus-executor] Failed to route delivery "${d.name}" after review: ${err.message}`);
295
295
  }
296
296
  }
297
297
  }
298
- // Move strategy back to verify
299
- const workflow = await fetchStrategyWorkflowWithTransitions(strategyId);
298
+ // Move focus back to verify
299
+ const workflow = await fetchFocusWorkflowWithTransitions(focusId);
300
300
  const verifyStage = workflow.stages.find(s => s.name === 'verify');
301
301
  if (verifyStage) {
302
- await updateStrategyStatus(strategyId, 'verify', verifyStage.id, { reviewRequestedAt: null });
303
- console.log(`[strategy-executor] Review complete for "${strategyName}" -- strategy moved to verify`);
302
+ await updateFocusStatus(focusId, 'verify', verifyStage.id, { reviewRequestedAt: null });
303
+ console.log(`[focus-executor] Review complete for "${focusName}" -- focus moved to verify`);
304
304
  emitLoopTrigger({
305
305
  type: 'review_completed',
306
- strategyId,
307
- detail: `review complete -- "${strategyName}" moved to verify`,
306
+ focusId,
307
+ detail: `review complete -- "${focusName}" moved to verify`,
308
308
  });
309
309
  }
310
310
  } // end if !hasPendingSpawnDirective
311
311
  }
312
312
  }
313
313
  catch (err) {
314
- console.warn(`[strategy-executor] Review exit handler failed for "${strategyName}":`, err.message);
314
+ console.warn(`[focus-executor] Review exit handler failed for "${focusName}":`, err.message);
315
315
  }
316
316
  // Record heartbeat
317
317
  recordSessionCompleted(0, 0);
318
318
  // Clean up team state
319
319
  const activeTeams = getActiveTeams();
320
320
  teamState.phase = 'terminated';
321
- activeTeams.delete(strategyId);
321
+ activeTeams.delete(focusId);
322
322
  // Trigger re-poll to pick up next work
323
323
  if (succeeded) {
324
324
  triggerCheck();
325
325
  }
326
- console.log(`[strategy-executor] Team for "${strategyName}" cleaned up (merge: ${mergeSucceeded ? 'yes' : 'no'})`);
326
+ console.log(`[focus-executor] Team for "${focusName}" cleaned up (merge: ${mergeSucceeded ? 'yes' : 'no'})`);
327
327
  }
328
328
  const defaultDeps = {
329
- getStrategyDeliveries,
329
+ getFocusDeliveries,
330
330
  getDeliveryIssues,
331
331
  getDeliverySessionCount,
332
332
  updateIssueStatus,
@@ -337,7 +337,7 @@ const defaultDeps = {
337
337
  /**
338
338
  * Advance delivery statuses after team completion.
339
339
  *
340
- * Re-queries all deliveries for the strategy from the database rather
340
+ * Re-queries all deliveries for the focus from the database rather
341
341
  * than relying on the spawn-time snapshot in teamState.knownDeliveryIds.
342
342
  * This ensures deliveries added mid-flight (after the team was spawned)
343
343
  * are discovered and advanced, and that stale deliveryStageIds don't
@@ -351,10 +351,10 @@ export async function advanceDeliveryStatuses(config, teamState, sessionId, deps
351
351
  // Re-query deliveries fresh from the DB to discover mid-flight additions
352
352
  let deliveries;
353
353
  try {
354
- deliveries = await deps.getStrategyDeliveries(teamState.strategyId);
354
+ deliveries = await deps.getFocusDeliveries(teamState.focusId);
355
355
  }
356
356
  catch (err) {
357
- console.warn(`[strategy-executor] Failed to fetch deliveries for strategy ${teamState.strategyId}:`, err.message);
357
+ console.warn(`[focus-executor] Failed to fetch deliveries for focus ${teamState.focusId}:`, err.message);
358
358
  return;
359
359
  }
360
360
  for (const delivery of deliveries) {
@@ -383,7 +383,7 @@ export async function advanceDeliveryStatuses(config, teamState, sessionId, deps
383
383
  ?? teamState.deliveryStageIds.get(delivery.id)
384
384
  ?? null;
385
385
  if (!currentStageId) {
386
- console.warn(`[strategy-executor] Delivery ${delivery.id}: no workflow stage ID, skipping advance`);
386
+ console.warn(`[focus-executor] Delivery ${delivery.id}: no workflow stage ID, skipping advance`);
387
387
  continue;
388
388
  }
389
389
  // Re-queue deliveries with open work issues so the next team picks them up
@@ -394,12 +394,12 @@ export async function advanceDeliveryStatuses(config, teamState, sessionId, deps
394
394
  }
395
395
  const queuedStage = workflow.stages.find(s => s.name === 'queued');
396
396
  if (queuedStage) {
397
- console.log(`[strategy-executor] Delivery ${delivery.id}: ${openCount}/${totalWork} work issues still open, re-queuing`);
397
+ console.log(`[focus-executor] Delivery ${delivery.id}: ${openCount}/${totalWork} work issues still open, re-queuing`);
398
398
  await deps.updateDeliveryStatus(delivery.id, 'queued', queuedStage.id);
399
399
  teamState.deliveryStageIds.set(delivery.id, queuedStage.id);
400
400
  }
401
401
  else {
402
- console.warn(`[strategy-executor] Delivery ${delivery.id}: ${openCount}/${totalWork} work issues still open, no queued stage in workflow — leaving in ${delivery.executionStatus}`);
402
+ console.warn(`[focus-executor] Delivery ${delivery.id}: ${openCount}/${totalWork} work issues still open, no queued stage in workflow — leaving in ${delivery.executionStatus}`);
403
403
  }
404
404
  continue;
405
405
  }
@@ -408,10 +408,10 @@ export async function advanceDeliveryStatuses(config, teamState, sessionId, deps
408
408
  if (cg.status !== 'Done') {
409
409
  try {
410
410
  await deps.updateIssueStatus(cg.id, 'Done');
411
- console.log(`[strategy-executor] Auto-closed Context Group "${cg.title}" (all work issues done)`);
411
+ console.log(`[focus-executor] Auto-closed Context Group "${cg.title}" (all work issues done)`);
412
412
  }
413
413
  catch (err) {
414
- console.warn(`[strategy-executor] Failed to auto-close Context Group "${cg.title}":`, err.message);
414
+ console.warn(`[focus-executor] Failed to auto-close Context Group "${cg.title}":`, err.message);
415
415
  }
416
416
  }
417
417
  }
@@ -422,12 +422,12 @@ export async function advanceDeliveryStatuses(config, teamState, sessionId, deps
422
422
  if (delivery.executionStatus === 'queued') {
423
423
  const codingStage = workflow.stages.find(s => s.name === 'coding');
424
424
  if (codingStage) {
425
- console.log(`[strategy-executor] Delivery ${delivery.id}: stepping queued -> coding before verify advance`);
425
+ console.log(`[focus-executor] Delivery ${delivery.id}: stepping queued -> coding before verify advance`);
426
426
  await deps.updateDeliveryStatus(delivery.id, 'coding', codingStage.id);
427
427
  effectiveStageId = codingStage.id;
428
428
  }
429
429
  }
430
- console.log(`[strategy-executor] Delivery ${delivery.id}: ${totalWork === 0 ? 'no issues' : `all ${totalWork} work issues done`}, advancing via workflow`);
430
+ console.log(`[focus-executor] Delivery ${delivery.id}: ${totalWork === 0 ? 'no issues' : `all ${totalWork} work issues done`}, advancing via workflow`);
431
431
  const result = await deps.advanceDeliveryStage({
432
432
  deliveryId: delivery.id,
433
433
  deliveryName: delivery.name,
@@ -446,14 +446,14 @@ export async function advanceDeliveryStatuses(config, teamState, sessionId, deps
446
446
  if (result.advanced && (result.deliveryStatus === 'verify' || result.deliveryStatus === 'done')) {
447
447
  emitLoopTrigger({
448
448
  type: 'delivery_completed',
449
- strategyId: teamState.strategyId,
449
+ focusId: teamState.focusId,
450
450
  detail: `${delivery.name} -> ${result.deliveryStatus}`,
451
451
  });
452
452
  }
453
453
  }
454
454
  catch (err) {
455
- console.warn(`[strategy-executor] Failed to check/advance delivery ${delivery.id}:`, err.message);
455
+ console.warn(`[focus-executor] Failed to check/advance delivery ${delivery.id}:`, err.message);
456
456
  }
457
457
  }
458
458
  }
459
- //# sourceMappingURL=strategy-completion.js.map
459
+ //# sourceMappingURL=focus-completion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-completion.js","sourceRoot":"","sources":["../src/focus-completion.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  /**
2
- * StrategyEngine -- ExecutionEngine adapter for the strategy-based daemon.
2
+ * FocusEngine -- ExecutionEngine adapter for the focus-based daemon.
3
3
  *
4
4
  * Wraps the existing daemon modules (listener, heartbeat, spawner, git, etc.)
5
5
  * behind the ExecutionEngine interface from @telora/daemon-core. This allows
6
- * the unified process shell to manage the strategy engine without knowing
6
+ * the unified process shell to manage the focus engine without knowing
7
7
  * its internals.
8
8
  *
9
9
  * Lifecycle (called by the process shell):
@@ -15,8 +15,8 @@
15
15
  */
16
16
  import type { ExecutionEngine, EngineHealth, ResourceUsage, BaseConfig } from '@telora/daemon-core';
17
17
  import { ResourceGovernor } from '@telora/daemon-core';
18
- export declare class StrategyEngine implements ExecutionEngine {
19
- readonly name = "strategy";
18
+ export declare class FocusEngine implements ExecutionEngine {
19
+ readonly name = "focus";
20
20
  /** Daemon config, set during init(). */
21
21
  private config;
22
22
  /** Optional resource governor for global concurrency limiting. */
@@ -44,4 +44,4 @@ export declare class StrategyEngine implements ExecutionEngine {
44
44
  */
45
45
  private requireConfig;
46
46
  }
47
- //# sourceMappingURL=strategy-engine.d.ts.map
47
+ //# sourceMappingURL=focus-engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-engine.d.ts","sourceRoot":"","sources":["../src/focus-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,aAAa,EACb,UAAU,EACX,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAA2B,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AA0ChF,qBAAa,WAAY,YAAW,eAAe;IACjD,QAAQ,CAAC,IAAI,WAAW;IAExB,wCAAwC;IACxC,OAAO,CAAC,MAAM,CAA6B;IAE3C,kEAAkE;IAClE,OAAO,CAAC,QAAQ,CAAiC;IAEjD,sEAAsE;IACtE,OAAO,CAAC,SAAS,CAAwC;IAEzD,8EAA8E;IAC9E,OAAO,CAAC,qBAAqB,CAA6B;IAE1D;;;OAGG;IACH,WAAW,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI;IAUlC,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCjE,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAoGjC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAkEd,wBAAwB;IA+BtC,IAAI,IAAI,IAAI;IAeN,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAsH/B,WAAW,IAAI,YAAY;IA0D3B,gBAAgB,IAAI,aAAa;IAwBjC;;;OAGG;IACH,OAAO,CAAC,aAAa;CAStB"}