@telora/daemon 0.22.208 → 0.22.227

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 (248) hide show
  1. package/build-info.json +4 -3
  2. package/dist/backends/index.d.ts.map +1 -1
  3. package/dist/backends/index.js +3 -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/delivery-advancement-guard.d.ts +31 -16
  13. package/dist/completion/delivery-advancement-guard.d.ts.map +1 -1
  14. package/dist/completion/delivery-advancement-guard.js +22 -37
  15. package/dist/completion/delivery-advancement-guard.js.map +1 -1
  16. package/dist/completion/detector.d.ts.map +1 -1
  17. package/dist/completion/detector.js +3 -1
  18. package/dist/completion/detector.js.map +1 -1
  19. package/dist/completion/event-phases.d.ts +19 -8
  20. package/dist/completion/event-phases.d.ts.map +1 -1
  21. package/dist/completion/event-phases.js +67 -88
  22. package/dist/completion/event-phases.js.map +1 -1
  23. package/dist/completion/event.d.ts +12 -9
  24. package/dist/completion/event.d.ts.map +1 -1
  25. package/dist/completion/event.js +6 -3
  26. package/dist/completion/event.js.map +1 -1
  27. package/dist/completion/index.js +1 -1
  28. package/dist/completion/progress-snapshot.d.ts +13 -9
  29. package/dist/completion/progress-snapshot.d.ts.map +1 -1
  30. package/dist/completion/progress-snapshot.js +16 -13
  31. package/dist/completion/progress-snapshot.js.map +1 -1
  32. package/dist/completion/reengagement-redrive.d.ts +8 -1
  33. package/dist/completion/reengagement-redrive.d.ts.map +1 -1
  34. package/dist/completion/reengagement-redrive.js +16 -2
  35. package/dist/completion/reengagement-redrive.js.map +1 -1
  36. package/dist/completion/review-defect-detector.d.ts +58 -18
  37. package/dist/completion/review-defect-detector.d.ts.map +1 -1
  38. package/dist/completion/review-defect-detector.js +62 -27
  39. package/dist/completion/review-defect-detector.js.map +1 -1
  40. package/dist/completion/review-exit-attribution.d.ts +6 -3
  41. package/dist/completion/review-exit-attribution.d.ts.map +1 -1
  42. package/dist/completion/review-exit-attribution.js +9 -7
  43. package/dist/completion/review-exit-attribution.js.map +1 -1
  44. package/dist/completion/review-exit-deps.d.ts +2 -0
  45. package/dist/completion/review-exit-deps.d.ts.map +1 -1
  46. package/dist/completion/review-exit-deps.js +3 -0
  47. package/dist/completion/review-exit-deps.js.map +1 -1
  48. package/dist/completion/review-exit-evidence.d.ts +8 -0
  49. package/dist/completion/review-exit-evidence.d.ts.map +1 -1
  50. package/dist/completion/review-exit-evidence.js +39 -27
  51. package/dist/completion/review-exit-evidence.js.map +1 -1
  52. package/dist/completion/review-exit-foreign-findings.d.ts +5 -1
  53. package/dist/completion/review-exit-foreign-findings.d.ts.map +1 -1
  54. package/dist/completion/review-exit-foreign-findings.js +4 -4
  55. package/dist/completion/review-exit-foreign-findings.js.map +1 -1
  56. package/dist/completion/review-exit-phase.js +4 -4
  57. package/dist/completion/review-exit-phase.js.map +1 -1
  58. package/dist/completion/state-cascade.d.ts.map +1 -1
  59. package/dist/completion/state-cascade.js +11 -19
  60. package/dist/completion/state-cascade.js.map +1 -1
  61. package/dist/completion/team-progress-measure.d.ts +70 -0
  62. package/dist/completion/team-progress-measure.d.ts.map +1 -0
  63. package/dist/completion/team-progress-measure.js +285 -0
  64. package/dist/completion/team-progress-measure.js.map +1 -0
  65. package/dist/completion/team-stillness.d.ts +76 -0
  66. package/dist/completion/team-stillness.d.ts.map +1 -0
  67. package/dist/completion/team-stillness.js +96 -0
  68. package/dist/completion/team-stillness.js.map +1 -0
  69. package/dist/completion/worker-wait.d.ts +84 -0
  70. package/dist/completion/worker-wait.d.ts.map +1 -0
  71. package/dist/completion/worker-wait.js +89 -0
  72. package/dist/completion/worker-wait.js.map +1 -0
  73. package/dist/delivery/delivery-advance-block.d.ts.map +1 -1
  74. package/dist/delivery/delivery-advance-block.js +1 -2
  75. package/dist/delivery/delivery-advance-block.js.map +1 -1
  76. package/dist/delivery/delivery-reconciler.d.ts +3 -3
  77. package/dist/focus/focus-lifecycle.d.ts.map +1 -1
  78. package/dist/focus/focus-lifecycle.js +7 -1
  79. package/dist/focus/focus-lifecycle.js.map +1 -1
  80. package/dist/focus/focus-team-state.js +1 -1
  81. package/dist/focus/focus-worktree-state.d.ts.map +1 -1
  82. package/dist/focus/focus-worktree-state.js +2 -1
  83. package/dist/focus/focus-worktree-state.js.map +1 -1
  84. package/dist/git/focus-integration-sync.d.ts +42 -4
  85. package/dist/git/focus-integration-sync.d.ts.map +1 -1
  86. package/dist/git/focus-integration-sync.js +53 -9
  87. package/dist/git/focus-integration-sync.js.map +1 -1
  88. package/dist/git/types.d.ts.map +1 -1
  89. package/dist/git/types.js +4 -2
  90. package/dist/git/types.js.map +1 -1
  91. package/dist/merge/merge-back-loop.d.ts.map +1 -1
  92. package/dist/merge/merge-back-loop.js +0 -1
  93. package/dist/merge/merge-back-loop.js.map +1 -1
  94. package/dist/prompt-sections/persona-sections.d.ts +14 -0
  95. package/dist/prompt-sections/persona-sections.d.ts.map +1 -1
  96. package/dist/prompt-sections/persona-sections.js +50 -19
  97. package/dist/prompt-sections/persona-sections.js.map +1 -1
  98. package/dist/prompt-sections/testing-standard.d.ts +4 -1
  99. package/dist/prompt-sections/testing-standard.d.ts.map +1 -1
  100. package/dist/prompt-sections/testing-standard.js +14 -4
  101. package/dist/prompt-sections/testing-standard.js.map +1 -1
  102. package/dist/queries/deliveries.d.ts.map +1 -1
  103. package/dist/queries/deliveries.js +3 -1
  104. package/dist/queries/deliveries.js.map +1 -1
  105. package/dist/queries/delivery-gate-state.js +1 -1
  106. package/dist/queries/escalation-suppression.js +1 -1
  107. package/dist/queries/escalations.js +1 -1
  108. package/dist/queries/focus-integration-conflict.d.ts +7 -4
  109. package/dist/queries/focus-integration-conflict.d.ts.map +1 -1
  110. package/dist/queries/focus-integration-conflict.js +6 -3
  111. package/dist/queries/focus-integration-conflict.js.map +1 -1
  112. package/dist/queries/review-finding-facts.d.ts +38 -0
  113. package/dist/queries/review-finding-facts.d.ts.map +1 -0
  114. package/dist/queries/review-finding-facts.js +43 -0
  115. package/dist/queries/review-finding-facts.js.map +1 -0
  116. package/dist/queries/schemas.d.ts +15 -0
  117. package/dist/queries/schemas.d.ts.map +1 -1
  118. package/dist/queries/schemas.js +12 -1
  119. package/dist/queries/schemas.js.map +1 -1
  120. package/dist/queries/shortfall-park-record.d.ts +6 -1
  121. package/dist/queries/shortfall-park-record.d.ts.map +1 -1
  122. package/dist/queries/shortfall-park-record.js.map +1 -1
  123. package/dist/queries/shortfall-rulings.d.ts +14 -2
  124. package/dist/queries/shortfall-rulings.d.ts.map +1 -1
  125. package/dist/queries/shortfall-rulings.js +17 -3
  126. package/dist/queries/shortfall-rulings.js.map +1 -1
  127. package/dist/queries/verification.js +1 -1
  128. package/dist/queries/verify-own-holds.d.ts.map +1 -1
  129. package/dist/queries/verify-own-holds.js +1 -0
  130. package/dist/queries/verify-own-holds.js.map +1 -1
  131. package/dist/spawn/helpers.d.ts.map +1 -1
  132. package/dist/spawn/helpers.js +9 -1
  133. package/dist/spawn/helpers.js.map +1 -1
  134. package/dist/spawn/lead-continuation.d.ts +10 -2
  135. package/dist/spawn/lead-continuation.d.ts.map +1 -1
  136. package/dist/spawn/lead-continuation.js +39 -22
  137. package/dist/spawn/lead-continuation.js.map +1 -1
  138. package/dist/spawn/one-shot-model.d.ts.map +1 -1
  139. package/dist/spawn/one-shot-model.js +1 -0
  140. package/dist/spawn/one-shot-model.js.map +1 -1
  141. package/dist/spawn/worktree-session.d.ts.map +1 -1
  142. package/dist/spawn/worktree-session.js +11 -1
  143. package/dist/spawn/worktree-session.js.map +1 -1
  144. package/dist/testing/fixtures/conflicting-repo.d.ts +17 -0
  145. package/dist/testing/fixtures/conflicting-repo.d.ts.map +1 -1
  146. package/dist/testing/fixtures/conflicting-repo.js +31 -0
  147. package/dist/testing/fixtures/conflicting-repo.js.map +1 -1
  148. package/dist/testing/fixtures/index.d.ts.map +1 -1
  149. package/dist/testing/fixtures/index.js +1 -2
  150. package/dist/testing/fixtures/index.js.map +1 -1
  151. package/dist/types/focus.d.ts +59 -26
  152. package/dist/types/focus.d.ts.map +1 -1
  153. package/dist/types/index.js +1 -1
  154. package/dist/verify/commit-verdict-pull.d.ts +28 -3
  155. package/dist/verify/commit-verdict-pull.d.ts.map +1 -1
  156. package/dist/verify/commit-verdict-pull.js +160 -23
  157. package/dist/verify/commit-verdict-pull.js.map +1 -1
  158. package/dist/verify/credit-rearm.d.ts.map +1 -1
  159. package/dist/verify/credit-rearm.js +72 -17
  160. package/dist/verify/credit-rearm.js.map +1 -1
  161. package/dist/verify/default-on-guards.d.ts +54 -8
  162. package/dist/verify/default-on-guards.d.ts.map +1 -1
  163. package/dist/verify/default-on-guards.js +132 -17
  164. package/dist/verify/default-on-guards.js.map +1 -1
  165. package/dist/verify/explicit-rearm.d.ts.map +1 -1
  166. package/dist/verify/explicit-rearm.js +1 -0
  167. package/dist/verify/explicit-rearm.js.map +1 -1
  168. package/dist/verify/explicit-row-selection.d.ts +47 -0
  169. package/dist/verify/explicit-row-selection.d.ts.map +1 -0
  170. package/dist/verify/explicit-row-selection.js +37 -0
  171. package/dist/verify/explicit-row-selection.js.map +1 -0
  172. package/dist/verify/gate-run-registry.d.ts.map +1 -1
  173. package/dist/verify/gate-run-registry.js +2 -0
  174. package/dist/verify/gate-run-registry.js.map +1 -1
  175. package/dist/verify/parked-shortfall-reuse.d.ts +194 -0
  176. package/dist/verify/parked-shortfall-reuse.d.ts.map +1 -0
  177. package/dist/verify/parked-shortfall-reuse.js +310 -0
  178. package/dist/verify/parked-shortfall-reuse.js.map +1 -0
  179. package/dist/verify/reselection-log.d.ts +22 -0
  180. package/dist/verify/reselection-log.d.ts.map +1 -0
  181. package/dist/verify/reselection-log.js +87 -0
  182. package/dist/verify/reselection-log.js.map +1 -0
  183. package/dist/verify/shortfall-park.d.ts +8 -1
  184. package/dist/verify/shortfall-park.d.ts.map +1 -1
  185. package/dist/verify/shortfall-park.js +17 -3
  186. package/dist/verify/shortfall-park.js.map +1 -1
  187. package/dist/verify/shortfall-repeat.d.ts.map +1 -1
  188. package/dist/verify/shortfall-repeat.js +7 -2
  189. package/dist/verify/shortfall-repeat.js.map +1 -1
  190. package/dist/verify/shortfall-rulings.d.ts +93 -6
  191. package/dist/verify/shortfall-rulings.d.ts.map +1 -1
  192. package/dist/verify/shortfall-rulings.js +69 -12
  193. package/dist/verify/shortfall-rulings.js.map +1 -1
  194. package/dist/verify/stall-detector-config.d.ts.map +1 -1
  195. package/dist/verify/stall-detector-config.js +2 -1
  196. package/dist/verify/stall-detector-config.js.map +1 -1
  197. package/dist/verify/stall-detectors.d.ts +6 -4
  198. package/dist/verify/stall-detectors.d.ts.map +1 -1
  199. package/dist/verify/stall-detectors.js +9 -6
  200. package/dist/verify/stall-detectors.js.map +1 -1
  201. package/dist/verify/stalled-team-backstop.d.ts +8 -2
  202. package/dist/verify/stalled-team-backstop.d.ts.map +1 -1
  203. package/dist/verify/stalled-team-backstop.js +15 -11
  204. package/dist/verify/stalled-team-backstop.js.map +1 -1
  205. package/dist/verify/team-stall-reapers.d.ts +28 -0
  206. package/dist/verify/team-stall-reapers.d.ts.map +1 -0
  207. package/dist/verify/team-stall-reapers.js +23 -0
  208. package/dist/verify/team-stall-reapers.js.map +1 -0
  209. package/dist/verify/verification-attribution-deps.d.ts +1 -1
  210. package/dist/verify/verification-attribution-deps.d.ts.map +1 -1
  211. package/dist/verify/verification-attribution-deps.js +20 -1
  212. package/dist/verify/verification-attribution-deps.js.map +1 -1
  213. package/dist/verify/verification-boundary-env.d.ts.map +1 -1
  214. package/dist/verify/verification-boundary-env.js +23 -9
  215. package/dist/verify/verification-boundary-env.js.map +1 -1
  216. package/dist/verify/verification-checkout.d.ts +1 -1
  217. package/dist/verify/verification-checkout.d.ts.map +1 -1
  218. package/dist/verify/verification-checkout.js.map +1 -1
  219. package/dist/verify/verification-commit-sharing.d.ts.map +1 -1
  220. package/dist/verify/verification-commit-sharing.js +14 -3
  221. package/dist/verify/verification-commit-sharing.js.map +1 -1
  222. package/dist/verify/verification-config.d.ts.map +1 -1
  223. package/dist/verify/verification-config.js +1 -20
  224. package/dist/verify/verification-config.js.map +1 -1
  225. package/dist/verify/verification-default-on.d.ts +4 -1
  226. package/dist/verify/verification-default-on.d.ts.map +1 -1
  227. package/dist/verify/verification-default-on.js +29 -2
  228. package/dist/verify/verification-default-on.js.map +1 -1
  229. package/dist/verify/verification-deps-default.d.ts.map +1 -1
  230. package/dist/verify/verification-deps-default.js +13 -0
  231. package/dist/verify/verification-deps-default.js.map +1 -1
  232. package/dist/verify/verification-deps.d.ts +38 -0
  233. package/dist/verify/verification-deps.d.ts.map +1 -1
  234. package/dist/verify/verification-deps.js +2 -1
  235. package/dist/verify/verification-deps.js.map +1 -1
  236. package/dist/verify/verification-engine.d.ts.map +1 -1
  237. package/dist/verify/verification-engine.js +44 -15
  238. package/dist/verify/verification-engine.js.map +1 -1
  239. package/dist/verify/verification-feedback.d.ts.map +1 -1
  240. package/dist/verify/verification-feedback.js +1 -19
  241. package/dist/verify/verification-feedback.js.map +1 -1
  242. package/dist/verify/verify-restatement.d.ts.map +1 -1
  243. package/dist/verify/verify-restatement.js +5 -1
  244. package/dist/verify/verify-restatement.js.map +1 -1
  245. package/dist/worktree/provision.d.ts.map +1 -1
  246. package/dist/worktree/provision.js +3 -1
  247. package/dist/worktree/provision.js.map +1 -1
  248. package/package.json +2 -2
package/build-info.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
- "commitSha": "df63f6f7b",
3
- "builtAt": "2026-09-24T07:13:48.880Z",
2
+ "commitSha": "0787b3824",
3
+ "builtAt": "2026-09-24T18:42:52.976Z",
4
4
  "expectedMigrations": [
5
5
  "20250829113330_create_org_nodes_table.sql",
6
6
  "20250829113402_fix_function_security_search_path.sql",
@@ -828,6 +828,7 @@
828
828
  "20260922221935_product_request_observation_snapshot.sql",
829
829
  "20260922225316_product_request_observation_entry_is_atomic.sql",
830
830
  "20260923002532_capture_request_observation_in_one_snapshot.sql",
831
- "20260924010304_org_default_pass_models_opus_5_5.sql"
831
+ "20260924010304_org_default_pass_models_opus_5_5.sql",
832
+ "20260924173744_focus_reviews_blocking_issue_ids.sql"
832
833
  ]
833
834
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/backends/index.ts"],"names":[],"mappings":"AAiCA,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"}
@@ -8,10 +8,12 @@
8
8
  // packages/daemon/src/focus/spawn-crash-isolation.test.ts,
9
9
  // packages/daemon/src/spawn/helpers-activity-wiring.test.ts,
10
10
  // packages/daemon/src/spawn/per-pass-spawn-model.test.ts,
11
+ // packages/daemon/src/spawn/progress-measure-wiring.test.ts,
11
12
  // packages/daemon/src/spawn/spawn-and-acknowledge.test.ts,
12
13
  // packages/daemon/src/spawn/spawn-compact-turn.test.ts,
13
14
  // packages/daemon/src/spawn/spawn-team-process-ownership.test.ts,
14
- // 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
15
17
  // PINNED-BY-END
16
18
  /**
17
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,6EAA6E;AAC7E,uEAAuE;AACvE,+DAA+D;AAC/D,6DAA6D;AAC7D,+DAA+D;AAC/D,4DAA4D;AAC5D,6DAA6D;AAC7D,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"}
@@ -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":"AAAA,8FAA8F;AAC9F,mEAAmE;AACnE,mEAAmE;AACnE,sFAAsF;AACtF,qEAAqE;AACrE,4EAA4E;AAC5E,gBAAgB;AAEhB;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC,CAAC;AAkC5D;;;GAGG;AACH,MAAM,OAAO,kBAAmB,SAAQ,YAAY;IAC1C,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC,CAAC,uBAAuB;IACpE,SAAS,GAAG,CAAC,CAAC;IACd,YAAY,GAAG,CAAC,CAAC;IACjB,eAAe,GAAuB,IAAI,CAAC;IAC3C,SAAS,GAAyC,IAAI,CAAC;IACvD,sBAAsB,GAAyC,IAAI,CAAC;IACpE,UAAU,GAAG,KAAK,CAAC;IAE3B,yEAAyE;IACxD,aAAa,CAAS;IAEvC;;;;;;OAMG;IACc,eAAe,CAAkC;IAElE;;;;;OAKG;IACc,qBAAqB,CAAgB;IAEtD;;;;;OAKG;IACc,mBAAmB,CAAS;IAE7C,uDAAuD;IACtC,QAAQ,CAAS;IAElC,YAAY,OAMX;QACC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,KAAK,CAAC;QACrD,IAAI,CAAC,eAAe,GAAG,OAAO,EAAE,eAAe,CAAC;QAChD,IAAI,CAAC,qBAAqB,GAAG,OAAO,EAAE,qBAAqB,CAAC;QAC5D,IAAI,CAAC,mBAAmB,GAAG,OAAO,EAAE,mBAAmB,IAAI,IAAI,CAAC,aAAa,CAAC;QAC9E,IAAI,CAAC,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,eAAe,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAwB;QAC7B,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,KAAiB,EAAE,EAAE;YAC7C,4EAA4E;YAC5E,2EAA2E;YAC3E,0DAA0D;YAC1D,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC,2BAA2B,EAAE,CAAC;YAEnC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC5B,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;gBAC9C,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,YAAY,CAAC,MAAmB;QACtC,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC;QAE9B,gEAAgE;QAChE,2EAA2E;QAC3E,8EAA8E;QAC9E,4EAA4E;QAC5E,sEAAsE;QACtE,wEAAwE;QACxE,6EAA6E;QAC7E,4EAA4E;QAC5E,oDAAoD;QACpD,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QAC1C,CAAC;QAED,6EAA6E;QAC7E,4EAA4E;QAC5E,4EAA4E;QAC5E,4EAA4E;QAC5E,8EAA8E;QAC9E,6EAA6E;QAC7E,sEAAsE;QACtE,6EAA6E;QAC7E,mEAAmE;QACnE,6EAA6E;QAC7E,4EAA4E;QAC5E,qEAAqE;QAErE,uDAAuD;QACvD,uCAAuC;QACvC,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAEO,cAAc,CAAC,KAAyD;QAC9E,QAAQ,KAAK,CAAC,KAAK,EAAE,CAAC;YACpB,KAAK,SAAS;gBACZ,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;gBACzD,wDAAwD;gBACxD,IAAI,CAAC,cAAc,EAAE,CAAC;gBACtB,MAAM;YAER,KAAK,MAAM;gBACT,qDAAqD;gBACrD,MAAM;YAER,KAAK,WAAW;gBACd,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC3C,yDAAyD;gBACzD,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBAC5D,IAAI,CAAC,eAAe,EAAE,CAAC;gBACzB,CAAC;gBACD,MAAM;QACV,CAAC;IACH,CAAC;IAEO,eAAe;QACrB,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO;QAC5B,IAAI,CAAC,IAAI,CAAC,eAAe;YAAE,OAAO;QAElC,sEAAsE;QACtE,4DAA4D;QAC5D,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,0DAA0D;YAC1D,uEAAuE;YACvE,oCAAoC;YACpC,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;IAEO,cAAc;QACpB,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO;QAC5B,2EAA2E;QAC3E,yEAAyE;QACzE,8EAA8E;QAC9E,qEAAqE;QACrE,EAAE;QACF,uEAAuE;QACvE,yEAAyE;QACzE,4EAA4E;QAC5E,yEAAyE;QACzE,6EAA6E;QAC7E,6EAA6E;QAC7E,0EAA0E;QAC1E,oCAAoC;QACpC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAC/B,OAAO;QACT,CAAC;QACD,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAED;;;OAGG;IACK,uBAAuB;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;QAClD,GAAG,CAAC,IAAI,CACN,iBAAiB,IAAI,CAAC,QAAQ,uCAAuC,IAAI,KAAK;YAC9E,sBAAsB,IAAI,CAAC,SAAS,6CAA6C;YACjF,UAAU,IAAI,CAAC,mBAAmB,KAAK,CACxC,CAAC;QACF,IAAI,CAAC,yBAAyB,EAAE,CAAC;IACnC,CAAC;IAED,wDAAwD;IAChD,YAAY;QAClB,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO;QAC5B,IAAI,CAAC,IAAI,CAAC,eAAe;YAAE,OAAO;QAClC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,2BAA2B,EAAE,CAAC;QAEnC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,MAAM,EAAE,IAAI,CAAC,eAAe;YAC5B,oBAAoB,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,KAAK,CAAC;YACrD,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,YAAY,EAAE,IAAI,CAAC,YAAY;SACP,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;OAKG;IACK,yBAAyB;QAC/B,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACnC,IAAI,CAAC,sBAAsB,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5C,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;YACnC,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,eAAe;gBAAE,OAAO;YACrD,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;YAClD,GAAG,CAAC,IAAI,CACN,iBAAiB,IAAI,CAAC,QAAQ,0BAA0B,IAAI,CAAC,mBAAmB,uBAAuB;gBACvG,4CAA4C,IAAI,eAAe,IAAI,CAAC,SAAS,0BAA0B;gBACvG,wFAAwF,CACzF,CAAC;YACF,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC/B,CAAC;IAED,8EAA8E;IACtE,2BAA2B;QACjC,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChC,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACnC,CAAC;IACH,CAAC;IAEO,2BAA2B;QACjC,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAChC,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAC1C,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;QACrC,CAAC;IACH,CAAC;IAEO,cAAc;QACpB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAC/B,IAAI,IAAI,CAAC,UAAU;gBAAE,OAAO;YAE5B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBAChB,cAAc,EAAE,IAAI,CAAC,aAAa;gBAClC,mBAAmB,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI;aAC5B,CAAC,CAAC;QACxB,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACzB,CAAC;IAEO,cAAc;QACpB,uEAAuE;QACvE,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;IAEO,cAAc;QACpB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC;IACH,CAAC;IAED,8CAA8C;IAC9C,QAAQ;QAON,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,mBAAmB,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI;YAC9C,eAAe,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;YAC1D,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK;QACH,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,2BAA2B,EAAE,CAAC;IACrC,CAAC;IAED,uBAAuB;IACvB,OAAO;QACL,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACnC,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;CACF"}
1
+ {"version":3,"file":"detector.js","sourceRoot":"","sources":["../../src/completion/detector.ts"],"names":[],"mappings":"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"}
@@ -30,13 +30,17 @@ import type { CompletionEventContext, CompletionEventDeps } from './event.js';
30
30
  */
31
31
  export declare const NO_PROGRESS_CYCLE_FLOOR_MS = 20000;
32
32
  /**
33
- * Minimum real time between two commit-nudge re-wakes to the same lead. A team
34
- * cannot commit its work in under a second, so the valve that re-wakes a
35
- * producing team must not be spent faster than the team could respond
36
- * (2026-08-16: 3 nudges in 1.2s). Independent of the counter floor -- the
37
- * incident burned both.
33
+ * The real-time window a team must spend with NO movement on any axis of the
34
+ * one progress measure (completion/team-progress-measure.ts: status, issues,
35
+ * HEAD, agent activity, uncommitted diff) before a no-progress guard may end it.
36
+ * The cycle counters say the daemon has asked enough times; this says the team
37
+ * has been still for long enough. Both must hold -- a count alone was reached in
38
+ * ~3 minutes against a team whose workers were editing (2026-09-24). Set at the
39
+ * park band the liveness badge already uses (5 min): long enough for any worker
40
+ * or tool call to report, short enough that a genuinely silent team is ended in
41
+ * minutes rather than at the 30-min stalled-team backstop.
38
42
  */
39
- export declare const COMMIT_NUDGE_FLOOR_MS = 20000;
43
+ export declare const NO_PROGRESS_STALL_WINDOW_MS: number;
40
44
  /**
41
45
  * Minimum real time between two mid-focus handoff / re-engagement wake messages
42
46
  * to the same lead. A burst of result events (7 in 3.2s on 2026-08-16) must not
@@ -112,6 +116,13 @@ export interface CompletionFacts {
112
116
  * unchanged on a sub-floor hold, undefined when progress ended the episode.
113
117
  */
114
118
  updatedLastNoProgressCycleAt: number | undefined;
119
+ /** Value to commit to teamState.lastProgressAt: now when this cycle made progress. */
120
+ updatedLastProgressAt: number;
121
+ /**
122
+ * NO_PROGRESS_STALL_WINDOW_MS of real time has passed with no movement on any
123
+ * axis of the progress measure. No no-progress guard ends a team before it.
124
+ */
125
+ stallWindowElapsed: boolean;
115
126
  }
116
127
  /**
117
128
  * Recompute the picture on the post-advance state. The team owns exactly two
@@ -139,8 +150,8 @@ export declare function computeCompletionFacts(ctx: CompletionEventContext, deps
139
150
  /**
140
151
  * Execute the chosen action's side effects. The decision (completion-decision)
141
152
  * is pure; every mutation of team state and every escalation lives here, with
142
- * the branch semantics preserved exactly -- including the commit-nudge re-wake
143
- * and terminated-work reconciliation on the no-progress path.
153
+ * the branch semantics preserved exactly -- including the terminated-work
154
+ * reconciliation on the no-progress path.
144
155
  */
145
156
  /**
146
157
  * The teardown-at-first-result action. The completion detector says the team has
@@ -1 +1 @@
1
- {"version":3,"file":"event-phases.d.ts","sourceRoot":"","sources":["../../src/completion/event-phases.ts"],"names":[],"mappings":"AASA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAS7F,OAAO,EAA6B,KAAK,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAsB5F,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAgB9E;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,QAAS,CAAC;AAEjD;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAE5C;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAE9C;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAI7C,sEAAsE;AACtE,MAAM,WAAW,eAAe;IAC9B,8EAA8E;IAC9E,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;IACvC,mBAAmB,EAAE,iBAAiB,EAAE,CAAC;IACzC;;;;;OAKG;IACH,oBAAoB,EAAE,iBAAiB,EAAE,CAAC;IAC1C,aAAa,EAAE,cAAc,EAAE,CAAC;IAChC;;;;;;OAMG;IACH,gBAAgB,EAAE,cAAc,EAAE,CAAC;IACnC,eAAe,EAAE,iBAAiB,EAAE,CAAC;IACrC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,qBAAqB,EAAE,OAAO,CAAC;IAC/B;;;;;OAKG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB;;;;;OAKG;IACH,wBAAwB,EAAE,OAAO,CAAC;IAClC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,aAAa,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACvC,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAChC,uBAAuB,EAAE,MAAM,CAAC;IAChC,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,sBAAsB,EAAE,OAAO,CAAC;IAChC;;;OAGG;IACH,4BAA4B,EAAE,MAAM,GAAG,SAAS,CAAC;CAClD;AAED;;;;;;;GAOG;AACH;;;;;;;;;;;;GAYG;AACH,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,sBAAsB,EAC3B,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,OAAO,CAAC,CAclB;AAID,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,sBAAsB,EAC3B,IAAI,EAAE,mBAAmB,EACzB,iBAAiB,EAAE,iBAAiB,EAAE,EACtC,mBAAmB,EAAE,iBAAiB,EAAE,EACxC,aAAa,EAAE,cAAc,EAAE,GAC9B,OAAO,CAAC,eAAe,CAAC,CAgM1B;AAUD;;;;;GAKG;AACH;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,iBAAiB,EAAE,EACpC,eAAe,EAAE,OAAO,EACxB,SAAS,EAAE,sBAAsB,CAAC,WAAW,CAAC,EAC9C,IAAI,EAAE,mBAAmB,EACzB,kBAAkB,EAAE,sBAAsB,CAAC,oBAAoB,CAAC,GAC/D,IAAI,CAoBN;AAED,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,sBAAsB,EAC3B,IAAI,EAAE,mBAAmB,EACzB,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,gBAAgB,EACxB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC,CAsRf"}
1
+ {"version":3,"file":"event-phases.d.ts","sourceRoot":"","sources":["../../src/completion/event-phases.ts"],"names":[],"mappings":"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"}