@telora/daemon 0.22.189 → 0.22.226

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 (376) hide show
  1. package/build-info.json +6 -3
  2. package/dist/backends/index.d.ts.map +1 -1
  3. package/dist/backends/index.js +5 -1
  4. package/dist/backends/index.js.map +1 -1
  5. package/dist/completion/advancement-stall-watchdog.d.ts.map +1 -1
  6. package/dist/completion/advancement-stall-watchdog.js +6 -2
  7. package/dist/completion/advancement-stall-watchdog.js.map +1 -1
  8. package/dist/completion/completion-decision.d.ts +10 -1
  9. package/dist/completion/completion-decision.d.ts.map +1 -1
  10. package/dist/completion/completion-decision.js +1 -1
  11. package/dist/completion/completion-decision.js.map +1 -1
  12. package/dist/completion/completion-fact-readers.d.ts +35 -0
  13. package/dist/completion/completion-fact-readers.d.ts.map +1 -0
  14. package/dist/completion/completion-fact-readers.js +70 -0
  15. package/dist/completion/completion-fact-readers.js.map +1 -0
  16. package/dist/completion/delivery-advancement-guard.d.ts +31 -16
  17. package/dist/completion/delivery-advancement-guard.d.ts.map +1 -1
  18. package/dist/completion/delivery-advancement-guard.js +22 -37
  19. package/dist/completion/delivery-advancement-guard.js.map +1 -1
  20. package/dist/completion/detector.d.ts.map +1 -1
  21. package/dist/completion/detector.js +3 -1
  22. package/dist/completion/detector.js.map +1 -1
  23. package/dist/completion/event-dep-defaults.d.ts +27 -0
  24. package/dist/completion/event-dep-defaults.d.ts.map +1 -0
  25. package/dist/completion/event-dep-defaults.js +30 -0
  26. package/dist/completion/event-dep-defaults.js.map +1 -0
  27. package/dist/completion/event-phases.d.ts +19 -8
  28. package/dist/completion/event-phases.d.ts.map +1 -1
  29. package/dist/completion/event-phases.js +72 -101
  30. package/dist/completion/event-phases.js.map +1 -1
  31. package/dist/completion/event.d.ts +44 -9
  32. package/dist/completion/event.d.ts.map +1 -1
  33. package/dist/completion/event.js +36 -27
  34. package/dist/completion/event.js.map +1 -1
  35. package/dist/completion/index.js +1 -1
  36. package/dist/completion/progress-snapshot.d.ts +13 -9
  37. package/dist/completion/progress-snapshot.d.ts.map +1 -1
  38. package/dist/completion/progress-snapshot.js +16 -13
  39. package/dist/completion/progress-snapshot.js.map +1 -1
  40. package/dist/completion/reengagement-redrive.d.ts +8 -1
  41. package/dist/completion/reengagement-redrive.d.ts.map +1 -1
  42. package/dist/completion/reengagement-redrive.js +16 -2
  43. package/dist/completion/reengagement-redrive.js.map +1 -1
  44. package/dist/completion/session-hold.d.ts +13 -1
  45. package/dist/completion/session-hold.d.ts.map +1 -1
  46. package/dist/completion/session-hold.js +18 -0
  47. package/dist/completion/session-hold.js.map +1 -1
  48. package/dist/completion/state-cascade.d.ts.map +1 -1
  49. package/dist/completion/state-cascade.js +11 -19
  50. package/dist/completion/state-cascade.js.map +1 -1
  51. package/dist/completion/team-phase.d.ts.map +1 -1
  52. package/dist/completion/team-phase.js +1 -0
  53. package/dist/completion/team-phase.js.map +1 -1
  54. package/dist/completion/team-progress-measure.d.ts +70 -0
  55. package/dist/completion/team-progress-measure.d.ts.map +1 -0
  56. package/dist/completion/team-progress-measure.js +285 -0
  57. package/dist/completion/team-progress-measure.js.map +1 -0
  58. package/dist/completion/team-stillness.d.ts +76 -0
  59. package/dist/completion/team-stillness.d.ts.map +1 -0
  60. package/dist/completion/team-stillness.js +96 -0
  61. package/dist/completion/team-stillness.js.map +1 -0
  62. package/dist/completion/unclaimed-migration-notice-phase.d.ts +97 -0
  63. package/dist/completion/unclaimed-migration-notice-phase.d.ts.map +1 -0
  64. package/dist/completion/unclaimed-migration-notice-phase.js +270 -0
  65. package/dist/completion/unclaimed-migration-notice-phase.js.map +1 -0
  66. package/dist/completion/worker-wait.d.ts +84 -0
  67. package/dist/completion/worker-wait.d.ts.map +1 -0
  68. package/dist/completion/worker-wait.js +89 -0
  69. package/dist/completion/worker-wait.js.map +1 -0
  70. package/dist/delivery/delivery-advance-block.d.ts.map +1 -1
  71. package/dist/delivery/delivery-advance-block.js +1 -2
  72. package/dist/delivery/delivery-advance-block.js.map +1 -1
  73. package/dist/directive/directive-executor.d.ts.map +1 -1
  74. package/dist/directive/directive-executor.js +1 -20
  75. package/dist/directive/directive-executor.js.map +1 -1
  76. package/dist/focus/focus-executor.d.ts +1 -0
  77. package/dist/focus/focus-executor.d.ts.map +1 -1
  78. package/dist/focus/focus-executor.js +18 -17
  79. package/dist/focus/focus-executor.js.map +1 -1
  80. package/dist/focus/focus-lifecycle.d.ts.map +1 -1
  81. package/dist/focus/focus-lifecycle.js +7 -1
  82. package/dist/focus/focus-lifecycle.js.map +1 -1
  83. package/dist/focus/focus-team-state.js +1 -1
  84. package/dist/focus/focus-worktree-state.d.ts.map +1 -1
  85. package/dist/focus/focus-worktree-state.js +2 -1
  86. package/dist/focus/focus-worktree-state.js.map +1 -1
  87. package/dist/focus/listener-spawn.d.ts.map +1 -1
  88. package/dist/focus/listener-spawn.js +5 -20
  89. package/dist/focus/listener-spawn.js.map +1 -1
  90. package/dist/focus/listener-state.d.ts.map +1 -1
  91. package/dist/focus/listener-state.js +1 -0
  92. package/dist/focus/listener-state.js.map +1 -1
  93. package/dist/focus/listener.d.ts +1 -0
  94. package/dist/focus/listener.d.ts.map +1 -1
  95. package/dist/focus/listener.js +9 -0
  96. package/dist/focus/listener.js.map +1 -1
  97. package/dist/focus/migration-claim-pass.d.ts +50 -0
  98. package/dist/focus/migration-claim-pass.d.ts.map +1 -0
  99. package/dist/focus/migration-claim-pass.js +234 -0
  100. package/dist/focus/migration-claim-pass.js.map +1 -0
  101. package/dist/focus/pending-spawn-pass-deps.d.ts.map +1 -1
  102. package/dist/focus/pending-spawn-pass-deps.js +2 -1
  103. package/dist/focus/pending-spawn-pass-deps.js.map +1 -1
  104. package/dist/focus/team-actionable-work.d.ts +21 -0
  105. package/dist/focus/team-actionable-work.d.ts.map +1 -1
  106. package/dist/focus/team-actionable-work.js +3 -0
  107. package/dist/focus/team-actionable-work.js.map +1 -1
  108. package/dist/git/focus-integration-sync.d.ts +42 -4
  109. package/dist/git/focus-integration-sync.d.ts.map +1 -1
  110. package/dist/git/focus-integration-sync.js +53 -9
  111. package/dist/git/focus-integration-sync.js.map +1 -1
  112. package/dist/git/types.d.ts.map +1 -1
  113. package/dist/git/types.js +4 -1
  114. package/dist/git/types.js.map +1 -1
  115. package/dist/loops/llm-client.d.ts.map +1 -1
  116. package/dist/loops/llm-client.js +11 -1
  117. package/dist/loops/llm-client.js.map +1 -1
  118. package/dist/merge/merge-back-loop.d.ts.map +1 -1
  119. package/dist/merge/merge-back-loop.js +0 -1
  120. package/dist/merge/merge-back-loop.js.map +1 -1
  121. package/dist/migrations/migration-claim-lifecycle.d.ts +166 -0
  122. package/dist/migrations/migration-claim-lifecycle.d.ts.map +1 -0
  123. package/dist/migrations/migration-claim-lifecycle.js +198 -0
  124. package/dist/migrations/migration-claim-lifecycle.js.map +1 -0
  125. package/dist/migrations/migration-held-set.d.ts +171 -0
  126. package/dist/migrations/migration-held-set.d.ts.map +1 -0
  127. package/dist/migrations/migration-held-set.js +295 -0
  128. package/dist/migrations/migration-held-set.js.map +1 -0
  129. package/dist/migrations/migration-inventory.d.ts +187 -0
  130. package/dist/migrations/migration-inventory.d.ts.map +1 -0
  131. package/dist/migrations/migration-inventory.js +253 -0
  132. package/dist/migrations/migration-inventory.js.map +1 -0
  133. package/dist/migrations/migration-manifest.d.ts +114 -0
  134. package/dist/migrations/migration-manifest.d.ts.map +1 -0
  135. package/dist/migrations/migration-manifest.js +295 -0
  136. package/dist/migrations/migration-manifest.js.map +1 -0
  137. package/dist/prompt/team-prompt-base.js +1 -1
  138. package/dist/prompt-sections/migration-numbering-section.d.ts +58 -0
  139. package/dist/prompt-sections/migration-numbering-section.d.ts.map +1 -0
  140. package/dist/prompt-sections/migration-numbering-section.js +70 -0
  141. package/dist/prompt-sections/migration-numbering-section.js.map +1 -0
  142. package/dist/prompt-sections/migration-numbering-state.d.ts +30 -0
  143. package/dist/prompt-sections/migration-numbering-state.d.ts.map +1 -0
  144. package/dist/prompt-sections/migration-numbering-state.js +24 -0
  145. package/dist/prompt-sections/migration-numbering-state.js.map +1 -0
  146. package/dist/prompt-sections/unclaimed-migration-section.d.ts +38 -0
  147. package/dist/prompt-sections/unclaimed-migration-section.d.ts.map +1 -0
  148. package/dist/prompt-sections/unclaimed-migration-section.js +57 -0
  149. package/dist/prompt-sections/unclaimed-migration-section.js.map +1 -0
  150. package/dist/queries/claim-pass-focuses.d.ts +19 -0
  151. package/dist/queries/claim-pass-focuses.d.ts.map +1 -0
  152. package/dist/queries/claim-pass-focuses.js +72 -0
  153. package/dist/queries/claim-pass-focuses.js.map +1 -0
  154. package/dist/queries/daemon-connection.d.ts.map +1 -1
  155. package/dist/queries/daemon-connection.js +1 -0
  156. package/dist/queries/daemon-connection.js.map +1 -1
  157. package/dist/queries/deliveries.d.ts.map +1 -1
  158. package/dist/queries/deliveries.js +3 -1
  159. package/dist/queries/deliveries.js.map +1 -1
  160. package/dist/queries/delivery-gate-state.js +1 -1
  161. package/dist/queries/escalation-suppression.js +1 -1
  162. package/dist/queries/focus-discovery.d.ts +25 -2
  163. package/dist/queries/focus-discovery.d.ts.map +1 -1
  164. package/dist/queries/focus-discovery.js +16 -9
  165. package/dist/queries/focus-discovery.js.map +1 -1
  166. package/dist/queries/focus-integration-conflict.d.ts +7 -4
  167. package/dist/queries/focus-integration-conflict.d.ts.map +1 -1
  168. package/dist/queries/focus-integration-conflict.js +6 -3
  169. package/dist/queries/focus-integration-conflict.js.map +1 -1
  170. package/dist/queries/focus-unclaimed-migration.d.ts +146 -0
  171. package/dist/queries/focus-unclaimed-migration.d.ts.map +1 -0
  172. package/dist/queries/focus-unclaimed-migration.js +266 -0
  173. package/dist/queries/focus-unclaimed-migration.js.map +1 -0
  174. package/dist/queries/live-focus-branches.d.ts +32 -0
  175. package/dist/queries/live-focus-branches.d.ts.map +1 -0
  176. package/dist/queries/live-focus-branches.js +66 -0
  177. package/dist/queries/live-focus-branches.js.map +1 -0
  178. package/dist/queries/migration-claims.d.ts +25 -0
  179. package/dist/queries/migration-claims.d.ts.map +1 -0
  180. package/dist/queries/migration-claims.js +79 -0
  181. package/dist/queries/migration-claims.js.map +1 -0
  182. package/dist/queries/schemas.d.ts +17 -0
  183. package/dist/queries/schemas.d.ts.map +1 -1
  184. package/dist/queries/schemas.js +18 -1
  185. package/dist/queries/schemas.js.map +1 -1
  186. package/dist/queries/shared.js +1 -1
  187. package/dist/queries/shortfall-park-record.d.ts +6 -1
  188. package/dist/queries/shortfall-park-record.d.ts.map +1 -1
  189. package/dist/queries/shortfall-park-record.js.map +1 -1
  190. package/dist/queries/shortfall-rulings.d.ts +14 -2
  191. package/dist/queries/shortfall-rulings.d.ts.map +1 -1
  192. package/dist/queries/shortfall-rulings.js +17 -3
  193. package/dist/queries/shortfall-rulings.js.map +1 -1
  194. package/dist/queries/verification.js +1 -1
  195. package/dist/queries/verify-own-holds.d.ts.map +1 -1
  196. package/dist/queries/verify-own-holds.js +1 -0
  197. package/dist/queries/verify-own-holds.js.map +1 -1
  198. package/dist/session/session-lineage.d.ts.map +1 -1
  199. package/dist/session/session-lineage.js +3 -0
  200. package/dist/session/session-lineage.js.map +1 -1
  201. package/dist/shell/heartbeat-metadata.d.ts +48 -2
  202. package/dist/shell/heartbeat-metadata.d.ts.map +1 -1
  203. package/dist/shell/heartbeat-metadata.js +80 -3
  204. package/dist/shell/heartbeat-metadata.js.map +1 -1
  205. package/dist/shell/heartbeat.d.ts +13 -0
  206. package/dist/shell/heartbeat.d.ts.map +1 -1
  207. package/dist/shell/heartbeat.js +31 -10
  208. package/dist/shell/heartbeat.js.map +1 -1
  209. package/dist/shell/mcp-resolution.js +1 -1
  210. package/dist/shell/mcp-resolution.js.map +1 -1
  211. package/dist/shell/migration-held-set-publish.d.ts +170 -0
  212. package/dist/shell/migration-held-set-publish.d.ts.map +1 -0
  213. package/dist/shell/migration-held-set-publish.js +172 -0
  214. package/dist/shell/migration-held-set-publish.js.map +1 -0
  215. package/dist/shell/worker-pidfile.d.ts.map +1 -1
  216. package/dist/shell/worker-pidfile.js +1 -0
  217. package/dist/shell/worker-pidfile.js.map +1 -1
  218. package/dist/spawn/helpers.d.ts.map +1 -1
  219. package/dist/spawn/helpers.js +10 -1
  220. package/dist/spawn/helpers.js.map +1 -1
  221. package/dist/spawn/lead-continuation.d.ts +10 -2
  222. package/dist/spawn/lead-continuation.d.ts.map +1 -1
  223. package/dist/spawn/lead-continuation.js +39 -22
  224. package/dist/spawn/lead-continuation.js.map +1 -1
  225. package/dist/spawn/lead-launch.d.ts.map +1 -1
  226. package/dist/spawn/lead-launch.js +1 -0
  227. package/dist/spawn/lead-launch.js.map +1 -1
  228. package/dist/spawn/lead-process-ownership.d.ts.map +1 -1
  229. package/dist/spawn/lead-process-ownership.js +1 -0
  230. package/dist/spawn/lead-process-ownership.js.map +1 -1
  231. package/dist/spawn/one-shot-model.d.ts.map +1 -1
  232. package/dist/spawn/one-shot-model.js +1 -0
  233. package/dist/spawn/one-shot-model.js.map +1 -1
  234. package/dist/spawn/process-group-kill.d.ts.map +1 -1
  235. package/dist/spawn/process-group-kill.js +1 -0
  236. package/dist/spawn/process-group-kill.js.map +1 -1
  237. package/dist/spawn/process-spawn.d.ts +18 -1
  238. package/dist/spawn/process-spawn.d.ts.map +1 -1
  239. package/dist/spawn/process-spawn.js +11 -6
  240. package/dist/spawn/process-spawn.js.map +1 -1
  241. package/dist/spawn/prompt-assembly.d.ts +115 -18
  242. package/dist/spawn/prompt-assembly.d.ts.map +1 -1
  243. package/dist/spawn/prompt-assembly.js +121 -2
  244. package/dist/spawn/prompt-assembly.js.map +1 -1
  245. package/dist/spawn/spawn-and-acknowledge.d.ts +61 -0
  246. package/dist/spawn/spawn-and-acknowledge.d.ts.map +1 -0
  247. package/dist/spawn/spawn-and-acknowledge.js +117 -0
  248. package/dist/spawn/spawn-and-acknowledge.js.map +1 -0
  249. package/dist/spawn/spawn-cooldown.js +1 -1
  250. package/dist/spawn/spawn-decision.d.ts +10 -10
  251. package/dist/spawn/spawn-decision.d.ts.map +1 -1
  252. package/dist/spawn/spawn-decision.js +33 -5
  253. package/dist/spawn/spawn-decision.js.map +1 -1
  254. package/dist/spawn/worktree-session.d.ts.map +1 -1
  255. package/dist/spawn/worktree-session.js +11 -1
  256. package/dist/spawn/worktree-session.js.map +1 -1
  257. package/dist/templates/claude-md.d.ts +1 -1
  258. package/dist/templates/claude-md.d.ts.map +1 -1
  259. package/dist/templates/claude-md.js +24 -0
  260. package/dist/templates/claude-md.js.map +1 -1
  261. package/dist/testing/fixtures/conflicting-repo.d.ts +17 -0
  262. package/dist/testing/fixtures/conflicting-repo.d.ts.map +1 -1
  263. package/dist/testing/fixtures/conflicting-repo.js +31 -0
  264. package/dist/testing/fixtures/conflicting-repo.js.map +1 -1
  265. package/dist/testing/fixtures/index.d.ts.map +1 -1
  266. package/dist/testing/fixtures/index.js +1 -2
  267. package/dist/testing/fixtures/index.js.map +1 -1
  268. package/dist/testing/fixtures/migration-namespace-repo.d.ts +63 -0
  269. package/dist/testing/fixtures/migration-namespace-repo.d.ts.map +1 -0
  270. package/dist/testing/fixtures/migration-namespace-repo.js +164 -0
  271. package/dist/testing/fixtures/migration-namespace-repo.js.map +1 -0
  272. package/dist/testing/fixtures/stubborn-lead-process.d.ts.map +1 -1
  273. package/dist/testing/fixtures/stubborn-lead-process.js +1 -0
  274. package/dist/testing/fixtures/stubborn-lead-process.js.map +1 -1
  275. package/dist/types/focus.d.ts +59 -26
  276. package/dist/types/focus.d.ts.map +1 -1
  277. package/dist/types/index.js +1 -1
  278. package/dist/verify/commit-verdict-pull.d.ts +28 -3
  279. package/dist/verify/commit-verdict-pull.d.ts.map +1 -1
  280. package/dist/verify/commit-verdict-pull.js +160 -23
  281. package/dist/verify/commit-verdict-pull.js.map +1 -1
  282. package/dist/verify/credit-rearm.d.ts.map +1 -1
  283. package/dist/verify/credit-rearm.js +72 -17
  284. package/dist/verify/credit-rearm.js.map +1 -1
  285. package/dist/verify/default-on-guards.d.ts +54 -8
  286. package/dist/verify/default-on-guards.d.ts.map +1 -1
  287. package/dist/verify/default-on-guards.js +132 -17
  288. package/dist/verify/default-on-guards.js.map +1 -1
  289. package/dist/verify/explicit-rearm.d.ts.map +1 -1
  290. package/dist/verify/explicit-rearm.js +1 -0
  291. package/dist/verify/explicit-rearm.js.map +1 -1
  292. package/dist/verify/explicit-row-selection.d.ts +47 -0
  293. package/dist/verify/explicit-row-selection.d.ts.map +1 -0
  294. package/dist/verify/explicit-row-selection.js +37 -0
  295. package/dist/verify/explicit-row-selection.js.map +1 -0
  296. package/dist/verify/gate-run-registry.d.ts.map +1 -1
  297. package/dist/verify/gate-run-registry.js +2 -0
  298. package/dist/verify/gate-run-registry.js.map +1 -1
  299. package/dist/verify/no-own-delta-verdict.d.ts +16 -2
  300. package/dist/verify/no-own-delta-verdict.d.ts.map +1 -1
  301. package/dist/verify/no-own-delta-verdict.js +18 -2
  302. package/dist/verify/no-own-delta-verdict.js.map +1 -1
  303. package/dist/verify/parked-shortfall-reuse.d.ts +194 -0
  304. package/dist/verify/parked-shortfall-reuse.d.ts.map +1 -0
  305. package/dist/verify/parked-shortfall-reuse.js +310 -0
  306. package/dist/verify/parked-shortfall-reuse.js.map +1 -0
  307. package/dist/verify/reselection-log.d.ts +22 -0
  308. package/dist/verify/reselection-log.d.ts.map +1 -0
  309. package/dist/verify/reselection-log.js +87 -0
  310. package/dist/verify/reselection-log.js.map +1 -0
  311. package/dist/verify/shortfall-park.d.ts +8 -1
  312. package/dist/verify/shortfall-park.d.ts.map +1 -1
  313. package/dist/verify/shortfall-park.js +17 -3
  314. package/dist/verify/shortfall-park.js.map +1 -1
  315. package/dist/verify/shortfall-repeat.d.ts.map +1 -1
  316. package/dist/verify/shortfall-repeat.js +7 -2
  317. package/dist/verify/shortfall-repeat.js.map +1 -1
  318. package/dist/verify/shortfall-rulings.d.ts +93 -6
  319. package/dist/verify/shortfall-rulings.d.ts.map +1 -1
  320. package/dist/verify/shortfall-rulings.js +69 -12
  321. package/dist/verify/shortfall-rulings.js.map +1 -1
  322. package/dist/verify/stall-detector-config.d.ts.map +1 -1
  323. package/dist/verify/stall-detector-config.js +2 -1
  324. package/dist/verify/stall-detector-config.js.map +1 -1
  325. package/dist/verify/stall-detectors.d.ts +6 -4
  326. package/dist/verify/stall-detectors.d.ts.map +1 -1
  327. package/dist/verify/stall-detectors.js +9 -6
  328. package/dist/verify/stall-detectors.js.map +1 -1
  329. package/dist/verify/stalled-team-backstop.d.ts +8 -2
  330. package/dist/verify/stalled-team-backstop.d.ts.map +1 -1
  331. package/dist/verify/stalled-team-backstop.js +15 -11
  332. package/dist/verify/stalled-team-backstop.js.map +1 -1
  333. package/dist/verify/team-stall-reapers.d.ts +28 -0
  334. package/dist/verify/team-stall-reapers.d.ts.map +1 -0
  335. package/dist/verify/team-stall-reapers.js +23 -0
  336. package/dist/verify/team-stall-reapers.js.map +1 -0
  337. package/dist/verify/verification-attribution-deps.d.ts +1 -1
  338. package/dist/verify/verification-attribution-deps.d.ts.map +1 -1
  339. package/dist/verify/verification-attribution-deps.js +20 -1
  340. package/dist/verify/verification-attribution-deps.js.map +1 -1
  341. package/dist/verify/verification-boundary-env.d.ts.map +1 -1
  342. package/dist/verify/verification-boundary-env.js +23 -9
  343. package/dist/verify/verification-boundary-env.js.map +1 -1
  344. package/dist/verify/verification-checkout.d.ts +1 -1
  345. package/dist/verify/verification-checkout.d.ts.map +1 -1
  346. package/dist/verify/verification-checkout.js.map +1 -1
  347. package/dist/verify/verification-commit-sharing.d.ts.map +1 -1
  348. package/dist/verify/verification-commit-sharing.js +14 -3
  349. package/dist/verify/verification-commit-sharing.js.map +1 -1
  350. package/dist/verify/verification-config.d.ts.map +1 -1
  351. package/dist/verify/verification-config.js +1 -20
  352. package/dist/verify/verification-config.js.map +1 -1
  353. package/dist/verify/verification-default-on.d.ts +4 -1
  354. package/dist/verify/verification-default-on.d.ts.map +1 -1
  355. package/dist/verify/verification-default-on.js +29 -2
  356. package/dist/verify/verification-default-on.js.map +1 -1
  357. package/dist/verify/verification-deps-default.d.ts.map +1 -1
  358. package/dist/verify/verification-deps-default.js +13 -0
  359. package/dist/verify/verification-deps-default.js.map +1 -1
  360. package/dist/verify/verification-deps.d.ts +38 -0
  361. package/dist/verify/verification-deps.d.ts.map +1 -1
  362. package/dist/verify/verification-deps.js +2 -1
  363. package/dist/verify/verification-deps.js.map +1 -1
  364. package/dist/verify/verification-engine.d.ts.map +1 -1
  365. package/dist/verify/verification-engine.js +44 -15
  366. package/dist/verify/verification-engine.js.map +1 -1
  367. package/dist/verify/verification-feedback.d.ts.map +1 -1
  368. package/dist/verify/verification-feedback.js +1 -19
  369. package/dist/verify/verification-feedback.js.map +1 -1
  370. package/dist/verify/verify-restatement.d.ts.map +1 -1
  371. package/dist/verify/verify-restatement.js +5 -1
  372. package/dist/verify/verify-restatement.js.map +1 -1
  373. package/dist/worktree/provision.d.ts.map +1 -1
  374. package/dist/worktree/provision.js +3 -1
  375. package/dist/worktree/provision.js.map +1 -1
  376. package/package.json +2 -2
package/build-info.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
- "commitSha": "56298ff6f",
3
- "builtAt": "2026-09-23T23:37:32.538Z",
2
+ "commitSha": "54639704b",
3
+ "builtAt": "2026-09-24T17:30:38.767Z",
4
4
  "expectedMigrations": [
5
5
  "20250829113330_create_org_nodes_table.sql",
6
6
  "20250829113402_fix_function_security_search_path.sql",
@@ -821,10 +821,13 @@
821
821
  "20260920225339_builtin_workflow_child_policies_authorize_on_entity.sql",
822
822
  "20260921000043_stamp_arm_covered_target_nodes.sql",
823
823
  "20260922150418_product_request_source_and_mirrored_nodes.sql",
824
+ "20260922152730_create_product_migration_claims.sql",
824
825
  "20260922173056_arm_states_the_future_it_covers.sql",
825
826
  "20260922185904_focus_debug_arm_refused_section.sql",
827
+ "20260922192310_migration_claims_record_their_snapshot.sql",
826
828
  "20260922221935_product_request_observation_snapshot.sql",
827
829
  "20260922225316_product_request_observation_entry_is_atomic.sql",
828
- "20260923002532_capture_request_observation_in_one_snapshot.sql"
830
+ "20260923002532_capture_request_observation_in_one_snapshot.sql",
831
+ "20260924010304_org_default_pass_models_opus_5_5.sql"
829
832
  ]
830
833
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/backends/index.ts"],"names":[],"mappings":"AA+BA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,GACzB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,UAAU,EACV,YAAY,EACZ,cAAc,GACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,kBAAkB,GACxB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,KAAK,yBAAyB,GAC/B,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/backends/index.ts"],"names":[],"mappings":"AAmCA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,GACzB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,UAAU,EACV,YAAY,EACZ,cAAc,GACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,kBAAkB,GACxB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,KAAK,yBAAyB,GAC/B,MAAM,mBAAmB,CAAC"}
@@ -2,14 +2,18 @@
2
2
  // Pinned by: packages/daemon/src/backends/agent-backend.test.ts,
3
3
  // packages/daemon/src/backends/backend-availability.test.ts,
4
4
  // packages/daemon/src/backends/resolve-backend.test.ts,
5
+ // packages/daemon/src/completion/unclaimed-migration-notice-phase.test.ts,
5
6
  // packages/daemon/src/focus/focus-executor-characterization.test.ts,
6
7
  // packages/daemon/src/focus/resolve-effective-model.test.ts,
7
8
  // packages/daemon/src/focus/spawn-crash-isolation.test.ts,
8
9
  // packages/daemon/src/spawn/helpers-activity-wiring.test.ts,
9
10
  // packages/daemon/src/spawn/per-pass-spawn-model.test.ts,
11
+ // packages/daemon/src/spawn/progress-measure-wiring.test.ts,
12
+ // packages/daemon/src/spawn/spawn-and-acknowledge.test.ts,
10
13
  // packages/daemon/src/spawn/spawn-compact-turn.test.ts,
11
14
  // packages/daemon/src/spawn/spawn-team-process-ownership.test.ts,
12
- // packages/daemon/src/verify/stall-detectors-clock-wiring.test.ts
15
+ // packages/daemon/src/verify/stall-detectors-clock-wiring.test.ts,
16
+ // packages/daemon/src/verify/team-stall-reapers.test.ts
13
17
  // PINNED-BY-END
14
18
  /**
15
19
  * Agent backend layer -- engine-agnostic spawn seam.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/backends/index.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,iEAAiE;AACjE,+DAA+D;AAC/D,0DAA0D;AAC1D,uEAAuE;AACvE,+DAA+D;AAC/D,6DAA6D;AAC7D,+DAA+D;AAC/D,4DAA4D;AAC5D,0DAA0D;AAC1D,oEAAoE;AACpE,oEAAoE;AACpE,gBAAgB;AAEhB;;;;;GAKG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,6EAA6E;AAC7E,8EAA8E;AAC9E,6DAA6D;AAC7D,eAAe,CAAC,aAAa,CAAC,CAAC;AAC/B,eAAe,CAAC,YAAY,CAAC,CAAC;AAS9B,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,UAAU,EACV,YAAY,EACZ,cAAc,GACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,eAAe,GAMhB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,gBAAgB,EAChB,uBAAuB,GAExB,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/backends/index.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,iEAAiE;AACjE,+DAA+D;AAC/D,0DAA0D;AAC1D,6EAA6E;AAC7E,uEAAuE;AACvE,+DAA+D;AAC/D,6DAA6D;AAC7D,+DAA+D;AAC/D,4DAA4D;AAC5D,+DAA+D;AAC/D,6DAA6D;AAC7D,0DAA0D;AAC1D,oEAAoE;AACpE,qEAAqE;AACrE,0DAA0D;AAC1D,gBAAgB;AAEhB;;;;;GAKG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,6EAA6E;AAC7E,8EAA8E;AAC9E,6DAA6D;AAC7D,eAAe,CAAC,aAAa,CAAC,CAAC;AAC/B,eAAe,CAAC,YAAY,CAAC,CAAC;AAS9B,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,UAAU,EACV,YAAY,EACZ,cAAc,GACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,eAAe,GAMhB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,gBAAgB,EAChB,uBAAuB,GAExB,MAAM,mBAAmB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"advancement-stall-watchdog.d.ts","sourceRoot":"","sources":["../../src/completion/advancement-stall-watchdog.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC9E,OAAO,EAA8B,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAKjE;;;;;;GAMG;AACH,wBAAsB,6BAA6B,CACjD,GAAG,EAAE,sBAAsB,EAC3B,IAAI,EAAE,mBAAmB,EACzB,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,gBAAgB,EACxB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,OAAO,CAAC,CA2DlB"}
1
+ {"version":3,"file":"advancement-stall-watchdog.d.ts","sourceRoot":"","sources":["../../src/completion/advancement-stall-watchdog.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAC9E,OAAO,EAA2D,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAClH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAKjE;;;;;;GAMG;AACH,wBAAsB,6BAA6B,CACjD,GAAG,EAAE,sBAAsB,EAC3B,IAAI,EAAE,mBAAmB,EACzB,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,gBAAgB,EACxB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,OAAO,CAAC,CA+DlB"}
@@ -16,7 +16,7 @@
16
16
  */
17
17
  import { recordDeliveryAdvancementCycle } from './delivery-advancement-guard.js';
18
18
  import { escalateDeliveryAdvancementStalled } from './event-escalations.js';
19
- import { NO_PROGRESS_CYCLE_FLOOR_MS } from './event-phases.js';
19
+ import { NO_PROGRESS_CYCLE_FLOOR_MS, NO_PROGRESS_STALL_WINDOW_MS } from './event-phases.js';
20
20
  import { createLogger } from '../shell/log.js';
21
21
  const log = createLogger({ module: 'focus-executor' });
22
22
  /**
@@ -46,7 +46,11 @@ export async function checkDeliveryAdvancementStall(ctx, deps, facts, action, no
46
46
  // watchdog is a cycle-counter too, so a burst of completion events must
47
47
  // not be able to trip it either (without this the scope-coverage floor
48
48
  // just moves the false team_failure from one guard to its twin).
49
- facts.nowMs, NO_PROGRESS_CYCLE_FLOOR_MS)
49
+ facts.nowMs, NO_PROGRESS_CYCLE_FLOOR_MS,
50
+ // The same team-activity axes the scope-coverage snapshot read, and the
51
+ // same stall window: this guard reads the ONE progress measure, measured
52
+ // across respawns from its own persisted last-advanced instant.
53
+ { activity: facts.snapshot.activity ?? null, stallWindowMs: NO_PROGRESS_STALL_WINDOW_MS })
50
54
  : null;
51
55
  if (!deliveryAdvancement?.thresholdReached)
52
56
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"advancement-stall-watchdog.js","sourceRoot":"","sources":["../../src/completion/advancement-stall-watchdog.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,oFAAoF;AACpF,gBAAgB;AAEhB;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,kCAAkC,EAAE,MAAM,wBAAwB,CAAC;AAE5E,OAAO,EAAE,0BAA0B,EAAwB,MAAM,mBAAmB,CAAC;AAErF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,GAA2B,EAC3B,IAAyB,EACzB,KAAsB,EACtB,MAAwB,EACxB,eAAuB;IAEvB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC;IAE9C,MAAM,YAAY,GAChB,KAAK,CAAC,qBAAqB;QAC3B,MAAM,CAAC,IAAI,KAAK,oCAAoC;QACpD,CAAC,KAAK,CAAC,aAAa,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACxD,MAAM,mBAAmB,GAAG,YAAY;QACtC,CAAC,CAAC,8BAA8B,CAC9B,OAAO,EACP,KAAK,CAAC,oBAAoB;QAC1B,wEAAwE;QACxE,iEAAiE;QACjE,gEAAgE;QAChE,yEAAyE;QACzE,kEAAkE;QAClE,uEAAuE;QACvE,sEAAsE;QACtE,2CAA2C;QAC3C,KAAK,CAAC,gBAAgB,EACtB,KAAK,CAAC,YAAY,EAClB,eAAe;QACf,yEAAyE;QACzE,wEAAwE;QACxE,uEAAuE;QACvE,iEAAiE;QACjE,KAAK,CAAC,KAAK,EACX,0BAA0B,CAC3B;QACD,CAAC,CAAC,IAAI,CAAC;IACT,IAAI,CAAC,mBAAmB,EAAE,gBAAgB;QAAE,OAAO,KAAK,CAAC;IAEzD,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,CAAC;QACH,gBAAgB,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;IACtE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CACN,qCAAqC,SAAS,yDAA0D,GAAa,CAAC,OAAO,EAAE,CAChI,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,MAAM,kCAAkC,CAAC;YACvC,cAAc,EAAE,SAAS,CAAC,cAAc;YACxC,SAAS,EAAE,SAAS,CAAC,aAAa,IAAI,EAAE;YACxC,OAAO;YACP,SAAS;YACT,WAAW,EAAE,SAAS,CAAC,MAAM;YAC7B,MAAM,EAAE,mBAAmB,CAAC,mBAAmB;YAC/C,UAAU,EAAE,KAAK,CAAC,oBAAoB;SACvC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,IAAI,CACN,mCAAmC,SAAS,gBAAgB;YAC5D,kFAAkF,CACnF,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,cAAc,GAAG,eAAe,CAAC;IAC3C,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC5B,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"advancement-stall-watchdog.js","sourceRoot":"","sources":["../../src/completion/advancement-stall-watchdog.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,oFAAoF;AACpF,gBAAgB;AAEhB;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,kCAAkC,EAAE,MAAM,wBAAwB,CAAC;AAE5E,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAwB,MAAM,mBAAmB,CAAC;AAElH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,GAA2B,EAC3B,IAAyB,EACzB,KAAsB,EACtB,MAAwB,EACxB,eAAuB;IAEvB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC;IAE9C,MAAM,YAAY,GAChB,KAAK,CAAC,qBAAqB;QAC3B,MAAM,CAAC,IAAI,KAAK,oCAAoC;QACpD,CAAC,KAAK,CAAC,aAAa,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACxD,MAAM,mBAAmB,GAAG,YAAY;QACtC,CAAC,CAAC,8BAA8B,CAC9B,OAAO,EACP,KAAK,CAAC,oBAAoB;QAC1B,wEAAwE;QACxE,iEAAiE;QACjE,gEAAgE;QAChE,yEAAyE;QACzE,kEAAkE;QAClE,uEAAuE;QACvE,sEAAsE;QACtE,2CAA2C;QAC3C,KAAK,CAAC,gBAAgB,EACtB,KAAK,CAAC,YAAY,EAClB,eAAe;QACf,yEAAyE;QACzE,wEAAwE;QACxE,uEAAuE;QACvE,iEAAiE;QACjE,KAAK,CAAC,KAAK,EACX,0BAA0B;QAC1B,wEAAwE;QACxE,yEAAyE;QACzE,gEAAgE;QAChE,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,IAAI,IAAI,EAAE,aAAa,EAAE,2BAA2B,EAAE,CAC1F;QACD,CAAC,CAAC,IAAI,CAAC;IACT,IAAI,CAAC,mBAAmB,EAAE,gBAAgB;QAAE,OAAO,KAAK,CAAC;IAEzD,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,CAAC;QACH,gBAAgB,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;IACtE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CACN,qCAAqC,SAAS,yDAA0D,GAAa,CAAC,OAAO,EAAE,CAChI,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,MAAM,kCAAkC,CAAC;YACvC,cAAc,EAAE,SAAS,CAAC,cAAc;YACxC,SAAS,EAAE,SAAS,CAAC,aAAa,IAAI,EAAE;YACxC,OAAO;YACP,SAAS;YACT,WAAW,EAAE,SAAS,CAAC,MAAM;YAC7B,MAAM,EAAE,mBAAmB,CAAC,mBAAmB;YAC/C,UAAU,EAAE,KAAK,CAAC,oBAAoB;SACvC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,IAAI,CACN,mCAAmC,SAAS,gBAAgB;YAC5D,kFAAkF,CACnF,CAAC;IACJ,CAAC;IACD,SAAS,CAAC,cAAc,GAAG,eAAe,CAAC;IAC3C,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC5B,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -16,7 +16,9 @@
16
16
  * and terminate
17
17
  * 2. team has NO actionable work -> terminate cleanly (daemon/review-
18
18
  * managed states move the remaining deliveries)
19
- * 3. no-progress counter crossed the limit -> escalate and terminate
19
+ * 3. no-progress counter crossed the limit AND the stall window elapsed
20
+ * (no movement on any axis of the one progress measure for
21
+ * NO_PROGRESS_STALL_WINDOW_MS) -> escalate and terminate
20
22
  * 4. actionable deliveries carry open issues -> mid-focus handoff with
21
23
  * the new work
22
24
  * 5. otherwise (planning deliveries remain) -> re-engagement nudge
@@ -61,6 +63,13 @@ export interface CompletionDecisionFacts {
61
63
  * new delivery in the wake message).
62
64
  */
63
65
  hasNewlyAppearedDelivery: boolean;
66
+ /**
67
+ * The team has been still -- no movement on any axis of the one progress
68
+ * measure -- for the whole stall window (NO_PROGRESS_STALL_WINDOW_MS). A
69
+ * count of cycles alone never ends a team: the cycles are the daemon's own
70
+ * wake-ups. Omitted only by callers that predate the window (read as elapsed).
71
+ */
72
+ stallWindowElapsed?: boolean;
64
73
  }
65
74
  /** The action handleCompletionEvent executes for this cycle. */
66
75
  export type CompletionAction =
@@ -1 +1 @@
1
- {"version":3,"file":"completion-decision.d.ts","sourceRoot":"","sources":["../../src/completion/completion-decision.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,4EAA4E;AAC5E,MAAM,WAAW,uBAAuB;IACtC;;;;OAIG;IACH,qBAAqB,EAAE,OAAO,CAAC;IAC/B;;;;;OAKG;IACH,iBAAiB,EAAE,OAAO,CAAC;IAC3B;;;;;OAKG;IACH,sBAAsB,EAAE,OAAO,CAAC;IAChC,wEAAwE;IACxE,gBAAgB,EAAE,MAAM,CAAC;IACzB,yEAAyE;IACzE,eAAe,EAAE,MAAM,CAAC;IACxB,oEAAoE;IACpE,uBAAuB,EAAE,OAAO,CAAC;IACjC;;;;;;;;;;OAUG;IACH,wBAAwB,EAAE,OAAO,CAAC;CACnC;AAED,gEAAgE;AAChE,MAAM,MAAM,gBAAgB;AAC1B,6EAA6E;AAC3E;IAAE,IAAI,EAAE,wCAAwC,CAAA;CAAE;AACpD,0EAA0E;GACxE;IAAE,IAAI,EAAE,8BAA8B,CAAA;CAAE;AAC1C,0EAA0E;GACxE;IAAE,IAAI,EAAE,oCAAoC,CAAA;CAAE;AAChD,qEAAqE;GACnE;IAAE,IAAI,EAAE,kBAAkB,CAAA;CAAE;AAC9B,4EAA4E;GAC1E;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC;AAEzB;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,IAAI,CAAC,uBAAuB,EAAE,uBAAuB,GAAG,mBAAmB,CAAC,GAClF,OAAO,CAET;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,uBAAuB,GAAG,gBAAgB,CAyBvF"}
1
+ {"version":3,"file":"completion-decision.d.ts","sourceRoot":"","sources":["../../src/completion/completion-decision.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,4EAA4E;AAC5E,MAAM,WAAW,uBAAuB;IACtC;;;;OAIG;IACH,qBAAqB,EAAE,OAAO,CAAC;IAC/B;;;;;OAKG;IACH,iBAAiB,EAAE,OAAO,CAAC;IAC3B;;;;;OAKG;IACH,sBAAsB,EAAE,OAAO,CAAC;IAChC,wEAAwE;IACxE,gBAAgB,EAAE,MAAM,CAAC;IACzB,yEAAyE;IACzE,eAAe,EAAE,MAAM,CAAC;IACxB,oEAAoE;IACpE,uBAAuB,EAAE,OAAO,CAAC;IACjC;;;;;;;;;;OAUG;IACH,wBAAwB,EAAE,OAAO,CAAC;IAClC;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,gEAAgE;AAChE,MAAM,MAAM,gBAAgB;AAC1B,6EAA6E;AAC3E;IAAE,IAAI,EAAE,wCAAwC,CAAA;CAAE;AACpD,0EAA0E;GACxE;IAAE,IAAI,EAAE,8BAA8B,CAAA;CAAE;AAC1C,0EAA0E;GACxE;IAAE,IAAI,EAAE,oCAAoC,CAAA;CAAE;AAChD,qEAAqE;GACnE;IAAE,IAAI,EAAE,kBAAkB,CAAA;CAAE;AAC9B,4EAA4E;GAC1E;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC;AAEzB;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,IAAI,CAAC,uBAAuB,EAAE,uBAAuB,GAAG,mBAAmB,CAAC,GAClF,OAAO,CAET;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,uBAAuB,GAAG,gBAAgB,CAyBvF"}
@@ -32,7 +32,7 @@ export function decideCompletionAction(facts) {
32
32
  }
33
33
  return { kind: 'terminate_no_actionable_work' };
34
34
  }
35
- if (facts.noProgressCycles >= facts.noProgressLimit) {
35
+ if (facts.noProgressCycles >= facts.noProgressLimit && facts.stallWindowElapsed !== false) {
36
36
  return { kind: 'escalate_no_progress_and_terminate' };
37
37
  }
38
38
  if (facts.hasActionableOpenIssues) {
@@ -1 +1 @@
1
- {"version":3,"file":"completion-decision.js","sourceRoot":"","sources":["../../src/completion/completion-decision.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,wEAAwE;AACxE,gBAAgB;AAiFhB;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAmF;IAEnF,OAAO,CAAC,KAAK,CAAC,qBAAqB,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC;AAClE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAA8B;IACnE,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC;QACjC,uEAAuE;QACvE,wEAAwE;QACxE,6EAA6E;QAC7E,4EAA4E;QAC5E,4EAA4E;QAC5E,uEAAuE;QACvE,2EAA2E;QAC3E,8CAA8C;QAC9C,IAAI,KAAK,CAAC,wBAAwB,EAAE,CAAC;YACnC,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;QACtC,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,iBAAiB,IAAI,KAAK,CAAC,sBAAsB,EAAE,CAAC;YAC7D,OAAO,EAAE,IAAI,EAAE,wCAAwC,EAAE,CAAC;QAC5D,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,8BAA8B,EAAE,CAAC;IAClD,CAAC;IACD,IAAI,KAAK,CAAC,gBAAgB,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QACpD,OAAO,EAAE,IAAI,EAAE,oCAAoC,EAAE,CAAC;IACxD,CAAC;IACD,IAAI,KAAK,CAAC,uBAAuB,EAAE,CAAC;QAClC,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;IACtC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AAC9B,CAAC"}
1
+ {"version":3,"file":"completion-decision.js","sourceRoot":"","sources":["../../src/completion/completion-decision.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,wEAAwE;AACxE,gBAAgB;AA0FhB;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAmF;IAEnF,OAAO,CAAC,KAAK,CAAC,qBAAqB,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC;AAClE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAA8B;IACnE,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC;QACjC,uEAAuE;QACvE,wEAAwE;QACxE,6EAA6E;QAC7E,4EAA4E;QAC5E,4EAA4E;QAC5E,uEAAuE;QACvE,2EAA2E;QAC3E,8CAA8C;QAC9C,IAAI,KAAK,CAAC,wBAAwB,EAAE,CAAC;YACnC,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;QACtC,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,iBAAiB,IAAI,KAAK,CAAC,sBAAsB,EAAE,CAAC;YAC7D,OAAO,EAAE,IAAI,EAAE,wCAAwC,EAAE,CAAC;QAC5D,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,8BAA8B,EAAE,CAAC;IAClD,CAAC;IACD,IAAI,KAAK,CAAC,gBAAgB,IAAI,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,kBAAkB,KAAK,KAAK,EAAE,CAAC;QAC1F,OAAO,EAAE,IAAI,EAAE,oCAAoC,EAAE,CAAC;IACxD,CAAC;IACD,IAAI,KAAK,CAAC,uBAAuB,EAAE,CAAC;QAClC,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;IACtC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AAC9B,CAAC"}
@@ -0,0 +1,35 @@
1
+ import type { CompletionEventDeps } from './event.js';
2
+ /**
3
+ * The focus worktree and the sha its HEAD is at, resolved once for BOTH the
4
+ * git-activity snapshot dimension and the dirty re-wake guard.
5
+ *
6
+ * A team that wrote AND committed code this cycle moved the focus branch HEAD
7
+ * even when no DB state moved; feeding that sha into the snapshot makes the
8
+ * commit reset the no-progress counter through the EXISTING
9
+ * madeProgress/snapshotsEqual machinery. Null when no worktree is registered or
10
+ * git could not be read.
11
+ */
12
+ export declare function resolveFocusHead(focusId: string, deps: CompletionEventDeps): {
13
+ focusWorktreePath: string | null;
14
+ focusHeadSha: string | null;
15
+ };
16
+ /**
17
+ * Whether this focus holds an unclaimed-migration record the team has NOT been
18
+ * shown yet.
19
+ *
20
+ * Actionable work for exactly one turn (see
21
+ * TeamActionableWorkInput.unclaimedMigrationUnnamed): the file on the branch
22
+ * carries a migration number no claim knows about, and the team that wrote it
23
+ * is the only one that can claim or remove it.
24
+ *
25
+ * A FAILED READ ANSWERS FALSE HERE, and that is deliberate -- the fail-closed
26
+ * posture lives one layer up, in the phase that actually DELIVERS the notice.
27
+ * That phase runs first, holds the team on an unreadable record and marks
28
+ * nothing, so the state is retained and retried either way. This fact, by
29
+ * contrast, is folded into the shared actionable-work predicate AHEAD of the
30
+ * verify interlock: answering true on a failed artifact read would let an API
31
+ * outage override an unrelated hold and keep a team the verify interlock had
32
+ * just withheld. One place fails closed; this one stays out of the way.
33
+ */
34
+ export declare function readUnnamedUnclaimedMigration(focusId: string, deps: CompletionEventDeps): Promise<boolean>;
35
+ //# sourceMappingURL=completion-fact-readers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completion-fact-readers.d.ts","sourceRoot":"","sources":["../../src/completion/completion-fact-readers.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,mBAAmB,GACxB;IAAE,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAQnE;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,OAAO,CAAC,CAUlB"}
@@ -0,0 +1,70 @@
1
+ // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
+ // Pinned by: packages/daemon/src/completion/exit-unclaimed-migration-hold.test.ts,
3
+ // packages/daemon/src/migrations/claim-production-wiring.test.ts
4
+ // PINNED-BY-END
5
+ /**
6
+ * The IO-backed facts the completion decision gathers, each behind its own
7
+ * deps-defaulted reader.
8
+ *
9
+ * WHY THEY SIT HERE. `computeCompletionFacts` decides; these two go and look.
10
+ * Both follow the same pattern -- an injectable seam with a production default,
11
+ * so a test drives the decision without a worktree or an API, and production
12
+ * needs no wiring at the call site. Kept out of the decision module because
13
+ * they are the only IO in it and because that module is at the file-size
14
+ * ceiling, where every future fact would have to displace an old one.
15
+ *
16
+ * @module completion/completion-fact-readers
17
+ */
18
+ import { getFocusWorktree as defaultGetFocusWorktree } from '../focus/focus-worktree-state.js';
19
+ import { readWorktreeHeadSha as defaultReadWorktreeHeadSha } from '../git/index.js';
20
+ import { parseUnclaimedNamedAt, readUnclaimedMigrationRecordStrict, } from '../queries/focus-unclaimed-migration.js';
21
+ /**
22
+ * The focus worktree and the sha its HEAD is at, resolved once for BOTH the
23
+ * git-activity snapshot dimension and the dirty re-wake guard.
24
+ *
25
+ * A team that wrote AND committed code this cycle moved the focus branch HEAD
26
+ * even when no DB state moved; feeding that sha into the snapshot makes the
27
+ * commit reset the no-progress counter through the EXISTING
28
+ * madeProgress/snapshotsEqual machinery. Null when no worktree is registered or
29
+ * git could not be read.
30
+ */
31
+ export function resolveFocusHead(focusId, deps) {
32
+ const resolveWorktree = deps.getFocusWorktree ?? defaultGetFocusWorktree;
33
+ const readHeadSha = deps.readWorktreeHeadSha ?? defaultReadWorktreeHeadSha;
34
+ const focusWorktreePath = resolveWorktree(focusId)?.worktreePath ?? null;
35
+ return {
36
+ focusWorktreePath,
37
+ focusHeadSha: focusWorktreePath !== null ? readHeadSha(focusWorktreePath) : null,
38
+ };
39
+ }
40
+ /**
41
+ * Whether this focus holds an unclaimed-migration record the team has NOT been
42
+ * shown yet.
43
+ *
44
+ * Actionable work for exactly one turn (see
45
+ * TeamActionableWorkInput.unclaimedMigrationUnnamed): the file on the branch
46
+ * carries a migration number no claim knows about, and the team that wrote it
47
+ * is the only one that can claim or remove it.
48
+ *
49
+ * A FAILED READ ANSWERS FALSE HERE, and that is deliberate -- the fail-closed
50
+ * posture lives one layer up, in the phase that actually DELIVERS the notice.
51
+ * That phase runs first, holds the team on an unreadable record and marks
52
+ * nothing, so the state is retained and retried either way. This fact, by
53
+ * contrast, is folded into the shared actionable-work predicate AHEAD of the
54
+ * verify interlock: answering true on a failed artifact read would let an API
55
+ * outage override an unrelated hold and keep a team the verify interlock had
56
+ * just withheld. One place fails closed; this one stays out of the way.
57
+ */
58
+ export async function readUnnamedUnclaimedMigration(focusId, deps) {
59
+ try {
60
+ // Strict, for the same reason the notice phase uses it: the lenient read
61
+ // swallows a failure into null, and null here means "nothing to tell".
62
+ const readRecord = deps.readUnclaimedMigrationRecord ?? readUnclaimedMigrationRecordStrict;
63
+ const record = await readRecord(focusId);
64
+ return record !== null && parseUnclaimedNamedAt(record) === null;
65
+ }
66
+ catch {
67
+ return false; // the notice phase already held on this; see above
68
+ }
69
+ }
70
+ //# sourceMappingURL=completion-fact-readers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completion-fact-readers.js","sourceRoot":"","sources":["../../src/completion/completion-fact-readers.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,mFAAmF;AACnF,mEAAmE;AACnE,gBAAgB;AAEhB;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,gBAAgB,IAAI,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC/F,OAAO,EAAE,mBAAmB,IAAI,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AACpF,OAAO,EACL,qBAAqB,EACrB,kCAAkC,GACnC,MAAM,yCAAyC,CAAC;AAGjD;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAe,EACf,IAAyB;IAEzB,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,IAAI,uBAAuB,CAAC;IACzE,MAAM,WAAW,GAAG,IAAI,CAAC,mBAAmB,IAAI,0BAA0B,CAAC;IAC3E,MAAM,iBAAiB,GAAG,eAAe,CAAC,OAAO,CAAC,EAAE,YAAY,IAAI,IAAI,CAAC;IACzE,OAAO;QACL,iBAAiB;QACjB,YAAY,EAAE,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI;KACjF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,OAAe,EACf,IAAyB;IAEzB,IAAI,CAAC;QACH,yEAAyE;QACzE,uEAAuE;QACvE,MAAM,UAAU,GAAG,IAAI,CAAC,4BAA4B,IAAI,kCAAkC,CAAC;QAC3F,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;QACzC,OAAO,MAAM,KAAK,IAAI,IAAI,qBAAqB,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;IACnE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC,CAAC,mDAAmD;IACnE,CAAC;AACH,CAAC"}
@@ -9,8 +9,10 @@
9
9
  * the daemon terminates and respawns the team. That persistence is the whole
10
10
  * reason this guard exists as a separate structure.
11
11
  *
12
- * Progress axes (a cycle "advanced" when ANY of the three moved since the prior
13
- * cycle):
12
+ * Progress axes -- the ONE progress measure (team-progress-measure.ts); a cycle
13
+ * "advanced" when ANY moved since the prior cycle (4 and 5: the team's agent
14
+ * activity and its uncommitted diff, added 2026-09-24 so a team whose workers
15
+ * are editing is not read as thrashing):
14
16
  * 1. delivery execution_status per delivery (the original, coarse axis),
15
17
  * 2. a work-issue fingerprint -- a canonical hash of {issueId -> status} --
16
18
  * so ANY issue transition (To Do -> In Progress -> Done, or a new issue)
@@ -40,18 +42,15 @@
40
42
  * signal; the two do not double-count -- they measure different windows (this
41
43
  * guard: cross-respawn; madeProgress: within a single keep-alive team).
42
44
  */
43
- import type { FocusDeliveryInfo, FocusIssueInfo } from '../types/index.js';
44
- export interface DeliveryAdvancementSnapshot {
45
- /** deliveryId -> execution_status. Keys also encode the delivery SET, so an
46
- * added/removed delivery makes snapshots unequal (baseline reset, AC#4). */
47
- deliveryStatuses: Record<string, string>;
48
- /** Canonical fingerprint of {issueId -> status}; any issue transition or new
49
- * issue changes it. Empty string when there are no issues. */
50
- issueFingerprint: string;
51
- /** Focus-branch HEAD sha, or null when no worktree/git read is available.
52
- * A different sha means the team committed this cycle. */
53
- focusHeadSha: string | null;
54
- }
45
+ import type { FocusDeliveryInfo, FocusIssueInfo, TeamActivityMarks, TeamProgressAxes } from '../types/index.js';
46
+ /**
47
+ * The guard's persisted reading IS the one progress measure's axes
48
+ * (completion/team-progress-measure.ts): delivery statuses (whose keys also
49
+ * encode the delivery SET), the issue fingerprint, the focus HEAD, and the team
50
+ * activity axes (agent activity, uncommitted diff) -- so a respawned team whose
51
+ * workers are editing is not counted as thrashing.
52
+ */
53
+ export type DeliveryAdvancementSnapshot = TeamProgressAxes;
55
54
  export interface DeliveryAdvancementState {
56
55
  snapshot: DeliveryAdvancementSnapshot;
57
56
  noAdvancementCycles: number;
@@ -64,6 +63,12 @@ export interface DeliveryAdvancementState {
64
63
  * (floorMs=0) behave identically.
65
64
  */
66
65
  lastRecordedAt?: number;
66
+ /**
67
+ * Epoch ms the focus last ADVANCED (or was baselined). The stall window is
68
+ * measured from it, so it spans respawns: a thrashing focus whose teams each
69
+ * live a minute still reaches the threshold once the window has passed.
70
+ */
71
+ lastAdvancedAt?: number;
67
72
  }
68
73
  export interface DeliveryAdvancementDecision {
69
74
  advanced: boolean;
@@ -91,7 +96,8 @@ export declare function setDeliveryAdvancementPersister(fn: DeliveryAdvancementP
91
96
  * to compare against, silently forgiving the streak.
92
97
  */
93
98
  export declare function hydrateDeliveryAdvancementState(focusId: string, state: DeliveryAdvancementState | null): void;
94
- export declare function takeDeliveryAdvancementSnapshot(deliveries: Pick<FocusDeliveryInfo, 'id' | 'executionStatus'>[], issues?: Pick<FocusIssueInfo, 'id' | 'status'>[], focusHeadSha?: string | null): DeliveryAdvancementSnapshot;
99
+ export declare function takeDeliveryAdvancementSnapshot(deliveries: Pick<FocusDeliveryInfo, 'id' | 'executionStatus'>[], issues?: Pick<FocusIssueInfo, 'id' | 'status'>[], focusHeadSha?: string | null, activity?: TeamActivityMarks | null): DeliveryAdvancementSnapshot;
100
+ /** Equal when the one progress measure reads no movement between them. */
95
101
  export declare function deliveryAdvancementSnapshotsEqual(a: DeliveryAdvancementSnapshot, b: DeliveryAdvancementSnapshot): boolean;
96
102
  export declare function recordDeliveryAdvancementCycle(focusId: string, deliveries: Pick<FocusDeliveryInfo, 'id' | 'executionStatus'>[], issues: Pick<FocusIssueInfo, 'id' | 'status'>[], focusHeadSha: string | null, threshold: number,
97
103
  /** Clock value for the time floor (default Date.now for pre-floor callers). */
@@ -102,6 +108,15 @@ nowMs?: number,
102
108
  * expects). The completion handler passes NO_PROGRESS_CYCLE_FLOOR_MS so this
103
109
  * watchdog can no longer be tripped by a burst of completion events.
104
110
  */
105
- floorMs?: number): DeliveryAdvancementDecision;
111
+ floorMs?: number, opts?: {
112
+ /** The team-activity axes of the measure, read this cycle (null: not compared). */
113
+ activity?: TeamActivityMarks | null;
114
+ /**
115
+ * Real time the focus must have gone without advancing (measured across
116
+ * respawns from lastAdvancedAt) before the threshold may be reached. 0 = no
117
+ * window (the pre-window callers).
118
+ */
119
+ stallWindowMs?: number;
120
+ }): DeliveryAdvancementDecision;
106
121
  export declare function resetDeliveryAdvancementGuard(focusId?: string): void;
107
122
  //# sourceMappingURL=delivery-advancement-guard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-advancement-guard.d.ts","sourceRoot":"","sources":["../../src/completion/delivery-advancement-guard.ts"],"names":[],"mappings":"AASA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE3E,MAAM,WAAW,2BAA2B;IAC1C;iFAC6E;IAC7E,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC;mEAC+D;IAC/D,gBAAgB,EAAE,MAAM,CAAC;IACzB;+DAC2D;IAC3D,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,2BAA2B,CAAC;IACtC,mBAAmB,EAAE,MAAM,CAAC;IAC5B;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,OAAO,CAAC;IAClB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAID;;;;;;;;GAQG;AACH,MAAM,MAAM,4BAA4B,GAAG,CACzC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,wBAAwB,GAAG,IAAI,KACnC,IAAI,CAAC;AAIV,kFAAkF;AAClF,wBAAgB,+BAA+B,CAAC,EAAE,EAAE,4BAA4B,GAAG,IAAI,GAAG,IAAI,CAE7F;AAQD;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,wBAAwB,GAAG,IAAI,GACrC,IAAI,CAIN;AAeD,wBAAgB,+BAA+B,CAC7C,UAAU,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,GAAG,iBAAiB,CAAC,EAAE,EAC/D,MAAM,GAAE,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,QAAQ,CAAC,EAAO,EACpD,YAAY,GAAE,MAAM,GAAG,IAAW,GACjC,2BAA2B,CAU7B;AAED,wBAAgB,iCAAiC,CAC/C,CAAC,EAAE,2BAA2B,EAC9B,CAAC,EAAE,2BAA2B,GAC7B,OAAO,CAaT;AAED,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,GAAG,iBAAiB,CAAC,EAAE,EAC/D,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,QAAQ,CAAC,EAAE,EAC/C,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,SAAS,EAAE,MAAM;AACjB,+EAA+E;AAC/E,KAAK,GAAE,MAAmB;AAC1B;;;;;GAKG;AACH,OAAO,SAAI,GACV,2BAA2B,CAqC7B;AAED,wBAAgB,6BAA6B,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CASpE"}
1
+ {"version":3,"file":"delivery-advancement-guard.d.ts","sourceRoot":"","sources":["../../src/completion/delivery-advancement-guard.ts"],"names":[],"mappings":"AAaA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAGhH;;;;;;GAMG;AACH,MAAM,MAAM,2BAA2B,GAAG,gBAAgB,CAAC;AAE3D,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,2BAA2B,CAAC;IACtC,mBAAmB,EAAE,MAAM,CAAC;IAC5B;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,OAAO,CAAC;IAClB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAID;;;;;;;;GAQG;AACH,MAAM,MAAM,4BAA4B,GAAG,CACzC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,wBAAwB,GAAG,IAAI,KACnC,IAAI,CAAC;AAIV,kFAAkF;AAClF,wBAAgB,+BAA+B,CAAC,EAAE,EAAE,4BAA4B,GAAG,IAAI,GAAG,IAAI,CAE7F;AAQD;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,wBAAwB,GAAG,IAAI,GACrC,IAAI,CAIN;AAED,wBAAgB,+BAA+B,CAC7C,UAAU,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,GAAG,iBAAiB,CAAC,EAAE,EAC/D,MAAM,GAAE,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,QAAQ,CAAC,EAAO,EACpD,YAAY,GAAE,MAAM,GAAG,IAAW,EAClC,QAAQ,GAAE,iBAAiB,GAAG,IAAW,GACxC,2BAA2B,CAW7B;AAED,0EAA0E;AAC1E,wBAAgB,iCAAiC,CAC/C,CAAC,EAAE,2BAA2B,EAC9B,CAAC,EAAE,2BAA2B,GAC7B,OAAO,CAET;AAED,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,GAAG,iBAAiB,CAAC,EAAE,EAC/D,MAAM,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,QAAQ,CAAC,EAAE,EAC/C,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,SAAS,EAAE,MAAM;AACjB,+EAA+E;AAC/E,KAAK,GAAE,MAAmB;AAC1B;;;;;GAKG;AACH,OAAO,SAAI,EACX,IAAI,GAAE;IACJ,mFAAmF;IACnF,QAAQ,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACpC;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACnB,GACL,2BAA2B,CA0C7B;AAED,wBAAgB,6BAA6B,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CASpE"}
@@ -1,11 +1,16 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
- // Pinned by: packages/daemon/src/completion/durable-bounds.test.ts,
2
+ // Pinned by: packages/daemon/src/completion/delivery-advancement-persistence.test.ts,
3
+ // packages/daemon/src/completion/durable-bounds.test.ts,
3
4
  // packages/daemon/src/completion/non-advanceable-thrash-guard.test.ts,
4
5
  // packages/daemon/src/completion/progress-guards-recorded-intent.test.ts,
5
6
  // packages/daemon/src/completion/reengagement-redrive.test.ts,
6
7
  // packages/daemon/src/completion/stall-guard-time-floor.test.ts,
7
- // packages/daemon/src/focus/spawn-focus-team-guard-wiring.test.ts
8
+ // packages/daemon/src/completion/worker-wait.test.ts,
9
+ // packages/daemon/src/focus/spawn-focus-team-guard-wiring.test.ts,
10
+ // packages/daemon/src/spawn/lead-continuation.test.ts,
11
+ // packages/daemon/src/spawn/progress-measure-wiring.test.ts
8
12
  // PINNED-BY-END
13
+ import { computeIssueFingerprint, teamProgressMoved } from './team-progress-measure.js';
9
14
  const perFocusState = new Map();
10
15
  let advancementPersister = null;
11
16
  /** Register (or clear, with null) the durable write-through persister at boot. */
@@ -32,19 +37,7 @@ export function hydrateDeliveryAdvancementState(focusId, state) {
32
37
  return; // in-memory wins during a run
33
38
  perFocusState.set(focusId, state);
34
39
  }
35
- /**
36
- * Stable, key-order-independent fingerprint of the work-issue state. Sorting by
37
- * issueId makes the fingerprint depend only on the set of issues and their
38
- * statuses, so a fetch that returns issues in a different order does not
39
- * manufacture phantom progress.
40
- */
41
- function computeIssueFingerprint(issues) {
42
- return issues
43
- .map(i => `${i.id}:${i.status ?? ''}`)
44
- .sort()
45
- .join('|');
46
- }
47
- export function takeDeliveryAdvancementSnapshot(deliveries, issues = [], focusHeadSha = null) {
40
+ export function takeDeliveryAdvancementSnapshot(deliveries, issues = [], focusHeadSha = null, activity = null) {
48
41
  const deliveryStatuses = {};
49
42
  for (const delivery of deliveries) {
50
43
  deliveryStatuses[delivery.id] = delivery.executionStatus ?? '';
@@ -53,24 +46,12 @@ export function takeDeliveryAdvancementSnapshot(deliveries, issues = [], focusHe
53
46
  deliveryStatuses,
54
47
  issueFingerprint: computeIssueFingerprint(issues),
55
48
  focusHeadSha,
49
+ activity,
56
50
  };
57
51
  }
52
+ /** Equal when the one progress measure reads no movement between them. */
58
53
  export function deliveryAdvancementSnapshotsEqual(a, b) {
59
- if (a.issueFingerprint !== b.issueFingerprint)
60
- return false;
61
- if (a.focusHeadSha !== b.focusHeadSha)
62
- return false;
63
- const aKeys = Object.keys(a.deliveryStatuses).sort();
64
- const bKeys = Object.keys(b.deliveryStatuses).sort();
65
- if (aKeys.length !== bKeys.length)
66
- return false;
67
- for (let i = 0; i < aKeys.length; i += 1) {
68
- const key = aKeys[i];
69
- if (key !== bKeys[i] || a.deliveryStatuses[key] !== b.deliveryStatuses[key]) {
70
- return false;
71
- }
72
- }
73
- return true;
54
+ return !teamProgressMoved(a, b);
74
55
  }
75
56
  export function recordDeliveryAdvancementCycle(focusId, deliveries, issues, focusHeadSha, threshold,
76
57
  /** Clock value for the time floor (default Date.now for pre-floor callers). */
@@ -81,20 +62,24 @@ nowMs = Date.now(),
81
62
  * expects). The completion handler passes NO_PROGRESS_CYCLE_FLOOR_MS so this
82
63
  * watchdog can no longer be tripped by a burst of completion events.
83
64
  */
84
- floorMs = 0) {
85
- const snapshot = takeDeliveryAdvancementSnapshot(deliveries, issues, focusHeadSha);
65
+ floorMs = 0, opts = {}) {
66
+ const snapshot = takeDeliveryAdvancementSnapshot(deliveries, issues, focusHeadSha, opts.activity ?? null);
86
67
  const prior = perFocusState.get(focusId);
87
68
  if (!prior) {
88
- commitState(focusId, { snapshot, noAdvancementCycles: 0, lastRecordedAt: nowMs });
69
+ commitState(focusId, { snapshot, noAdvancementCycles: 0, lastRecordedAt: nowMs, lastAdvancedAt: nowMs });
89
70
  return { advanced: true, noAdvancementCycles: 0, thresholdReached: false };
90
71
  }
91
72
  const advanced = !deliveryAdvancementSnapshotsEqual(prior.snapshot, snapshot);
92
73
  if (advanced) {
93
74
  // Progress is progress regardless of timing -- reset the counter and rebase
94
75
  // the snapshot + floor clock on this cycle.
95
- commitState(focusId, { snapshot, noAdvancementCycles: 0, lastRecordedAt: nowMs });
76
+ commitState(focusId, { snapshot, noAdvancementCycles: 0, lastRecordedAt: nowMs, lastAdvancedAt: nowMs });
96
77
  return { advanced: true, noAdvancementCycles: 0, thresholdReached: false };
97
78
  }
79
+ // The stall window: a state persisted before lastAdvancedAt existed measures
80
+ // from its last counted cycle, else from now -- toward patience, never a kill.
81
+ const lastAdvancedAt = prior.lastAdvancedAt ?? prior.lastRecordedAt ?? nowMs;
82
+ const windowElapsed = nowMs - lastAdvancedAt >= (opts.stallWindowMs ?? 0);
98
83
  // No advancement. FLOOR the increment: a cycle arriving within floorMs of the
99
84
  // last counted cycle is a burst artifact -- HOLD the counter (do not
100
85
  // increment), keep the prior snapshot + timestamp so the floor is measured
@@ -105,15 +90,15 @@ floorMs = 0) {
105
90
  return {
106
91
  advanced: false,
107
92
  noAdvancementCycles: prior.noAdvancementCycles,
108
- thresholdReached: prior.noAdvancementCycles >= threshold,
93
+ thresholdReached: windowElapsed && prior.noAdvancementCycles >= threshold,
109
94
  };
110
95
  }
111
96
  const noAdvancementCycles = prior.noAdvancementCycles + 1;
112
- commitState(focusId, { snapshot, noAdvancementCycles, lastRecordedAt: nowMs });
97
+ commitState(focusId, { snapshot, noAdvancementCycles, lastRecordedAt: nowMs, lastAdvancedAt });
113
98
  return {
114
99
  advanced,
115
100
  noAdvancementCycles,
116
- thresholdReached: noAdvancementCycles >= threshold,
101
+ thresholdReached: windowElapsed && noAdvancementCycles >= threshold,
117
102
  };
118
103
  }
119
104
  export function resetDeliveryAdvancementGuard(focusId) {
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-advancement-guard.js","sourceRoot":"","sources":["../../src/completion/delivery-advancement-guard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delivery-advancement-guard.js","sourceRoot":"","sources":["../../src/completion/delivery-advancement-guard.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["../../src/completion/detector.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKxE,MAAM,WAAW,wBAAwB;IACvC,oEAAoE;IACpE,QAAQ,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IACzC,sEAAsE;IACtE,IAAI,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,cAAc;IAC7B,4DAA4D;IAC5D,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,QAAQ,CAAA;KAAE,CAAC,CAAC;IAChD,4CAA4C;IAC5C,oBAAoB,EAAE,OAAO,CAAC;IAC9B,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,+CAA+C;IAC/C,cAAc,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAID;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,YAAY;IAClD,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,SAAS,CAA8C;IAC/D,OAAO,CAAC,sBAAsB,CAA8C;IAC5E,OAAO,CAAC,UAAU,CAAS;IAE3B,yEAAyE;IACzE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAEvC;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAiC;IAElE;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAe;IAEtD;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAE7C,uDAAuD;IACvD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;gBAEtB,OAAO,CAAC,EAAE;QACpB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC;QACjD,qBAAqB,CAAC,EAAE,MAAM,MAAM,CAAC;QACrC,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;IASD;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAgBtC,OAAO,CAAC,YAAY;IAmCpB,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,eAAe;IAgBvB,OAAO,CAAC,cAAc;IAsBtB;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAU/B,wDAAwD;IACxD,OAAO,CAAC,YAAY;IAepB;;;;;OAKG;IACH,OAAO,CAAC,yBAAyB;IAejC,8EAA8E;IAC9E,OAAO,CAAC,2BAA2B;IAMnC,OAAO,CAAC,2BAA2B;IAOnC,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,cAAc;IAOtB,8CAA8C;IAC9C,QAAQ,IAAI;QACV,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,eAAe,EAAE,MAAM,EAAE,CAAC;QAC1B,UAAU,EAAE,OAAO,CAAC;KACrB;IAUD;;;;;;;;OAQG;IACH,KAAK,IAAI,IAAI;IAQb,uBAAuB;IACvB,OAAO,IAAI,IAAI;CAKhB"}
1
+ {"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["../../src/completion/detector.ts"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKxE,MAAM,WAAW,wBAAwB;IACvC,oEAAoE;IACpE,QAAQ,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IACzC,sEAAsE;IACtE,IAAI,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,cAAc;IAC7B,4DAA4D;IAC5D,MAAM,EAAE,OAAO,CAAC,UAAU,EAAE;QAAE,IAAI,EAAE,QAAQ,CAAA;KAAE,CAAC,CAAC;IAChD,4CAA4C;IAC5C,oBAAoB,EAAE,OAAO,CAAC;IAC9B,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,+CAA+C;IAC/C,cAAc,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAID;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,YAAY;IAClD,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,eAAe,CAA4B;IACnD,OAAO,CAAC,SAAS,CAA8C;IAC/D,OAAO,CAAC,sBAAsB,CAA8C;IAC5E,OAAO,CAAC,UAAU,CAAS;IAE3B,yEAAyE;IACzE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAEvC;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAiC;IAElE;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAe;IAEtD;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAS;IAE7C,uDAAuD;IACvD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;gBAEtB,OAAO,CAAC,EAAE;QACpB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,eAAe,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC;QACjD,qBAAqB,CAAC,EAAE,MAAM,MAAM,CAAC;QACrC,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;IASD;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAgBtC,OAAO,CAAC,YAAY;IAmCpB,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,eAAe;IAgBvB,OAAO,CAAC,cAAc;IAsBtB;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAU/B,wDAAwD;IACxD,OAAO,CAAC,YAAY;IAepB;;;;;OAKG;IACH,OAAO,CAAC,yBAAyB;IAejC,8EAA8E;IAC9E,OAAO,CAAC,2BAA2B;IAMnC,OAAO,CAAC,2BAA2B;IAOnC,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,cAAc;IAOtB,8CAA8C;IAC9C,QAAQ,IAAI;QACV,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,eAAe,EAAE,MAAM,EAAE,CAAC;QAC1B,UAAU,EAAE,OAAO,CAAC;KACrB;IAUD;;;;;;;;OAQG;IACH,KAAK,IAAI,IAAI;IAQb,uBAAuB;IACvB,OAAO,IAAI,IAAI;CAKhB"}
@@ -3,7 +3,9 @@
3
3
  // packages/daemon/src/completion/detector-pending-input.test.ts,
4
4
  // packages/daemon/src/completion/review-window-idle-coding-lead-regression.test.ts,
5
5
  // packages/daemon/src/completion/terminal-error-terminate.test.ts,
6
- // packages/daemon/src/integration/agent-owned-scoping-integration.test.ts
6
+ // packages/daemon/src/integration/agent-owned-scoping-integration.test.ts,
7
+ // packages/daemon/src/spawn/progress-measure-wiring.test.ts,
8
+ // packages/daemon/src/verify/team-stall-reapers.test.ts
7
9
  // PINNED-BY-END
8
10
  /**
9
11
  * Completion detector for interactive agent sessions.
@@ -1 +1 @@
1
- {"version":3,"file":"detector.js","sourceRoot":"","sources":["../../src/completion/detector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"detector.js","sourceRoot":"","sources":["../../src/completion/detector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * The production implementations behind the completion event's optional deps.
3
+ *
4
+ * Extracted from event.ts, which had grown past the file-size floor. These are
5
+ * adapters, not decisions: each turns a general query into the narrow shape one
6
+ * dep declares. `defaultDeps` itself stays in event.ts, because one of its
7
+ * members is `handleCompletionEvent` and moving it here would form a runtime
8
+ * import cycle.
9
+ *
10
+ * @module completion/event-dep-defaults
11
+ */
12
+ import type { DaemonConfig } from '../types/index.js';
13
+ /**
14
+ * Default re-drive scheduler: a real setTimeout whose handle is unref()'d so a
15
+ * pending re-drive never keeps the daemon process alive on its own. The
16
+ * returned canceller clears the timer.
17
+ */
18
+ export declare function defaultScheduleReDrive(fn: () => void, delayMs: number): () => void;
19
+ /** The focus's review_requested_at, resolved FRESH at the completion event. */
20
+ export declare function defaultGetReviewRequestedAt(config: DaemonConfig, focusId: string): Promise<string | null>;
21
+ /** The focus's human-ratification state, backing the scope-coverage guard. */
22
+ export declare function defaultGetFocusRatificationState(config: DaemonConfig, focusId: string): Promise<{
23
+ readOnly: boolean;
24
+ auditOrigin: boolean;
25
+ ratifiedAt: string | null;
26
+ }>;
27
+ //# sourceMappingURL=event-dep-defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-dep-defaults.d.ts","sourceRoot":"","sources":["../../src/completion/event-dep-defaults.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,IAAI,CAIlF;AAED,+EAA+E;AAC/E,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGxB;AAED,8EAA8E;AAC9E,wBAAsB,gCAAgC,CACpD,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,WAAW,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAQjF"}