@telora/daemon 0.22.226 → 0.22.233

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 (164) hide show
  1. package/build-info.json +4 -3
  2. package/dist/completion/codex-activity.d.ts +40 -0
  3. package/dist/completion/codex-activity.d.ts.map +1 -0
  4. package/dist/completion/codex-activity.js +69 -0
  5. package/dist/completion/codex-activity.js.map +1 -0
  6. package/dist/completion/completion-phase-registry.d.ts +2 -1
  7. package/dist/completion/completion-phase-registry.d.ts.map +1 -1
  8. package/dist/completion/completion-phase-registry.js +15 -3
  9. package/dist/completion/completion-phase-registry.js.map +1 -1
  10. package/dist/completion/exit-classification.d.ts.map +1 -1
  11. package/dist/completion/exit-classification.js +3 -1
  12. package/dist/completion/exit-classification.js.map +1 -1
  13. package/dist/completion/index.js +1 -1
  14. package/dist/completion/review-defect-detector.d.ts +58 -18
  15. package/dist/completion/review-defect-detector.d.ts.map +1 -1
  16. package/dist/completion/review-defect-detector.js +62 -27
  17. package/dist/completion/review-defect-detector.js.map +1 -1
  18. package/dist/completion/review-exit-attribution.d.ts +6 -3
  19. package/dist/completion/review-exit-attribution.d.ts.map +1 -1
  20. package/dist/completion/review-exit-attribution.js +9 -7
  21. package/dist/completion/review-exit-attribution.js.map +1 -1
  22. package/dist/completion/review-exit-deps.d.ts +2 -0
  23. package/dist/completion/review-exit-deps.d.ts.map +1 -1
  24. package/dist/completion/review-exit-deps.js +3 -0
  25. package/dist/completion/review-exit-deps.js.map +1 -1
  26. package/dist/completion/review-exit-evidence.d.ts +8 -0
  27. package/dist/completion/review-exit-evidence.d.ts.map +1 -1
  28. package/dist/completion/review-exit-evidence.js +39 -27
  29. package/dist/completion/review-exit-evidence.js.map +1 -1
  30. package/dist/completion/review-exit-foreign-findings.d.ts +5 -1
  31. package/dist/completion/review-exit-foreign-findings.d.ts.map +1 -1
  32. package/dist/completion/review-exit-foreign-findings.js +4 -4
  33. package/dist/completion/review-exit-foreign-findings.js.map +1 -1
  34. package/dist/completion/review-exit-phase.js +5 -5
  35. package/dist/completion/review-exit-phase.js.map +1 -1
  36. package/dist/completion/team-phase.d.ts.map +1 -1
  37. package/dist/completion/team-phase.js +3 -2
  38. package/dist/completion/team-phase.js.map +1 -1
  39. package/dist/completion/team-progress-measure.d.ts +22 -1
  40. package/dist/completion/team-progress-measure.d.ts.map +1 -1
  41. package/dist/completion/team-progress-measure.js +53 -6
  42. package/dist/completion/team-progress-measure.js.map +1 -1
  43. package/dist/delivery/delivery-reconciler.d.ts +3 -3
  44. package/dist/directive/agentless-directive.d.ts +28 -0
  45. package/dist/directive/agentless-directive.d.ts.map +1 -0
  46. package/dist/directive/agentless-directive.js +12 -0
  47. package/dist/directive/agentless-directive.js.map +1 -0
  48. package/dist/directive/directive-dispatch.d.ts +1 -20
  49. package/dist/directive/directive-dispatch.d.ts.map +1 -1
  50. package/dist/directive/directive-dispatch.js +4 -22
  51. package/dist/directive/directive-dispatch.js.map +1 -1
  52. package/dist/directive/directive-queue.d.ts.map +1 -1
  53. package/dist/directive/directive-queue.js +1 -20
  54. package/dist/directive/directive-queue.js.map +1 -1
  55. package/dist/drift/artifact-ref-shape.d.ts +23 -0
  56. package/dist/drift/artifact-ref-shape.d.ts.map +1 -1
  57. package/dist/drift/artifact-ref-shape.js +49 -0
  58. package/dist/drift/artifact-ref-shape.js.map +1 -1
  59. package/dist/focus/focus-lifecycle.d.ts.map +1 -1
  60. package/dist/focus/focus-lifecycle.js +3 -2
  61. package/dist/focus/focus-lifecycle.js.map +1 -1
  62. package/dist/focus/focus-team-state.js +1 -1
  63. package/dist/focus/listener-spawn.js +8 -8
  64. package/dist/focus/listener-spawn.js.map +1 -1
  65. package/dist/prompt-sections/persona-sections.d.ts +29 -0
  66. package/dist/prompt-sections/persona-sections.d.ts.map +1 -1
  67. package/dist/prompt-sections/persona-sections.js +82 -21
  68. package/dist/prompt-sections/persona-sections.js.map +1 -1
  69. package/dist/prompt-sections/testing-standard.d.ts +4 -1
  70. package/dist/prompt-sections/testing-standard.d.ts.map +1 -1
  71. package/dist/prompt-sections/testing-standard.js +14 -4
  72. package/dist/prompt-sections/testing-standard.js.map +1 -1
  73. package/dist/queries/escalations.js +1 -1
  74. package/dist/queries/focuses.d.ts.map +1 -1
  75. package/dist/queries/focuses.js +1 -0
  76. package/dist/queries/focuses.js.map +1 -1
  77. package/dist/queries/review-finding-facts.d.ts +38 -0
  78. package/dist/queries/review-finding-facts.d.ts.map +1 -0
  79. package/dist/queries/review-finding-facts.js +43 -0
  80. package/dist/queries/review-finding-facts.js.map +1 -0
  81. package/dist/queries/shortfall-rulings.d.ts +13 -0
  82. package/dist/queries/shortfall-rulings.d.ts.map +1 -1
  83. package/dist/queries/shortfall-rulings.js +14 -0
  84. package/dist/queries/shortfall-rulings.js.map +1 -1
  85. package/dist/spawn/codex-limit.d.ts +42 -0
  86. package/dist/spawn/codex-limit.d.ts.map +1 -0
  87. package/dist/spawn/codex-limit.js +146 -0
  88. package/dist/spawn/codex-limit.js.map +1 -0
  89. package/dist/spawn/directive-route.d.ts +41 -0
  90. package/dist/spawn/directive-route.d.ts.map +1 -0
  91. package/dist/spawn/directive-route.js +54 -0
  92. package/dist/spawn/directive-route.js.map +1 -0
  93. package/dist/spawn/guards.d.ts.map +1 -1
  94. package/dist/spawn/guards.js +4 -2
  95. package/dist/spawn/guards.js.map +1 -1
  96. package/dist/spawn/helpers.d.ts.map +1 -1
  97. package/dist/spawn/helpers.js +29 -1
  98. package/dist/spawn/helpers.js.map +1 -1
  99. package/dist/spawn/index.d.ts +1 -0
  100. package/dist/spawn/index.d.ts.map +1 -1
  101. package/dist/spawn/index.js +1 -0
  102. package/dist/spawn/index.js.map +1 -1
  103. package/dist/spawn/next-spawn-cooldown.d.ts +43 -0
  104. package/dist/spawn/next-spawn-cooldown.d.ts.map +1 -0
  105. package/dist/spawn/next-spawn-cooldown.js +123 -0
  106. package/dist/spawn/next-spawn-cooldown.js.map +1 -0
  107. package/dist/spawn/one-shot-model.d.ts +4 -3
  108. package/dist/spawn/one-shot-model.d.ts.map +1 -1
  109. package/dist/spawn/one-shot-model.js +8 -6
  110. package/dist/spawn/one-shot-model.js.map +1 -1
  111. package/dist/spawn/provider-window.d.ts +39 -0
  112. package/dist/spawn/provider-window.d.ts.map +1 -0
  113. package/dist/spawn/provider-window.js +99 -0
  114. package/dist/spawn/provider-window.js.map +1 -0
  115. package/dist/spawn/routing-decider-spawn.d.ts.map +1 -1
  116. package/dist/spawn/routing-decider-spawn.js +4 -3
  117. package/dist/spawn/routing-decider-spawn.js.map +1 -1
  118. package/dist/spawn/routing-decider.js +2 -2
  119. package/dist/spawn/routing-decider.js.map +1 -1
  120. package/dist/spawn/spawn-cooldown.d.ts +43 -12
  121. package/dist/spawn/spawn-cooldown.d.ts.map +1 -1
  122. package/dist/spawn/spawn-cooldown.js +51 -58
  123. package/dist/spawn/spawn-cooldown.js.map +1 -1
  124. package/dist/spawn/spawn-decision.d.ts +11 -2
  125. package/dist/spawn/spawn-decision.d.ts.map +1 -1
  126. package/dist/spawn/spawn-decision.js +28 -60
  127. package/dist/spawn/spawn-decision.js.map +1 -1
  128. package/dist/spawn/worktree-session.d.ts +16 -0
  129. package/dist/spawn/worktree-session.d.ts.map +1 -1
  130. package/dist/spawn/worktree-session.js +45 -12
  131. package/dist/spawn/worktree-session.js.map +1 -1
  132. package/dist/testing/fixtures/codex-stream-session.d.ts +10 -0
  133. package/dist/testing/fixtures/codex-stream-session.d.ts.map +1 -0
  134. package/dist/testing/fixtures/codex-stream-session.js +47 -0
  135. package/dist/testing/fixtures/codex-stream-session.js.map +1 -0
  136. package/dist/testing/fixtures/index.js +1 -1
  137. package/dist/types/focus.d.ts +20 -0
  138. package/dist/types/focus.d.ts.map +1 -1
  139. package/dist/types/index.js +1 -1
  140. package/dist/verify/ai-inspection-runner.js +5 -5
  141. package/dist/verify/ai-inspection-runner.js.map +1 -1
  142. package/dist/verify/parked-shortfall-reuse.d.ts.map +1 -1
  143. package/dist/verify/parked-shortfall-reuse.js +3 -0
  144. package/dist/verify/parked-shortfall-reuse.js.map +1 -1
  145. package/dist/verify/ruling-evidence-resolution.d.ts +36 -0
  146. package/dist/verify/ruling-evidence-resolution.d.ts.map +1 -0
  147. package/dist/verify/ruling-evidence-resolution.js +133 -0
  148. package/dist/verify/ruling-evidence-resolution.js.map +1 -0
  149. package/dist/verify/shortfall-rulings.d.ts +30 -2
  150. package/dist/verify/shortfall-rulings.d.ts.map +1 -1
  151. package/dist/verify/shortfall-rulings.js +35 -3
  152. package/dist/verify/shortfall-rulings.js.map +1 -1
  153. package/dist/verify/verification-deps-default.d.ts.map +1 -1
  154. package/dist/verify/verification-deps-default.js +3 -0
  155. package/dist/verify/verification-deps-default.js.map +1 -1
  156. package/dist/verify/verification-deps.d.ts +9 -0
  157. package/dist/verify/verification-deps.d.ts.map +1 -1
  158. package/dist/verify/verification-engine.d.ts.map +1 -1
  159. package/dist/verify/verification-engine.js +4 -4
  160. package/dist/verify/verification-engine.js.map +1 -1
  161. package/dist/verify/verify-restatement.d.ts.map +1 -1
  162. package/dist/verify/verify-restatement.js +1 -19
  163. package/dist/verify/verify-restatement.js.map +1 -1
  164. package/package.json +2 -2
package/build-info.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
- "commitSha": "54639704b",
3
- "builtAt": "2026-09-24T17:30:38.767Z",
2
+ "commitSha": "d2af4c9c0",
3
+ "builtAt": "2026-09-24T22:10:03.679Z",
4
4
  "expectedMigrations": [
5
5
  "20250829113330_create_org_nodes_table.sql",
6
6
  "20250829113402_fix_function_security_search_path.sql",
@@ -828,6 +828,7 @@
828
828
  "20260922221935_product_request_observation_snapshot.sql",
829
829
  "20260922225316_product_request_observation_entry_is_atomic.sql",
830
830
  "20260923002532_capture_request_observation_in_one_snapshot.sql",
831
- "20260924010304_org_default_pass_models_opus_5_5.sql"
831
+ "20260924010304_org_default_pass_models_opus_5_5.sql",
832
+ "20260924173744_focus_reviews_blocking_issue_ids.sql"
832
833
  ]
833
834
  }
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Codex work, read as work.
3
+ *
4
+ * The daemon-core Codex parser turns only `mcp_tool_call` items into the neutral
5
+ * `tool_activity` event. Real Codex team streams on mars (the 52 whose first
6
+ * line is thread.started, 2026-09-24) carry as many `command_execution` items as
7
+ * MCP calls, plus `file_change` and `web_search` -- a Codex agent's shell reads,
8
+ * its edits and its searches -- and none of them reached the neutral stream. So
9
+ * a Codex review that inspected the code through the shell counted as having
10
+ * inspected nothing, and a Codex lead's shell work was not agent activity to the
11
+ * team-progress measure.
12
+ *
13
+ * codexToolActivityEvent turns each completed item of those kinds into the SAME
14
+ * `tool_activity` event a Claude tool call produces, so the review inspection
15
+ * signal and the progress measure read it under their existing rules (the
16
+ * lead's events on a daemon-started turn still do not count).
17
+ *
18
+ * Codex also sends no heartbeats, and a delegation (`collab_tool_call`) reports
19
+ * only its start and its end. noteCodexDelegation records an open delegation so
20
+ * the progress measure keeps its worker live without events, up to
21
+ * CODEX_DELEGATION_LIVE_MS (completion/team-progress-measure.ts).
22
+ *
23
+ * Read off the parser's `raw` channel, in the daemon, rather than by changing
24
+ * the registry-installed daemon-core parser -- the choice the Codex limit reader
25
+ * (spawn/codex-limit.ts) made and records.
26
+ */
27
+ import type { AgentToolActivityEvent } from '@telora/daemon-core';
28
+ /**
29
+ * The neutral tool_activity event a completed Codex shell, file-change or
30
+ * web-search item is, or null for any other line. Surfaced on completion, like
31
+ * the parser's mcp_tool_call, so one call counts once. Pure.
32
+ */
33
+ export declare function codexToolActivityEvent(raw: unknown): AgentToolActivityEvent | null;
34
+ /**
35
+ * Record a Codex delegation opening or closing on the focus (a collab_tool_call
36
+ * item started / completed, keyed by its item id -- the id the parser's
37
+ * subagent_activity event carries). No-op for any other line.
38
+ */
39
+ export declare function noteCodexDelegation(focusId: string, raw: unknown, nowMs?: number): void;
40
+ //# sourceMappingURL=codex-activity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-activity.d.ts","sourceRoot":"","sources":["../../src/completion/codex-activity.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAuBlE;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,sBAAsB,GAAG,IAAI,CAwBlF;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,GAAE,MAAmB,GAAG,IAAI,CAKnG"}
@@ -0,0 +1,69 @@
1
+ // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
+ // Pinned by: packages/daemon/src/completion/codex-activity.test.ts
3
+ // PINNED-BY-END
4
+ import { noteWorkerDelegation } from './team-progress-measure.js';
5
+ function isRecord(value) {
6
+ return typeof value === 'object' && value !== null;
7
+ }
8
+ /** The item of an item.started / item.completed line, with its phase; null for any other line. */
9
+ function codexItem(raw) {
10
+ if (!isRecord(raw) || !isRecord(raw['item']))
11
+ return null;
12
+ if (raw['type'] === 'item.started')
13
+ return { phase: 'started', item: raw['item'] };
14
+ if (raw['type'] === 'item.completed')
15
+ return { phase: 'completed', item: raw['item'] };
16
+ return null;
17
+ }
18
+ /** The first path a file_change item changed, or null. */
19
+ function firstChangedPath(item) {
20
+ const changes = item['changes'];
21
+ if (!Array.isArray(changes))
22
+ return null;
23
+ const first = changes[0];
24
+ return isRecord(first) && typeof first['path'] === 'string' ? first['path'] : null;
25
+ }
26
+ /**
27
+ * The neutral tool_activity event a completed Codex shell, file-change or
28
+ * web-search item is, or null for any other line. Surfaced on completion, like
29
+ * the parser's mcp_tool_call, so one call counts once. Pure.
30
+ */
31
+ export function codexToolActivityEvent(raw) {
32
+ const line = codexItem(raw);
33
+ if (!line || line.phase !== 'completed')
34
+ return null;
35
+ const { item } = line;
36
+ switch (item['type']) {
37
+ case 'command_execution':
38
+ return {
39
+ kind: 'tool_activity',
40
+ tool: 'shell',
41
+ file: null,
42
+ input: typeof item['command'] === 'string' ? { command: item['command'] } : {},
43
+ };
44
+ case 'file_change':
45
+ return { kind: 'tool_activity', tool: 'file_change', file: firstChangedPath(item), input: { changes: item['changes'] } };
46
+ case 'web_search':
47
+ return {
48
+ kind: 'tool_activity',
49
+ tool: 'web_search',
50
+ file: null,
51
+ input: typeof item['query'] === 'string' ? { query: item['query'] } : {},
52
+ };
53
+ default:
54
+ return null;
55
+ }
56
+ }
57
+ /**
58
+ * Record a Codex delegation opening or closing on the focus (a collab_tool_call
59
+ * item started / completed, keyed by its item id -- the id the parser's
60
+ * subagent_activity event carries). No-op for any other line.
61
+ */
62
+ export function noteCodexDelegation(focusId, raw, nowMs = Date.now()) {
63
+ const line = codexItem(raw);
64
+ if (!line || line.item['type'] !== 'collab_tool_call')
65
+ return;
66
+ const id = typeof line.item['id'] === 'string' ? line.item['id'] : 'codex-subagent';
67
+ noteWorkerDelegation(focusId, id, line.phase, nowMs);
68
+ }
69
+ //# sourceMappingURL=codex-activity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-activity.js","sourceRoot":"","sources":["../../src/completion/codex-activity.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,mEAAmE;AACnE,gBAAgB;AA8BhB,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,kGAAkG;AAClG,SAAS,SAAS,CAAC,GAAY;IAC7B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1D,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,cAAc;QAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;IACnF,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,gBAAgB;QAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;IACvF,OAAO,IAAI,CAAC;AACd,CAAC;AAED,0DAA0D;AAC1D,SAAS,gBAAgB,CAAC,IAA6B;IACrD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,MAAM,KAAK,GAAY,OAAO,CAAC,CAAC,CAAC,CAAC;IAClC,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACrF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAY;IACjD,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IACrD,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IACtB,QAAQ,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACrB,KAAK,mBAAmB;YACtB,OAAO;gBACL,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;aAC/E,CAAC;QACJ,KAAK,aAAa;YAChB,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;QAC3H,KAAK,YAAY;YACf,OAAO;gBACL,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;aACzE,CAAC;QACJ;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,GAAY,EAAE,QAAgB,IAAI,CAAC,GAAG,EAAE;IAC3F,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,kBAAkB;QAAE,OAAO;IAC9D,MAAM,EAAE,GAAG,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC;IACpF,oBAAoB,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACvD,CAAC"}
@@ -29,6 +29,7 @@ import type { DaemonConfig, FocusTeamState, ExitCategory } from '../types/index.
29
29
  import { type LeadOwnershipDeps } from '../spawn/lead-process-ownership.js';
30
30
  import { type TeamExitClassification } from './exit-classification.js';
31
31
  import { type FocusMergeAttemptDeps } from './merge-phase.js';
32
+ import { runReviewExitHandler } from './review-exit-phase.js';
32
33
  /**
33
34
  * The mutable state threaded through every completion phase. Inputs are
34
35
  * readonly; derived facts are written by the phase that owns them and read
@@ -202,7 +203,7 @@ export declare function runPassClosePhase(ctx: CompletionPhaseContext): Promise<
202
203
  * is best-effort; on failure the handler falls back to spawn-tip for the stamp
203
204
  * and withholds auto-approve (the safe direction).
204
205
  */
205
- export declare function runReviewExitPhase(ctx: CompletionPhaseContext): Promise<CompletionPhaseOutcome>;
206
+ export declare function runReviewExitPhase(ctx: CompletionPhaseContext, runExitHandler?: typeof runReviewExitHandler): Promise<CompletionPhaseOutcome>;
206
207
  /**
207
208
  * Phase: terminate.
208
209
  * Heartbeat, team-state cleanup, model-host release, re-poll trigger.
@@ -1 +1 @@
1
- {"version":3,"file":"completion-phase-registry.d.ts","sourceRoot":"","sources":["../../src/completion/completion-phase-registry.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAqB,YAAY,EAAE,MAAM,mBAAmB,CAAC;AASvG,OAAO,EAA8B,KAAK,iBAAiB,EAA+B,MAAM,oCAAoC,CAAC;AAWrI,OAAO,EAAwC,KAAK,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC7G,OAAO,EAKL,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAC;AAW1B;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,mFAAmF;IACnF,cAAc,EAAE,sBAAsB,GAAG,SAAS,CAAC;IACnD,8EAA8E;IAC9E,UAAU,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,0BAA0B;IAC1B,cAAc,EAAE,OAAO,CAAC;IACxB,2DAA2D;IAC3D,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,2DAA2D;IAC3D,sFAAsF;IACtF,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,wFAAwF;IACxF,QAAQ,CAAC,aAAa,CAAC,EAAE,iBAAiB,CAAC;CAC5C;AAED,gFAAgF;AAChF,wBAAgB,4BAA4B,CAAC,MAAM,EAAE;IACnD,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,cAAc,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,aAAa,CAAC,EAAE,iBAAiB,CAAC;CACnC,GAAG,sBAAsB,CAezB;AA6CD,oFAAoF;AACpF,MAAM,MAAM,sBAAsB,GAAG,UAAU,GAAG,MAAM,CAAC;AAEzD,2EAA2E;AAC3E,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,WAAW,GAAG,eAAe,CAAC;AAE3E,MAAM,WAAW,yBAAyB;IACxC,qEAAqE;IACrE,IAAI,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,IAAI,EAAE,mBAAmB,CAAC;IAC1B,0DAA0D;IAC1D,OAAO,EAAE,OAAO,CAAC;IACjB,qDAAqD;IACrD,qBAAqB,EAAE,OAAO,CAAC;IAC/B,GAAG,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACnE;AAID,kEAAkE;AAClE,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,cAAc,EACzB,cAAc,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,qBAAqB,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,cAAc,EAAE,OAAO,CAAA;CAAE,EACjH,MAAM,EAAE,MAAM,GAAG,IAAI,GACpB,MAAM,CAeR;AAgCD;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAWnG;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAWzG;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CA0ExG;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAgBtG;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAGxG;AAED;;;;;;;;GAQG;AACH,wBAAsB,0BAA0B,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAsB7G;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,aAAa,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAEhG;AAED,yFAAyF;AACzF,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,sBAAsB,EAC3B,IAAI,EAAE,qBAAqB,GAAG,SAAS,GACtC,OAAO,CAAC,sBAAsB,CAAC,CAsBjC;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAaxG;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,uBAAuB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CA8C1G;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAqBpG;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CA8CrG;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAwBpG;AAID;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,EAAE,yBAAyB,EAahE,CAAC;AAEF;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,sBAAsB,EAC3B,QAAQ,GAAE,yBAAyB,EAA8B,GAChE,OAAO,CAAC,IAAI,CAAC,CAQf"}
1
+ {"version":3,"file":"completion-phase-registry.d.ts","sourceRoot":"","sources":["../../src/completion/completion-phase-registry.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
- // Pinned by: packages/daemon/src/completion/completion-phase-registry.test.ts,
2
+ // Pinned by: packages/daemon/src/completion/codex-activity.test.ts,
3
+ // packages/daemon/src/completion/completion-phase-registry.test.ts,
4
+ // packages/daemon/src/completion/model-unavailable-review-exit.test.ts,
3
5
  // packages/daemon/src/completion/team-teardown-kills-process-group.test.ts,
4
6
  // packages/daemon/src/completion/teardown-merge-gate.test.ts
5
7
  // PINNED-BY-END
@@ -464,11 +466,21 @@ export async function runPassClosePhase(ctx) {
464
466
  * is best-effort; on failure the handler falls back to spawn-tip for the stamp
465
467
  * and withholds auto-approve (the safe direction).
466
468
  */
467
- export async function runReviewExitPhase(ctx) {
469
+ export async function runReviewExitPhase(ctx, runExitHandler = runReviewExitHandler) {
468
470
  const { teamState, sessionId } = ctx;
469
471
  const { focusId, focusName, branchName } = teamState;
470
472
  const worktreePath = teamState.worktreePath;
471
473
  const { succeeded } = requireClassification(ctx);
474
+ // A session its model provider stopped on a usage or rate limit reached no
475
+ // answer: it is neither a review nor a coding outcome. Route nothing, count
476
+ // no review cycle or hand-off, judge nothing blind -- the review window stays
477
+ // as it was, and the next pass runs once the provider's window closes.
478
+ if (teamState.modelUnavailable) {
479
+ const { kind, provider, holdUntilMs } = teamState.modelUnavailable;
480
+ log.info(`[focus-executor] "${focusName}" ${teamState.sessionType} exit not routed: the ${provider} ${kind.replace('_', ' ')} ` +
481
+ `stopped the session (model unavailable until ${new Date(holdUntilMs).toISOString()}); not a review or coding outcome.`);
482
+ return 'continue';
483
+ }
472
484
  const reviewSpawnTip = teamState.reviewSpawnTip;
473
485
  // resolveRef checks the git exit status: it returns null (not the echoed ref
474
486
  // argument) when rev-parse fails on an unknown revision. A raw .output read
@@ -485,7 +497,7 @@ export async function runReviewExitPhase(ctx) {
485
497
  log.warn(`[focus-executor] Could not resolve exit branch tip for "${focusName}" coverage gate:`, err.message);
486
498
  }
487
499
  try {
488
- await runReviewExitHandler({
500
+ await runExitHandler({
489
501
  focusId,
490
502
  focusName,
491
503
  organizationId: teamState.organizationId,
@@ -1 +1 @@
1
- {"version":3,"file":"completion-phase-registry.js","sourceRoot":"","sources":["../../src/completion/completion-phase-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"completion-phase-registry.js","sourceRoot":"","sources":["../../src/completion/completion-phase-registry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"exit-classification.d.ts","sourceRoot":"","sources":["../../src/completion/exit-classification.ts"],"names":[],"mappings":"AAQA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtF;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAEjF;AAID,4DAA4D;AAC5D,MAAM,WAAW,sBAAsB;IACrC,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,UAAU,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,qBAAqB,EAAE,OAAO,CAAC;IAC/B;;;;;;;;;;;;OAYG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;;;;;OAMG;IACH,cAAc,EAAE,OAAO,CAAC;IACxB;;;;;;;OAOG;IACH,WAAW,EAAE,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;CACjD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,cAAc,CAAC;IAC1B,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAAC;CAClD,GAAG,sBAAsB,CAezB;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,sBAAsB,CAAC,aAAa,CAAC,EAClD,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,GAC/C,YAAY,CAsBd"}
1
+ {"version":3,"file":"exit-classification.d.ts","sourceRoot":"","sources":["../../src/completion/exit-classification.ts"],"names":[],"mappings":"AAUA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtF;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAEjF;AAID,4DAA4D;AAC5D,MAAM,WAAW,sBAAsB;IACrC,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,UAAU,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,qBAAqB,EAAE,OAAO,CAAC;IAC/B;;;;;;;;;;;;OAYG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;;;;;OAMG;IACH,cAAc,EAAE,OAAO,CAAC;IACxB;;;;;;;OAOG;IACH,WAAW,EAAE,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;CACjD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,cAAc,CAAC;IAC1B,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAAC;CAClD,GAAG,sBAAsB,CAezB;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,sBAAsB,CAAC,aAAa,CAAC,EAClD,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,GAC/C,YAAY,CAsBd"}
@@ -1,5 +1,7 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
- // Pinned by: packages/daemon/src/completion/completion-phase-registry.test.ts,
2
+ // Pinned by: packages/daemon/src/completion/codex-activity.test.ts,
3
+ // packages/daemon/src/completion/completion-phase-registry.test.ts,
4
+ // packages/daemon/src/completion/model-unavailable-review-exit.test.ts,
3
5
  // packages/daemon/src/completion/no-actionable-work-exit.test.ts,
4
6
  // packages/daemon/src/completion/review-window-idle-coding-lead-regression.test.ts,
5
7
  // packages/daemon/src/completion/team-teardown-kills-process-group.test.ts,
@@ -1 +1 @@
1
- {"version":3,"file":"exit-classification.js","sourceRoot":"","sources":["../../src/completion/exit-classification.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,+EAA+E;AAC/E,oEAAoE;AACpE,sFAAsF;AACtF,8EAA8E;AAC9E,uEAAuE;AACvE,gBAAgB;AAahB;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,IAAmB,EAAE,MAAqB;IACtE,OAAO,MAAM,KAAK,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AACrD,CAAC;AAgDD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAKhC;IACC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,qBAAqB,GACzB,MAAM,CAAC,SAAS,KAAK,eAAe;QACpC,UAAU;QACV,MAAM,CAAC,cAAc,KAAK,eAAe,CAAC;IAC5C,MAAM,SAAS,GAAG,QAAQ,KAAK,CAAC,IAAI,qBAAqB,CAAC;IAC1D,8EAA8E;IAC9E,6EAA6E;IAC7E,2EAA2E;IAC3E,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,KAAK,eAAe,IAAI,UAAU,CAAC;IAC1E,MAAM,WAAW,GACf,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;IAClE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,qBAAqB,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC;AACjG,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAAkD,EAClD,cAAgD;IAEhD,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,WAAW;YACd,wEAAwE;YACxE,gEAAgE;YAChE,iEAAiE;YACjE,uEAAuE;YACvE,wEAAwE;YACxE,wEAAwE;YACxE,OAAO,cAAc,KAAK,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,kBAAkB,CAAC;QACnF,KAAK,SAAS;YACZ,QAAQ,cAAc,EAAE,CAAC;gBACvB,KAAK,oBAAoB,CAAC,CAAC,OAAO,oBAAoB,CAAC;gBACvD,KAAK,aAAa,CAAC,CAAC,OAAO,aAAa,CAAC;gBACzC,KAAK,cAAc,CAAC,CAAC,OAAO,cAAc,CAAC;gBAC3C,KAAK,SAAS,CAAC,CAAC,OAAO,SAAS,CAAC;gBACjC,KAAK,UAAU,CAAC,CAAC,OAAO,UAAU,CAAC;gBACnC,OAAO,CAAC,CAAC,OAAO,SAAS,CAAC;YAC5B,CAAC;QACH,KAAK,QAAQ;YACX,OAAO,OAAO,CAAC;IACnB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"exit-classification.js","sourceRoot":"","sources":["../../src/completion/exit-classification.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,oEAAoE;AACpE,sEAAsE;AACtE,0EAA0E;AAC1E,oEAAoE;AACpE,sFAAsF;AACtF,8EAA8E;AAC9E,uEAAuE;AACvE,gBAAgB;AAahB;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,IAAmB,EAAE,MAAqB;IACtE,OAAO,MAAM,KAAK,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AACrD,CAAC;AAgDD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAKhC;IACC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,qBAAqB,GACzB,MAAM,CAAC,SAAS,KAAK,eAAe;QACpC,UAAU;QACV,MAAM,CAAC,cAAc,KAAK,eAAe,CAAC;IAC5C,MAAM,SAAS,GAAG,QAAQ,KAAK,CAAC,IAAI,qBAAqB,CAAC;IAC1D,8EAA8E;IAC9E,6EAA6E;IAC7E,2EAA2E;IAC3E,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,KAAK,eAAe,IAAI,UAAU,CAAC;IAC1E,MAAM,WAAW,GACf,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;IAClE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,qBAAqB,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC;AACjG,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAAkD,EAClD,cAAgD;IAEhD,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,WAAW;YACd,wEAAwE;YACxE,gEAAgE;YAChE,iEAAiE;YACjE,uEAAuE;YACvE,wEAAwE;YACxE,wEAAwE;YACxE,OAAO,cAAc,KAAK,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,kBAAkB,CAAC;QACnF,KAAK,SAAS;YACZ,QAAQ,cAAc,EAAE,CAAC;gBACvB,KAAK,oBAAoB,CAAC,CAAC,OAAO,oBAAoB,CAAC;gBACvD,KAAK,aAAa,CAAC,CAAC,OAAO,aAAa,CAAC;gBACzC,KAAK,cAAc,CAAC,CAAC,OAAO,cAAc,CAAC;gBAC3C,KAAK,SAAS,CAAC,CAAC,OAAO,SAAS,CAAC;gBACjC,KAAK,UAAU,CAAC,CAAC,OAAO,UAAU,CAAC;gBACnC,OAAO,CAAC,CAAC,OAAO,SAAS,CAAC;YAC5B,CAAC;QACH,KAAK,QAAQ;YACX,OAAO,OAAO,CAAC;IACnB,CAAC;AACH,CAAC"}
@@ -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: 38 tests -- run: npm run gen:pinned-by -- --list packages/daemon/src/completion/index.ts
2
+ // Pinned by: 39 tests -- run: npm run gen:pinned-by -- --list packages/daemon/src/completion/index.ts
3
3
  // PINNED-BY-END
4
4
  /**
5
5
  * Completion subsystem barrel.
@@ -49,36 +49,76 @@ export declare function reviewFiledIssueExists(issues: FocusIssueInfo[], reviewR
49
49
  /**
50
50
  * Whether a priority label is an explicit, low (deferrable) severity. Null,
51
51
  * empty, P0, and P1 are all NOT deferrable.
52
+ *
53
+ * This is the FALLBACK of isBlockingReviewFinding only, for a finding with no
54
+ * recorded class. Do not call it to decide whether a review finding blocks --
55
+ * call isBlockingReviewFinding (pinned by review-finding-blocking-predicate.test.ts,
56
+ * which fails on any non-test caller outside this module).
52
57
  */
53
58
  export declare function isLowPriority(priority: string | null | undefined): boolean;
59
+ /**
60
+ * The RECORDED class of a review finding, as the review filed it: `blocking`
61
+ * when a not_met acceptance criterion names it (it falsifies an agreed
62
+ * criterion), `concern` when none does. Read from the product-api action
63
+ * `focus_review_filed_issue_ids` (`findingClasses`, keyed by issue id) --
64
+ * queries/review-finding-facts.ts.
65
+ */
66
+ export type ReviewFindingClass = 'blocking' | 'concern';
67
+ /**
68
+ * Recorded finding classes keyed by issue id. An issue ABSENT from the map has
69
+ * no recorded fact (an older edge, or a review that linked no criterion) and is
70
+ * classified by the priority fallback.
71
+ */
72
+ export type ReviewFindingClasses = ReadonlyMap<string, ReviewFindingClass>;
73
+ /**
74
+ * THE blocking predicate for a review-filed finding -- the ONE place the daemon
75
+ * decides whether a review finding may hold its delivery (route it to
76
+ * verify_failed, target it with a gaps_found verdict, keep the review-cycle
77
+ * count climbing). Every such decision -- the review exit's evidence
78
+ * (review-exit-evidence.ts), the verify routing it tags for the reconciler
79
+ * (delivery-reconciler.ts `deferrable`), the review-cycle cap's "open blocking
80
+ * finding" (review-cycle-cap.ts, fed openBlockingFindings), delivery
81
+ * attribution (review-exit-attribution.ts) and foreign-finding location
82
+ * (review-exit-foreign-findings.ts) -- reads it; none reads priority directly.
83
+ *
84
+ * - a RECORDED fact wins, whatever the priority: `blocking` blocks, `concern`
85
+ * does not. A finding blocks by falsifying an agreed criterion, not by the
86
+ * severity a reviewer typed.
87
+ * - NO recorded fact -> today's priority rule: only an explicit P2/P3 is
88
+ * non-blocking; P0/P1 and unset block (the bar is never lowered by absence).
89
+ *
90
+ * It classifies severity only; whether the issue is review-filed and open is
91
+ * the caller's filter (isReviewFiledIssue / isReviewFiledComplete).
92
+ */
93
+ export declare function isBlockingReviewFinding(issue: Pick<FocusIssueInfo, 'id' | 'priority'>, findingClasses?: ReviewFindingClasses): boolean;
54
94
  /**
55
95
  * Whether an issue is a DEFERRABLE review note: a review-filed, still-open
56
- * issue (per isReviewFiledIssue) whose priority is an explicit low severity
57
- * (P2/P3). A deferrable note must NOT route a verify delivery to verify_failed
58
- * -- the review should converge (approve) and leave the note tracked.
96
+ * issue (per isReviewFiledIssue) that is NOT a blocking finding
97
+ * (isBlockingReviewFinding -- a recorded `concern`, or, with no recorded fact,
98
+ * an explicit P2/P3). A deferrable note must NOT route a verify delivery to
99
+ * verify_failed -- the review should converge (approve) and leave the note
100
+ * tracked.
59
101
  *
60
- * Anything that is review-filed but P0/P1 or unprioritized is BLOCKING, and any
61
- * open work that is NOT review-filed (e.g. pre-existing coding work) is also
62
- * blocking. Deferrability is a property of low-severity review triage notes
63
- * only.
102
+ * Any open work that is NOT review-filed (e.g. pre-existing coding work) is
103
+ * blocking. Deferrability is a property of review findings only.
64
104
  */
65
- export declare function isDeferrableReviewNote(issue: Pick<FocusIssueInfo, 'createdByRoleId' | 'createdAt' | 'status' | 'priority'>, reviewRequestedAt: string | null): boolean;
105
+ export declare function isDeferrableReviewNote(issue: Pick<FocusIssueInfo, 'id' | 'createdByRoleId' | 'createdAt' | 'status' | 'priority'>, reviewRequestedAt: string | null, findingClasses?: ReviewFindingClasses): boolean;
66
106
  /**
67
107
  * Filter a focus's issues to the open, review-filed notes that are deferrable
68
- * (low severity). The caller uses the ids to mark the matching reconciler
108
+ * (not blocking). The caller uses the ids to mark the matching reconciler
69
109
  * issues as `deferrable` so the verify-routing reconciler does not treat them
70
110
  * as blocking open work.
71
111
  */
72
- export declare function filterDeferrableReviewNotes(issues: FocusIssueInfo[], reviewRequestedAt: string | null): FocusIssueInfo[];
112
+ export declare function filterDeferrableReviewNotes(issues: FocusIssueInfo[], reviewRequestedAt: string | null, findingClasses?: ReviewFindingClasses): FocusIssueInfo[];
73
113
  /**
74
114
  * Returns true when there is at least one BLOCKING review-filed issue since the
75
- * most recent review pass -- a review-filed, still-open issue that is NOT a
76
- * deferrable low-severity note (i.e. P0/P1 or unprioritized). This is the gate
77
- * for the review_missing_report notice: a review that filed ONLY deferrable
78
- * notes converged cleanly and must not raise the "review skipped its outcome"
115
+ * most recent review pass -- a review-filed, still-open issue that is a
116
+ * blocking finding (isBlockingReviewFinding). This is the gate for the
117
+ * review_missing_report notice: a review that filed ONLY deferrable notes
118
+ * converged cleanly and must not raise the "review skipped its outcome"
79
119
  * escalation.
80
120
  */
81
- export declare function blockingReviewFiledIssueExists(issues: FocusIssueInfo[], reviewRequestedAt: string | null): boolean;
121
+ export declare function blockingReviewFiledIssueExists(issues: FocusIssueInfo[], reviewRequestedAt: string | null, findingClasses?: ReviewFindingClasses): boolean;
82
122
  /**
83
123
  * Time-independent review-filed test: the issue is a member of the focus's
84
124
  * review-filed id union AND is still open.
@@ -89,7 +129,7 @@ export declare function isReviewFiledComplete(issue: Pick<FocusIssueInfo, 'id' |
89
129
  /** Complete-set counterpart of reviewFiledIssueExists. */
90
130
  export declare function reviewFiledIssueExistsComplete(issues: FocusIssueInfo[], reviewFiledIds: ReadonlySet<string>, reviewRequestedAt: string | null): boolean;
91
131
  /** Complete-set counterpart of blockingReviewFiledIssueExists. */
92
- export declare function blockingReviewFiledIssueExistsComplete(issues: FocusIssueInfo[], reviewFiledIds: ReadonlySet<string>, reviewRequestedAt: string | null): boolean;
132
+ export declare function blockingReviewFiledIssueExistsComplete(issues: FocusIssueInfo[], reviewFiledIds: ReadonlySet<string>, reviewRequestedAt: string | null, findingClasses?: ReviewFindingClasses): boolean;
93
133
  /**
94
134
  * Complete-set counterpart of blockingReviewFiledIssueExists returning the LIST
95
135
  * (not just existence): the OPEN, BLOCKING review-filed issues on the focus. Used
@@ -98,7 +138,7 @@ export declare function blockingReviewFiledIssueExistsComplete(issues: FocusIssu
98
138
  * findings without opening the daemon log, rather than reading the breaker's old
99
139
  * untested "there was no work left to route" assertion.
100
140
  */
101
- export declare function filterBlockingReviewFiledComplete(issues: FocusIssueInfo[], reviewFiledIds: ReadonlySet<string>, reviewRequestedAt: string | null): FocusIssueInfo[];
141
+ export declare function filterBlockingReviewFiledComplete(issues: FocusIssueInfo[], reviewFiledIds: ReadonlySet<string>, reviewRequestedAt: string | null, findingClasses?: ReviewFindingClasses): FocusIssueInfo[];
102
142
  /** Complete-set counterpart of filterDeferrableReviewNotes. */
103
- export declare function filterDeferrableReviewNotesComplete(issues: FocusIssueInfo[], reviewFiledIds: ReadonlySet<string>, reviewRequestedAt: string | null): FocusIssueInfo[];
143
+ export declare function filterDeferrableReviewNotesComplete(issues: FocusIssueInfo[], reviewFiledIds: ReadonlySet<string>, reviewRequestedAt: string | null, findingClasses?: ReviewFindingClasses): FocusIssueInfo[];
104
144
  //# sourceMappingURL=review-defect-detector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"review-defect-detector.d.ts","sourceRoot":"","sources":["../../src/completion/review-defect-detector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review-defect-detector.d.ts","sourceRoot":"","sources":["../../src/completion/review-defect-detector.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
2
  // Pinned by: packages/daemon/src/completion/review-defect-loop.test.ts,
3
- // packages/daemon/src/completion/review-deferrable-classification.test.ts
3
+ // packages/daemon/src/completion/review-deferrable-classification.test.ts,
4
+ // packages/daemon/src/completion/review-finding-blocking-predicate.test.ts,
5
+ // packages/daemon/src/completion/review-finding-class-routing.test.ts
4
6
  // PINNED-BY-END
5
7
  import { OPEN_ISSUE_STATUSES } from '../shell/constants.js';
6
8
  import { loadEnvConfig } from '@telora/daemon-core';
@@ -80,8 +82,9 @@ export function reviewFiledIssueExists(issues, reviewRequestedAt) {
80
82
  }
81
83
  // ── Deferrability classification ──────────────────────────────────────────
82
84
  /**
83
- * Priority labels that mark a review-filed note as DEFERRABLE (low severity,
84
- * acceptable to defer past the verify gate). The blocking set is everything
85
+ * Priority labels that mark a review-filed note as DEFERRABLE when NO finding
86
+ * class is recorded for it (the fallback inside isBlockingReviewFinding -- a
87
+ * recorded blocking/concern fact always wins). The blocking set is everything
85
88
  * else -- P0/P1 AND a null/unset priority. The asymmetry is deliberate: the
86
89
  * control loop moves reality toward intent and never lowers the bar, so an
87
90
  * unprioritized note is treated as BLOCKING (route to verify_failed), not
@@ -91,45 +94,77 @@ const DEFERRABLE_PRIORITIES = new Set(['P2', 'P3']);
91
94
  /**
92
95
  * Whether a priority label is an explicit, low (deferrable) severity. Null,
93
96
  * empty, P0, and P1 are all NOT deferrable.
97
+ *
98
+ * This is the FALLBACK of isBlockingReviewFinding only, for a finding with no
99
+ * recorded class. Do not call it to decide whether a review finding blocks --
100
+ * call isBlockingReviewFinding (pinned by review-finding-blocking-predicate.test.ts,
101
+ * which fails on any non-test caller outside this module).
94
102
  */
95
103
  export function isLowPriority(priority) {
96
104
  if (!priority)
97
105
  return false;
98
106
  return DEFERRABLE_PRIORITIES.has(priority.trim().toUpperCase());
99
107
  }
108
+ const NO_RECORDED_CLASSES = new Map();
109
+ /**
110
+ * THE blocking predicate for a review-filed finding -- the ONE place the daemon
111
+ * decides whether a review finding may hold its delivery (route it to
112
+ * verify_failed, target it with a gaps_found verdict, keep the review-cycle
113
+ * count climbing). Every such decision -- the review exit's evidence
114
+ * (review-exit-evidence.ts), the verify routing it tags for the reconciler
115
+ * (delivery-reconciler.ts `deferrable`), the review-cycle cap's "open blocking
116
+ * finding" (review-cycle-cap.ts, fed openBlockingFindings), delivery
117
+ * attribution (review-exit-attribution.ts) and foreign-finding location
118
+ * (review-exit-foreign-findings.ts) -- reads it; none reads priority directly.
119
+ *
120
+ * - a RECORDED fact wins, whatever the priority: `blocking` blocks, `concern`
121
+ * does not. A finding blocks by falsifying an agreed criterion, not by the
122
+ * severity a reviewer typed.
123
+ * - NO recorded fact -> today's priority rule: only an explicit P2/P3 is
124
+ * non-blocking; P0/P1 and unset block (the bar is never lowered by absence).
125
+ *
126
+ * It classifies severity only; whether the issue is review-filed and open is
127
+ * the caller's filter (isReviewFiledIssue / isReviewFiledComplete).
128
+ */
129
+ export function isBlockingReviewFinding(issue, findingClasses = NO_RECORDED_CLASSES) {
130
+ const recorded = findingClasses.get(issue.id);
131
+ if (recorded !== undefined)
132
+ return recorded === 'blocking';
133
+ return !isLowPriority(issue.priority);
134
+ }
100
135
  /**
101
136
  * Whether an issue is a DEFERRABLE review note: a review-filed, still-open
102
- * issue (per isReviewFiledIssue) whose priority is an explicit low severity
103
- * (P2/P3). A deferrable note must NOT route a verify delivery to verify_failed
104
- * -- the review should converge (approve) and leave the note tracked.
137
+ * issue (per isReviewFiledIssue) that is NOT a blocking finding
138
+ * (isBlockingReviewFinding -- a recorded `concern`, or, with no recorded fact,
139
+ * an explicit P2/P3). A deferrable note must NOT route a verify delivery to
140
+ * verify_failed -- the review should converge (approve) and leave the note
141
+ * tracked.
105
142
  *
106
- * Anything that is review-filed but P0/P1 or unprioritized is BLOCKING, and any
107
- * open work that is NOT review-filed (e.g. pre-existing coding work) is also
108
- * blocking. Deferrability is a property of low-severity review triage notes
109
- * only.
143
+ * Any open work that is NOT review-filed (e.g. pre-existing coding work) is
144
+ * blocking. Deferrability is a property of review findings only.
110
145
  */
111
- export function isDeferrableReviewNote(issue, reviewRequestedAt) {
112
- return isReviewFiledIssue(issue, reviewRequestedAt) && isLowPriority(issue.priority);
146
+ export function isDeferrableReviewNote(issue, reviewRequestedAt, findingClasses = NO_RECORDED_CLASSES) {
147
+ return isReviewFiledIssue(issue, reviewRequestedAt) && !isBlockingReviewFinding(issue, findingClasses);
113
148
  }
114
149
  /**
115
150
  * Filter a focus's issues to the open, review-filed notes that are deferrable
116
- * (low severity). The caller uses the ids to mark the matching reconciler
151
+ * (not blocking). The caller uses the ids to mark the matching reconciler
117
152
  * issues as `deferrable` so the verify-routing reconciler does not treat them
118
153
  * as blocking open work.
119
154
  */
120
- export function filterDeferrableReviewNotes(issues, reviewRequestedAt) {
121
- return issues.filter(i => isDeferrableReviewNote(i, reviewRequestedAt));
155
+ export function filterDeferrableReviewNotes(issues, reviewRequestedAt, findingClasses = NO_RECORDED_CLASSES) {
156
+ return issues.filter(i => isDeferrableReviewNote(i, reviewRequestedAt, findingClasses));
122
157
  }
123
158
  /**
124
159
  * Returns true when there is at least one BLOCKING review-filed issue since the
125
- * most recent review pass -- a review-filed, still-open issue that is NOT a
126
- * deferrable low-severity note (i.e. P0/P1 or unprioritized). This is the gate
127
- * for the review_missing_report notice: a review that filed ONLY deferrable
128
- * notes converged cleanly and must not raise the "review skipped its outcome"
160
+ * most recent review pass -- a review-filed, still-open issue that is a
161
+ * blocking finding (isBlockingReviewFinding). This is the gate for the
162
+ * review_missing_report notice: a review that filed ONLY deferrable notes
163
+ * converged cleanly and must not raise the "review skipped its outcome"
129
164
  * escalation.
130
165
  */
131
- export function blockingReviewFiledIssueExists(issues, reviewRequestedAt) {
132
- return issues.some(i => isReviewFiledIssue(i, reviewRequestedAt) && !isLowPriority(i.priority));
166
+ export function blockingReviewFiledIssueExists(issues, reviewRequestedAt, findingClasses = NO_RECORDED_CLASSES) {
167
+ return issues.some(i => isReviewFiledIssue(i, reviewRequestedAt) && isBlockingReviewFinding(i, findingClasses));
133
168
  }
134
169
  // ── Non-lossy (complete-set) classification ───────────────────────────────
135
170
  //
@@ -163,8 +198,8 @@ export function reviewFiledIssueExistsComplete(issues, reviewFiledIds, reviewReq
163
198
  return issues.some(i => isReviewFiledComplete(i, reviewFiledIds, reviewRequestedAt));
164
199
  }
165
200
  /** Complete-set counterpart of blockingReviewFiledIssueExists. */
166
- export function blockingReviewFiledIssueExistsComplete(issues, reviewFiledIds, reviewRequestedAt) {
167
- return issues.some(i => isReviewFiledComplete(i, reviewFiledIds, reviewRequestedAt) && !isLowPriority(i.priority));
201
+ export function blockingReviewFiledIssueExistsComplete(issues, reviewFiledIds, reviewRequestedAt, findingClasses = NO_RECORDED_CLASSES) {
202
+ return issues.some(i => isReviewFiledComplete(i, reviewFiledIds, reviewRequestedAt) && isBlockingReviewFinding(i, findingClasses));
168
203
  }
169
204
  /**
170
205
  * Complete-set counterpart of blockingReviewFiledIssueExists returning the LIST
@@ -174,11 +209,11 @@ export function blockingReviewFiledIssueExistsComplete(issues, reviewFiledIds, r
174
209
  * findings without opening the daemon log, rather than reading the breaker's old
175
210
  * untested "there was no work left to route" assertion.
176
211
  */
177
- export function filterBlockingReviewFiledComplete(issues, reviewFiledIds, reviewRequestedAt) {
178
- return issues.filter(i => isReviewFiledComplete(i, reviewFiledIds, reviewRequestedAt) && !isLowPriority(i.priority));
212
+ export function filterBlockingReviewFiledComplete(issues, reviewFiledIds, reviewRequestedAt, findingClasses = NO_RECORDED_CLASSES) {
213
+ return issues.filter(i => isReviewFiledComplete(i, reviewFiledIds, reviewRequestedAt) && isBlockingReviewFinding(i, findingClasses));
179
214
  }
180
215
  /** Complete-set counterpart of filterDeferrableReviewNotes. */
181
- export function filterDeferrableReviewNotesComplete(issues, reviewFiledIds, reviewRequestedAt) {
182
- return issues.filter(i => isReviewFiledComplete(i, reviewFiledIds, reviewRequestedAt) && isLowPriority(i.priority));
216
+ export function filterDeferrableReviewNotesComplete(issues, reviewFiledIds, reviewRequestedAt, findingClasses = NO_RECORDED_CLASSES) {
217
+ return issues.filter(i => isReviewFiledComplete(i, reviewFiledIds, reviewRequestedAt) && !isBlockingReviewFinding(i, findingClasses));
183
218
  }
184
219
  //# sourceMappingURL=review-defect-detector.js.map