@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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-lifecycle.js","sourceRoot":"","sources":["../src/focus-lifecycle.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  /**
2
- * Strategy branch merge logic.
2
+ * Focus branch merge logic.
3
3
  *
4
- * Handles merging a strategy's work branch into the integration branch,
4
+ * Handles merging a focus's work branch into the integration branch,
5
5
  * including workflow resolution and per-delivery git state reporting.
6
6
  */
7
- import type { DaemonConfig, StrategyTeamState, MergeConflictResolutionResult } from './types.js';
7
+ import type { DaemonConfig, FocusTeamState, MergeConflictResolutionResult } from './types.js';
8
8
  /**
9
9
  * Parameters for merge conflict escalation/reporting.
10
10
  */
@@ -30,7 +30,7 @@ export declare function reportMergeConflictState(deliveryId: string, branchName:
30
30
  * the same delivery (tracked in-memory via pendingMergeConflictDeliveries).
31
31
  * Always reports merge_conflict git state regardless.
32
32
  *
33
- * Called by all strategy-level merge callers when mergeToIntegration fails.
33
+ * Called by all focus-level merge callers when mergeToIntegration fails.
34
34
  */
35
35
  export declare function escalateMergeConflict(params: MergeConflictParams): Promise<void>;
36
36
  /**
@@ -58,20 +58,20 @@ export declare function checkResolvedMergeConflicts(config: DaemonConfig): Promi
58
58
  *
59
59
  * Returns when resolution is detected or timeout expires.
60
60
  */
61
- export declare function requestTeamLeadResolution(teamState: StrategyTeamState, conflictFiles: string[], branchName: string, integrationBranch: string, timeoutMs?: number): Promise<MergeConflictResolutionResult>;
61
+ export declare function requestTeamLeadResolution(teamState: FocusTeamState, conflictFiles: string[], branchName: string, integrationBranch: string, timeoutMs?: number): Promise<MergeConflictResolutionResult>;
62
62
  /**
63
- * Merge the strategy branch to integration.
63
+ * Merge the focus branch to integration.
64
64
  *
65
65
  * Uses the first delivery ID as the representative for merge operations
66
- * (all deliveries share the same branch in the strategy model).
66
+ * (all deliveries share the same branch in the focus model).
67
67
  *
68
68
  * `workedDeliveryIds` is the set of deliveries the team actually built in
69
69
  * this merge cycle. Git state and the merge commit SHA are recorded only
70
70
  * for these deliveries — never for queued/planning deliveries that happen
71
- * to share the same strategy branch but were never touched.
71
+ * to share the same focus branch but were never touched.
72
72
  */
73
- export declare function mergeStrategyBranch(config: DaemonConfig, teamState: StrategyTeamState, sessionId: string, branchName: string, workedDeliveryIds: string[]): Promise<{
73
+ export declare function mergeFocusBranch(config: DaemonConfig, teamState: FocusTeamState, sessionId: string, branchName: string, workedDeliveryIds: string[]): Promise<{
74
74
  mergeSucceeded: boolean;
75
75
  exitReason: string;
76
76
  }>;
77
- //# sourceMappingURL=strategy-merge.d.ts.map
77
+ //# sourceMappingURL=focus-merge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-merge.d.ts","sourceRoot":"","sources":["../src/focus-merge.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EAEd,6BAA6B,EAC9B,MAAM,YAAY,CAAC;AAepB;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CASf;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAyCf;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAE/D;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CA4Gf;AAUD;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAC7C,SAAS,EAAE,cAAc,EACzB,aAAa,EAAE,MAAM,EAAE,EACvB,UAAU,EAAE,MAAM,EAClB,iBAAiB,EAAE,MAAM,EACzB,SAAS,GAAE,MAA6C,GACvD,OAAO,CAAC,6BAA6B,CAAC,CA4DxC;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,cAAc,EACzB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,iBAAiB,EAAE,MAAM,EAAE,GAC1B,OAAO,CAAC;IAAE,cAAc,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CA6J1D"}
@@ -1,7 +1,7 @@
1
1
  /**
2
- * Strategy branch merge logic.
2
+ * Focus branch merge logic.
3
3
  *
4
- * Handles merging a strategy's work branch into the integration branch,
4
+ * Handles merging a focus's work branch into the integration branch,
5
5
  * including workflow resolution and per-delivery git state reporting.
6
6
  */
7
7
  import { runGitSync } from './git-types.js';
@@ -13,7 +13,7 @@ import { createEscalation } from './queries/issues.js';
13
13
  import { updateDeliveryMergeCommitSha } from './queries/deliveries.js';
14
14
  import { withRetry, sendMessage, ESCALATION_REASONS } from '@telora/daemon-core';
15
15
  import { spawnResolutionAgent } from './spawner.js';
16
- import { getStrategyWorktree } from './strategy-worktree-state.js';
16
+ import { getFocusWorktree } from './focus-worktree-state.js';
17
17
  // Track deliveries with pending merge conflict escalations to avoid duplicates
18
18
  const pendingMergeConflictDeliveries = new Set();
19
19
  /**
@@ -26,7 +26,7 @@ export async function reportMergeConflictState(deliveryId, branchName) {
26
26
  await reportGitState(deliveryId, 'merge_conflict', branchName);
27
27
  }
28
28
  catch (err) {
29
- console.warn(`[strategy-merge] reportGitState merge_conflict failed for ${deliveryId}:`, err.message);
29
+ console.warn(`[focus-merge] reportGitState merge_conflict failed for ${deliveryId}:`, err.message);
30
30
  }
31
31
  }
32
32
  /**
@@ -36,7 +36,7 @@ export async function reportMergeConflictState(deliveryId, branchName) {
36
36
  * the same delivery (tracked in-memory via pendingMergeConflictDeliveries).
37
37
  * Always reports merge_conflict git state regardless.
38
38
  *
39
- * Called by all strategy-level merge callers when mergeToIntegration fails.
39
+ * Called by all focus-level merge callers when mergeToIntegration fails.
40
40
  */
41
41
  export async function escalateMergeConflict(params) {
42
42
  const { organizationId, sessionId, deliveryId, deliveryName, branchName, integrationBranch, mergeError } = params;
@@ -44,7 +44,7 @@ export async function escalateMergeConflict(params) {
44
44
  await reportMergeConflictState(deliveryId, branchName);
45
45
  // Skip duplicate escalation
46
46
  if (pendingMergeConflictDeliveries.has(deliveryId)) {
47
- console.log(`[strategy-merge] Merge conflict escalation already pending for delivery ${deliveryId}, skipping duplicate`);
47
+ console.log(`[focus-merge] Merge conflict escalation already pending for delivery ${deliveryId}, skipping duplicate`);
48
48
  return;
49
49
  }
50
50
  pendingMergeConflictDeliveries.add(deliveryId);
@@ -54,7 +54,7 @@ export async function escalateMergeConflict(params) {
54
54
  sessionId,
55
55
  issueId: null,
56
56
  reasonType: ESCALATION_REASONS.ERROR_ENCOUNTERED,
57
- description: `Merge conflict merging strategy branch into integration.\n\n` +
57
+ description: `Merge conflict merging focus branch into integration.\n\n` +
58
58
  `**Delivery:** ${deliveryName}\n` +
59
59
  `**Source branch:** ${branchName}\n` +
60
60
  `**Target branch:** ${integrationBranch}\n` +
@@ -62,11 +62,11 @@ export async function escalateMergeConflict(params) {
62
62
  `The branch has been preserved. Resolve the conflict and mark the escalation as resolved to trigger a retry.`,
63
63
  whatWasTried: `Attempted automatic merge of ${branchName} into ${integrationBranch}.`,
64
64
  helpNeeded: `Resolve the merge conflicts between ${branchName} and ${integrationBranch}, then mark this escalation as resolved.`,
65
- }), { maxAttempts: 3, label: `escalation-strategy-merge-conflict-${deliveryId}` });
66
- console.log(`[strategy-merge] Created merge conflict escalation for delivery "${deliveryName}"`);
65
+ }), { maxAttempts: 3, label: `escalation-focus-merge-conflict-${deliveryId}` });
66
+ console.log(`[focus-merge] Created merge conflict escalation for delivery "${deliveryName}"`);
67
67
  }
68
68
  catch (err) {
69
- console.error(`[strategy-merge] Failed to create merge conflict escalation for "${deliveryName}": ${err.message}`);
69
+ console.error(`[focus-merge] Failed to create merge conflict escalation for "${deliveryName}": ${err.message}`);
70
70
  // Remove from pending set so a retry can create it later
71
71
  pendingMergeConflictDeliveries.delete(deliveryId);
72
72
  }
@@ -94,7 +94,7 @@ export async function checkResolvedMergeConflicts(config) {
94
94
  conflictDeliveries = await getMergeConflictDeliveries(config.organizationId, config.productId);
95
95
  }
96
96
  catch (err) {
97
- console.warn(`[strategy-merge] Failed to fetch merge conflict deliveries:`, err.message);
97
+ console.warn(`[focus-merge] Failed to fetch merge conflict deliveries:`, err.message);
98
98
  return;
99
99
  }
100
100
  if (conflictDeliveries.length === 0)
@@ -110,7 +110,7 @@ export async function checkResolvedMergeConflicts(config) {
110
110
  }
111
111
  for (const [branchName, deliveries] of byBranch) {
112
112
  const representative = deliveries[0];
113
- console.log(`[strategy-merge] Retrying merge for branch ${branchName} ` +
113
+ console.log(`[focus-merge] Retrying merge for branch ${branchName} ` +
114
114
  `(${deliveries.length} delivery/ies in merge_conflict state)`);
115
115
  const mergeResult = await mergeToIntegration({
116
116
  config,
@@ -119,21 +119,21 @@ export async function checkResolvedMergeConflicts(config) {
119
119
  deliveryId: representative.delivery_id,
120
120
  });
121
121
  if (mergeResult.success) {
122
- console.log(`[strategy-merge] Merge retry succeeded for branch ${branchName}`);
122
+ console.log(`[focus-merge] Merge retry succeeded for branch ${branchName}`);
123
123
  // Update all deliveries in this branch group
124
124
  for (const d of deliveries) {
125
125
  clearMergeConflictFlag(d.delivery_id);
126
- reportGitState(d.delivery_id, 'merged_to_integration').catch((err) => console.warn(`[strategy-merge] reportGitState merged_to_integration failed for ${d.delivery_id}:`, err.message));
126
+ reportGitState(d.delivery_id, 'merged_to_integration').catch((err) => console.warn(`[focus-merge] reportGitState merged_to_integration failed for ${d.delivery_id}:`, err.message));
127
127
  }
128
128
  }
129
129
  else {
130
- console.log(`[strategy-merge] Merge retry still failing for branch ${branchName}: ${mergeResult.error ?? 'unknown'}`);
131
- // Attempt fallback resolution agent if a worktree exists for this strategy
132
- if (representative.strategy_id) {
133
- const worktreeInfo = getStrategyWorktree(representative.strategy_id);
130
+ console.log(`[focus-merge] Merge retry still failing for branch ${branchName}: ${mergeResult.error ?? 'unknown'}`);
131
+ // Attempt fallback resolution agent if a worktree exists for this focus
132
+ if (representative.focus_id) {
133
+ const worktreeInfo = getFocusWorktree(representative.focus_id);
134
134
  if (worktreeInfo) {
135
- console.log(`[strategy-merge] Spawning fallback resolution agent for branch ${branchName}`);
136
- // Merge integration back into the strategy worktree to surface conflicts
135
+ console.log(`[focus-merge] Spawning fallback resolution agent for branch ${branchName}`);
136
+ // Merge integration back into the focus worktree to surface conflicts
137
137
  const mergeBackResult = await mergeBackFromIntegration({
138
138
  worktreePath: worktreeInfo.worktreePath,
139
139
  integrationBranch: config.integrationBranch,
@@ -145,7 +145,7 @@ export async function checkResolvedMergeConflicts(config) {
145
145
  branchName,
146
146
  integrationBranch: config.integrationBranch,
147
147
  conflictFiles: mergeBackResult.conflictFiles ?? [],
148
- strategyDescription: worktreeInfo.strategyName || branchName,
148
+ focusDescription: worktreeInfo.focusName || branchName,
149
149
  });
150
150
  if (fallbackResult.success) {
151
151
  // Retry merge after resolution
@@ -156,10 +156,10 @@ export async function checkResolvedMergeConflicts(config) {
156
156
  deliveryId: representative.delivery_id,
157
157
  });
158
158
  if (retryResult.success) {
159
- console.log(`[strategy-merge] Merge succeeded after fallback resolution for branch ${branchName}`);
159
+ console.log(`[focus-merge] Merge succeeded after fallback resolution for branch ${branchName}`);
160
160
  for (const d of deliveries) {
161
161
  clearMergeConflictFlag(d.delivery_id);
162
- reportGitState(d.delivery_id, 'merged_to_integration').catch((err) => console.warn(`[strategy-merge] reportGitState failed for ${d.delivery_id}:`, err.message));
162
+ reportGitState(d.delivery_id, 'merged_to_integration').catch((err) => console.warn(`[focus-merge] reportGitState failed for ${d.delivery_id}:`, err.message));
163
163
  }
164
164
  }
165
165
  }
@@ -184,7 +184,7 @@ const RESOLUTION_POLL_INTERVAL_MS = 5000;
184
184
  * Returns when resolution is detected or timeout expires.
185
185
  */
186
186
  export async function requestTeamLeadResolution(teamState, conflictFiles, branchName, integrationBranch, timeoutMs = MERGE_CONFLICT_RESOLUTION_TIMEOUT_MS) {
187
- const { leadStdin, worktreePath, strategyName } = teamState;
187
+ const { leadStdin, worktreePath, focusName } = teamState;
188
188
  if (!leadStdin || !worktreePath) {
189
189
  return { resolved: false, reason: 'No active team lead stdin or worktree' };
190
190
  }
@@ -193,7 +193,7 @@ export async function requestTeamLeadResolution(teamState, conflictFiles, branch
193
193
  try {
194
194
  // Send conflict resolution instructions to the team lead
195
195
  const message = `MERGE CONFLICT RESOLUTION NEEDED\n\n` +
196
- `The integration branch has changes that conflict with your strategy branch.\n\n` +
196
+ `The integration branch has changes that conflict with your focus branch.\n\n` +
197
197
  `**Conflicted files:**\n${conflictFiles.map(f => `- ${f}`).join('\n')}\n\n` +
198
198
  `**Source:** origin/${integrationBranch}\n` +
199
199
  `**Target:** ${branchName}\n\n` +
@@ -205,7 +205,7 @@ export async function requestTeamLeadResolution(teamState, conflictFiles, branch
205
205
  `5. If build+test fails, fix the issues, commit, and re-run\n\n` +
206
206
  `Do NOT run git merge --abort. Your goal is to produce a clean merge commit that passes build and tests.`;
207
207
  sendMessage(leadStdin, message);
208
- console.log(`[strategy-merge] Sent merge conflict resolution request to team lead for "${strategyName}"`);
208
+ console.log(`[focus-merge] Sent merge conflict resolution request to team lead for "${focusName}"`);
209
209
  // Poll git state to detect resolution
210
210
  const deadline = Date.now() + timeoutMs;
211
211
  const preResolutionHead = runGitSync(['rev-parse', 'HEAD'], worktreePath).output;
@@ -220,13 +220,13 @@ export async function requestTeamLeadResolution(teamState, conflictFiles, branch
220
220
  // No unmerged files -- check if HEAD advanced (merge commit created)
221
221
  const currentHead = runGitSync(['rev-parse', 'HEAD'], worktreePath).output;
222
222
  if (currentHead !== preResolutionHead) {
223
- console.log(`[strategy-merge] Team lead resolved merge conflicts for "${strategyName}"`);
223
+ console.log(`[focus-merge] Team lead resolved merge conflicts for "${focusName}"`);
224
224
  return { resolved: true };
225
225
  }
226
226
  }
227
227
  }
228
228
  // Timeout expired
229
- console.warn(`[strategy-merge] Team lead did not resolve merge conflicts within ${timeoutMs / 1000}s for "${strategyName}"`);
229
+ console.warn(`[focus-merge] Team lead did not resolve merge conflicts within ${timeoutMs / 1000}s for "${focusName}"`);
230
230
  return { resolved: false, reason: `Resolution timeout (${timeoutMs / 1000}s)` };
231
231
  }
232
232
  finally {
@@ -234,17 +234,17 @@ export async function requestTeamLeadResolution(teamState, conflictFiles, branch
234
234
  }
235
235
  }
236
236
  /**
237
- * Merge the strategy branch to integration.
237
+ * Merge the focus branch to integration.
238
238
  *
239
239
  * Uses the first delivery ID as the representative for merge operations
240
- * (all deliveries share the same branch in the strategy model).
240
+ * (all deliveries share the same branch in the focus model).
241
241
  *
242
242
  * `workedDeliveryIds` is the set of deliveries the team actually built in
243
243
  * this merge cycle. Git state and the merge commit SHA are recorded only
244
244
  * for these deliveries — never for queued/planning deliveries that happen
245
- * to share the same strategy branch but were never touched.
245
+ * to share the same focus branch but were never touched.
246
246
  */
247
- export async function mergeStrategyBranch(config, teamState, sessionId, branchName, workedDeliveryIds) {
247
+ export async function mergeFocusBranch(config, teamState, sessionId, branchName, workedDeliveryIds) {
248
248
  // Empty-set guard: planning teams may exit before any deliveries are
249
249
  // worked (human cleared the agent role mid-planning, planning failed,
250
250
  // etc.). With workedDeliveryIds required, this also covers the old
@@ -260,11 +260,11 @@ export async function mergeStrategyBranch(config, teamState, sessionId, branchNa
260
260
  workflow = await fetchEffectiveWorkflow(representativeDeliveryId);
261
261
  }
262
262
  catch (err) {
263
- console.warn(`[strategy-executor] Failed to fetch workflow for merge, using fallback:`, err.message);
263
+ console.warn(`[focus-executor] Failed to fetch workflow for merge, using fallback:`, err.message);
264
264
  workflow = { id: 'fallback', stages: [] };
265
265
  }
266
- // ── Merge-back: sync integration into strategy branch before merging out ──
267
- // Merge integration HEAD into the strategy branch to surface conflicts early
266
+ // ── Merge-back: sync integration into focus branch before merging out ──
267
+ // Merge integration HEAD into the focus branch to surface conflicts early
268
268
  const worktreePath = teamState.worktreePath;
269
269
  if (worktreePath) {
270
270
  const mergeBackResult = await mergeBackFromIntegration({
@@ -273,14 +273,14 @@ export async function mergeStrategyBranch(config, teamState, sessionId, branchNa
273
273
  });
274
274
  if (mergeBackResult.status === 'conflict') {
275
275
  const conflictFiles = mergeBackResult.conflictFiles ?? [];
276
- console.log(`[strategy-merge] Merge-back produced conflicts for "${teamState.strategyName}": ` +
276
+ console.log(`[focus-merge] Merge-back produced conflicts for "${teamState.focusName}": ` +
277
277
  `${conflictFiles.join(', ') || 'unknown files'}`);
278
278
  // If team lead is alive, delegate resolution to them
279
279
  if (teamState.leadStdin && teamState.phase === 'executing') {
280
280
  const resolution = await requestTeamLeadResolution(teamState, conflictFiles, branchName, config.integrationBranch);
281
281
  if (resolution.resolved) {
282
282
  // Agent committed the merge resolution, proceed to integration merge
283
- console.log(`[strategy-merge] Conflict resolved by team lead for "${teamState.strategyName}", proceeding`);
283
+ console.log(`[focus-merge] Conflict resolved by team lead for "${teamState.focusName}", proceeding`);
284
284
  }
285
285
  else {
286
286
  // Team lead could not resolve -- escalate
@@ -288,7 +288,7 @@ export async function mergeStrategyBranch(config, teamState, sessionId, branchNa
288
288
  organizationId: teamState.organizationId,
289
289
  sessionId,
290
290
  deliveryId: representativeDeliveryId,
291
- deliveryName: teamState.strategyName,
291
+ deliveryName: teamState.focusName,
292
292
  branchName,
293
293
  integrationBranch: config.integrationBranch,
294
294
  mergeError: `Merge-back conflict unresolved: ${resolution.reason ?? 'unknown'}`,
@@ -298,11 +298,11 @@ export async function mergeStrategyBranch(config, teamState, sessionId, branchNa
298
298
  }
299
299
  else {
300
300
  // No active team lead -- spawn a short-lived resolution agent
301
- console.log(`[strategy-merge] No active team lead for "${teamState.strategyName}", spawning fallback resolution agent`);
301
+ console.log(`[focus-merge] No active team lead for "${teamState.focusName}", spawning fallback resolution agent`);
302
302
  // Report resolving_conflict state for all unmerged deliveries
303
303
  for (const deliveryId of teamState.knownDeliveryIds) {
304
304
  if (!teamState.mergedDeliveryIds.has(deliveryId)) {
305
- reportGitState(deliveryId, 'resolving_conflict').catch(err => console.warn(`[strategy-merge] reportGitState resolving_conflict failed for ${deliveryId}:`, err.message));
305
+ reportGitState(deliveryId, 'resolving_conflict').catch(err => console.warn(`[focus-merge] reportGitState resolving_conflict failed for ${deliveryId}:`, err.message));
306
306
  }
307
307
  }
308
308
  const fallbackResult = await spawnResolutionAgent({
@@ -311,17 +311,17 @@ export async function mergeStrategyBranch(config, teamState, sessionId, branchNa
311
311
  branchName,
312
312
  integrationBranch: config.integrationBranch,
313
313
  conflictFiles,
314
- strategyDescription: teamState.strategyName,
314
+ focusDescription: teamState.focusName,
315
315
  });
316
316
  if (fallbackResult.success) {
317
- console.log(`[strategy-merge] Fallback resolution agent resolved conflicts for "${teamState.strategyName}", proceeding`);
317
+ console.log(`[focus-merge] Fallback resolution agent resolved conflicts for "${teamState.focusName}", proceeding`);
318
318
  }
319
319
  else {
320
320
  await escalateMergeConflict({
321
321
  organizationId: teamState.organizationId,
322
322
  sessionId,
323
323
  deliveryId: representativeDeliveryId,
324
- deliveryName: teamState.strategyName,
324
+ deliveryName: teamState.focusName,
325
325
  branchName,
326
326
  integrationBranch: config.integrationBranch,
327
327
  mergeError: `Fallback resolution agent failed: ${fallbackResult.error ?? 'unknown'}`,
@@ -331,21 +331,21 @@ export async function mergeStrategyBranch(config, teamState, sessionId, branchNa
331
331
  }
332
332
  }
333
333
  if (mergeBackResult.status === 'error') {
334
- console.error(`[strategy-merge] Merge-back error for "${teamState.strategyName}": ${mergeBackResult.message}`);
334
+ console.error(`[focus-merge] Merge-back error for "${teamState.focusName}": ${mergeBackResult.message}`);
335
335
  return { mergeSucceeded: false, exitReason: mergeBackResult.message };
336
336
  }
337
337
  // status === 'clean' -- proceed to merge to integration
338
- console.log(`[strategy-merge] Merge-back clean for "${teamState.strategyName}", proceeding to integration merge`);
338
+ console.log(`[focus-merge] Merge-back clean for "${teamState.focusName}", proceeding to integration merge`);
339
339
  }
340
340
  const mergeOutcome = await mergeDeliveryBranch({
341
341
  config,
342
342
  branchName,
343
343
  deliveryId: representativeDeliveryId,
344
- deliveryName: teamState.strategyName,
344
+ deliveryName: teamState.focusName,
345
345
  organizationId: teamState.organizationId,
346
346
  sessionId,
347
347
  workflow,
348
- strategyId: teamState.strategyId,
348
+ focusId: teamState.focusId,
349
349
  });
350
350
  // Report git state and merge commit SHA only for deliveries that were
351
351
  // actually worked on, never for queued/planning deliveries on the same branch.
@@ -353,11 +353,11 @@ export async function mergeStrategyBranch(config, teamState, sessionId, branchNa
353
353
  if (mergeOutcome.mergeSucceeded) {
354
354
  for (const deliveryId of deliveryIdsForGitState) {
355
355
  if (!teamState.mergedDeliveryIds.has(deliveryId)) {
356
- reportGitState(deliveryId, 'merged_to_integration').catch(err => console.warn(`[strategy-executor] reportGitState merged_to_integration failed for ${deliveryId}:`, err.message));
356
+ reportGitState(deliveryId, 'merged_to_integration').catch(err => console.warn(`[focus-executor] reportGitState merged_to_integration failed for ${deliveryId}:`, err.message));
357
357
  // Propagate the merge commit SHA to all deliveries so the git state
358
358
  // detector can track their containment in main/remote independently.
359
359
  if (mergeOutcome.commitSha) {
360
- updateDeliveryMergeCommitSha(deliveryId, mergeOutcome.commitSha).catch(err => console.warn(`[strategy-merge] updateDeliveryMergeCommitSha failed for ${deliveryId}:`, err.message));
360
+ updateDeliveryMergeCommitSha(deliveryId, mergeOutcome.commitSha).catch(err => console.warn(`[focus-merge] updateDeliveryMergeCommitSha failed for ${deliveryId}:`, err.message));
361
361
  }
362
362
  }
363
363
  }
@@ -366,7 +366,7 @@ export async function mergeStrategyBranch(config, teamState, sessionId, branchNa
366
366
  // Report merge_conflict state for worked deliveries only
367
367
  for (const deliveryId of deliveryIdsForGitState) {
368
368
  if (!teamState.mergedDeliveryIds.has(deliveryId)) {
369
- reportMergeConflictState(deliveryId, branchName).catch(err => console.warn(`[strategy-merge] reportMergeConflictState failed for ${deliveryId}:`, err.message));
369
+ reportMergeConflictState(deliveryId, branchName).catch(err => console.warn(`[focus-merge] reportMergeConflictState failed for ${deliveryId}:`, err.message));
370
370
  }
371
371
  }
372
372
  }
@@ -375,4 +375,4 @@ export async function mergeStrategyBranch(config, teamState, sessionId, branchNa
375
375
  exitReason: mergeOutcome.exitReason,
376
376
  };
377
377
  }
378
- //# sourceMappingURL=strategy-merge.js.map
378
+ //# sourceMappingURL=focus-merge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-merge.js","sourceRoot":"","sources":["../src/focus-merge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Focus execution phase derivation.
3
+ *
4
+ * The focus workflow's stages represent what the team lead is doing right
5
+ * now, not the focus's intent lifecycle. Intent lives on
6
+ * product_focuses.status (proposed/active/complete/cancelled). Execution
7
+ * phase is derived from the focus's delivery aggregate and updated by the
8
+ * daemon as deliveries advance.
9
+ *
10
+ * Phase names match the workflow_stages.name values inserted by migration
11
+ * 20260503132446_focus_workflow_execution_phases.sql.
12
+ */
13
+ export type FocusExecutionPhase = 'kickoff' | 'coding' | 'verifying' | 'reviewing' | 'winding_down' | 'blocked';
14
+ export interface FocusPhaseDelivery {
15
+ executionStatus: string | null;
16
+ }
17
+ export interface FocusPhaseInput {
18
+ deliveries: FocusPhaseDelivery[];
19
+ reviewRequestedAt: string | Date | null;
20
+ }
21
+ export declare function deriveFocusPhase(input: FocusPhaseInput): FocusExecutionPhase;
22
+ //# sourceMappingURL=focus-phase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-phase.d.ts","sourceRoot":"","sources":["../src/focus-phase.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,MAAM,mBAAmB,GAC3B,SAAS,GACT,QAAQ,GACR,WAAW,GACX,WAAW,GACX,cAAc,GACd,SAAS,CAAC;AAEd,MAAM,WAAW,kBAAkB;IACjC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,kBAAkB,EAAE,CAAC;IACjC,iBAAiB,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;CACzC;AAOD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG,mBAAmB,CA4B5E"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Focus execution phase derivation.
3
+ *
4
+ * The focus workflow's stages represent what the team lead is doing right
5
+ * now, not the focus's intent lifecycle. Intent lives on
6
+ * product_focuses.status (proposed/active/complete/cancelled). Execution
7
+ * phase is derived from the focus's delivery aggregate and updated by the
8
+ * daemon as deliveries advance.
9
+ *
10
+ * Phase names match the workflow_stages.name values inserted by migration
11
+ * 20260503132446_focus_workflow_execution_phases.sql.
12
+ */
13
+ const ACTIVE_STATUSES = new Set(['queued', 'coding', 'iterating']);
14
+ const TERMINAL_STATUSES = new Set(['done', 'cancelled']);
15
+ const VERIFY_REVIEW_STATUSES = new Set(['verify', 'in_review']);
16
+ const CASCADABLE_STATUSES = new Set(['verify', 'in_review', 'done', 'cancelled']);
17
+ export function deriveFocusPhase(input) {
18
+ const { deliveries, reviewRequestedAt } = input;
19
+ const total = deliveries.length;
20
+ if (total === 0)
21
+ return 'kickoff';
22
+ let active = 0;
23
+ let terminal = 0;
24
+ let cascadable = 0;
25
+ let verifyReview = 0;
26
+ let paused = 0;
27
+ for (const d of deliveries) {
28
+ const s = d.executionStatus;
29
+ if (s == null)
30
+ continue;
31
+ if (ACTIVE_STATUSES.has(s))
32
+ active++;
33
+ if (TERMINAL_STATUSES.has(s))
34
+ terminal++;
35
+ if (CASCADABLE_STATUSES.has(s))
36
+ cascadable++;
37
+ if (VERIFY_REVIEW_STATUSES.has(s))
38
+ verifyReview++;
39
+ if (s === 'paused')
40
+ paused++;
41
+ }
42
+ if (paused === total)
43
+ return 'blocked';
44
+ if (reviewRequestedAt && active === 0 && verifyReview > 0)
45
+ return 'reviewing';
46
+ if (terminal === total)
47
+ return 'winding_down';
48
+ if (active > 0)
49
+ return 'coding';
50
+ if (cascadable === total && terminal < total)
51
+ return 'verifying';
52
+ return 'kickoff';
53
+ }
54
+ //# sourceMappingURL=focus-phase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-phase.js","sourceRoot":"","sources":["../src/focus-phase.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAmBH,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;AACnE,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;AACzD,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;AAChE,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;AAElF,MAAM,UAAU,gBAAgB,CAAC,KAAsB;IACrD,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,KAAK,CAAC;IAChD,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC;IAEhC,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAElC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC;QAC5B,IAAI,CAAC,IAAI,IAAI;YAAE,SAAS;QACxB,IAAI,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,MAAM,EAAE,CAAC;QACrC,IAAI,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,QAAQ,EAAE,CAAC;QACzC,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,UAAU,EAAE,CAAC;QAC7C,IAAI,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,YAAY,EAAE,CAAC;QAClD,IAAI,CAAC,KAAK,QAAQ;YAAE,MAAM,EAAE,CAAC;IAC/B,CAAC;IAED,IAAI,MAAM,KAAK,KAAK;QAAE,OAAO,SAAS,CAAC;IACvC,IAAI,iBAAiB,IAAI,MAAM,KAAK,CAAC,IAAI,YAAY,GAAG,CAAC;QAAE,OAAO,WAAW,CAAC;IAC9E,IAAI,QAAQ,KAAK,KAAK;QAAE,OAAO,cAAc,CAAC;IAC9C,IAAI,MAAM,GAAG,CAAC;QAAE,OAAO,QAAQ,CAAC;IAChC,IAAI,UAAU,KAAK,KAAK,IAAI,QAAQ,GAAG,KAAK;QAAE,OAAO,WAAW,CAAC;IACjE,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Focus team prompt builder.
3
+ *
4
+ * The core prompt building logic lives in team-prompt-base.ts (section builders
5
+ * + buildFocusTeamPrompt). This file re-exports the main entry points for
6
+ * backward compatibility and houses buildWakeMessage (wake-only, not part of
7
+ * the role framework).
8
+ *
9
+ * Planning prompts have been extracted to planning-prompt-builder.ts
10
+ * and are re-exported here for backward compatibility.
11
+ */
12
+ import type { FocusDeliveryInfo, FocusIssueInfo } from './types.js';
13
+ export type { DeploymentProfileSnapshotContext, FocusTeamPromptContext } from './team-prompt-base.js';
14
+ export { buildFocusTeamPrompt } from './team-prompt-base.js';
15
+ /**
16
+ * Build a re-engagement message listing all non-terminal deliveries that
17
+ * the team must finish, scope, or cancel before the focus can wind down.
18
+ *
19
+ * Unlike `buildWakeMessage` (which only lists agent-actionable deliveries),
20
+ * this message includes deliveries in `planning`, `iterating`, and other
21
+ * non-terminal states so the team is reminded that work is still pending.
22
+ * Used by the scope-coverage guard when the focus executor would
23
+ * otherwise idle-terminate while non-terminal deliveries remain.
24
+ */
25
+ export declare function buildReEngagementMessage(nonTerminalDeliveries: FocusDeliveryInfo[], issues: FocusIssueInfo[]): string;
26
+ /**
27
+ * Build a wake message for an idle team when new work is available.
28
+ *
29
+ * The team already has role context and execution instructions from the
30
+ * initial prompt. This message is a lean update with just the new work.
31
+ */
32
+ export declare function buildWakeMessage(deliveries: FocusDeliveryInfo[], issues: FocusIssueInfo[], knownDeliveryIds: Set<string>): string;
33
+ export type { PlanningPass1Context, PlanningPass2Context } from './planning-prompt-builder.js';
34
+ export { buildPlanningPass1Prompt, buildPlanningPass2Prompt, buildPlanningCombinedPrompt } from './planning-prompt-builder.js';
35
+ //# sourceMappingURL=focus-prompt-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-prompt-builder.d.ts","sourceRoot":"","sources":["../src/focus-prompt-builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EACf,MAAM,YAAY,CAAC;AAIpB,YAAY,EAAE,gCAAgC,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACtG,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,qBAAqB,EAAE,iBAAiB,EAAE,EAC1C,MAAM,EAAE,cAAc,EAAE,GACvB,MAAM,CA+CR;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,iBAAiB,EAAE,EAC/B,MAAM,EAAE,cAAc,EAAE,EACxB,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,GAC5B,MAAM,CA2ER;AAMD,YAAY,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAC/F,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC"}