@telora/daemon 0.22.62 → 0.22.78

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 (131) hide show
  1. package/build-info.json +6 -3
  2. package/dist/completion/completion-phase-registry.d.ts.map +1 -1
  3. package/dist/completion/completion-phase-registry.js +1 -0
  4. package/dist/completion/completion-phase-registry.js.map +1 -1
  5. package/dist/completion/event-entry-phases.js +3 -3
  6. package/dist/completion/event-entry-phases.js.map +1 -1
  7. package/dist/completion/event-escalations.d.ts.map +1 -1
  8. package/dist/completion/event-escalations.js +4 -0
  9. package/dist/completion/event-escalations.js.map +1 -1
  10. package/dist/completion/event.d.ts +1 -0
  11. package/dist/completion/event.d.ts.map +1 -1
  12. package/dist/completion/event.js.map +1 -1
  13. package/dist/completion/index.js +1 -1
  14. package/dist/completion/review-cycle-delta.d.ts.map +1 -1
  15. package/dist/completion/review-cycle-delta.js +2 -1
  16. package/dist/completion/review-cycle-delta.js.map +1 -1
  17. package/dist/completion/review-exit-deps.d.ts +4 -1
  18. package/dist/completion/review-exit-deps.d.ts.map +1 -1
  19. package/dist/completion/review-exit-deps.js +5 -2
  20. package/dist/completion/review-exit-deps.js.map +1 -1
  21. package/dist/completion/review-exit-escalations.d.ts +12 -0
  22. package/dist/completion/review-exit-escalations.d.ts.map +1 -1
  23. package/dist/completion/review-exit-escalations.js +22 -7
  24. package/dist/completion/review-exit-escalations.js.map +1 -1
  25. package/dist/completion/review-exit-evidence.d.ts +26 -0
  26. package/dist/completion/review-exit-evidence.d.ts.map +1 -0
  27. package/dist/completion/review-exit-evidence.js +115 -0
  28. package/dist/completion/review-exit-evidence.js.map +1 -0
  29. package/dist/completion/review-exit-phase.d.ts +14 -0
  30. package/dist/completion/review-exit-phase.d.ts.map +1 -1
  31. package/dist/completion/review-exit-phase.js +58 -81
  32. package/dist/completion/review-exit-phase.js.map +1 -1
  33. package/dist/completion/review-exit-progress.d.ts.map +1 -1
  34. package/dist/completion/review-exit-progress.js +14 -1
  35. package/dist/completion/review-exit-progress.js.map +1 -1
  36. package/dist/completion/review-exit-rehoming.d.ts +53 -0
  37. package/dist/completion/review-exit-rehoming.d.ts.map +1 -0
  38. package/dist/completion/review-exit-rehoming.js +57 -0
  39. package/dist/completion/review-exit-rehoming.js.map +1 -0
  40. package/dist/completion/settle-injection-sweep.d.ts +7 -2
  41. package/dist/completion/settle-injection-sweep.d.ts.map +1 -1
  42. package/dist/completion/settle-injection-sweep.js +32 -2
  43. package/dist/completion/settle-injection-sweep.js.map +1 -1
  44. package/dist/completion/state-cascade.d.ts +13 -12
  45. package/dist/completion/state-cascade.d.ts.map +1 -1
  46. package/dist/completion/state-cascade.js +35 -1
  47. package/dist/completion/state-cascade.js.map +1 -1
  48. package/dist/focus/focus-executor.d.ts.map +1 -1
  49. package/dist/focus/focus-executor.js +56 -23
  50. package/dist/focus/focus-executor.js.map +1 -1
  51. package/dist/focus/focus-loop-registry.js +2 -2
  52. package/dist/focus/focus-loop-registry.js.map +1 -1
  53. package/dist/nexus/return.d.ts +7 -5
  54. package/dist/nexus/return.d.ts.map +1 -1
  55. package/dist/nexus/return.js +7 -6
  56. package/dist/nexus/return.js.map +1 -1
  57. package/dist/prompt-sections/persona-sections.d.ts +0 -18
  58. package/dist/prompt-sections/persona-sections.d.ts.map +1 -1
  59. package/dist/prompt-sections/persona-sections.js +40 -20
  60. package/dist/prompt-sections/persona-sections.js.map +1 -1
  61. package/dist/queries/agent-resolvable-promotion.d.ts +53 -0
  62. package/dist/queries/agent-resolvable-promotion.d.ts.map +1 -1
  63. package/dist/queries/agent-resolvable-promotion.js +114 -7
  64. package/dist/queries/agent-resolvable-promotion.js.map +1 -1
  65. package/dist/queries/escalation-consumption.d.ts.map +1 -1
  66. package/dist/queries/escalation-consumption.js +1 -0
  67. package/dist/queries/escalation-consumption.js.map +1 -1
  68. package/dist/queries/escalations.d.ts +34 -2
  69. package/dist/queries/escalations.d.ts.map +1 -1
  70. package/dist/queries/escalations.js +72 -4
  71. package/dist/queries/escalations.js.map +1 -1
  72. package/dist/queries/focuses.d.ts +13 -0
  73. package/dist/queries/focuses.d.ts.map +1 -1
  74. package/dist/queries/focuses.js +18 -0
  75. package/dist/queries/focuses.js.map +1 -1
  76. package/dist/queries/issues.d.ts +9 -0
  77. package/dist/queries/issues.d.ts.map +1 -1
  78. package/dist/queries/issues.js +11 -0
  79. package/dist/queries/issues.js.map +1 -1
  80. package/dist/queries/shared.js +1 -1
  81. package/dist/queries/verification.d.ts +14 -2
  82. package/dist/queries/verification.d.ts.map +1 -1
  83. package/dist/queries/verification.js +43 -6
  84. package/dist/queries/verification.js.map +1 -1
  85. package/dist/reality/reality-writeback.d.ts +28 -0
  86. package/dist/reality/reality-writeback.d.ts.map +1 -1
  87. package/dist/reality/reality-writeback.js +30 -0
  88. package/dist/reality/reality-writeback.js.map +1 -1
  89. package/dist/spawn/worktree-session.d.ts +16 -10
  90. package/dist/spawn/worktree-session.d.ts.map +1 -1
  91. package/dist/spawn/worktree-session.js +52 -35
  92. package/dist/spawn/worktree-session.js.map +1 -1
  93. package/dist/testing/fixtures/index.js +1 -1
  94. package/dist/types/focus.d.ts +12 -0
  95. package/dist/types/focus.d.ts.map +1 -1
  96. package/dist/types/index.js +1 -1
  97. package/dist/verify/stall-detectors.d.ts.map +1 -1
  98. package/dist/verify/stall-detectors.js +1 -0
  99. package/dist/verify/stall-detectors.js.map +1 -1
  100. package/dist/verify/unreviewed-settle-detector.d.ts +36 -1
  101. package/dist/verify/unreviewed-settle-detector.d.ts.map +1 -1
  102. package/dist/verify/unreviewed-settle-detector.js +98 -32
  103. package/dist/verify/unreviewed-settle-detector.js.map +1 -1
  104. package/dist/verify/verification-boundary-env.d.ts +51 -0
  105. package/dist/verify/verification-boundary-env.d.ts.map +1 -0
  106. package/dist/verify/verification-boundary-env.js +63 -0
  107. package/dist/verify/verification-boundary-env.js.map +1 -0
  108. package/dist/verify/verification-deps-default.js +2 -1
  109. package/dist/verify/verification-deps-default.js.map +1 -1
  110. package/dist/verify/verification-deps.js +1 -1
  111. package/dist/verify/verification-deps.js.map +1 -1
  112. package/dist/verify/verification-deterministic.d.ts +11 -1
  113. package/dist/verify/verification-deterministic.d.ts.map +1 -1
  114. package/dist/verify/verification-deterministic.js +26 -5
  115. package/dist/verify/verification-deterministic.js.map +1 -1
  116. package/dist/verify/verification-engine.d.ts +1 -0
  117. package/dist/verify/verification-engine.d.ts.map +1 -1
  118. package/dist/verify/verification-engine.js +28 -4
  119. package/dist/verify/verification-engine.js.map +1 -1
  120. package/dist/verify/verification-evidence-unavailable-feedback.d.ts +52 -0
  121. package/dist/verify/verification-evidence-unavailable-feedback.d.ts.map +1 -0
  122. package/dist/verify/verification-evidence-unavailable-feedback.js +178 -0
  123. package/dist/verify/verification-evidence-unavailable-feedback.js.map +1 -0
  124. package/dist/verify/verification-feedback.d.ts +34 -59
  125. package/dist/verify/verification-feedback.d.ts.map +1 -1
  126. package/dist/verify/verification-feedback.js +64 -172
  127. package/dist/verify/verification-feedback.js.map +1 -1
  128. package/dist/verify/verify-restatement.d.ts.map +1 -1
  129. package/dist/verify/verify-restatement.js +2 -1
  130. package/dist/verify/verify-restatement.js.map +1 -1
  131. package/package.json +2 -2
@@ -47,6 +47,15 @@ export interface UnreviewedSettleDeps {
47
47
  * null) WITHOUT closing the review window. Defaults to releaseFocusArm.
48
48
  */
49
49
  releaseArm: (focusId: string) => Promise<void>;
50
+ /**
51
+ * Whether a review session for this focus is still running. While it is, the
52
+ * detector must NOT announce a missing verdict nor release the arm -- the
53
+ * verdict is being rendered right now. Same liveness signal the sibling
54
+ * clearStaleReviewRequest uses (an active team whose sessionType is 'review').
55
+ * Optional so a test may omit it (the gate then no-ops, the pre-gate
56
+ * behavior); the default deps always supply it, so production always gates.
57
+ */
58
+ isReviewSessionActive?: (focusId: string) => boolean;
50
59
  }
51
60
  /**
52
61
  * Check ONE focus's ALREADY-FETCHED settle state for an unreviewed settle and,
@@ -54,7 +63,8 @@ export interface UnreviewedSettleDeps {
54
63
  * window OPEN (the deliberate null-watermark hold that surfaces the missing
55
64
  * verdict; clearStaleReviewRequest leaves it set on a null watermark).
56
65
  *
57
- * On an unreviewed settle, in order:
66
+ * SILENT while a review session is still live (a verdict may still land) -- see
67
+ * the liveness gate below. On an unreviewed settle with no live review, in order:
58
68
  * 1. LOG the settle at the moment it occurs (so it is not readable only from
59
69
  * the focus row).
60
70
  * 2. File EXACTLY ONE review_window_stalled escalation naming the focus, its
@@ -70,4 +80,29 @@ export interface UnreviewedSettleDeps {
70
80
  export declare function checkUnreviewedSettleForFocus(ctx: FocusStallContext, inputs: UnreviewedSettleInputs & {
71
81
  deliveries: FocusDeliveryInfo[];
72
82
  }, deps?: UnreviewedSettleDeps): Promise<void>;
83
+ export interface SupersedeUnreviewedSettleDeps {
84
+ /**
85
+ * Resolve every open escalation of a kind for a focus, stamping the note.
86
+ * Idempotent: resolves 0 when none are open. Defaults to
87
+ * resolveOpenFocusEscalationsOfKind.
88
+ */
89
+ resolveStaleAnnouncement: (focusId: string, escalationKind: string, notes: string) => Promise<number>;
90
+ }
91
+ /**
92
+ * Retract/supersede a stale unreviewed-settle announcement once a verdict lands.
93
+ *
94
+ * Even with the liveness gate, an announcement can legitimately fire (a review
95
+ * that appeared dead without a verdict) and THEN a verdict lands -- e.g. the
96
+ * review-exit stamp or the edge review_complete promotes reviewed_through_sha
97
+ * afterward. Left alone, the record would keep telling a human the OPPOSITE of
98
+ * what happened ("no verdict was ever rendered"). This resolves any open
99
+ * review_window_stalled escalation for the focus with a superseding note, so the
100
+ * record reflects that a verdict did land.
101
+ *
102
+ * Self-gating: a no-op unless a window was opened (reviewRequestedAt set) AND a
103
+ * verdict has landed (reviewedThroughSha non-null). Idempotent and best-effort;
104
+ * a resolve failure is logged, never thrown. Runs in the same winding_down
105
+ * cascade branch as the announcer, so it reads state the caller already loaded.
106
+ */
107
+ export declare function supersedeStaleUnreviewedSettleForFocus(ctx: FocusStallContext, reviewRequestedAt: string | null, reviewedThroughSha: string | null, deps?: SupersedeUnreviewedSettleDeps): Promise<void>;
73
108
  //# sourceMappingURL=unreviewed-settle-detector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"unreviewed-settle-detector.d.ts","sourceRoot":"","sources":["../../src/verify/unreviewed-settle-detector.ts"],"names":[],"mappings":"AAmCA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAEL,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACpC,MAAM,sCAAsC,CAAC;AAG9C,OAAO,EAAE,KAAK,mBAAmB,EAAsB,MAAM,yBAAyB,CAAC;AAEvF,OAAO,EAA8B,KAAK,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAI1F;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,mEAAmE;IACnE,KAAK,EAAE,mBAAmB,CAAC;IAC3B,2CAA2C;IAC3C,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,6EAA6E;IAC7E,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,gFAAgF;IAChF,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAO1E;AAED,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,cAAc,EAAE,CAAC,MAAM,EAAE,8BAA8B,KAAK,OAAO,CAAC,8BAA8B,CAAC,CAAC;IACpG;;;OAGG;IACH,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAChD;AAOD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,6BAA6B,CACjD,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,sBAAsB,GAAG;IAAE,UAAU,EAAE,iBAAiB,EAAE,CAAA;CAAE,EACpE,IAAI,GAAE,oBAAkD,GACvD,OAAO,CAAC,IAAI,CAAC,CAiFf"}
1
+ {"version":3,"file":"unreviewed-settle-detector.d.ts","sourceRoot":"","sources":["../../src/verify/unreviewed-settle-detector.ts"],"names":[],"mappings":"AAoCA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAEL,KAAK,8BAA8B,EACnC,KAAK,8BAA8B,EACpC,MAAM,sCAAsC,CAAC;AAK9C,OAAO,EAAE,KAAK,mBAAmB,EAAsB,MAAM,yBAAyB,CAAC;AAEvF,OAAO,EAA8B,KAAK,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAI1F;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,mEAAmE;IACnE,KAAK,EAAE,mBAAmB,CAAC;IAC3B,2CAA2C;IAC3C,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,6EAA6E;IAC7E,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,gFAAgF;IAChF,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAO1E;AAED,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,cAAc,EAAE,CAAC,MAAM,EAAE,8BAA8B,KAAK,OAAO,CAAC,8BAA8B,CAAC,CAAC;IACpG;;;OAGG;IACH,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C;;;;;;;OAOG;IACH,qBAAqB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;CACtD;AAsED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,6BAA6B,CACjD,GAAG,EAAE,iBAAiB,EACtB,MAAM,EAAE,sBAAsB,GAAG;IAAE,UAAU,EAAE,iBAAiB,EAAE,CAAA;CAAE,EACpE,IAAI,GAAE,oBAAkD,GACvD,OAAO,CAAC,IAAI,CAAC,CAqDf;AAED,MAAM,WAAW,6BAA6B;IAC5C;;;;OAIG;IACH,wBAAwB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACvG;AAOD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,sCAAsC,CAC1D,GAAG,EAAE,iBAAiB,EACtB,iBAAiB,EAAE,MAAM,GAAG,IAAI,EAChC,kBAAkB,EAAE,MAAM,GAAG,IAAI,EACjC,IAAI,GAAE,6BAAoD,GACzD,OAAO,CAAC,IAAI,CAAC,CAwBf"}
@@ -1,5 +1,6 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
- // Pinned by: packages/daemon/src/verify/unreviewed-settle-detector.test.ts
2
+ // Pinned by: packages/daemon/src/integration/unreviewed-settle-live-review-repro.test.ts,
3
+ // packages/daemon/src/verify/unreviewed-settle-detector.test.ts
3
4
  // PINNED-BY-END
4
5
  /**
5
6
  * Unreviewed-settle detector.
@@ -30,6 +31,8 @@ import { ESCALATION_REASONS, ESCALATION_DISPOSITIONS, withRetry, } from '@telora
30
31
  import { fileEscalationIdempotent as defaultFileEscalationIdempotent, } from '../queries/escalation-suppression.js';
31
32
  import { focusBlockageCauseKey } from '../queries/cause-key.js';
32
33
  import { releaseFocusArm } from '../queries/focuses.js';
34
+ import { resolveOpenFocusEscalationsOfKind } from '../queries/escalations.js';
35
+ import { getActiveTeams } from '../focus/focus-team-state.js';
33
36
  import { isDeliveryTerminal } from '../focus/focus-phase.js';
34
37
  import { createLogger } from '../shell/log.js';
35
38
  import { REVIEW_WINDOW_STALLED_KIND } from './stall-detectors.js';
@@ -62,40 +65,16 @@ export function isUnreviewedSettle(inputs) {
62
65
  const defaultUnreviewedSettleDeps = {
63
66
  fileEscalation: defaultFileEscalationIdempotent,
64
67
  releaseArm: releaseFocusArm,
68
+ isReviewSessionActive: (focusId) => getActiveTeams().get(focusId)?.sessionType === 'review',
65
69
  };
66
70
  /**
67
- * Check ONE focus's ALREADY-FETCHED settle state for an unreviewed settle and,
68
- * when found, ANNOUNCE it and RELEASE the stranded arm -- keeping the review
69
- * window OPEN (the deliberate null-watermark hold that surfaces the missing
70
- * verdict; clearStaleReviewRequest leaves it set on a null watermark).
71
- *
72
- * On an unreviewed settle, in order:
73
- * 1. LOG the settle at the moment it occurs (so it is not readable only from
74
- * the focus row).
75
- * 2. File EXACTLY ONE review_window_stalled escalation naming the focus, its
76
- * settled deliveries, and the verdict that was never rendered. Idempotent
77
- * by cause key, so a repeated poll files no second one.
78
- * 3. RELEASE the arm (daemon-owned, window stays open). Done last so a release
79
- * failure still leaves the escalation filed and retries next poll (the
80
- * role is still set, so the predicate still holds).
81
- *
82
- * Rides the same per-focus cascade seam as the sibling detectors; operates on
83
- * state the caller (runCascadeChecks) already loaded.
71
+ * File the ONE idempotent review_window_stalled escalation for an unreviewed
72
+ * settle (cause-keyed, so a repeated poll files no second one). Best-effort: a
73
+ * filing failure is logged and swallowed so the caller still releases the arm.
74
+ * Extracted from checkUnreviewedSettleForFocus to keep it under the
75
+ * function-size limit.
84
76
  */
85
- export async function checkUnreviewedSettleForFocus(ctx, inputs, deps = defaultUnreviewedSettleDeps) {
86
- if (!isUnreviewedSettle(inputs))
87
- return;
88
- const settled = inputs.deliveries.filter((d) => isDeliveryTerminal(d.executionStatus));
89
- const settledList = settled.length
90
- ? settled.map((d) => `"${d.name}" (${d.executionStatus})`).join(', ')
91
- : '(none listed)';
92
- // (1) Name the unreviewed settle in the log at the moment it occurs.
93
- log.warn(`[unreviewed-settle] Unreviewed settle on focus "${ctx.focusName}" (${ctx.focusId}): ` +
94
- `all deliveries terminal with review_requested_at set and reviewed_through_sha null -- ` +
95
- `a review verdict was never rendered. Announcing and releasing the stranded arm ` +
96
- `(review window kept open).`);
97
- // (2) One idempotent review_window_stalled escalation naming the focus, its
98
- // settled deliveries, and the verdict that was never rendered.
77
+ async function fileUnreviewedSettleEscalation(ctx, inputs, settled, settledList, deps) {
99
78
  const causeKey = focusBlockageCauseKey(REVIEW_WINDOW_STALLED_KIND, ctx.focusId, 'unreviewed_settle');
100
79
  try {
101
80
  await withRetry(() => deps.fileEscalation({
@@ -134,6 +113,56 @@ export async function checkUnreviewedSettleForFocus(ctx, inputs, deps = defaultU
134
113
  catch (err) {
135
114
  log.warn(`[unreviewed-settle] failed to file escalation for focus "${ctx.focusName}":`, err.message);
136
115
  }
116
+ }
117
+ /**
118
+ * Check ONE focus's ALREADY-FETCHED settle state for an unreviewed settle and,
119
+ * when found, ANNOUNCE it and RELEASE the stranded arm -- keeping the review
120
+ * window OPEN (the deliberate null-watermark hold that surfaces the missing
121
+ * verdict; clearStaleReviewRequest leaves it set on a null watermark).
122
+ *
123
+ * SILENT while a review session is still live (a verdict may still land) -- see
124
+ * the liveness gate below. On an unreviewed settle with no live review, in order:
125
+ * 1. LOG the settle at the moment it occurs (so it is not readable only from
126
+ * the focus row).
127
+ * 2. File EXACTLY ONE review_window_stalled escalation naming the focus, its
128
+ * settled deliveries, and the verdict that was never rendered. Idempotent
129
+ * by cause key, so a repeated poll files no second one.
130
+ * 3. RELEASE the arm (daemon-owned, window stays open). Done last so a release
131
+ * failure still leaves the escalation filed and retries next poll (the
132
+ * role is still set, so the predicate still holds).
133
+ *
134
+ * Rides the same per-focus cascade seam as the sibling detectors; operates on
135
+ * state the caller (runCascadeChecks) already loaded.
136
+ */
137
+ export async function checkUnreviewedSettleForFocus(ctx, inputs, deps = defaultUnreviewedSettleDeps) {
138
+ if (!isUnreviewedSettle(inputs))
139
+ return;
140
+ // A live review still OWNS its window. Do NOT announce a missing verdict --
141
+ // nor release the arm -- while a review session for this focus is running:
142
+ // the verdict is being rendered right now (the 2026-09-09 incident fired this
143
+ // ~90s before an approving verdict landed). Reuse the same liveness signal the
144
+ // sibling clearStaleReviewRequest uses. REVERSE-WEDGE SAFE: a review that DIED
145
+ // without a verdict is reaped from activeTeams by the outcome / stalled-team
146
+ // backstops later in this same cascade (checkTeamOutcomeStallForFocus /
147
+ // checkStalledTeamBackstopForFocus), after which this fires on the next tick --
148
+ // so an abandoned review never holds the arm forever.
149
+ if (deps.isReviewSessionActive?.(ctx.focusId)) {
150
+ log.debug(`[unreviewed-settle] Deferring unreviewed-settle on focus "${ctx.focusName}" ` +
151
+ `(${ctx.focusId}): a review session still owns the window; a verdict may still land.`);
152
+ return;
153
+ }
154
+ const settled = inputs.deliveries.filter((d) => isDeliveryTerminal(d.executionStatus));
155
+ const settledList = settled.length
156
+ ? settled.map((d) => `"${d.name}" (${d.executionStatus})`).join(', ')
157
+ : '(none listed)';
158
+ // (1) Name the unreviewed settle in the log at the moment it occurs.
159
+ log.warn(`[unreviewed-settle] Unreviewed settle on focus "${ctx.focusName}" (${ctx.focusId}): ` +
160
+ `all deliveries terminal with review_requested_at set and reviewed_through_sha null -- ` +
161
+ `a review verdict was never rendered. Announcing and releasing the stranded arm ` +
162
+ `(review window kept open).`);
163
+ // (2) One idempotent review_window_stalled escalation naming the focus, its
164
+ // settled deliveries, and the verdict that was never rendered.
165
+ await fileUnreviewedSettleEscalation(ctx, inputs, settled, settledList, deps);
137
166
  // (3) Release the stranded arm -- daemon-owned, review window stays open.
138
167
  try {
139
168
  await withRetry(() => deps.releaseArm(ctx.focusId), { maxAttempts: 3, label: `release-unreviewed-settle-arm-${ctx.focusId}` });
@@ -144,4 +173,41 @@ export async function checkUnreviewedSettleForFocus(ctx, inputs, deps = defaultU
144
173
  log.warn(`[unreviewed-settle] failed to release the arm for focus "${ctx.focusName}":`, err.message);
145
174
  }
146
175
  }
176
+ const defaultSupersedeDeps = {
177
+ resolveStaleAnnouncement: (focusId, kind, notes) => resolveOpenFocusEscalationsOfKind(focusId, kind, notes),
178
+ };
179
+ /**
180
+ * Retract/supersede a stale unreviewed-settle announcement once a verdict lands.
181
+ *
182
+ * Even with the liveness gate, an announcement can legitimately fire (a review
183
+ * that appeared dead without a verdict) and THEN a verdict lands -- e.g. the
184
+ * review-exit stamp or the edge review_complete promotes reviewed_through_sha
185
+ * afterward. Left alone, the record would keep telling a human the OPPOSITE of
186
+ * what happened ("no verdict was ever rendered"). This resolves any open
187
+ * review_window_stalled escalation for the focus with a superseding note, so the
188
+ * record reflects that a verdict did land.
189
+ *
190
+ * Self-gating: a no-op unless a window was opened (reviewRequestedAt set) AND a
191
+ * verdict has landed (reviewedThroughSha non-null). Idempotent and best-effort;
192
+ * a resolve failure is logged, never thrown. Runs in the same winding_down
193
+ * cascade branch as the announcer, so it reads state the caller already loaded.
194
+ */
195
+ export async function supersedeStaleUnreviewedSettleForFocus(ctx, reviewRequestedAt, reviewedThroughSha, deps = defaultSupersedeDeps) {
196
+ if (!reviewRequestedAt || reviewedThroughSha === null)
197
+ return;
198
+ try {
199
+ const resolved = await deps.resolveStaleAnnouncement(ctx.focusId, REVIEW_WINDOW_STALLED_KIND, `Superseded by the daemon: a review verdict subsequently landed for focus ` +
200
+ `"${ctx.focusName}" (reviewed_through_sha=${reviewedThroughSha}). The earlier ` +
201
+ `unreviewed-settle announcement -- that no verdict was ever rendered -- is no ` +
202
+ `longer true and is retracted.`);
203
+ if (resolved > 0) {
204
+ log.info(`[unreviewed-settle] Superseded ${resolved} stale review_window_stalled ` +
205
+ `announcement(s) for focus "${ctx.focusName}" -- a verdict landed ` +
206
+ `(reviewed_through_sha=${reviewedThroughSha}).`);
207
+ }
208
+ }
209
+ catch (err) {
210
+ log.warn(`[unreviewed-settle] failed to supersede a stale announcement for focus "${ctx.focusName}":`, err.message);
211
+ }
212
+ }
147
213
  //# sourceMappingURL=unreviewed-settle-detector.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"unreviewed-settle-detector.js","sourceRoot":"","sources":["../../src/verify/unreviewed-settle-detector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unreviewed-settle-detector.js","sourceRoot":"","sources":["../../src/verify/unreviewed-settle-detector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * The verify BOUNDARY the daemon resolves before a deterministic run and hands
3
+ * to the command as environment, so the command's targeted-test selector diffs
4
+ * against the delivery's recorded PRE-MERGE BOUNDARY rather than
5
+ * merge-base(HEAD, integration).
6
+ *
7
+ * On a merged-back delivery that merge-base equals HEAD: the changed-file set is
8
+ * empty and the gate passes as a "clean no-op" having run none of the delivery's
9
+ * own tests. Handing the recorded boundary makes the selection see the
10
+ * delivery's real changes. A delivery still on its branch has no recorded
11
+ * boundary, so nothing is handed and the selector's merge-base auto-derivation
12
+ * is used unchanged.
13
+ *
14
+ * Sliced out of verification-engine.ts to keep that file under the daemon
15
+ * 800-line limit; the engine's STRATEGIES dispatch calls resolveVerifyBoundaryEnv
16
+ * before running the deterministic strategy.
17
+ *
18
+ * @module verification-boundary-env
19
+ */
20
+ import type { PendingVerification } from '../queries/verification.js';
21
+ import type { VerificationDeps } from './verification-deps.js';
22
+ /**
23
+ * Env vars handed to the deterministic verify command:
24
+ *
25
+ * TELORA_VERIFY_BASE_REF the recorded pre-merge boundary ref.
26
+ * TELORA_VERIFY_RECORDED_COMMIT_COUNT the delivery's own recorded commit count,
27
+ * so the selector can FAIL (never no-op)
28
+ * when the diff against the handed base is
29
+ * empty yet the delivery recorded commits.
30
+ *
31
+ * Consumed by scripts/select-targeted-tests.mjs (mirrored there by string, as
32
+ * that script cannot import this TS); pinned together by
33
+ * scripts/verify-gate.test.mjs.
34
+ */
35
+ export declare const VERIFY_BASE_REF_ENV = "TELORA_VERIFY_BASE_REF";
36
+ export declare const VERIFY_RECORDED_COMMIT_COUNT_ENV = "TELORA_VERIFY_RECORDED_COMMIT_COUNT";
37
+ /**
38
+ * Resolve the verify boundary env for the deterministic command, BEFORE the run.
39
+ * Best-effort: a resolution failure or an unmerged delivery (no recorded
40
+ * boundary) yields {} so the command inherits the process env and the selector's
41
+ * merge-base auto-derivation is used unchanged. Only when a recorded pre-merge
42
+ * boundary exists is a base handed -- alongside the delivery's own recorded
43
+ * commit count, so the selector can distinguish an honest empty diff (no
44
+ * recorded commits) from a laundered no-op (recorded commits, empty diff).
45
+ *
46
+ * The FAST-FORWARD merge-back case (no merge commit) resolves its boundary from
47
+ * the recorded pre-merge ref (deps.resolveRecordedPreMergeRef is the
48
+ * fast-forward-safe source), never from a merge commit's parent.
49
+ */
50
+ export declare function resolveVerifyBoundaryEnv(deps: VerificationDeps, v: PendingVerification): Promise<Record<string, string>>;
51
+ //# sourceMappingURL=verification-boundary-env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verification-boundary-env.d.ts","sourceRoot":"","sources":["../../src/verify/verification-boundary-env.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAK/D;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAC5D,eAAO,MAAM,gCAAgC,wCAAwC,CAAC;AAEtF;;;;;;;;;;;;GAYG;AACH,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,gBAAgB,EACtB,CAAC,EAAE,mBAAmB,GACrB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAgCjC"}
@@ -0,0 +1,63 @@
1
+ // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
+ // Pinned by: packages/daemon/src/verify/verification-boundary-env.test.ts
3
+ // PINNED-BY-END
4
+ import { createLogger } from '../shell/log.js';
5
+ const log = createLogger({ module: 'verification' });
6
+ /**
7
+ * Env vars handed to the deterministic verify command:
8
+ *
9
+ * TELORA_VERIFY_BASE_REF the recorded pre-merge boundary ref.
10
+ * TELORA_VERIFY_RECORDED_COMMIT_COUNT the delivery's own recorded commit count,
11
+ * so the selector can FAIL (never no-op)
12
+ * when the diff against the handed base is
13
+ * empty yet the delivery recorded commits.
14
+ *
15
+ * Consumed by scripts/select-targeted-tests.mjs (mirrored there by string, as
16
+ * that script cannot import this TS); pinned together by
17
+ * scripts/verify-gate.test.mjs.
18
+ */
19
+ export const VERIFY_BASE_REF_ENV = 'TELORA_VERIFY_BASE_REF';
20
+ export const VERIFY_RECORDED_COMMIT_COUNT_ENV = 'TELORA_VERIFY_RECORDED_COMMIT_COUNT';
21
+ /**
22
+ * Resolve the verify boundary env for the deterministic command, BEFORE the run.
23
+ * Best-effort: a resolution failure or an unmerged delivery (no recorded
24
+ * boundary) yields {} so the command inherits the process env and the selector's
25
+ * merge-base auto-derivation is used unchanged. Only when a recorded pre-merge
26
+ * boundary exists is a base handed -- alongside the delivery's own recorded
27
+ * commit count, so the selector can distinguish an honest empty diff (no
28
+ * recorded commits) from a laundered no-op (recorded commits, empty diff).
29
+ *
30
+ * The FAST-FORWARD merge-back case (no merge commit) resolves its boundary from
31
+ * the recorded pre-merge ref (deps.resolveRecordedPreMergeRef is the
32
+ * fast-forward-safe source), never from a merge commit's parent.
33
+ */
34
+ export async function resolveVerifyBoundaryEnv(deps, v) {
35
+ let preMergeRef = null;
36
+ if (deps.resolveRecordedPreMergeRef) {
37
+ try {
38
+ preMergeRef = await deps.resolveRecordedPreMergeRef(v);
39
+ }
40
+ catch (err) {
41
+ log.debug(`[verification] pre-merge boundary lookup failed for ${v.deliveryId}:`, err.message);
42
+ }
43
+ }
44
+ // No recorded boundary (a delivery still on its branch, or a merged-back row
45
+ // whose boundary the resolver suppressed to stay honestly blind): hand nothing,
46
+ // so the selector diffs against merge-base(HEAD, integration) as today.
47
+ if (!preMergeRef)
48
+ return {};
49
+ let recordedCommitCount = 0;
50
+ if (deps.resolveRecordedCommitShas) {
51
+ try {
52
+ recordedCommitCount = (await deps.resolveRecordedCommitShas(v)).length;
53
+ }
54
+ catch (err) {
55
+ log.debug(`[verification] recorded commit-set lookup failed for ${v.deliveryId}:`, err.message);
56
+ }
57
+ }
58
+ return {
59
+ [VERIFY_BASE_REF_ENV]: preMergeRef,
60
+ [VERIFY_RECORDED_COMMIT_COUNT_ENV]: String(recordedCommitCount),
61
+ };
62
+ }
63
+ //# sourceMappingURL=verification-boundary-env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verification-boundary-env.js","sourceRoot":"","sources":["../../src/verify/verification-boundary-env.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,0EAA0E;AAC1E,gBAAgB;AAwBhB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;AAErD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,wBAAwB,CAAC;AAC5D,MAAM,CAAC,MAAM,gCAAgC,GAAG,qCAAqC,CAAC;AAEtF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,IAAsB,EACtB,CAAsB;IAEtB,IAAI,WAAW,GAAkB,IAAI,CAAC;IACtC,IAAI,IAAI,CAAC,0BAA0B,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,WAAW,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CACP,uDAAuD,CAAC,CAAC,UAAU,GAAG,EACrE,GAAa,CAAC,OAAO,CACvB,CAAC;QACJ,CAAC;IACH,CAAC;IACD,6EAA6E;IAC7E,gFAAgF;IAChF,wEAAwE;IACxE,IAAI,CAAC,WAAW;QAAE,OAAO,EAAE,CAAC;IAE5B,IAAI,mBAAmB,GAAG,CAAC,CAAC;IAC5B,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,mBAAmB,GAAG,CAAC,MAAM,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACzE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CACP,wDAAwD,CAAC,CAAC,UAAU,GAAG,EACtE,GAAa,CAAC,OAAO,CACvB,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO;QACL,CAAC,mBAAmB,CAAC,EAAE,WAAW;QAClC,CAAC,gCAAgC,CAAC,EAAE,MAAM,CAAC,mBAAmB,CAAC;KAChE,CAAC;AACJ,CAAC"}
@@ -30,7 +30,8 @@ import { getCommitsAhead, filterCommitsByDelivery, selectDeliveryCommitsAcrossBa
30
30
  import { getActiveFocuses } from '../queries/focus-discovery.js';
31
31
  import { resolveDefaultVerification as defaultResolveDefaultVerification } from './verification-config.js';
32
32
  import { getFocusDeliveries } from '../queries/focuses.js';
33
- import { deliverVerificationFailureFeedback, routeShortfallOutcome, requeueEvidenceUnavailableAsRework, } from './verification-feedback.js';
33
+ import { deliverVerificationFailureFeedback, routeShortfallOutcome, } from './verification-feedback.js';
34
+ import { requeueEvidenceUnavailableAsRework } from './verification-evidence-unavailable-feedback.js';
34
35
  import { buildDefaultAttributeFailures, buildResolveVerificationCwd } from './verification-baseline.js';
35
36
  import { resolveAiInspectionInputs as defaultResolveAiInspectionInputs } from './ai-inspection-context.js';
36
37
  import { runAiInspection as defaultRunAiInspection } from './ai-inspection-runner.js';
@@ -1 +1 @@
1
- {"version":3,"file":"verification-deps-default.js","sourceRoot":"","sources":["../../src/verify/verification-deps-default.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification-deps-default.js","sourceRoot":"","sources":["../../src/verify/verification-deps-default.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
- // Pinned by: none -- no test imports this module directly (baselined; see lint:pinned-by)
2
+ // Pinned by: packages/daemon/src/verify/verification-boundary-env.test.ts
3
3
  // PINNED-BY-END
4
4
  export {};
5
5
  //# sourceMappingURL=verification-deps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verification-deps.js","sourceRoot":"","sources":["../../src/verify/verification-deps.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,0FAA0F;AAC1F,gBAAgB"}
1
+ {"version":3,"file":"verification-deps.js","sourceRoot":"","sources":["../../src/verify/verification-deps.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,0EAA0E;AAC1E,gBAAgB"}
@@ -65,6 +65,16 @@ export interface DeterministicLogContext {
65
65
  /**
66
66
  * Run a configured shell command in the focus's worktree (or the product
67
67
  * repo path as fallback). Pass = exit 0.
68
+ *
69
+ * `extraEnv` is merged over the inherited process env into the spawned command.
70
+ * It carries the verify BOUNDARY the daemon resolved before the run
71
+ * (TELORA_VERIFY_BASE_REF + TELORA_VERIFY_RECORDED_COMMIT_COUNT): on a
72
+ * merged-back delivery the command's targeted-test selector must diff against
73
+ * the delivery's recorded pre-merge boundary, not merge-base(HEAD, integration)
74
+ * (which equals HEAD once the branch merged back, selecting nothing and passing
75
+ * as a no-op). Empty / undefined => the process env is inherited unchanged (the
76
+ * still-on-branch delivery path, where the selector's merge-base auto-derivation
77
+ * is correct).
68
78
  */
69
- export declare function runDeterministicStrategy(config: Record<string, unknown> | null, cwd: string, logContext?: DeterministicLogContext): Promise<StrategyResult>;
79
+ export declare function runDeterministicStrategy(config: Record<string, unknown> | null, cwd: string, logContext?: DeterministicLogContext, extraEnv?: Record<string, string>): Promise<StrategyResult>;
70
80
  //# sourceMappingURL=verification-deterministic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"verification-deterministic.d.ts","sourceRoot":"","sources":["../../src/verify/verification-deterministic.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAOtE;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,+BAA+B,QAAiB,CAAC;AAE9D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,mBAAmB,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yFAAyF;IACzF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iFAAiF;IACjF,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,sFAAsF;IACtF,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,kFAAkF;IAClF,WAAW,EAAE,MAAM,CAAC;IACpB,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EACtC,GAAG,EAAE,MAAM,EACX,UAAU,CAAC,EAAE,uBAAuB,GACnC,OAAO,CAAC,cAAc,CAAC,CAiJzB"}
1
+ {"version":3,"file":"verification-deterministic.d.ts","sourceRoot":"","sources":["../../src/verify/verification-deterministic.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAOtE;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,+BAA+B,QAAiB,CAAC;AAE9D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,mBAAmB,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yFAAyF;IACzF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iFAAiF;IACjF,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,sFAAsF;IACtF,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,kFAAkF;IAClF,WAAW,EAAE,MAAM,CAAC;IACpB,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAiBD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EACtC,GAAG,EAAE,MAAM,EACX,UAAU,CAAC,EAAE,uBAAuB,EACpC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAChC,OAAO,CAAC,cAAc,CAAC,CA8IzB"}
@@ -41,11 +41,35 @@ const log = createLogger({ module: 'verification' });
41
41
  * authoritative.
42
42
  */
43
43
  export const DEFAULT_VERIFICATION_TIMEOUT_MS = 30 * 60 * 1000;
44
+ /**
45
+ * Spawn options for the deterministic verify child. Merges the resolved verify
46
+ * boundary env (extraEnv) over the inherited process env; when there is nothing
47
+ * to add, the process env is inherited unchanged (the still-on-branch path,
48
+ * where the selector's merge-base auto-derivation is correct). Extracted so the
49
+ * strategy function stays under the daemon per-function line limit.
50
+ */
51
+ function verifySpawnOptions(cwd, extraEnv) {
52
+ const opts = { cwd, stdio: ['ignore', 'pipe', 'pipe'] };
53
+ if (extraEnv && Object.keys(extraEnv).length > 0) {
54
+ opts.env = { ...process.env, ...extraEnv };
55
+ }
56
+ return opts;
57
+ }
44
58
  /**
45
59
  * Run a configured shell command in the focus's worktree (or the product
46
60
  * repo path as fallback). Pass = exit 0.
61
+ *
62
+ * `extraEnv` is merged over the inherited process env into the spawned command.
63
+ * It carries the verify BOUNDARY the daemon resolved before the run
64
+ * (TELORA_VERIFY_BASE_REF + TELORA_VERIFY_RECORDED_COMMIT_COUNT): on a
65
+ * merged-back delivery the command's targeted-test selector must diff against
66
+ * the delivery's recorded pre-merge boundary, not merge-base(HEAD, integration)
67
+ * (which equals HEAD once the branch merged back, selecting nothing and passing
68
+ * as a no-op). Empty / undefined => the process env is inherited unchanged (the
69
+ * still-on-branch delivery path, where the selector's merge-base auto-derivation
70
+ * is correct).
47
71
  */
48
- export async function runDeterministicStrategy(config, cwd, logContext) {
72
+ export async function runDeterministicStrategy(config, cwd, logContext, extraEnv) {
49
73
  const command = config?.command;
50
74
  if (typeof command !== 'string' || command.length === 0 || !config) {
51
75
  return {
@@ -89,10 +113,7 @@ export async function runDeterministicStrategy(config, cwd, logContext) {
89
113
  return new Promise((resolve) => {
90
114
  let child;
91
115
  try {
92
- child = spawn('sh', ['-c', command], {
93
- cwd,
94
- stdio: ['ignore', 'pipe', 'pipe'],
95
- });
116
+ child = spawn('sh', ['-c', command], verifySpawnOptions(cwd, extraEnv));
96
117
  }
97
118
  catch (err) {
98
119
  // Synchronous spawn failure: release the hold and fail the run rather than
@@ -1 +1 @@
1
- {"version":3,"file":"verification-deterministic.js","sourceRoot":"","sources":["../../src/verify/verification-deterministic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification-deterministic.js","sourceRoot":"","sources":["../../src/verify/verification-deterministic.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,7 @@ export declare function runAiInspectionStrategy(deps: VerificationDeps, v: Pendi
54
54
  */
55
55
  export type { DriftProposalCreatePayload, VerificationDeps } from './verification-deps.js';
56
56
  import type { VerificationDeps } from './verification-deps.js';
57
+ export { VERIFY_BASE_REF_ENV, VERIFY_RECORDED_COMMIT_COUNT_ENV, resolveVerifyBoundaryEnv, } from './verification-boundary-env.js';
57
58
  /**
58
59
  * Verify-gate evidence resolution lives in verification-evidence.ts (diff-range
59
60
  * resolution, structured change signals, and the missing-slot naming the
@@ -1 +1 @@
1
- {"version":3,"file":"verification-engine.d.ts","sourceRoot":"","sources":["../../src/verify/verification-engine.ts"],"names":[],"mappings":"AASA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,KAAK,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AACzG,OAAO,EACL,KAAK,mBAAmB,EAGzB,MAAM,4BAA4B,CAAC;AAQpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAYtD,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,EAC1B,gCAAgC,EAChC,qBAAqB,EACrB,qBAAqB,EACrB,kCAAkC,EAClC,6BAA6B,EAC7B,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,KAAK,gBAAgB,EACtB,MAAM,2BAA2B,CAAC;AAenC,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,cAAc,CAAC,CAKrE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,gBAAgB,EACtB,CAAC,EAAE,mBAAmB,GACrB,OAAO,CAAC,cAAc,GAAG;IAAE,UAAU,CAAC,EAAE,gBAAgB,CAAA;CAAE,CAAC,CAmB7D;AAMD;;;;GAIG;AACH,YAAY,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAc/D;;;;;;GAMG;AACH,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,KAAK,kBAAkB,GACxB,MAAM,4BAA4B,CAAC;AAYpC;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,0BAA0B,CAC9C,CAAC,EAAE,mBAAmB,EACtB,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,cAAc,CAAC,CAiczB;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,YAAY,EACpB,IAAI,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAC/B,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAwFlG"}
1
+ {"version":3,"file":"verification-engine.d.ts","sourceRoot":"","sources":["../../src/verify/verification-engine.ts"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,wBAAwB,EAAE,KAAK,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AACzG,OAAO,EAEL,KAAK,mBAAmB,EAGzB,MAAM,4BAA4B,CAAC;AAQpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAYtD,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,EAC1B,gCAAgC,EAChC,qBAAqB,EACrB,qBAAqB,EACrB,kCAAkC,EAClC,6BAA6B,EAC7B,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,KAAK,gBAAgB,EACtB,MAAM,2BAA2B,CAAC;AAenC,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,cAAc,CAAC,CAKrE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,gBAAgB,EACtB,CAAC,EAAE,mBAAmB,GACrB,OAAO,CAAC,cAAc,GAAG;IAAE,UAAU,CAAC,EAAE,gBAAgB,CAAA;CAAE,CAAC,CAmB7D;AAMD;;;;GAIG;AACH,YAAY,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAO/D,OAAO,EACL,mBAAmB,EACnB,gCAAgC,EAChC,wBAAwB,GACzB,MAAM,gCAAgC,CAAC;AAmBxC;;;;;;GAMG;AACH,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,KAAK,kBAAkB,GACxB,MAAM,4BAA4B,CAAC;AA+BpC;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,0BAA0B,CAC9C,CAAC,EAAE,mBAAmB,EACtB,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,cAAc,CAAC,CAiczB;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,YAAY,EACpB,IAAI,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAC/B,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAwFlG"}