@telora/daemon 0.20.60 → 0.20.89

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 (163) hide show
  1. package/build-info.json +4 -3
  2. package/dist/ai-inspection-context.d.ts.map +1 -1
  3. package/dist/ai-inspection-context.js +4 -2
  4. package/dist/ai-inspection-context.js.map +1 -1
  5. package/dist/audit-phase.d.ts +12 -18
  6. package/dist/audit-phase.d.ts.map +1 -1
  7. package/dist/audit-phase.js +17 -60
  8. package/dist/audit-phase.js.map +1 -1
  9. package/dist/audit-prompt.d.ts +44 -0
  10. package/dist/audit-prompt.d.ts.map +1 -0
  11. package/dist/audit-prompt.js +198 -0
  12. package/dist/audit-prompt.js.map +1 -0
  13. package/dist/ci-sensor-loop.d.ts +38 -1
  14. package/dist/ci-sensor-loop.d.ts.map +1 -1
  15. package/dist/ci-sensor-loop.js +49 -5
  16. package/dist/ci-sensor-loop.js.map +1 -1
  17. package/dist/completion/completion-decision.d.ts +3 -29
  18. package/dist/completion/completion-decision.d.ts.map +1 -1
  19. package/dist/completion/completion-decision.js +3 -15
  20. package/dist/completion/completion-decision.js.map +1 -1
  21. package/dist/completion/event-phases.d.ts +0 -8
  22. package/dist/completion/event-phases.d.ts.map +1 -1
  23. package/dist/completion/event-phases.js +4 -52
  24. package/dist/completion/event-phases.js.map +1 -1
  25. package/dist/completion/event.d.ts +1 -11
  26. package/dist/completion/event.d.ts.map +1 -1
  27. package/dist/completion/event.js +1 -3
  28. package/dist/completion/event.js.map +1 -1
  29. package/dist/delivery-artifacts.d.ts.map +1 -1
  30. package/dist/delivery-artifacts.js +9 -8
  31. package/dist/delivery-artifacts.js.map +1 -1
  32. package/dist/delivery-reconciler.d.ts +3 -0
  33. package/dist/delivery-reconciler.d.ts.map +1 -1
  34. package/dist/delivery-reconciler.js +16 -0
  35. package/dist/delivery-reconciler.js.map +1 -1
  36. package/dist/focus-engine.d.ts.map +1 -1
  37. package/dist/focus-engine.js +12 -1
  38. package/dist/focus-engine.js.map +1 -1
  39. package/dist/focus-executor.d.ts.map +1 -1
  40. package/dist/focus-executor.js +4 -1
  41. package/dist/focus-executor.js.map +1 -1
  42. package/dist/focus-merge.d.ts.map +1 -1
  43. package/dist/focus-merge.js +37 -3
  44. package/dist/focus-merge.js.map +1 -1
  45. package/dist/focus-stage-lifecycle/wedge-watchdog.d.ts.map +1 -1
  46. package/dist/focus-stage-lifecycle/wedge-watchdog.js +9 -1
  47. package/dist/focus-stage-lifecycle/wedge-watchdog.js.map +1 -1
  48. package/dist/listener-auto-advance.d.ts.map +1 -1
  49. package/dist/listener-auto-advance.js +58 -10
  50. package/dist/listener-auto-advance.js.map +1 -1
  51. package/dist/merge-back-loop.d.ts +8 -2
  52. package/dist/merge-back-loop.d.ts.map +1 -1
  53. package/dist/merge-back-loop.js +17 -11
  54. package/dist/merge-back-loop.js.map +1 -1
  55. package/dist/merge-failure-classify.d.ts +39 -0
  56. package/dist/merge-failure-classify.d.ts.map +1 -0
  57. package/dist/merge-failure-classify.js +58 -0
  58. package/dist/merge-failure-classify.js.map +1 -0
  59. package/dist/prompt-sections/execution-sections.d.ts +20 -14
  60. package/dist/prompt-sections/execution-sections.d.ts.map +1 -1
  61. package/dist/prompt-sections/execution-sections.js +97 -141
  62. package/dist/prompt-sections/execution-sections.js.map +1 -1
  63. package/dist/prompt-sections/scoping-sections.d.ts +30 -0
  64. package/dist/prompt-sections/scoping-sections.d.ts.map +1 -0
  65. package/dist/prompt-sections/scoping-sections.js +187 -0
  66. package/dist/prompt-sections/scoping-sections.js.map +1 -0
  67. package/dist/prompt-sections/shared.d.ts +7 -0
  68. package/dist/prompt-sections/shared.d.ts.map +1 -1
  69. package/dist/prompt-sections/shared.js.map +1 -1
  70. package/dist/queries/agent-resolvable-promotion.d.ts +87 -0
  71. package/dist/queries/agent-resolvable-promotion.d.ts.map +1 -0
  72. package/dist/queries/agent-resolvable-promotion.js +152 -0
  73. package/dist/queries/agent-resolvable-promotion.js.map +1 -0
  74. package/dist/queries/cause-key.d.ts +64 -0
  75. package/dist/queries/cause-key.d.ts.map +1 -0
  76. package/dist/queries/cause-key.js +79 -0
  77. package/dist/queries/cause-key.js.map +1 -0
  78. package/dist/queries/deliveries.d.ts +20 -153
  79. package/dist/queries/deliveries.d.ts.map +1 -1
  80. package/dist/queries/deliveries.js +26 -0
  81. package/dist/queries/deliveries.js.map +1 -1
  82. package/dist/queries/delivery-gate-state.d.ts +192 -0
  83. package/dist/queries/delivery-gate-state.d.ts.map +1 -0
  84. package/dist/queries/delivery-gate-state.js +23 -0
  85. package/dist/queries/delivery-gate-state.js.map +1 -0
  86. package/dist/queries/escalation-suppression.d.ts +89 -0
  87. package/dist/queries/escalation-suppression.d.ts.map +1 -0
  88. package/dist/queries/escalation-suppression.js +98 -0
  89. package/dist/queries/escalation-suppression.js.map +1 -0
  90. package/dist/queries/holds.d.ts +52 -59
  91. package/dist/queries/holds.d.ts.map +1 -1
  92. package/dist/queries/holds.js +60 -68
  93. package/dist/queries/holds.js.map +1 -1
  94. package/dist/queries/issues.d.ts +40 -2
  95. package/dist/queries/issues.d.ts.map +1 -1
  96. package/dist/queries/issues.js +55 -2
  97. package/dist/queries/issues.js.map +1 -1
  98. package/dist/queries/verification.d.ts +11 -0
  99. package/dist/queries/verification.d.ts.map +1 -1
  100. package/dist/queries/verification.js.map +1 -1
  101. package/dist/reality-pole.d.ts +5 -3
  102. package/dist/reality-pole.d.ts.map +1 -1
  103. package/dist/reality-pole.js +13 -4
  104. package/dist/reality-pole.js.map +1 -1
  105. package/dist/resolvers/git-diff-against-base.d.ts.map +1 -1
  106. package/dist/resolvers/git-diff-against-base.js +12 -5
  107. package/dist/resolvers/git-diff-against-base.js.map +1 -1
  108. package/dist/resolvers/index.d.ts +1 -1
  109. package/dist/resolvers/index.d.ts.map +1 -1
  110. package/dist/resolvers/index.js +1 -1
  111. package/dist/resolvers/index.js.map +1 -1
  112. package/dist/resolvers/shared/git-diff.d.ts +152 -10
  113. package/dist/resolvers/shared/git-diff.d.ts.map +1 -1
  114. package/dist/resolvers/shared/git-diff.js +292 -14
  115. package/dist/resolvers/shared/git-diff.js.map +1 -1
  116. package/dist/spawn/prompt-assembly.d.ts +3 -0
  117. package/dist/spawn/prompt-assembly.d.ts.map +1 -1
  118. package/dist/spawn/prompt-assembly.js +2 -1
  119. package/dist/spawn/prompt-assembly.js.map +1 -1
  120. package/dist/spawn/worktree-session.d.ts +2 -0
  121. package/dist/spawn/worktree-session.d.ts.map +1 -1
  122. package/dist/spawn/worktree-session.js +20 -1
  123. package/dist/spawn/worktree-session.js.map +1 -1
  124. package/dist/staleness-sensor.d.ts +24 -1
  125. package/dist/staleness-sensor.d.ts.map +1 -1
  126. package/dist/staleness-sensor.js +31 -4
  127. package/dist/staleness-sensor.js.map +1 -1
  128. package/dist/stall-detectors.d.ts +13 -9
  129. package/dist/stall-detectors.d.ts.map +1 -1
  130. package/dist/stall-detectors.js +14 -13
  131. package/dist/stall-detectors.js.map +1 -1
  132. package/dist/team-prompt-base.d.ts +1 -1
  133. package/dist/team-prompt-base.d.ts.map +1 -1
  134. package/dist/team-prompt-base.js +4 -2
  135. package/dist/team-prompt-base.js.map +1 -1
  136. package/dist/templates/claude-md.d.ts +1 -1
  137. package/dist/templates/claude-md.d.ts.map +1 -1
  138. package/dist/templates/claude-md.js +20 -0
  139. package/dist/templates/claude-md.js.map +1 -1
  140. package/dist/verification-default-on.d.ts.map +1 -1
  141. package/dist/verification-default-on.js +5 -0
  142. package/dist/verification-default-on.js.map +1 -1
  143. package/dist/verification-deps.d.ts +151 -0
  144. package/dist/verification-deps.d.ts.map +1 -0
  145. package/dist/verification-deps.js +19 -0
  146. package/dist/verification-deps.js.map +1 -0
  147. package/dist/verification-engine.d.ts +18 -112
  148. package/dist/verification-engine.d.ts.map +1 -1
  149. package/dist/verification-engine.js +90 -103
  150. package/dist/verification-engine.js.map +1 -1
  151. package/dist/verification-evidence.d.ts +106 -0
  152. package/dist/verification-evidence.d.ts.map +1 -0
  153. package/dist/verification-evidence.js +158 -0
  154. package/dist/verification-evidence.js.map +1 -0
  155. package/dist/verification-feedback.d.ts +31 -26
  156. package/dist/verification-feedback.d.ts.map +1 -1
  157. package/dist/verification-feedback.js +77 -76
  158. package/dist/verification-feedback.js.map +1 -1
  159. package/dist/verify-restatement.d.ts +12 -9
  160. package/dist/verify-restatement.d.ts.map +1 -1
  161. package/dist/verify-restatement.js +11 -9
  162. package/dist/verify-restatement.js.map +1 -1
  163. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"ci-sensor-loop.d.ts","sourceRoot":"","sources":["../src/ci-sensor-loop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAAuD,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAU1G,uDAAuD;AACvD,eAAO,MAAM,0BAA0B,eAAe,CAAC;AAiEvD,oFAAoF;AACpF,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,cAAc,CAAC;IAC5B,qBAAqB,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,MAAM,GAAG,IAAI,CAAC;IAC/D,sBAAsB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAChE,mBAAmB,EAAE,CAAC,MAAM,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3H,uBAAuB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACjE;AAUD,MAAM,WAAW,kBAAkB;IACjC,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,YAAY,EACpB,IAAI,GAAE,YAA0B,GAC/B,OAAO,CAAC,kBAAkB,CAAC,CAwB7B"}
1
+ {"version":3,"file":"ci-sensor-loop.d.ts","sourceRoot":"","sources":["../src/ci-sensor-loop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAAuD,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAW1G,uDAAuD;AACvD,eAAO,MAAM,0BAA0B,eAAe,CAAC;AAEvD,4EAA4E;AAC5E,UAAU,eAAe;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CAC3C;AAaD;;;;;;;;;;;;GAYG;AACH;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,SAAS,eAAe,EAAE,EAChC,MAAM,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACzD,OAAO,CAYT;AAyDD,oFAAoF;AACpF,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,cAAc,CAAC;IAC5B,qBAAqB,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,MAAM,GAAG,IAAI,CAAC;IAC/D,sBAAsB,EAAE,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACzG,mBAAmB,EAAE,CAAC,MAAM,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3H,uBAAuB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACjE;AAUD,MAAM,WAAW,kBAAkB;IACjC,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,YAAY,EACpB,IAAI,GAAE,YAA0B,GAC/B,OAAO,CAAC,kBAAkB,CAAC,CAwB7B"}
@@ -20,12 +20,15 @@ import { decideCiSensorAction, createGitNativeCiStatusReader } from './ci-status
20
20
  import { listCiStatusRefs, resolveRemoteIntegrationTip } from './ci-status-git.js';
21
21
  import { createEscalation, markEscalationResolved } from './queries/issues.js';
22
22
  import { callApi } from './queries/shared.js';
23
+ import { ciRunRedCauseKey } from './queries/cause-key.js';
23
24
  import { ESCALATION_REASONS, ESCALATION_DISPOSITIONS } from '@telora/daemon-core';
24
25
  import { createLogger } from './log.js';
25
26
  const log = createLogger({ module: 'ci-sensor' });
26
27
  /** escalation_kind for a red CI run on integration. */
27
28
  export const CI_RUN_RED_ESCALATION_KIND = 'ci_run_red';
28
29
  const OPEN_STATUSES = new Set(['pending', 'in_review']);
30
+ /** Statuses whose cause_key suppresses a re-file: open (idempotency) + dismissed (memory). */
31
+ const SUPPRESSING_STATUSES = new Set(['pending', 'in_review', 'dismissed']);
29
32
  function isOpenCiRedForProduct(e, productId) {
30
33
  if (e.status && !OPEN_STATUSES.has(e.status))
31
34
  return false;
@@ -34,12 +37,46 @@ function isOpenCiRedForProduct(e, productId) {
34
37
  const meta = e.metadata ?? null;
35
38
  return e.productId === productId || meta?.productId === productId;
36
39
  }
37
- async function defaultHasOpenCiRedEscalation(productId) {
40
+ /**
41
+ * Whether a re-file for THIS red sha must be suppressed. Two ways it is:
42
+ * - an OPEN or DISMISSED row already carries the same cause key (sha+branch) --
43
+ * the cause-keyed path with DISMISSAL MEMORY. This is what fixes the incident
44
+ * where an operator dismissed a ci_run_red for a sha and the daemon re-filed
45
+ * the SAME sha on the next scan: a dismissed cause_key now keeps it silent
46
+ * until a NEW sha (a different cause key) goes red.
47
+ * - a legacy OPEN product+kind row with no cause_key exists (deployment-window
48
+ * back-compat for rows filed before this change).
49
+ *
50
+ * A new sha yields a different cause key with no matching open/dismissed row and
51
+ * re-files; a later green run resolves the open row via resolveCiRedEscalations.
52
+ */
53
+ /**
54
+ * Pure suppression predicate over already-fetched rows. A re-file for this red
55
+ * sha is suppressed when an open/dismissed row carries the same cause key
56
+ * (dismissal memory), or a legacy open product+kind row exists. Exported for
57
+ * direct unit testing (no callApi mocking needed).
58
+ */
59
+ export function isCiRedRefileSuppressed(rows, params) {
60
+ const causeKey = ciRunRedCauseKey(params.sha, params.branch);
61
+ return rows.some((e) => {
62
+ // A cause-key match suppresses only for OPEN or DISMISSED rows -- 'resolved'
63
+ // is excluded so a recurrence of the same sha after a green resolve re-files.
64
+ if (SUPPRESSING_STATUSES.has(e.status ?? '')) {
65
+ const meta = e.metadata ?? null;
66
+ if (typeof meta?.cause_key === 'string' && meta.cause_key === causeKey)
67
+ return true;
68
+ }
69
+ // Legacy back-compat: an OPEN product+kind row with no cause_key still suppresses.
70
+ return isOpenCiRedForProduct(e, params.productId);
71
+ });
72
+ }
73
+ async function defaultHasOpenCiRedEscalation(params) {
38
74
  const result = await callApi('escalation_list', {
39
- fields: { statuses: ['pending', 'in_review'] },
75
+ // Include 'dismissed' so a dismissed cause key keeps the same sha silent.
76
+ fields: { statuses: ['pending', 'in_review', 'dismissed'] },
40
77
  limit: 500,
41
78
  });
42
- return (result.escalations ?? []).some((e) => isOpenCiRedForProduct(e, productId));
79
+ return isCiRedRefileSuppressed(result.escalations ?? [], params);
43
80
  }
44
81
  async function defaultResolveCiRedEscalations(productId) {
45
82
  const result = await callApi('escalation_list', {
@@ -71,7 +108,14 @@ async function defaultFileCiRedEscalation(params) {
71
108
  `The clean-environment instrument is failing, so integration->main merges are held ` +
72
109
  `(fail-closed green-wait). Run reference: commit ${params.sha}. An operator must fix ` +
73
110
  `the failing run; this escalation auto-resolves when a later integration run goes green.`,
74
- metadata: { sha: params.sha, branch: params.branch, product_id: params.productId },
111
+ // cause_key (sha+branch) is what suppresses a re-file for the SAME sha across
112
+ // ticks AND after an operator dismissal; a new sha is a new cause key.
113
+ metadata: {
114
+ sha: params.sha,
115
+ branch: params.branch,
116
+ product_id: params.productId,
117
+ cause_key: ciRunRedCauseKey(params.sha, params.branch),
118
+ },
75
119
  });
76
120
  }
77
121
  const defaultDeps = {
@@ -97,7 +141,7 @@ export async function runCiSensorTick(config, deps = defaultDeps) {
97
141
  continue;
98
142
  counts.productsChecked++;
99
143
  const status = await deps.getCiStatus({ sha, integrationBranch: pc.integrationBranch, config: pc });
100
- const hasOpen = await deps.hasOpenCiRedEscalation(pc.productId);
144
+ const hasOpen = await deps.hasOpenCiRedEscalation({ productId: pc.productId, sha, branch: pc.integrationBranch });
101
145
  const action = decideCiSensorAction(status, hasOpen);
102
146
  if (action === 'file') {
103
147
  await deps.fileCiRedEscalation({ organizationId: pc.organizationId, productId: pc.productId, sha, branch: pc.integrationBranch });
@@ -1 +1 @@
1
- {"version":3,"file":"ci-sensor-loop.js","sourceRoot":"","sources":["../src/ci-sensor-loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ci-sensor-loop.js","sourceRoot":"","sources":["../src/ci-sensor-loop.ts"],"names":[],"mappings":"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"}
@@ -12,16 +12,10 @@
12
12
  * and terminate
13
13
  * 2. team has NO actionable work -> terminate cleanly (daemon/review-
14
14
  * managed states move the remaining deliveries)
15
- * 3. team is blocked on an unanswered DIRECTED escalation (needs_intent /
16
- * needs_clarification) anchored to a delivery it is working -> hold: do
17
- * NOT escalate, do NOT re-engage. It is waiting on a human, not stalling.
18
- * This precedes the no-progress and handoff/re-engage branches so a
19
- * blocked team is never counted as a stall (its own park is the signal a
20
- * human already sees).
21
- * 4. no-progress counter crossed the limit -> escalate and terminate
22
- * 5. actionable deliveries carry open issues -> mid-focus handoff with
15
+ * 3. no-progress counter crossed the limit -> escalate and terminate
16
+ * 4. actionable deliveries carry open issues -> mid-focus handoff with
23
17
  * the new work
24
- * 6. otherwise (planning deliveries remain) -> re-engagement nudge
18
+ * 5. otherwise (planning deliveries remain) -> re-engagement nudge
25
19
  */
26
20
  /** Facts the decision is made from. All computed post-self-heal-advance. */
27
21
  export interface CompletionDecisionFacts {
@@ -51,16 +45,6 @@ export interface CompletionDecisionFacts {
51
45
  noProgressLimit: number;
52
46
  /** At least one agent-actionable delivery carries an open issue. */
53
47
  hasActionableOpenIssues: boolean;
54
- /**
55
- * An agent-actionable delivery the team is working carries an OPEN, unanswered
56
- * DIRECTED escalation (disposition needs_intent / needs_clarification). The
57
- * team is blocked on a human answer, not stalling. Computed fail-OPEN: a
58
- * lookup error resolves to false, so a genuine stall is never masked by a
59
- * failed check. Only consulted on the teamHasActionableWork path (a team with
60
- * nothing to do is handled by the terminate branches above, where a block is
61
- * moot).
62
- */
63
- blockedOnDirectedEscalation: boolean;
64
48
  }
65
49
  /** The action handleCompletionEvent executes for this cycle. */
66
50
  export type CompletionAction =
@@ -83,16 +67,6 @@ export type CompletionAction =
83
67
  /** Planning deliveries remain: send a re-engagement nudge to scope them. */
84
68
  | {
85
69
  kind: 'reengage';
86
- }
87
- /**
88
- * Team is blocked on an unanswered directed escalation: hold in place. No
89
- * escalation filed, no wake message sent, no termination -- the open question
90
- * is the single signal a human needs, and re-engaging would only burn model
91
- * spend rediscovering it. The team resumes when the escalation is answered
92
- * (the answer read-back path re-engages it).
93
- */
94
- | {
95
- kind: 'hold_blocked_on_directed_escalation';
96
70
  };
97
71
  /**
98
72
  * Whether the (async, workflow-fetching) non-advanceability lookup should run
@@ -1 +1 @@
1
- {"version":3,"file":"completion-decision.d.ts","sourceRoot":"","sources":["../../src/completion/completion-decision.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;OAQG;IACH,2BAA2B,EAAE,OAAO,CAAC;CACtC;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;AACtB;;;;;;GAMG;GACD;IAAE,IAAI,EAAE,qCAAqC,CAAA;CAAE,CAAC;AAEpD;;;;;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,CAoBvF"}
1
+ {"version":3,"file":"completion-decision.d.ts","sourceRoot":"","sources":["../../src/completion/completion-decision.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;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;CAClC;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,CAcvF"}
@@ -12,16 +12,10 @@
12
12
  * and terminate
13
13
  * 2. team has NO actionable work -> terminate cleanly (daemon/review-
14
14
  * managed states move the remaining deliveries)
15
- * 3. team is blocked on an unanswered DIRECTED escalation (needs_intent /
16
- * needs_clarification) anchored to a delivery it is working -> hold: do
17
- * NOT escalate, do NOT re-engage. It is waiting on a human, not stalling.
18
- * This precedes the no-progress and handoff/re-engage branches so a
19
- * blocked team is never counted as a stall (its own park is the signal a
20
- * human already sees).
21
- * 4. no-progress counter crossed the limit -> escalate and terminate
22
- * 5. actionable deliveries carry open issues -> mid-focus handoff with
15
+ * 3. no-progress counter crossed the limit -> escalate and terminate
16
+ * 4. actionable deliveries carry open issues -> mid-focus handoff with
23
17
  * the new work
24
- * 6. otherwise (planning deliveries remain) -> re-engagement nudge
18
+ * 5. otherwise (planning deliveries remain) -> re-engagement nudge
25
19
  */
26
20
  /**
27
21
  * Whether the (async, workflow-fetching) non-advanceability lookup should run
@@ -43,12 +37,6 @@ export function decideCompletionAction(facts) {
43
37
  }
44
38
  return { kind: 'terminate_no_actionable_work' };
45
39
  }
46
- // A team parked on its own unanswered directed escalation is blocked, not
47
- // stalled: hold ahead of the no-progress and handoff/re-engage branches so it
48
- // is neither escalated nor re-engaged while the question is open.
49
- if (facts.blockedOnDirectedEscalation) {
50
- return { kind: 'hold_blocked_on_directed_escalation' };
51
- }
52
40
  if (facts.noProgressCycles >= facts.noProgressLimit) {
53
41
  return { kind: 'escalate_no_progress_and_terminate' };
54
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"completion-decision.js","sourceRoot":"","sources":["../../src/completion/completion-decision.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AA+DH;;;;;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,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,0EAA0E;IAC1E,8EAA8E;IAC9E,kEAAkE;IAClE,IAAI,KAAK,CAAC,2BAA2B,EAAE,CAAC;QACtC,OAAO,EAAE,IAAI,EAAE,qCAAqC,EAAE,CAAC;IACzD,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;;;;;;;;;;;;;;;;;;GAkBG;AA6CH;;;;;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,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"}
@@ -40,14 +40,6 @@ export interface CompletionFacts {
40
40
  advancedThisCycle: boolean;
41
41
  stuck: FocusDeliveryInfo | null;
42
42
  updatedNoProgressCycles: number;
43
- /**
44
- * True when the team is parked on an open, unanswered directed escalation
45
- * (needs_intent / needs_clarification) anchored to a delivery it is working.
46
- * Fail-open (a lookup error resolves to false). Routes the decision to the
47
- * `hold_blocked_on_directed_escalation` action and suppresses the cross-respawn
48
- * advancement watchdog so a blocked team is neither escalated nor re-engaged.
49
- */
50
- blockedOnDirectedEscalation: boolean;
51
43
  }
52
44
  /**
53
45
  * Recompute the picture on the post-advance state. The team owns exactly two
@@ -1 +1 @@
1
- {"version":3,"file":"event-phases.d.ts","sourceRoot":"","sources":["../../src/completion/event-phases.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAMvF,OAAO,EAA6B,KAAK,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAiB5F,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAO9E,sEAAsE;AACtE,MAAM,WAAW,eAAe;IAC9B,8EAA8E;IAC9E,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;IACvC,mBAAmB,EAAE,iBAAiB,EAAE,CAAC;IACzC,aAAa,EAAE,cAAc,EAAE,CAAC;IAChC,eAAe,EAAE,iBAAiB,EAAE,CAAC;IACrC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,qBAAqB,EAAE,OAAO,CAAC;IAC/B,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;;;;;;OAMG;IACH,2BAA2B,EAAE,OAAO,CAAC;CACtC;AAED;;;;;;;GAOG;AACH,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,CA2K1B;AAID;;;;;;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,CAwDlB;AAID;;;;;GAKG;AACH,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,CA8Nf"}
1
+ {"version":3,"file":"event-phases.d.ts","sourceRoot":"","sources":["../../src/completion/event-phases.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAMvF,OAAO,EAA6B,KAAK,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAiB5F,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAO9E,sEAAsE;AACtE,MAAM,WAAW,eAAe;IAC9B,8EAA8E;IAC9E,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;IACvC,mBAAmB,EAAE,iBAAiB,EAAE,CAAC;IACzC,aAAa,EAAE,cAAc,EAAE,CAAC;IAChC,eAAe,EAAE,iBAAiB,EAAE,CAAC;IACrC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,qBAAqB,EAAE,OAAO,CAAC;IAC/B,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;CACjC;AAED;;;;;;;GAOG;AACH,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,CA6I1B;AAID;;;;;;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,CAiDlB;AAID;;;;;GAKG;AACH,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,CA6Mf"}
@@ -131,40 +131,15 @@ export async function computeCompletionFacts(ctx, deps, currentDeliveries, effec
131
131
  const candidates = postNonTerminal.filter(d => isStatusAgentActionable(d.executionStatus ?? ''));
132
132
  stuck = await findNonAdvanceableDelivery(candidates, deps.fetchEffectiveWorkflow);
133
133
  }
134
- // A team parked on its own unanswered DIRECTED escalation (needs_intent /
135
- // needs_clarification) anchored to a delivery it is working is BLOCKED on a
136
- // human answer, not stalling. Consult the lookup ONLY on the cycle where the
137
- // team would otherwise accrue a no-progress increment (has actionable work AND
138
- // did not move state), so a healthy cycle never pays the query. FAIL-OPEN: any
139
- // lookup error resolves to not-blocked, so a genuine stall is never masked by
140
- // a failed check -- the OPPOSITE of the operator-hold gate, which fails closed.
141
- let blockedOnDirectedEscalation = false;
142
- if (teamHasActionableWork && !madeProgress && deps.findOpenDirectedHold) {
143
- const actionableDeliveries = effectiveDeliveries.filter(d => isStatusAgentActionable(d.executionStatus ?? ''));
144
- for (const d of actionableDeliveries) {
145
- try {
146
- if (await deps.findOpenDirectedHold(d.id, focusId)) {
147
- blockedOnDirectedEscalation = true;
148
- break;
149
- }
150
- }
151
- catch (err) {
152
- log.warn(`Directed-escalation hold lookup failed for "${focusName}" delivery ${d.id}, ` +
153
- `treating as not-blocked: ${err.message}`);
154
- }
155
- }
156
- }
157
134
  // The no-progress counter value AFTER this cycle's reset-or-increment.
158
135
  // Only committed to teamState on the actionable-work paths in
159
136
  // executeCompletionAction -- the no-actionable-work terminations deliberately
160
- // do not touch the counter. A blocked team FREEZES the counter (neither reset
161
- // nor increment): the wait is not progress, but it is not a stall either, so
162
- // the count is preserved to resume exactly where it was once the block clears.
137
+ // do not touch the counter. A team can no longer file a directed hold (an
138
+ // armed focus never waits on a human mid-flight), so there is no blocked-team
139
+ // freeze: no progress this cycle is a plain increment toward the stall guard.
163
140
  const updatedNoProgressCycles = madeProgress
164
141
  ? 0
165
- : blockedOnDirectedEscalation
166
- ? (teamState.noProgressCycles ?? 0)
167
- : (teamState.noProgressCycles ?? 0) + 1;
142
+ : (teamState.noProgressCycles ?? 0) + 1;
168
143
  // Measurable progress this cycle means the prior dirty episode -- if any --
169
144
  // is no longer stalled, so the commit-nudge budget resets alongside the
170
145
  // no-progress counter.
@@ -186,7 +161,6 @@ export async function computeCompletionFacts(ctx, deps, currentDeliveries, effec
186
161
  advancedThisCycle,
187
162
  stuck,
188
163
  updatedNoProgressCycles,
189
- blockedOnDirectedEscalation,
190
164
  };
191
165
  }
192
166
  // ── Phase 5: cross-respawn delivery-advancement watchdog ────────────────
@@ -199,14 +173,7 @@ export async function computeCompletionFacts(ctx, deps, currentDeliveries, effec
199
173
  */
200
174
  export async function checkDeliveryAdvancementStall(ctx, deps, facts, action, noProgressLimit) {
201
175
  const { focusId, focusName, teamState } = ctx;
202
- // A team blocked on an unanswered directed escalation must not accrue on THIS
203
- // watchdog either: it is the same false-positive the primary no-progress guard
204
- // avoids one layer up, and recording it would let the cross-respawn guard file
205
- // its own delivery-advancement-stalled team_failure on top of the open question
206
- // (criterion 3). Skip recording entirely while blocked -- the counter simply
207
- // holds until the block clears.
208
176
  const shouldRecord = facts.teamHasActionableWork &&
209
- !facts.blockedOnDirectedEscalation &&
210
177
  action.kind !== 'escalate_no_progress_and_terminate' &&
211
178
  (facts.priorSnapshot === null || !facts.madeProgress);
212
179
  const deliveryAdvancement = shouldRecord
@@ -399,21 +366,6 @@ export async function executeCompletionAction(ctx, deps, facts, action, noProgre
399
366
  deps.terminateTeam(focusId);
400
367
  return;
401
368
  }
402
- case 'hold_blocked_on_directed_escalation': {
403
- // The team is parked on its own unanswered directed escalation. Do NOT
404
- // escalate (the open question is already the single signal a human sees),
405
- // do NOT send a wake/handoff message (that re-engagement is the model spend
406
- // this branch exists to stop), and do NOT terminate (the team resumes in
407
- // place when the answer read-back re-engages it). Just commit the FROZEN
408
- // no-progress counter + the fresh snapshot and fall silent -- with no
409
- // message sent, the team emits no further 'complete', so the completion
410
- // loop stops burning cycles until the escalation is answered.
411
- teamState.noProgressCycles = updatedNoProgressCycles;
412
- teamState.lastProgressSnapshot = snapshot;
413
- log.info(`Team for "${focusName}" is blocked on an unanswered directed escalation ` +
414
- `-- holding in place (no re-engagement, no team_failure) until it is answered.`);
415
- return;
416
- }
417
369
  case 'handoff_new_work':
418
370
  case 'reengage': {
419
371
  teamState.noProgressCycles = updatedNoProgressCycles;
@@ -1 +1 @@
1
- {"version":3,"file":"event-phases.js","sourceRoot":"","sources":["../../src/completion/event-phases.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-phases.js","sourceRoot":"","sources":["../../src/completion/event-phases.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACxF,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAyB,MAAM,0BAA0B,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC9E,OAAO,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,gBAAgB,IAAI,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACzF,OAAO,EAAE,6BAA6B,IAAI,oCAAoC,EAAE,MAAM,sBAAsB,CAAC;AAC7G,OAAO,EAAE,mBAAmB,IAAI,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AACpF,OAAO,EAAE,4BAA4B,EAAE,MAAM,8BAA8B,CAAC;AAC5E,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,kCAAkC,GACnC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,EACL,2BAA2B,IAAI,kCAAkC,GAElE,MAAM,gCAAgC,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAuBvD;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,GAA2B,EAC3B,IAAyB,EACzB,iBAAsC,EACtC,mBAAwC,EACxC,aAA+B;IAE/B,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC;IAE9C,MAAM,eAAe,GAAG,mBAAmB,CAAC,MAAM,CAChD,CAAC,CAAC,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC,CAClD,CAAC;IACF,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAC/B,mBAAmB;SAChB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,uBAAuB,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;SAC7D,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAClB,CAAC;IACF,MAAM,qBAAqB,GAAG,aAAa,CAAC,IAAI,CAC9C,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAC9E,CAAC;IACF,0EAA0E;IAC1E,uEAAuE;IACvE,2EAA2E;IAC3E,2EAA2E;IAC3E,8EAA8E;IAC9E,qEAAqE;IACrE,2EAA2E;IAC3E,2EAA2E;IAC3E,yEAAyE;IACzE,8EAA8E;IAC9E,4EAA4E;IAC5E,kEAAkE;IAClE,sEAAsE;IACtE,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACrE,eAAe,GAAG,iBAAiB,CAAC;gBAClC,QAAQ,EAAE,EAAE,CAAC,QAAQ;gBACrB,WAAW,EAAE,EAAE,CAAC,WAAW,IAAI,KAAK;gBACpC,QAAQ,EAAE,EAAE,CAAC,UAAU,IAAI,IAAI;aAChC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CACN,yCAAyC,SAAS,KAAK;gBACvD,gCAAiC,GAAa,CAAC,OAAO,EAAE,CACzD,CAAC;QACJ,CAAC;IACH,CAAC;IACD,+EAA+E;IAC/E,iFAAiF;IACjF,wEAAwE;IACxE,sEAAsE;IACtE,6EAA6E;IAC7E,gFAAgF;IAChF,2EAA2E;IAC3E,4DAA4D;IAC5D,MAAM,WAAW,GAAG,CAAC,eAAe,IAAI,mBAAmB,CAAC,IAAI,CAC9D,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC,KAAK,UAAU,CAC9C,CAAC;IACF,MAAM,qBAAqB,GAAG,WAAW,IAAI,qBAAqB,CAAC;IAEnE,qEAAqE;IACrE,yEAAyE;IACzE,2EAA2E;IAC3E,4EAA4E;IAC5E,2EAA2E;IAC3E,2DAA2D;IAC3D,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,IAAI,uBAAuB,CAAC;IACzE,MAAM,WAAW,GAAG,IAAI,CAAC,mBAAmB,IAAI,0BAA0B,CAAC;IAC3E,MAAM,iBAAiB,GAAG,eAAe,CAAC,OAAO,CAAC,EAAE,YAAY,IAAI,IAAI,CAAC;IACzE,MAAM,YAAY,GAAG,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAExF,8EAA8E;IAC9E,2EAA2E;IAC3E,6DAA6D;IAC7D,MAAM,QAAQ,GAAG,oBAAoB,CAAC,mBAAmB,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;IACxF,MAAM,aAAa,GAAG,SAAS,CAAC,oBAAoB,IAAI,IAAI,CAAC;IAE7D,6EAA6E;IAC7E,kEAAkE;IAClE,8EAA8E;IAC9E,6DAA6D;IAC7D,8EAA8E;IAC9E,oEAAoE;IACpE,MAAM,0BAA0B,GAAG,mBAAmB,CAAC,IAAI,CACzD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC,KAAK,eAAe,CACnD,CAAC;IAEF,MAAM,YAAY,GAAG,0BAA0B,IAAI,aAAa,KAAK,IAAI;QACvE,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,CAAC,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IAE7C,oEAAoE;IACpE,yEAAyE;IACzE,2EAA2E;IAC3E,8EAA8E;IAC9E,4EAA4E;IAC5E,kDAAkD;IAClD,MAAM,iBAAiB,GACrB,aAAa,KAAK,IAAI,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IAErE,2EAA2E;IAC3E,8EAA8E;IAC9E,2EAA2E;IAC3E,4EAA4E;IAC5E,IAAI,KAAK,GAA6B,IAAI,CAAC;IAC3C,IAAI,yBAAyB,CAAC,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,CAAC,EAAE,CAAC;QAC5E,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CACvC,CAAC,CAAC,EAAE,CAAC,uBAAuB,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC,CACtD,CAAC;QACF,KAAK,GAAG,MAAM,0BAA0B,CAAC,UAAU,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACpF,CAAC;IAED,uEAAuE;IACvE,8DAA8D;IAC9D,8EAA8E;IAC9E,0EAA0E;IAC1E,8EAA8E;IAC9E,8EAA8E;IAC9E,MAAM,uBAAuB,GAAG,YAAY;QAC1C,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,CAAC,SAAS,CAAC,gBAAgB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAE1C,4EAA4E;IAC5E,wEAAwE;IACxE,uBAAuB;IACvB,IAAI,YAAY,EAAE,CAAC;QACjB,SAAS,CAAC,mBAAmB,GAAG,CAAC,CAAC;IACpC,CAAC;IAED,OAAO;QACL,iBAAiB;QACjB,mBAAmB;QACnB,aAAa;QACb,eAAe;QACf,qBAAqB;QACrB,qBAAqB;QACrB,iBAAiB;QACjB,YAAY;QACZ,QAAQ;QACR,aAAa;QACb,YAAY;QACZ,iBAAiB;QACjB,KAAK;QACL,uBAAuB;KACxB,CAAC;AACJ,CAAC;AAED,2EAA2E;AAE3E;;;;;;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,mBAAmB;QACzB,wEAAwE;QACxE,iEAAiE;QACjE,gEAAgE;QAChE,yEAAyE;QACzE,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,YAAY,EAClB,eAAe,CAChB;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,mBAAmB;SACtC,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;AAED,2EAA2E;AAE3E;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,GAA2B,EAC3B,IAAyB,EACzB,KAAsB,EACtB,MAAwB,EACxB,eAAuB;IAEvB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,kBAAkB,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC;IACxE,MAAM,EACJ,iBAAiB,EAAE,mBAAmB,EAAE,aAAa,EAAE,eAAe,EACtE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,EAAE,uBAAuB,GAC5D,GAAG,KAAK,CAAC;IAEV,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,wCAAwC,CAAC,CAAC,CAAC;YAC9C,wEAAwE;YACxE,wEAAwE;YACxE,qEAAqE;YACrE,gEAAgE;YAChE,wEAAwE;YACxE,qEAAqE;YACrE,yEAAyE;YACzE,sCAAsC;YACtC,IAAI,gBAAgB,GAAG,KAAK,CAAC;YAC7B,IAAI,CAAC;gBACH,gBAAgB,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;YACtE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,IAAI,CACN,qCAAqC,SAAS,8BAA+B,GAAa,CAAC,OAAO,EAAE,CACrG,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,GAAG,CAAC,IAAI,CACN,iCAAiC,SAAS,OAAO;oBACjD,IAAI,KAAM,CAAC,IAAI,MAAM,KAAM,CAAC,eAAe,IAAI,OAAO,uBAAuB;oBAC7E,UAAU,KAAM,CAAC,sBAAsB,IAAI,MAAM,gCAAgC;oBACjF,uBAAuB,CACxB,CAAC;gBACF,MAAM,sBAAsB,CAAC;oBAC3B,cAAc,EAAE,SAAS,CAAC,cAAc;oBACxC,SAAS,EAAE,SAAS,CAAC,aAAa,IAAI,EAAE;oBACxC,OAAO;oBACP,SAAS;oBACT,WAAW,EAAE,SAAS,CAAC,MAAM;oBAC7B,KAAK,EAAE,KAAM;oBACb,SAAS,EAAE,eAAe;iBAC3B,EAAE,IAAI,CAAC,CAAC;YACX,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,IAAI,CACN,iCAAiC,SAAS,gBAAgB;oBAC1D,qEAAqE,CACtE,CAAC;YACJ,CAAC;YACD,SAAS,CAAC,oBAAoB,GAAG,QAAQ,CAAC;YAC1C,SAAS,CAAC,cAAc,GAAG,eAAe,CAAC;YAC3C,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5B,OAAO;QACT,CAAC;QACD,KAAK,8BAA8B,CAAC,CAAC,CAAC;YACpC,sEAAsE;YACtE,gEAAgE;YAChE,oEAAoE;YACpE,qEAAqE;YACrE,uEAAuE;YACvE,4CAA4C;YAC5C,GAAG,CAAC,IAAI,CACN,wCAAwC,SAAS,OAAO;gBACxD,GAAG,eAAe,CAAC,MAAM,uDAAuD;gBAChF,+EAA+E,CAChF,CAAC;YACF,SAAS,CAAC,cAAc,GAAG,eAAe,CAAC;YAC3C,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5B,OAAO;QACT,CAAC;QACD,KAAK,oCAAoC,CAAC,CAAC,CAAC;YAC1C,yEAAyE;YACzE,wEAAwE;YACxE,2EAA2E;YAC3E,uEAAuE;YACvE,2EAA2E;YAC3E,yEAAyE;YACzE,EAAE;YACF,sEAAsE;YACtE,yEAAyE;YACzE,0EAA0E;YAC1E,2EAA2E;YAC3E,MAAM,eAAe,GACnB,iBAAiB,KAAK,IAAI;gBAC1B,CAAC,IAAI,CAAC,6BAA6B,IAAI,oCAAoC,CAAC,CAC1E,iBAAiB,CAClB,CAAC;YACJ,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC;YACrC,sEAAsE;YACtE,4CAA4C;YAC5C,MAAM,iBAAiB,GAAG,4BAA4B,EAAE,CAAC;YACzD,MAAM,WAAW,GAAG,SAAS,CAAC,mBAAmB,IAAI,CAAC,CAAC;YACvD,IAAI,eAAe,IAAI,QAAQ,IAAI,WAAW,GAAG,iBAAiB,EAAE,CAAC;gBACnE,SAAS,CAAC,mBAAmB,GAAG,WAAW,GAAG,CAAC,CAAC;gBAChD,SAAS,CAAC,oBAAoB,GAAG,QAAQ,CAAC;gBAC1C,GAAG,CAAC,IAAI,CACN,sCAAsC,SAAS,aAAa;oBAC5D,yEAAyE;oBACzE,sDAAsD;oBACtD,yBAAyB,SAAS,CAAC,mBAAmB,IAAI,iBAAiB,IAAI,CAChF,CAAC;gBACF,WAAW,CACT,QAAQ,EACR,4EAA4E;oBAC5E,+EAA+E;oBAC/E,GAAG,iBAAiB,6DAA6D;oBACjF,gFAAgF;oBAChF,kFAAkF;oBAClF,GAAG,SAAS,CAAC,mBAAmB,IAAI,iBAAiB,GAAG,CACzD,CAAC;gBACF,kBAAkB,CAAC,KAAK,EAAE,CAAC;gBAC3B,OAAO;YACT,CAAC;YAED,yEAAyE;YACzE,yEAAyE;YACzE,uEAAuE;YACvE,kEAAkE;YAClE,qDAAqD;YACrD,MAAM,SAAS,GAAG,IAAI,CAAC,2BAA2B,IAAI,kCAAkC,CAAC;YACzF,IAAI,UAAU,GAAkC,EAAE,eAAe,EAAE,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;YAC5F,IAAI,CAAC;gBACH,UAAU,GAAG,MAAM,SAAS,CAAC;oBAC3B,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,SAAS;oBACT,UAAU,EAAE,mBAAmB;oBAC/B,MAAM,EAAE,aAAa;oBACrB,YAAY,EAAE,iBAAiB;oBAC/B,SAAS,EAAE,SAAS,CAAC,aAAa,IAAI,EAAE;iBACzC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,IAAI,CACN,8CAA8C,SAAS,MAAO,GAAa,CAAC,OAAO,EAAE,CACtF,CAAC;YACJ,CAAC;YACD,IAAI,UAAU,CAAC,eAAe,GAAG,CAAC,EAAE,CAAC;gBACnC,4EAA4E;gBAC5E,SAAS,CAAC,mBAAmB,GAAG,CAAC,CAAC;gBAClC,SAAS,CAAC,gBAAgB,GAAG,uBAAuB,CAAC;gBACrD,SAAS,CAAC,oBAAoB,GAAG,QAAQ,CAAC;gBAC1C,GAAG,CAAC,IAAI,CACN,wBAAwB,SAAS,0BAA0B;oBAC3D,cAAc,UAAU,CAAC,eAAe,qCAAqC;oBAC7E,gDAAgD,CACjD,CAAC;gBACF,SAAS,CAAC,cAAc,GAAG,eAAe,CAAC;gBAC3C,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC5B,OAAO;YACT,CAAC;YAED,wEAAwE;YACxE,wEAAwE;YACxE,yDAAyD;YACzD,SAAS,CAAC,mBAAmB,GAAG,CAAC,CAAC;YAClC,SAAS,CAAC,gBAAgB,GAAG,uBAAuB,CAAC;YACrD,SAAS,CAAC,oBAAoB,GAAG,QAAQ,CAAC;YAC1C,GAAG,CAAC,IAAI,CACN,qCAAqC,SAAS,OAAO;gBACrD,GAAG,SAAS,CAAC,gBAAgB,2CAA2C,eAAe,CAAC,MAAM,GAAG;gBACjG,wDAAwD,CACzD,CAAC;YACF,MAAM,kBAAkB,CAAC;gBACvB,cAAc,EAAE,SAAS,CAAC,cAAc;gBACxC,SAAS,EAAE,SAAS,CAAC,aAAa,IAAI,EAAE;gBACxC,OAAO;gBACP,SAAS;gBACT,WAAW,EAAE,SAAS,CAAC,MAAM;gBAC7B,MAAM,EAAE,SAAS,CAAC,gBAAgB;gBAClC,SAAS,EAAE,eAAe;aAC3B,EAAE,IAAI,CAAC,CAAC;YACT,SAAS,CAAC,cAAc,GAAG,eAAe,CAAC;YAC3C,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5B,OAAO;QACT,CAAC;QACD,KAAK,kBAAkB,CAAC;QACxB,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,SAAS,CAAC,gBAAgB,GAAG,uBAAuB,CAAC;YACrD,SAAS,CAAC,oBAAoB,GAAG,QAAQ,CAAC;YAE1C,sEAAsE;YACtE,yEAAyE;YACzE,cAAc;YACd,IAAI,OAAe,CAAC;YACpB,IAAI,MAAM,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBACvC,GAAG,CAAC,IAAI,CACN,0BAA0B,SAAS,uBAAuB,CAC3D,CAAC;gBACF,OAAO,GAAG,gBAAgB,CAAC,mBAAmB,EAAE,aAAa,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAC;YAC7F,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,IAAI,CACN,gBAAgB,SAAS,QAAQ,eAAe,CAAC,MAAM,gBAAgB;oBACvE,+BAA+B,SAAS,CAAC,gBAAgB,IAAI,eAAe,GAAG,CAChF,CAAC;gBACF,OAAO,GAAG,wBAAwB,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;YACrE,CAAC;YAED,wBAAwB;YACxB,KAAK,MAAM,CAAC,IAAI,iBAAiB,EAAE,CAAC;gBAClC,SAAS,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACrC,SAAS,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,sBAAsB,CAAC,CAAC;YACjE,CAAC;YAED,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAC3B,WAAW,CAAC,IAAI,CAAC,KAAM,EAAE,OAAO,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -9,7 +9,7 @@ import type { ChildProcess } from 'node:child_process';
9
9
  import type { DaemonConfig, FocusTeamState, FocusDeliveryInfo, FocusIssueInfo, Workflow } from '../types.js';
10
10
  import { loadEnvConfig } from '@telora/daemon-core';
11
11
  import { CompletionDetector, type CompletionInfo } from './detector.js';
12
- import { type CreateEscalationParams, type OperatorHoldEscalation } from '../queries/issues.js';
12
+ import { type CreateEscalationParams } from '../queries/issues.js';
13
13
  import { takeProgressSnapshot, snapshotsEqual } from './progress-snapshot.js';
14
14
  import { isInReviewWindow, isDeliveryNonAdvanceable, findNonAdvanceableDelivery } from './advanceability.js';
15
15
  export { isInReviewWindow, isDeliveryNonAdvanceable, findNonAdvanceableDelivery };
@@ -57,16 +57,6 @@ export interface CompletionEventDeps {
57
57
  * per stuck focus, so the guard does not file a fresh row every tick.
58
58
  */
59
59
  hasOpenTeamFailureEscalation: (focusId: string) => Promise<boolean>;
60
- /**
61
- * Find an OPEN directed-hold escalation (disposition needs_intent /
62
- * needs_clarification) anchored to a delivery. Backs the blocked-not-stalled
63
- * guard: a team parked on its own unanswered directed question is held, not
64
- * escalated or re-engaged. The consuming call site (computeCompletionFacts)
65
- * fails OPEN -- a lookup error is treated as not-blocked so a genuine stall is
66
- * never masked. Optional: present in production via defaultDeps; a test that
67
- * omits it gets not-blocked (behavior identical to today, before this guard).
68
- */
69
- findOpenDirectedHold?: (deliveryId: string, focusId?: string) => Promise<OperatorHoldEscalation | null>;
70
60
  /**
71
61
  * Resolve the focus's review_requested_at FRESH (it can be set or cleared
72
62
  * between team spawn and this completion event). Backs the review-window
@@ -1 +1 @@
1
- {"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../src/completion/event.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../src/completion/event.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ import { isStatusCascadable } from '../stage-classifier.js';
10
10
  import { getFocusDeliveries, getFocusIssues } from '../queries/focuses.js';
11
11
  import { getActiveFocuses } from '../supabase.js';
12
12
  import { terminateTeam as defaultTerminateTeam } from './team-lifecycle.js';
13
- import { createEscalation as defaultCreateEscalation, hasOpenTeamFailureEscalation as defaultHasOpenTeamFailureEscalation, findOpenDirectedHoldForDelivery as defaultFindOpenDirectedHold, } from '../queries/issues.js';
13
+ import { createEscalation as defaultCreateEscalation, hasOpenTeamFailureEscalation as defaultHasOpenTeamFailureEscalation, } from '../queries/issues.js';
14
14
  import { advanceDeliveryStatuses as defaultAdvanceDeliveryStatuses, runReviewExitHandler as defaultRunReviewExitHandler, } from './team-completion.js';
15
15
  import { fetchEffectiveWorkflowWithTransitions as defaultFetchEffectiveWorkflowWithTransitions } from '../queries/workflows.js';
16
16
  import { decideCompletionAction } from './completion-decision.js';
@@ -63,7 +63,6 @@ const defaultDeps = {
63
63
  advanceDeliveryStatuses: defaultAdvanceDeliveryStatuses,
64
64
  fetchEffectiveWorkflow: defaultFetchEffectiveWorkflowWithTransitions,
65
65
  hasOpenTeamFailureEscalation: defaultHasOpenTeamFailureEscalation,
66
- findOpenDirectedHold: defaultFindOpenDirectedHold,
67
66
  getReviewRequestedAt: defaultGetReviewRequestedAt,
68
67
  getFocusRatificationState: defaultGetFocusRatificationState,
69
68
  runReviewExitHandler: defaultRunReviewExitHandler,
@@ -121,7 +120,6 @@ export async function handleCompletionEvent(ctx, deps = defaultDeps) {
121
120
  noProgressCycles: facts.updatedNoProgressCycles,
122
121
  noProgressLimit: SCOPE_COVERAGE_NO_PROGRESS_LIMIT,
123
122
  hasActionableOpenIssues: facts.postHasActionableOpen,
124
- blockedOnDirectedEscalation: facts.blockedOnDirectedEscalation,
125
123
  });
126
124
  // 6. Cross-respawn delivery-advancement watchdog (may escalate + terminate).
127
125
  if (await checkDeliveryAdvancementStall(ctx, deps, facts, action, DELIVERY_ADVANCEMENT_NO_PROGRESS_LIMIT))
@@ -1 +1 @@
1
- {"version":3,"file":"event.js","sourceRoot":"","sources":["../../src/completion/event.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event.js","sourceRoot":"","sources":["../../src/completion/event.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-artifacts.d.ts","sourceRoot":"","sources":["../src/delivery-artifacts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAY/D;;;;;GAKG;AACH,wBAAgB,qCAAqC,CACnD,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACjB,kBAAkB,GAAG,IAAI,CAmB3B"}
1
+ {"version":3,"file":"delivery-artifacts.d.ts","sourceRoot":"","sources":["../src/delivery-artifacts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAgB/D;;;;;GAKG;AACH,wBAAgB,qCAAqC,CACnD,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACjB,kBAAkB,GAAG,IAAI,CAiB3B"}
@@ -15,7 +15,7 @@
15
15
  * - forward slashes (POSIX)
16
16
  * - no leading slash, no `./`
17
17
  */
18
- import { execSync } from 'node:child_process';
18
+ import { resolveDeliveryDiffRange, getChangedFilesRange, } from './resolvers/shared/git-diff.js';
19
19
  function normalizePath(p) {
20
20
  let out = p.trim();
21
21
  if (!out)
@@ -35,15 +35,16 @@ function normalizePath(p) {
35
35
  * "couldn't derive, leave completion_artifacts as-is".
36
36
  */
37
37
  export function deriveCompletionArtifactsFromWorktree(worktreePath, baseBranch) {
38
- let raw;
39
- try {
40
- raw = execSync(`git diff --name-only ${baseBranch}...HEAD`, { cwd: worktreePath, maxBuffer: 4 * 1024 * 1024, encoding: 'utf-8' });
41
- }
42
- catch {
38
+ // Merge-aware seam: resolve the range that contains the delivery's work
39
+ // (base...HEAD while ahead, else the recorded/searched merge range) so a
40
+ // focus branch that has already merged back still lists its changed files
41
+ // instead of an empty base...HEAD name-only diff.
42
+ const range = resolveDeliveryDiffRange(worktreePath, baseBranch);
43
+ if (!range)
43
44
  return null;
44
- }
45
+ const files = getChangedFilesRange(worktreePath, range);
45
46
  const seen = new Set();
46
- for (const line of raw.split(/\r?\n/)) {
47
+ for (const line of files) {
47
48
  const normalized = normalizePath(line);
48
49
  if (normalized)
49
50
  seen.add(normalized);
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-artifacts.js","sourceRoot":"","sources":["../src/delivery-artifacts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAG9C,SAAS,aAAa,CAAC,CAAS;IAC9B,IAAI,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACnB,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IACpB,mEAAmE;IACnE,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC9B,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7C,OAAO,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC/C,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qCAAqC,CACnD,YAAoB,EACpB,UAAkB;IAElB,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,QAAQ,CACZ,wBAAwB,UAAU,SAAS,EAC3C,EAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CACrE,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,UAAU;YAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACjC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"delivery-artifacts.js","sourceRoot":"","sources":["../src/delivery-artifacts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EACL,wBAAwB,EACxB,oBAAoB,GACrB,MAAM,gCAAgC,CAAC;AAExC,SAAS,aAAa,CAAC,CAAS;IAC9B,IAAI,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACnB,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IACpB,mEAAmE;IACnE,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC9B,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7C,OAAO,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC/C,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qCAAqC,CACnD,YAAoB,EACpB,UAAkB;IAElB,wEAAwE;IACxE,yEAAyE;IACzE,0EAA0E;IAC1E,kDAAkD;IAClD,MAAM,KAAK,GAAG,wBAAwB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IACjE,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,KAAK,GAAG,oBAAoB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAExD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,UAAU;YAAE,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACjC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AACrC,CAAC"}
@@ -178,6 +178,9 @@ export { isAuditPhaseFocus, isDiscoveryOnlyDelivery, type DiscoveryOnlySignal, }
178
178
  * has work + active -> coding (work started);
179
179
  * otherwise -> stay (scoping gate / not started).
180
180
  * - coding : open work -> queued (re-queue);
181
+ * no work issues (non-discovery) -> queued (empty-delivery scoping
182
+ * gate: never advance an issue-less delivery to
183
+ * verify on the vacuous all-done truth);
181
184
  * all done + uncommitted worktree -> stay coding (git-safety gate);
182
185
  * all done + committed + guard blocked -> paused;
183
186
  * all done + committed -> verify.
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-reconciler.d.ts","sourceRoot":"","sources":["../src/delivery-reconciler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,gDAAgD;AAChD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,+DAA+D;AAC/D,MAAM,WAAW,kBAAkB;IACjC;;;;;OAKG;IACH,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,8EAA8E;AAC9E,MAAM,WAAW,sBAAsB;IACrC,wEAAwE;IACxE,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,yDAAyD;AACzD,MAAM,WAAW,qBAAqB;IACpC,+DAA+D;IAC/D,eAAe,EAAE,OAAO,CAAC;IACzB,8EAA8E;IAC9E,YAAY,EAAE,OAAO,CAAC;IACtB,kCAAkC;IAClC,WAAW,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACjC,gDAAgD;IAChD,SAAS,EAAE,OAAO,CAAC;IACnB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,EAAE,UAAU,GAAG,YAAY,GAAG,IAAI,CAAC;CAC5C;AAED,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,eAAe,CAAC;IAC/B,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IACvC,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,YAAY,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC7C,WAAW,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC3C;;;;;;;;;;;;;OAaG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,4FAA4F;IAC5F,MAAM,EAAE,eAAe,CAAC;IACxB,iDAAiD;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,SAAS,EAAE,OAAO,CAAC;CACpB;AAID;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,OAAO,CAIrF;AAED,mEAAmE;AACnE,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,OAAO,CAE7E;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,OAAO,CAE3E;AAED,qFAAqF;AACrF,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,OAAO,CAE7E;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,OAAO,CAGnF;AAOD,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,KAAK,mBAAmB,GACzB,MAAM,kBAAkB,CAAC;AAc1B;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,cAAc,GAAG,eAAe,CAwF9E"}
1
+ {"version":3,"file":"delivery-reconciler.d.ts","sourceRoot":"","sources":["../src/delivery-reconciler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,gDAAgD;AAChD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,+DAA+D;AAC/D,MAAM,WAAW,kBAAkB;IACjC;;;;;OAKG;IACH,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,8EAA8E;AAC9E,MAAM,WAAW,sBAAsB;IACrC,wEAAwE;IACxE,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,yDAAyD;AACzD,MAAM,WAAW,qBAAqB;IACpC,+DAA+D;IAC/D,eAAe,EAAE,OAAO,CAAC;IACzB,8EAA8E;IAC9E,YAAY,EAAE,OAAO,CAAC;IACtB,kCAAkC;IAClC,WAAW,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACjC,gDAAgD;IAChD,SAAS,EAAE,OAAO,CAAC;IACnB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,EAAE,UAAU,GAAG,YAAY,GAAG,IAAI,CAAC;CAC5C;AAED,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,eAAe,CAAC;IAC/B,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IACvC,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,YAAY,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC7C,WAAW,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC3C;;;;;;;;;;;;;OAaG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,4FAA4F;IAC5F,MAAM,EAAE,eAAe,CAAC;IACxB,iDAAiD;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,SAAS,EAAE,OAAO,CAAC;CACpB;AAID;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,OAAO,CAIrF;AAED,mEAAmE;AACnE,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,OAAO,CAE7E;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,OAAO,CAE3E;AAED,qFAAqF;AACrF,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,OAAO,CAE7E;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,OAAO,CAGnF;AAOD,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,KAAK,mBAAmB,GACzB,MAAM,kBAAkB,CAAC;AAc1B;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,cAAc,GAAG,eAAe,CAqG9E"}
@@ -118,6 +118,9 @@ function result(currentStatus, target, reason) {
118
118
  * has work + active -> coding (work started);
119
119
  * otherwise -> stay (scoping gate / not started).
120
120
  * - coding : open work -> queued (re-queue);
121
+ * no work issues (non-discovery) -> queued (empty-delivery scoping
122
+ * gate: never advance an issue-less delivery to
123
+ * verify on the vacuous all-done truth);
121
124
  * all done + uncommitted worktree -> stay coding (git-safety gate);
122
125
  * all done + committed + guard blocked -> paused;
123
126
  * all done + committed -> verify.
@@ -161,6 +164,19 @@ export function reconcileDeliveryStatus(input) {
161
164
  if (openWork) {
162
165
  return result(currentStatus, DELIVERY_STATUS.QUEUED, 'open work remains -> re-queue');
163
166
  }
167
+ // Empty-delivery scoping gate: a delivery with NO work issues must never
168
+ // advance coding -> verify on the vacuous "all issues done" truth
169
+ // (areDeliveryIssuesDone is true over an empty set). An unscoped delivery
170
+ // that reached coding rests back at queued so a team scopes it, instead of
171
+ // rocketing to verify and generating verify_evidence_unavailable about work
172
+ // that never began (2026-07-27 incident). Discovery-only deliveries (audit
173
+ // findings; their contract is Context Groups, not Task/Bug) are EXEMPT and
174
+ // still walk to their terminal -- the only caller that walks an empty
175
+ // delivery forward, checkDeliveryAutoAdvance, passes discoveryOnly=true and
176
+ // gates it on resolved Context Group findings.
177
+ if (!hasWork && !discoveryOnly) {
178
+ return result(currentStatus, DELIVERY_STATUS.QUEUED, 'no work issues (scoping gate) -> re-queue to queued (never advance an empty delivery to verify)');
179
+ }
164
180
  if (!gitState.worktreeCommitted) {
165
181
  return result(currentStatus, DELIVERY_STATUS.CODING, 'all work done but worktree has uncommitted changes -> git-safety gate holds in coding');
166
182
  }