@telora/daemon 0.23.29 → 0.23.46

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 (221) hide show
  1. package/build-info.json +10 -3
  2. package/dist/backends/claude/one-shot-model.d.ts.map +1 -1
  3. package/dist/backends/claude/one-shot-model.js +1 -0
  4. package/dist/backends/claude/one-shot-model.js.map +1 -1
  5. package/dist/completion/completion-event/event.d.ts +12 -0
  6. package/dist/completion/completion-event/event.d.ts.map +1 -1
  7. package/dist/completion/completion-event/event.js +1 -0
  8. package/dist/completion/completion-event/event.js.map +1 -1
  9. package/dist/completion/completion-event/unfinished-work.d.ts +134 -0
  10. package/dist/completion/completion-event/unfinished-work.d.ts.map +1 -0
  11. package/dist/completion/completion-event/unfinished-work.js +140 -0
  12. package/dist/completion/completion-event/unfinished-work.js.map +1 -0
  13. package/dist/completion/team-outcome/apply-turn.d.ts.map +1 -1
  14. package/dist/completion/team-outcome/apply-turn.js +18 -0
  15. package/dist/completion/team-outcome/apply-turn.js.map +1 -1
  16. package/dist/completion/team-outcome/decide-turn-entry-rows.d.ts +16 -0
  17. package/dist/completion/team-outcome/decide-turn-entry-rows.d.ts.map +1 -1
  18. package/dist/completion/team-outcome/decide-turn-entry-rows.js +75 -11
  19. package/dist/completion/team-outcome/decide-turn-entry-rows.js.map +1 -1
  20. package/dist/completion/team-outcome/decide-turn-work-rows.d.ts.map +1 -1
  21. package/dist/completion/team-outcome/decide-turn-work-rows.js +10 -1
  22. package/dist/completion/team-outcome/decide-turn-work-rows.js.map +1 -1
  23. package/dist/completion/team-outcome/decide.d.ts.map +1 -1
  24. package/dist/completion/team-outcome/decide.js +1 -0
  25. package/dist/completion/team-outcome/decide.js.map +1 -1
  26. package/dist/completion/team-outcome/exit-action-roles.d.ts.map +1 -1
  27. package/dist/completion/team-outcome/exit-action-roles.js +2 -0
  28. package/dist/completion/team-outcome/exit-action-roles.js.map +1 -1
  29. package/dist/completion/team-outcome/exit-actions.d.ts +4 -0
  30. package/dist/completion/team-outcome/exit-actions.d.ts.map +1 -1
  31. package/dist/completion/team-outcome/exit-limits.d.ts +8 -0
  32. package/dist/completion/team-outcome/exit-limits.d.ts.map +1 -1
  33. package/dist/completion/team-outcome/exit-limits.js +9 -0
  34. package/dist/completion/team-outcome/exit-limits.js.map +1 -1
  35. package/dist/completion/team-outcome/exit-pipeline-state.d.ts +7 -0
  36. package/dist/completion/team-outcome/exit-pipeline-state.d.ts.map +1 -1
  37. package/dist/completion/team-outcome/exit-pipeline-state.js +1 -0
  38. package/dist/completion/team-outcome/exit-pipeline-state.js.map +1 -1
  39. package/dist/completion/team-outcome/team-outcome.d.ts.map +1 -1
  40. package/dist/completion/team-outcome/team-outcome.js +2 -1
  41. package/dist/completion/team-outcome/team-outcome.js.map +1 -1
  42. package/dist/completion/team-teardown/session-hold-bounds.d.ts +13 -1
  43. package/dist/completion/team-teardown/session-hold-bounds.d.ts.map +1 -1
  44. package/dist/completion/team-teardown/session-hold-bounds.js +15 -0
  45. package/dist/completion/team-teardown/session-hold-bounds.js.map +1 -1
  46. package/dist/completion/team-teardown/session-hold.d.ts.map +1 -1
  47. package/dist/completion/team-teardown/session-hold.js +4 -0
  48. package/dist/completion/team-teardown/session-hold.js.map +1 -1
  49. package/dist/composition/completion-event-context.d.ts.map +1 -1
  50. package/dist/composition/completion-event-context.js +8 -0
  51. package/dist/composition/completion-event-context.js.map +1 -1
  52. package/dist/composition/daemon-contexts.d.ts.map +1 -1
  53. package/dist/composition/daemon-contexts.js +3 -1
  54. package/dist/composition/daemon-contexts.js.map +1 -1
  55. package/dist/composition/qa-author-pass-context.d.ts +7 -0
  56. package/dist/composition/qa-author-pass-context.d.ts.map +1 -0
  57. package/dist/composition/qa-author-pass-context.js +68 -0
  58. package/dist/composition/qa-author-pass-context.js.map +1 -0
  59. package/dist/composition/runtime-poll-context.d.ts +32 -4
  60. package/dist/composition/runtime-poll-context.d.ts.map +1 -1
  61. package/dist/composition/runtime-poll-context.js +61 -5
  62. package/dist/composition/runtime-poll-context.js.map +1 -1
  63. package/dist/composition/spawn-pass-deps.d.ts +1 -1
  64. package/dist/composition/spawn-pass-deps.d.ts.map +1 -1
  65. package/dist/composition/verification-context.js +1 -1
  66. package/dist/composition/verify-rework-context.d.ts +12 -3
  67. package/dist/composition/verify-rework-context.d.ts.map +1 -1
  68. package/dist/composition/verify-rework-context.js +27 -10
  69. package/dist/composition/verify-rework-context.js.map +1 -1
  70. package/dist/config/live-daemon-config.js +1 -1
  71. package/dist/daemon-state/focus-team-state.js +1 -1
  72. package/dist/daemon-state/provider-window.d.ts.map +1 -1
  73. package/dist/daemon-state/provider-window.js +1 -0
  74. package/dist/daemon-state/provider-window.js.map +1 -1
  75. package/dist/delivery/advance-hold.d.ts +25 -0
  76. package/dist/delivery/advance-hold.d.ts.map +1 -1
  77. package/dist/delivery/advance-hold.js +52 -1
  78. package/dist/delivery/advance-hold.js.map +1 -1
  79. package/dist/delivery/delivery-reconciler.d.ts +17 -2
  80. package/dist/delivery/delivery-reconciler.d.ts.map +1 -1
  81. package/dist/delivery/delivery-reconciler.js +54 -30
  82. package/dist/delivery/delivery-reconciler.js.map +1 -1
  83. package/dist/delivery/recorded-concerns.d.ts.map +1 -1
  84. package/dist/delivery/recorded-concerns.js +1 -0
  85. package/dist/delivery/recorded-concerns.js.map +1 -1
  86. package/dist/directive/directive-queue.d.ts +27 -0
  87. package/dist/directive/directive-queue.d.ts.map +1 -1
  88. package/dist/directive/directive-queue.js +36 -1
  89. package/dist/directive/directive-queue.js.map +1 -1
  90. package/dist/focus/daemon-contexts.d.ts +3 -0
  91. package/dist/focus/daemon-contexts.d.ts.map +1 -1
  92. package/dist/focus/daemon-contexts.js +1 -1
  93. package/dist/focus/daemon-contexts.js.map +1 -1
  94. package/dist/focus/failed-head-wedge.d.ts +42 -13
  95. package/dist/focus/failed-head-wedge.d.ts.map +1 -1
  96. package/dist/focus/failed-head-wedge.js +45 -10
  97. package/dist/focus/failed-head-wedge.js.map +1 -1
  98. package/dist/focus/focus-loop-registry.d.ts.map +1 -1
  99. package/dist/focus/focus-loop-registry.js +21 -0
  100. package/dist/focus/focus-loop-registry.js.map +1 -1
  101. package/dist/focus/focus-poller-spawn.js +1 -1
  102. package/dist/focus/focus-poller-state.js +1 -1
  103. package/dist/focus/pending-spawn-review-next-step.d.ts.map +1 -1
  104. package/dist/focus/pending-spawn-review-next-step.js +9 -1
  105. package/dist/focus/pending-spawn-review-next-step.js.map +1 -1
  106. package/dist/focus/uncommitted-work-backstop.d.ts +115 -0
  107. package/dist/focus/uncommitted-work-backstop.d.ts.map +1 -0
  108. package/dist/focus/uncommitted-work-backstop.js +259 -0
  109. package/dist/focus/uncommitted-work-backstop.js.map +1 -0
  110. package/dist/focus/verify-routing-passes.d.ts +5 -1
  111. package/dist/focus/verify-routing-passes.d.ts.map +1 -1
  112. package/dist/focus/verify-routing-passes.js +1 -0
  113. package/dist/focus/verify-routing-passes.js.map +1 -1
  114. package/dist/git/index.d.ts.map +1 -1
  115. package/dist/git/index.js +2 -1
  116. package/dist/git/index.js.map +1 -1
  117. package/dist/git/review-window-commits.d.ts.map +1 -1
  118. package/dist/git/review-window-commits.js +1 -0
  119. package/dist/git/review-window-commits.js.map +1 -1
  120. package/dist/git/types.d.ts.map +1 -1
  121. package/dist/git/types.js +1 -19
  122. package/dist/git/types.js.map +1 -1
  123. package/dist/prompt-sections/qa-author-section.d.ts +58 -0
  124. package/dist/prompt-sections/qa-author-section.d.ts.map +1 -0
  125. package/dist/prompt-sections/qa-author-section.js +226 -0
  126. package/dist/prompt-sections/qa-author-section.js.map +1 -0
  127. package/dist/qa/qa-author-faithfulness.d.ts +139 -0
  128. package/dist/qa/qa-author-faithfulness.d.ts.map +1 -0
  129. package/dist/qa/qa-author-faithfulness.js +323 -0
  130. package/dist/qa/qa-author-faithfulness.js.map +1 -0
  131. package/dist/qa/qa-author-mode.d.ts +34 -0
  132. package/dist/qa/qa-author-mode.d.ts.map +1 -0
  133. package/dist/qa/qa-author-mode.js +29 -0
  134. package/dist/qa/qa-author-mode.js.map +1 -0
  135. package/dist/qa/qa-author-output.d.ts +26 -0
  136. package/dist/qa/qa-author-output.d.ts.map +1 -0
  137. package/dist/qa/qa-author-output.js +66 -0
  138. package/dist/qa/qa-author-output.js.map +1 -0
  139. package/dist/qa/qa-author-pass.d.ts +63 -0
  140. package/dist/qa/qa-author-pass.d.ts.map +1 -0
  141. package/dist/qa/qa-author-pass.js +164 -0
  142. package/dist/qa/qa-author-pass.js.map +1 -0
  143. package/dist/qa/qa-author-runner.d.ts +60 -0
  144. package/dist/qa/qa-author-runner.d.ts.map +1 -0
  145. package/dist/qa/qa-author-runner.js +180 -0
  146. package/dist/qa/qa-author-runner.js.map +1 -0
  147. package/dist/qa/qa-focus-changes.d.ts +32 -0
  148. package/dist/qa/qa-focus-changes.d.ts.map +1 -0
  149. package/dist/qa/qa-focus-changes.js +59 -0
  150. package/dist/qa/qa-focus-changes.js.map +1 -0
  151. package/dist/queries/api-client/shared.d.ts +1 -0
  152. package/dist/queries/api-client/shared.d.ts.map +1 -1
  153. package/dist/queries/api-client/shared.js +14 -1
  154. package/dist/queries/api-client/shared.js.map +1 -1
  155. package/dist/queries/deliveries/deliveries.d.ts +15 -27
  156. package/dist/queries/deliveries/deliveries.d.ts.map +1 -1
  157. package/dist/queries/deliveries/deliveries.js +6 -57
  158. package/dist/queries/deliveries/deliveries.js.map +1 -1
  159. package/dist/queries/delivery-gate-state/delivery-gate-holds.d.ts +8 -3
  160. package/dist/queries/delivery-gate-state/delivery-gate-holds.d.ts.map +1 -1
  161. package/dist/queries/delivery-gate-state/delivery-gate-state.js +1 -1
  162. package/dist/queries/escalations/escalations.d.ts.map +1 -1
  163. package/dist/queries/escalations/escalations.js +1 -0
  164. package/dist/queries/escalations/escalations.js.map +1 -1
  165. package/dist/queries/index.d.ts +1 -1
  166. package/dist/queries/index.d.ts.map +1 -1
  167. package/dist/queries/index.js +1 -1
  168. package/dist/queries/index.js.map +1 -1
  169. package/dist/queries/qa-packets/qa-packets.d.ts +156 -0
  170. package/dist/queries/qa-packets/qa-packets.d.ts.map +1 -0
  171. package/dist/queries/qa-packets/qa-packets.js +105 -0
  172. package/dist/queries/qa-packets/qa-packets.js.map +1 -0
  173. package/dist/supervision/escalation-filing.js +1 -1
  174. package/dist/supervision/spawn-cooldown.js +1 -1
  175. package/dist/supervision/stop-registry.d.ts +5 -0
  176. package/dist/supervision/stop-registry.d.ts.map +1 -1
  177. package/dist/supervision/stop-rows-team-session.d.ts +6 -1
  178. package/dist/supervision/stop-rows-team-session.d.ts.map +1 -1
  179. package/dist/supervision/stop-rows-team-session.js +34 -1
  180. package/dist/supervision/stop-rows-team-session.js.map +1 -1
  181. package/dist/supervision/team-work.d.ts.map +1 -1
  182. package/dist/supervision/team-work.js +1 -0
  183. package/dist/supervision/team-work.js.map +1 -1
  184. package/dist/testing/fixtures/api-client.js +1 -1
  185. package/dist/testing/fixtures/approved-head-inert-deps.js +1 -1
  186. package/dist/testing/fixtures/approved-head-inert-deps.js.map +1 -1
  187. package/dist/testing/fixtures/completion-event-deps.d.ts +2 -1
  188. package/dist/testing/fixtures/completion-event-deps.d.ts.map +1 -1
  189. package/dist/testing/fixtures/completion-event-deps.js +5 -1
  190. package/dist/testing/fixtures/completion-event-deps.js.map +1 -1
  191. package/dist/testing/fixtures/index.js +1 -1
  192. package/dist/testing/fixtures/pending-spawn-world.d.ts.map +1 -1
  193. package/dist/testing/fixtures/pending-spawn-world.js +2 -1
  194. package/dist/testing/fixtures/pending-spawn-world.js.map +1 -1
  195. package/dist/testing/fixtures/review-exit-deps.js +2 -2
  196. package/dist/testing/fixtures/review-exit-deps.js.map +1 -1
  197. package/dist/types/index.js +1 -1
  198. package/dist/types/qa-packet.d.ts +39 -0
  199. package/dist/types/qa-packet.d.ts.map +1 -0
  200. package/dist/types/qa-packet.js +50 -0
  201. package/dist/types/qa-packet.js.map +1 -0
  202. package/dist/verify/attribution/rework-attribution.d.ts +50 -111
  203. package/dist/verify/attribution/rework-attribution.d.ts.map +1 -1
  204. package/dist/verify/attribution/rework-attribution.js +215 -71
  205. package/dist/verify/attribution/rework-attribution.js.map +1 -1
  206. package/dist/verify/gate-verdicts/commit-verdict-record.d.ts +9 -0
  207. package/dist/verify/gate-verdicts/commit-verdict-record.d.ts.map +1 -1
  208. package/dist/verify/gate-verdicts/commit-verdict-record.js +27 -1
  209. package/dist/verify/gate-verdicts/commit-verdict-record.js.map +1 -1
  210. package/dist/verify/gate-verdicts/judged-ancestor.d.ts.map +1 -1
  211. package/dist/verify/gate-verdicts/judged-ancestor.js +2 -1
  212. package/dist/verify/gate-verdicts/judged-ancestor.js.map +1 -1
  213. package/dist/verify/outcome-routing/gate-rework-reopen.d.ts +30 -0
  214. package/dist/verify/outcome-routing/gate-rework-reopen.d.ts.map +1 -0
  215. package/dist/verify/outcome-routing/gate-rework-reopen.js +37 -0
  216. package/dist/verify/outcome-routing/gate-rework-reopen.js.map +1 -0
  217. package/dist/verify/outcome-routing/verification-rework-issue.d.ts +114 -25
  218. package/dist/verify/outcome-routing/verification-rework-issue.d.ts.map +1 -1
  219. package/dist/verify/outcome-routing/verification-rework-issue.js +147 -88
  220. package/dist/verify/outcome-routing/verification-rework-issue.js.map +1 -1
  221. package/package.json +3 -3
@@ -4,6 +4,7 @@
4
4
  // packages/daemon/src/integration/failed-head-wedge-poll.test.ts,
5
5
  // packages/daemon/src/integration/failed-verdict-review-exit-respawn-regression.test.ts,
6
6
  // packages/daemon/src/integration/failed-verdict-review-loop-regression.test.ts,
7
+ // packages/daemon/src/integration/red-head-integration-merge-rework-regression.test.ts,
7
8
  // packages/daemon/src/integration/verify-failure-rework-route.test.ts,
8
9
  // packages/daemon/src/verify/outcome-routing/verification-rework-issue.test.ts,
9
10
  // packages/daemon/src/verify/outcome-routing/verify-evidence-unavailable.test.ts,
@@ -20,16 +21,17 @@
20
21
  * back in verify at the unchanged failed commit (which the HEAD re-verify guard
21
22
  * will not re-run), and waits there for an operator.
22
23
  *
23
- * So the failure itself becomes the issue: ONE Bug on the delivery naming the
24
- * failing tests -- or, when the gate could not parse them, the parse failure and
25
- * where the log is -- so the re-work re-entry has real open work and the next
26
- * spawned actor is a coding pass holding the failure. Filed only when the
27
- * delivery has no OWED work issue of its own (a review-filed Bug already routes
28
- * the fix), and at most once per (delivery, failed commit): the Bug's title
29
- * carries the commit, and a Bug already filed for that commit -- open or closed --
30
- * is never filed again, so a repeat feedback for one commit adds nothing and the
31
- * verify_failed iteration cap stays the bound. A run that judged no known commit
32
- * dedupes on open work alone.
24
+ * So the failure itself becomes the issue: ONE Bug naming the failing tests --
25
+ * or, when the gate could not parse them, the parse failure and where the log is --
26
+ * so the re-work re-entry has real open work and the next spawned actor is a coding
27
+ * pass holding the failure. It is keyed on the failed COMMIT, not on whatever else
28
+ * is open: the Bug's title carries the commit, it is filed unless a Bug for that
29
+ * commit already sits on the focus -- open or closed, never filed again, so a repeat
30
+ * feedback for one commit adds nothing and the verify_failed iteration cap stays the
31
+ * bound -- and an unrelated open issue, even owed work, does not stand in for it (an
32
+ * unrelated Task names nothing about the red, and a focus with a red head owes one
33
+ * Bug that does). A run that judged no known commit has nothing to key on, and
34
+ * dedupes on owed work alone.
33
35
  *
34
36
  * WHOSE failure: ONE branch-level red is ONE piece of open work. A focus's
35
37
  * deliveries share one commit's verdict (verify/engine/verification-commit-sharing.ts), so
@@ -37,14 +39,17 @@
37
39
  * verify -- each naming a gate run that delivery never made, and each costing a
38
40
  * review cycle out of the arm's budget. Every filing that knows the focus its commit
39
41
  * belongs to asks verify/attribution/rework-attribution.ts who owns the failure first, and files
40
- * only there. A delivery that shares the verdict still TAKES it -- it routes to
41
- * verify_failed and carries the failure on its gate_state; what it does not
42
- * carry is a work item describing someone else's run.
42
+ * THERE -- on the owner, whichever delivery asked: an owner that will never ask (done,
43
+ * paused, a sibling in coding) still receives it, and a done or paused owner is
44
+ * re-opened with it (verify/outcome-routing/gate-rework-reopen.ts). A delivery that
45
+ * shares the verdict still TAKES it -- it routes to verify_failed and carries the
46
+ * failure on its gate_state; what it does not carry is a work item describing
47
+ * someone else's run.
43
48
  *
44
49
  * HOW MANY, separately from WHO. The owner is chosen from LIVE state -- the focus's
45
- * deliveries currently in verify -- and that set MOVES: the moment the chosen owner
46
- * takes its Bug the open-work pass routes it to verify_failed, so a sibling retrying
47
- * the same failed commit is offered a smaller set and names a different owner. A
50
+ * deliveries and their statuses now -- and that set MOVES: a delivery can finish, be
51
+ * cancelled or be re-opened between two asks, so a sibling retrying the same failed
52
+ * commit can be offered a different set and name a different owner. A
48
53
  * single-owner rule alone therefore cannot carry a per-COMMIT invariant across time.
49
54
  * So the invariant is enforced where it is stated -- on the commit: the "already
50
55
  * filed" question is asked of the whole FOCUS, not of one delivery, and no delivery
@@ -65,12 +70,11 @@
65
70
  * commit's recorded verdict, until a filing lands or finds one already filed;
66
71
  * the Bug is open work, so the live open-work pass routes it on to coding.
67
72
  *
68
- * OWED, not merely open. "Does a coding pass have work here?" has ONE definition,
69
- * delivery/recorded-concerns.ts splitOpenWork: open AND not a recorded review
70
- * concern. A recorded concern is not owed work -- the spawn, advance and reconciler
71
- * paths all exclude it -- so a failed verdict beside only concerns files the Bug: no
72
- * other path would act on it. The concern read is the focus's; a filing that names no
73
- * focus, or whose read fails, cannot tell a concern apart and counts every open issue
73
+ * OWED, not merely open -- for the one filing that still defers to open work, a run
74
+ * that judged no known commit. "Does a coding pass have work here?" has ONE
75
+ * definition, delivery/recorded-concerns.ts splitOpenWork: open AND not a recorded
76
+ * review concern. The concern read is the focus's; a filing that names no focus, or
77
+ * whose read fails, cannot tell a concern apart and counts every open issue
74
78
  * (fail-closed) -- and the skip outcome says so.
75
79
  *
76
80
  * A skip is never silent. Every outcome carries its reason, and an `open_work` skip
@@ -82,28 +86,26 @@
82
86
  *
83
87
  * @module verify/outcome-routing/verification-rework-issue
84
88
  */
85
- import { DELIVERY_STATUS } from '@telora/daemon-core';
86
89
  import { recordedVerdictPath } from '../gate-verdicts/commit-verdict-record.js';
87
90
  import { readVerificationHistory } from '../../queries/delivery-gate-state/delivery-gate-state.js';
88
91
  import { CONTEXT_GROUP_TYPE, REWORK_ISSUE_TITLE_PREFIX as GATE_REWORK_TITLE_PREFIX } from '../../types/issue-status.js';
89
92
  import { NO_RECORDED_CONCERNS, concernsUnreadable, splitOpenWork, } from '../../delivery/recorded-concerns.js';
90
- import { unattributableOwner } from '../attribution/rework-attribution.js';
93
+ import { reopensForRework, reworkOwnerCandidates, unattributableOwner, } from '../attribution/rework-attribution.js';
91
94
  import { ISSUE_DESCRIPTION_BUDGET, ISSUE_DESCRIPTION_FIELD_CAP, clipText, linesCost, renderBudgetedList, } from '../../types/issue-description-budget.js';
92
95
  import { createLogger } from '../../log/daemon-log.js';
93
96
  const log = createLogger({ module: 'verification' });
94
97
  /** Title prefix of a rework Bug; the failed commit follows it (declared in types/issue-status.ts). */
95
98
  export const REWORK_ISSUE_TITLE_PREFIX = GATE_REWORK_TITLE_PREFIX;
96
99
  const SKIP_REASON_TEXT = {
97
- open_work: 'owed work is already open on the delivery',
100
+ open_work: 'owed work is already open on the delivery (the failure names no commit to key a Bug on)',
98
101
  already_filed: 'a rework Bug for this commit is already filed on the focus',
99
102
  read_failed: 'the delivery or focus issues could not be read (the owed filing is retried)',
100
103
  create_failed: 'the issue create failed (the owed filing is retried)',
101
- not_its_failure: 'the failure is attributed to another delivery',
102
104
  };
103
105
  /** One line saying what a filing did -- the Bug it filed, or that it filed none and why. Pure. */
104
106
  export function describeReworkOutcome(deliveryId, outcome) {
105
107
  if (outcome.filed)
106
- return `filed rework Bug ${outcome.issueId} on delivery ${deliveryId}`;
108
+ return `filed rework Bug ${outcome.issueId} on delivery ${outcome.ownerId}`;
107
109
  const why = SKIP_REASON_TEXT[outcome.reason];
108
110
  if (outcome.reason !== 'open_work')
109
111
  return `filed NO rework Bug on delivery ${deliveryId}: ${why}`;
@@ -186,69 +188,118 @@ function failingTestLines(tests, budget) {
186
188
  return [countLine(list.omitted), ...list.lines];
187
189
  }
188
190
  /**
189
- * File the rework Bug for a failed deterministic run when the delivery has no open
190
- * work issue and none was filed for this commit (module header). Never throws.
191
+ * File the rework Bug for a failed deterministic run (module header). Asked by ONE
192
+ * delivery sharing the verdict, it files on the failure's OWNER
193
+ * (verify/attribution/rework-attribution.ts resolveReworkOwner) -- the asker itself, or
194
+ * a sibling in any non-cancelled status that would never ask, re-opened when it is
195
+ * done or paused. Never throws.
191
196
  */
192
197
  export async function fileVerificationReworkIssue(deliveryId, failure, deps) {
193
- // ONE branch-level red is ONE piece of open work: a delivery that merely shared the
194
- // verdict carries no Bug of its own (verify/attribution/rework-attribution.ts).
198
+ // ONE branch-level red is ONE piece of open work, carried by its owner
199
+ // (verify/attribution/rework-attribution.ts).
195
200
  const at = failure.at;
196
- if (at?.productId && failure.sha && deps.deliveryOwnsFailure
197
- && !(await deps.deliveryOwnsFailure(deliveryId, { productId: at.productId, focusId: at.focusId, sha: failure.sha }))) {
198
- return { filed: false, reason: 'not_its_failure' };
201
+ let owner = { id: deliveryId };
202
+ if (at?.productId && failure.sha && deps.resolveReworkOwner) {
203
+ const answer = await deps.resolveReworkOwner({ productId: at.productId, focusId: at.focusId, sha: failure.sha });
204
+ if (answer === 'unreadable')
205
+ return { filed: false, reason: 'read_failed' };
206
+ if (answer !== null)
207
+ owner = answer;
199
208
  }
209
+ return fileReworkOn(owner, failure, deps, deliveryId);
210
+ }
211
+ /**
212
+ * File the rework Bug on `owner`, which the caller already chose (module header):
213
+ * once per failed COMMIT across the focus, and -- for a failure that names no commit
214
+ * -- only beside no owed work. `askedBy` is the delivery whose ask this answers, the
215
+ * one the owed-filing retry keys on. Never throws.
216
+ */
217
+ async function fileReworkOn(owner, failure, deps, askedBy) {
218
+ const at = failure.at;
200
219
  let issues;
201
220
  try {
202
- issues = await deps.getDeliveryIssues(deliveryId);
221
+ issues = await deps.getDeliveryIssues(owner.id);
203
222
  }
204
223
  catch (err) {
205
- log.warn(`[verification] rework issue: issues read failed for delivery ${deliveryId}:`, err.message);
224
+ log.warn(`[verification] rework issue: issues read failed for delivery ${owner.id}:`, err.message);
206
225
  return { filed: false, reason: 'read_failed' };
207
226
  }
208
227
  const work = issues.filter((i) => i.issueType !== CONTEXT_GROUP_TYPE);
209
- // OWED, not merely open: one definition with the spawn path (module header).
210
- const concernIds = at ? await deps.readRecordedConcernIds(at.focusId) : NO_RECORDED_CONCERNS;
211
- const { owed } = splitOpenWork(work.map((i) => ({ ...i, id: i.id ?? '' })), concernIds);
212
- if (owed.length > 0) {
213
- return {
214
- filed: false,
215
- reason: 'open_work',
216
- owedIssueIds: owed.map((i) => i.id).filter((id) => id !== ''),
217
- concerns: !at ? 'no_focus' : concernsUnreadable(concernIds) ? 'unreadable' : 'excluded',
218
- };
228
+ if (!failure.sha) {
229
+ // No commit to key a Bug on: dedupe on OWED work, one definition with the spawn path.
230
+ const skip = await owedWorkSkip(work, at, deps);
231
+ if (skip)
232
+ return skip;
219
233
  }
220
- const commitPrefix = failure.sha ? `${REWORK_ISSUE_TITLE_PREFIX} ${failure.sha.slice(0, 12)}:` : null;
221
- if (commitPrefix && work.some((i) => i.title.startsWith(commitPrefix))) {
222
- filedAt.set(deliveryId, failure.sha);
223
- return { filed: false, reason: 'already_filed' };
224
- }
225
- // One red is one Bug on the FOCUS, not one per delivery that is asked -- and who is
226
- // asked moves as deliveries are routed (module header).
227
- if (commitPrefix && at) {
228
- const elsewhere = await reworkFiledElsewhereOnFocus(at.focusId, deliveryId, commitPrefix, deps);
229
- if (elsewhere === 'filed') {
230
- filedAt.set(deliveryId, failure.sha);
234
+ else {
235
+ // Keyed on the COMMIT: an unrelated open issue -- even owed -- does not stand in
236
+ // for the red's own Bug (module header).
237
+ const commitPrefix = `${REWORK_ISSUE_TITLE_PREFIX} ${failure.sha.slice(0, 12)}:`;
238
+ if (work.some((i) => i.title.startsWith(commitPrefix))) {
239
+ markFiled(failure.sha, askedBy, owner.id);
240
+ await reopenSettledOwner(owner, deps);
231
241
  return { filed: false, reason: 'already_filed' };
232
242
  }
233
- if (elsewhere === 'unknown')
234
- return { filed: false, reason: 'read_failed' };
243
+ // One red is one Bug on the FOCUS, not one per delivery that is asked -- and who is
244
+ // asked moves as deliveries are routed (module header).
245
+ if (at) {
246
+ const elsewhere = await reworkFiledElsewhereOnFocus(at.focusId, owner.id, commitPrefix, deps);
247
+ if (elsewhere === 'unknown')
248
+ return { filed: false, reason: 'read_failed' };
249
+ if (elsewhere !== 'none') {
250
+ markFiled(failure.sha, askedBy, owner.id);
251
+ await reopenSettledOwner(elsewhere, deps);
252
+ return { filed: false, reason: 'already_filed' };
253
+ }
254
+ }
235
255
  }
236
256
  const title = reworkIssueTitle(failure);
237
257
  try {
238
- const issueId = await deps.createIssue(deliveryId, title, reworkIssueDescription(failure), 'Bug', 'P0');
258
+ const issueId = await deps.createIssue(owner.id, title, reworkIssueDescription(failure), 'Bug', 'P0');
239
259
  if (failure.sha)
240
- filedAt.set(deliveryId, failure.sha);
241
- log.info(`[verification] filed rework Bug "${title}" on delivery ${deliveryId} (issue ${issueId}) -- the failure had no open issue to fix it`);
242
- return { filed: true, issueId };
260
+ markFiled(failure.sha, askedBy, owner.id);
261
+ log.info(`[verification] filed rework Bug "${title}" on delivery ${owner.id} (issue ${issueId})`);
262
+ await reopenSettledOwner(owner, deps);
263
+ return { filed: true, issueId, ownerId: owner.id };
243
264
  }
244
265
  catch (err) {
245
- log.warn(`[verification] rework issue: create failed for delivery ${deliveryId}:`, err.message);
266
+ log.warn(`[verification] rework issue: create failed for delivery ${owner.id}:`, err.message);
246
267
  return { filed: false, reason: 'create_failed' };
247
268
  }
248
269
  }
270
+ /** The open_work skip for a failure that names no commit, or null when nothing owed is open. */
271
+ async function owedWorkSkip(work, at, deps) {
272
+ const concernIds = at ? await deps.readRecordedConcernIds(at.focusId) : NO_RECORDED_CONCERNS;
273
+ const { owed } = splitOpenWork(work.map((i) => ({ ...i, id: i.id ?? '' })), concernIds);
274
+ if (owed.length === 0)
275
+ return null;
276
+ return {
277
+ filed: false,
278
+ reason: 'open_work',
279
+ owedIssueIds: owed.map((i) => i.id).filter((id) => id !== ''),
280
+ concerns: !at ? 'no_focus' : concernsUnreadable(concernIds) ? 'unreadable' : 'excluded',
281
+ };
282
+ }
283
+ /**
284
+ * Re-open a done or paused delivery carrying the rework Bug (verify/outcome-routing/gate-rework-reopen.ts),
285
+ * so a coding pass picks the Bug up. Asked after every filing and every "already
286
+ * filed", so a re-open whose write failed is retried by the next ask. Never throws.
287
+ */
288
+ async function reopenSettledOwner(owner, deps) {
289
+ if (!deps.reopenForRework || !reopensForRework(owner.executionStatus))
290
+ return;
291
+ try {
292
+ await deps.reopenForRework(owner);
293
+ }
294
+ catch (err) {
295
+ // Still owed: the failed-head backstop retries it while the Bug sits open on a
296
+ // done or paused delivery (focus/failed-head-wedge.ts).
297
+ log.warn(`[verification] rework issue: re-opening ${owner.executionStatus} delivery ${owner.id} failed (still owed; retried):`, err.message);
298
+ }
299
+ }
249
300
  /**
250
- * Whether a rework Bug for this commit is already filed on ANOTHER delivery of the
251
- * focus (module header): 'filed', 'none', or 'unknown' when the focus could not be
301
+ * The delivery of the focus OTHER than `deliveryId` that already carries a rework Bug
302
+ * for this commit (module header), 'none', or 'unknown' when the focus could not be
252
303
  * read -- which files nothing this poll rather than guessing, because the guess that
253
304
  * fails open is exactly the N-Bugs fan-out. A deps object with no focus read answers
254
305
  * 'none', and the source pin in the test suite is what keeps production wired to one.
@@ -265,7 +316,7 @@ async function reworkFiledElsewhereOnFocus(focusId, deliveryId, commitPrefix, de
265
316
  if (issues.some((i) => i.issueType !== CONTEXT_GROUP_TYPE && i.title.startsWith(commitPrefix))) {
266
317
  log.info(`[verification] rework issue: delivery ${deliveryId} was named owner of the failure at `
267
318
  + `"${commitPrefix}" but ${sibling.id} already carries it -- one red stays one work item`);
268
- return 'filed';
319
+ return sibling;
269
320
  }
270
321
  }
271
322
  return 'none';
@@ -276,6 +327,11 @@ async function reworkFiledElsewhereOnFocus(focusId, deliveryId, commitPrefix, de
276
327
  return 'unknown';
277
328
  }
278
329
  }
330
+ /** Record that `sha`'s rework is filed, for the asker and the owner alike (the retry's ledger). */
331
+ function markFiled(sha, askedBy, ownerId) {
332
+ filedAt.set(askedBy, sha);
333
+ filedAt.set(ownerId, sha);
334
+ }
279
335
  /** deliveryId -> the failed commit whose rework Bug is known filed (nothing owed there). */
280
336
  const filedAt = new Map();
281
337
  /** `${deliveryId}@${sha}` -> when an owed filing was last attempted (ms). */
@@ -333,18 +389,20 @@ export function describeFailedVerdictRework(result) {
333
389
  switch (result.kind) {
334
390
  case 'not_failed': return 'filed NO rework Bug: the verdict is not a failure';
335
391
  case 'deliveries_unreadable': return "filed NO rework Bug: the focus's deliveries could not be read (retried next poll)";
336
- case 'no_verify_delivery': return 'filed NO rework Bug: the focus has no delivery in verify to carry it';
392
+ case 'no_owner_delivery': return 'filed NO rework Bug: no delivery of the focus can own it (every one is cancelled, draft or planning)';
337
393
  case 'offered': return describeReworkOutcome(result.deliveryId, result.outcome);
338
394
  }
339
395
  }
340
396
  /**
341
397
  * A FAILED gate verdict standing at a focus head that draws no further review (a
342
- * declined review of an unchanged range, a stranded re-fire at its bound): file the
343
- * rework Bug on the verify delivery the failure is ATTRIBUTED to, so the live
344
- * open-work pass routes it to verify_failed and a coding pass fixes the failure. The
345
- * focus's other verify deliveries are offered the filing and decline it
346
- * (verify/attribution/rework-attribution.ts) -- one red, one work item. Deduped per commit and
347
- * skipped beside OWED work exactly as the feedback filing is. Returns what it did
398
+ * declined review of an unchanged range, a stranded re-fire at its bound, the
399
+ * failed-head backstop): file the rework Bug on the delivery the failure is
400
+ * ATTRIBUTED to, so a coding pass fixes the failure. The owner is chosen from every
401
+ * non-cancelled delivery of the focus, whatever its status at this instant -- the
402
+ * reconciler walks a delivery through verify_failed -> coding -> verify in seconds,
403
+ * and a done or paused owner is re-opened with its Bug
404
+ * (verify/attribution/rework-attribution.ts, THE CANDIDATES). One red, one work item,
405
+ * deduped per commit exactly as the feedback filing is. Returns what it did
348
406
  * (FailedVerdictReworkResult). Never throws.
349
407
  */
350
408
  export async function fileReworkForFailedVerdict(focusId, verdict, deps) {
@@ -358,20 +416,19 @@ export async function fileReworkForFailedVerdict(focusId, verdict, deps) {
358
416
  log.warn(`[verification] rework issue: deliveries unreadable for focus ${focusId} -- none filed this poll:`, err.message);
359
417
  return { kind: 'deliveries_unreadable' };
360
418
  }
361
- const candidates = deliveries.filter((x) => x.executionStatus === DELIVERY_STATUS.VERIFY).map((x) => x.id);
362
- // This pass knows its whole candidate set, so it picks the ONE owner here rather than
363
- // offering the filing to each and letting the per-delivery predicate decline -- the
364
- // choice can then land on a candidate it can actually tell. The rule is
365
- // UNCONDITIONAL: a failure that cannot be attributed, or that arrives with no product
366
- // context to attribute it by, still goes to exactly one delivery -- the candidate set's
367
- // own unattributable owner, the same one the per-delivery path computes -- because
368
- // fanning out "when we do not know" is the behaviour this module exists to remove.
369
- // Null means there is no verify delivery to tell at all.
419
+ // This pass knows the focus's whole delivery set, so it picks the ONE owner here
420
+ // rather than offering the filing to each and letting the per-delivery predicate
421
+ // decline -- the choice can then land on a candidate it can actually tell. The rule
422
+ // is UNCONDITIONAL: a failure that cannot be attributed, or that arrives with no
423
+ // product context to attribute it by, still goes to exactly one delivery -- the
424
+ // candidate set's own unattributable owner, the same one the per-delivery path
425
+ // computes -- because fanning out "when we do not know" is the behaviour this module
426
+ // exists to remove. Null means every delivery of the focus is cancelled, draft or planning.
370
427
  const owner = verdict.productId && verdict.sha && deps.selectReworkOwner
371
- ? deps.selectReworkOwner(candidates, { productId: verdict.productId, focusId, sha: verdict.sha })
372
- : unattributableOwner(candidates);
428
+ ? deps.selectReworkOwner(deliveries, { productId: verdict.productId, focusId, sha: verdict.sha })
429
+ : unattributableOwner(reworkOwnerCandidates(deliveries));
373
430
  if (owner === null)
374
- return { kind: 'no_verify_delivery' };
431
+ return { kind: 'no_owner_delivery' };
375
432
  // The owner was chosen above over this pass's WHOLE candidate set, so the
376
433
  // per-delivery predicate is not consulted again -- it answers over a set this pass
377
434
  // may not share, and would veto a choice this pass can act on. The commit's focus
@@ -381,8 +438,10 @@ export async function fileReworkForFailedVerdict(focusId, verdict, deps) {
381
438
  createIssue: deps.createIssue,
382
439
  getFocusDeliveries: deps.getFocusDeliveries,
383
440
  readRecordedConcernIds: deps.readRecordedConcernIds,
441
+ ...(deps.reopenForRework ? { reopenForRework: deps.reopenForRework } : {}),
384
442
  };
385
- const outcome = await fileVerificationReworkIssue(owner, {
443
+ const ownerRow = deliveries.find((d) => d.id === owner) ?? { id: owner };
444
+ const outcome = await fileReworkOn(ownerRow, {
386
445
  sha: verdict.sha,
387
446
  at: { focusId },
388
447
  failingTests: verdict.newFailures ?? [],
@@ -394,7 +453,7 @@ export async function fileReworkForFailedVerdict(focusId, verdict, deps) {
394
453
  verdictPath: verdict.productId && verdict.gate
395
454
  ? recordedVerdictPath({ productId: verdict.productId, focusId, sha: verdict.sha, gate: verdict.gate })
396
455
  : null,
397
- }, filing);
456
+ }, filing, owner);
398
457
  return { kind: 'offered', deliveryId: owner, outcome };
399
458
  }
400
459
  //# sourceMappingURL=verification-rework-issue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verification-rework-issue.js","sourceRoot":"","sources":["../../../src/verify/outcome-routing/verification-rework-issue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification-rework-issue.js","sourceRoot":"","sources":["../../../src/verify/outcome-routing/verification-rework-issue.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telora/daemon",
3
- "version": "0.23.29",
3
+ "version": "0.23.46",
4
4
  "description": "Agent orchestration daemon for Telora - spawns and manages Claude Code instances",
5
5
  "type": "module",
6
6
  "bin": {
@@ -37,8 +37,8 @@
37
37
  },
38
38
  "//testRunner": "Uses Node.js built-in test runner (node:test) via tsx for TypeScript support. The root package uses Vitest; this is a deliberate choice for the daemon package to avoid framework dependencies. Test files live beside the modules they exercise (owner-directory layout); the runner discovers them recursively.",
39
39
  "dependencies": {
40
- "@telora/daemon-core": "^0.2.111",
41
- "@telora/mcp-products": "^0.22.177",
40
+ "@telora/daemon-core": "^0.2.113",
41
+ "@telora/mcp-products": "^0.22.180",
42
42
  "commander": "^14.0.3",
43
43
  "yaml": "^2.4.0",
44
44
  "zod": "^4.3.6"