poly-weaver 1.1.0 → 1.2.0

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 (236) hide show
  1. package/dist/agents/implementors/index.d.ts +2 -2
  2. package/dist/agents/implementors/index.d.ts.map +1 -1
  3. package/dist/agents/implementors/index.js.map +1 -1
  4. package/dist/agents/index.d.ts.map +1 -1
  5. package/dist/agents/index.js +7 -6
  6. package/dist/agents/index.js.map +1 -1
  7. package/dist/agents/interviewers/index.d.ts +2 -2
  8. package/dist/agents/interviewers/index.d.ts.map +1 -1
  9. package/dist/agents/planners/index.d.ts +2 -2
  10. package/dist/agents/planners/index.d.ts.map +1 -1
  11. package/dist/agents/planners/index.js.map +1 -1
  12. package/dist/agents/registry.d.ts +2 -1
  13. package/dist/agents/registry.d.ts.map +1 -1
  14. package/dist/agents/registry.js +1 -1
  15. package/dist/agents/registry.js.map +1 -1
  16. package/dist/agents/reviewers/index.d.ts +2 -2
  17. package/dist/agents/reviewers/index.d.ts.map +1 -1
  18. package/dist/agents/reviewers/index.js.map +1 -1
  19. package/dist/agents/runner.d.ts +3 -1
  20. package/dist/agents/runner.d.ts.map +1 -1
  21. package/dist/agents/runner.js +106 -64
  22. package/dist/agents/runner.js.map +1 -1
  23. package/dist/agents/simplifiers/adapter.d.ts.map +1 -1
  24. package/dist/agents/simplifiers/adapter.js +1 -0
  25. package/dist/agents/simplifiers/adapter.js.map +1 -1
  26. package/dist/agents/simplifiers/dsl.d.ts +1 -0
  27. package/dist/agents/simplifiers/dsl.d.ts.map +1 -1
  28. package/dist/agents/simplifiers/dsl.js +1 -0
  29. package/dist/agents/simplifiers/dsl.js.map +1 -1
  30. package/dist/agents/simplifiers/handler.d.ts.map +1 -1
  31. package/dist/agents/simplifiers/handler.js +1 -0
  32. package/dist/agents/simplifiers/handler.js.map +1 -1
  33. package/dist/agents/simplifiers/index.d.ts +2 -2
  34. package/dist/agents/simplifiers/index.d.ts.map +1 -1
  35. package/dist/agents/simplifiers/index.js.map +1 -1
  36. package/dist/agents/simplifiers/prompts.d.ts +1 -0
  37. package/dist/agents/simplifiers/prompts.d.ts.map +1 -1
  38. package/dist/agents/simplifiers/prompts.js +1 -1
  39. package/dist/agents/simplifiers/prompts.js.map +1 -1
  40. package/dist/agents/simplifiers/types.d.ts +1 -0
  41. package/dist/agents/simplifiers/types.d.ts.map +1 -1
  42. package/dist/cleanup.d.ts +9 -0
  43. package/dist/cleanup.d.ts.map +1 -0
  44. package/dist/cleanup.js +35 -0
  45. package/dist/cleanup.js.map +1 -0
  46. package/dist/cli.js +30 -13
  47. package/dist/cli.js.map +1 -1
  48. package/dist/config.d.ts +5 -3
  49. package/dist/config.d.ts.map +1 -1
  50. package/dist/config.js.map +1 -1
  51. package/dist/crosscheck/coordinator.d.ts.map +1 -1
  52. package/dist/crosscheck/coordinator.js +52 -36
  53. package/dist/crosscheck/coordinator.js.map +1 -1
  54. package/dist/crosscheck/live-agent-session.d.ts +8 -1
  55. package/dist/crosscheck/live-agent-session.d.ts.map +1 -1
  56. package/dist/crosscheck/live-agent-session.js +62 -31
  57. package/dist/crosscheck/live-agent-session.js.map +1 -1
  58. package/dist/dump/collector.d.ts.map +1 -1
  59. package/dist/dump/collector.js +1 -0
  60. package/dist/dump/collector.js.map +1 -1
  61. package/dist/dump/observer-diagnostics.d.ts +6 -0
  62. package/dist/dump/observer-diagnostics.d.ts.map +1 -0
  63. package/dist/dump/observer-diagnostics.js +19 -0
  64. package/dist/dump/observer-diagnostics.js.map +1 -0
  65. package/dist/dump/service.d.ts.map +1 -1
  66. package/dist/dump/service.js +2 -3
  67. package/dist/dump/service.js.map +1 -1
  68. package/dist/dump/types.d.ts +2 -0
  69. package/dist/dump/types.d.ts.map +1 -1
  70. package/dist/flow/built-in/simplify-factory.d.ts.map +1 -1
  71. package/dist/flow/built-in/simplify-factory.js +4 -1
  72. package/dist/flow/built-in/simplify-factory.js.map +1 -1
  73. package/dist/flow/built-in/simplify.d.ts +1 -0
  74. package/dist/flow/built-in/simplify.d.ts.map +1 -1
  75. package/dist/flow/built-in/simplify.js +3 -2
  76. package/dist/flow/built-in/simplify.js.map +1 -1
  77. package/dist/flow/dsl.d.ts +1 -0
  78. package/dist/flow/dsl.d.ts.map +1 -1
  79. package/dist/flow/dsl.js +1 -0
  80. package/dist/flow/dsl.js.map +1 -1
  81. package/dist/flow/executor.d.ts.map +1 -1
  82. package/dist/flow/executor.js +3 -3
  83. package/dist/flow/executor.js.map +1 -1
  84. package/dist/flow/params.d.ts +3 -1
  85. package/dist/flow/params.d.ts.map +1 -1
  86. package/dist/flow/params.js +85 -121
  87. package/dist/flow/params.js.map +1 -1
  88. package/dist/flow/types.d.ts +5 -2
  89. package/dist/flow/types.d.ts.map +1 -1
  90. package/dist/flow/types.js.map +1 -1
  91. package/dist/offscreen/controller.d.ts +1 -1
  92. package/dist/offscreen/controller.d.ts.map +1 -1
  93. package/dist/offscreen/controller.js +67 -45
  94. package/dist/offscreen/controller.js.map +1 -1
  95. package/dist/offscreen/fork.d.ts +6 -3
  96. package/dist/offscreen/fork.d.ts.map +1 -1
  97. package/dist/offscreen/fork.js +57 -33
  98. package/dist/offscreen/fork.js.map +1 -1
  99. package/dist/offscreen/inquiry-pane.d.ts.map +1 -1
  100. package/dist/offscreen/inquiry-pane.js +7 -2
  101. package/dist/offscreen/inquiry-pane.js.map +1 -1
  102. package/dist/offscreen/inquiry-sender.d.ts +1 -0
  103. package/dist/offscreen/inquiry-sender.d.ts.map +1 -1
  104. package/dist/offscreen/inquiry-sender.js +12 -2
  105. package/dist/offscreen/inquiry-sender.js.map +1 -1
  106. package/dist/offscreen/registry.d.ts.map +1 -1
  107. package/dist/offscreen/registry.js +14 -12
  108. package/dist/offscreen/registry.js.map +1 -1
  109. package/dist/orchestrator.d.ts.map +1 -1
  110. package/dist/orchestrator.js +20 -24
  111. package/dist/orchestrator.js.map +1 -1
  112. package/dist/preview-panel.d.ts +4 -1
  113. package/dist/preview-panel.d.ts.map +1 -1
  114. package/dist/preview-panel.js +114 -55
  115. package/dist/preview-panel.js.map +1 -1
  116. package/dist/providers/configuration-presentation.d.ts.map +1 -1
  117. package/dist/providers/configuration-presentation.js +5 -8
  118. package/dist/providers/configuration-presentation.js.map +1 -1
  119. package/dist/providers/copilot/capability-discovery.d.ts +16 -0
  120. package/dist/providers/copilot/capability-discovery.d.ts.map +1 -0
  121. package/dist/providers/copilot/capability-discovery.js +238 -0
  122. package/dist/providers/copilot/capability-discovery.js.map +1 -0
  123. package/dist/providers/copilot/capability-extension/extension.d.mts +2 -0
  124. package/dist/providers/copilot/capability-extension/extension.d.mts.map +1 -0
  125. package/dist/providers/copilot/capability-extension/extension.mjs +46 -0
  126. package/dist/providers/copilot/capability-extension/extension.mjs.map +1 -0
  127. package/dist/providers/copilot/completion.d.ts +2 -0
  128. package/dist/providers/copilot/completion.d.ts.map +1 -1
  129. package/dist/providers/copilot/completion.js +27 -0
  130. package/dist/providers/copilot/completion.js.map +1 -1
  131. package/dist/providers/copilot/model-capabilities.d.ts +21 -0
  132. package/dist/providers/copilot/model-capabilities.d.ts.map +1 -0
  133. package/dist/providers/copilot/model-capabilities.js +76 -0
  134. package/dist/providers/copilot/model-capabilities.js.map +1 -0
  135. package/dist/providers/copilot/observation.d.ts +123 -15
  136. package/dist/providers/copilot/observation.d.ts.map +1 -1
  137. package/dist/providers/copilot/observation.js +807 -179
  138. package/dist/providers/copilot/observation.js.map +1 -1
  139. package/dist/providers/copilot/observer-extension/com.github.copilot/extensions/poly-weaver-observer/extension.mjs +332 -66
  140. package/dist/providers/copilot/observer-extension/com.github.copilot/extensions/poly-weaver-observer/extension.mjs.map +1 -1
  141. package/dist/providers/copilot/observer-extension/com.github.copilot/extensions/poly-weaver-observer/history-evidence.d.mts +17 -0
  142. package/dist/providers/copilot/observer-extension/com.github.copilot/extensions/poly-weaver-observer/history-evidence.d.mts.map +1 -0
  143. package/dist/providers/copilot/observer-extension/com.github.copilot/extensions/poly-weaver-observer/history-evidence.mjs +54 -0
  144. package/dist/providers/copilot/observer-extension/com.github.copilot/extensions/poly-weaver-observer/history-evidence.mjs.map +1 -0
  145. package/dist/providers/copilot/strategy.d.ts +8 -8
  146. package/dist/providers/copilot/strategy.d.ts.map +1 -1
  147. package/dist/providers/copilot/strategy.js +61 -145
  148. package/dist/providers/copilot/strategy.js.map +1 -1
  149. package/dist/providers/copilot/trust.js +1 -1
  150. package/dist/providers/copilot/trust.js.map +1 -1
  151. package/dist/providers/fork-cleanup.d.ts.map +1 -1
  152. package/dist/providers/fork-cleanup.js +3 -19
  153. package/dist/providers/fork-cleanup.js.map +1 -1
  154. package/dist/providers/initialization.d.ts +14 -0
  155. package/dist/providers/initialization.d.ts.map +1 -0
  156. package/dist/providers/initialization.js +74 -0
  157. package/dist/providers/initialization.js.map +1 -0
  158. package/dist/providers/invoke.d.ts.map +1 -1
  159. package/dist/providers/invoke.js +54 -32
  160. package/dist/providers/invoke.js.map +1 -1
  161. package/dist/providers/observer-run.d.ts.map +1 -1
  162. package/dist/providers/observer-run.js +3 -2
  163. package/dist/providers/observer-run.js.map +1 -1
  164. package/dist/providers/option-catalog.d.ts +12 -8
  165. package/dist/providers/option-catalog.d.ts.map +1 -1
  166. package/dist/providers/option-catalog.js +25 -13
  167. package/dist/providers/option-catalog.js.map +1 -1
  168. package/dist/providers/registry.d.ts +3 -1
  169. package/dist/providers/registry.d.ts.map +1 -1
  170. package/dist/providers/registry.js +20 -9
  171. package/dist/providers/registry.js.map +1 -1
  172. package/dist/providers/session-launch.d.ts.map +1 -1
  173. package/dist/providers/session-launch.js +2 -1
  174. package/dist/providers/session-launch.js.map +1 -1
  175. package/dist/providers/types.d.ts +35 -8
  176. package/dist/providers/types.d.ts.map +1 -1
  177. package/dist/providers/types.js +1 -1
  178. package/dist/providers/types.js.map +1 -1
  179. package/dist/pty/exit.d.ts +3 -1
  180. package/dist/pty/exit.d.ts.map +1 -1
  181. package/dist/pty/exit.js +39 -6
  182. package/dist/pty/exit.js.map +1 -1
  183. package/dist/pty/spawn.d.ts.map +1 -1
  184. package/dist/pty/spawn.js +7 -3
  185. package/dist/pty/spawn.js.map +1 -1
  186. package/dist/pty/types.d.ts +1 -1
  187. package/dist/pty/types.d.ts.map +1 -1
  188. package/dist/session/resume.d.ts.map +1 -1
  189. package/dist/session/resume.js +7 -0
  190. package/dist/session/resume.js.map +1 -1
  191. package/dist/startup-tui.d.ts +1 -0
  192. package/dist/startup-tui.d.ts.map +1 -1
  193. package/dist/startup-tui.js +17 -6
  194. package/dist/startup-tui.js.map +1 -1
  195. package/dist/terminal/color-negotiation.d.ts +37 -0
  196. package/dist/terminal/color-negotiation.d.ts.map +1 -0
  197. package/dist/terminal/color-negotiation.js +154 -0
  198. package/dist/terminal/color-negotiation.js.map +1 -0
  199. package/dist/terminal/color-protocol.d.ts +36 -0
  200. package/dist/terminal/color-protocol.d.ts.map +1 -0
  201. package/dist/terminal/color-protocol.js +88 -0
  202. package/dist/terminal/color-protocol.js.map +1 -0
  203. package/dist/terminal/host-input-mode.d.ts.map +1 -1
  204. package/dist/terminal/host-input-mode.js +6 -2
  205. package/dist/terminal/host-input-mode.js.map +1 -1
  206. package/dist/terminal/host.d.ts +13 -4
  207. package/dist/terminal/host.d.ts.map +1 -1
  208. package/dist/terminal/host.js +147 -51
  209. package/dist/terminal/host.js.map +1 -1
  210. package/dist/terminal/input-session.d.ts +23 -0
  211. package/dist/terminal/input-session.d.ts.map +1 -0
  212. package/dist/terminal/input-session.js +97 -0
  213. package/dist/terminal/input-session.js.map +1 -0
  214. package/dist/terminal/key-event-source.d.ts +5 -1
  215. package/dist/terminal/key-event-source.d.ts.map +1 -1
  216. package/dist/terminal/key-event-source.js +1 -0
  217. package/dist/terminal/key-event-source.js.map +1 -1
  218. package/dist/terminal/stdin-byte-source.d.ts +13 -8
  219. package/dist/terminal/stdin-byte-source.d.ts.map +1 -1
  220. package/dist/terminal/stdin-byte-source.js +84 -40
  221. package/dist/terminal/stdin-byte-source.js.map +1 -1
  222. package/dist/terminal/virtual-terminal.d.ts +2 -0
  223. package/dist/terminal/virtual-terminal.d.ts.map +1 -1
  224. package/dist/terminal/virtual-terminal.js +17 -0
  225. package/dist/terminal/virtual-terminal.js.map +1 -1
  226. package/dist/terminal-input.d.ts +19 -2
  227. package/dist/terminal-input.d.ts.map +1 -1
  228. package/dist/terminal-input.js +162 -6
  229. package/dist/terminal-input.js.map +1 -1
  230. package/dist/user/host-curate-prompt.d.ts.map +1 -1
  231. package/dist/user/host-curate-prompt.js +9 -5
  232. package/dist/user/host-curate-prompt.js.map +1 -1
  233. package/dist/user/host-prompt.d.ts.map +1 -1
  234. package/dist/user/host-prompt.js +9 -5
  235. package/dist/user/host-prompt.js.map +1 -1
  236. package/package.json +2 -2
@@ -1,10 +1,10 @@
1
- import type { ProviderStrategy } from "../../providers/types.js";
1
+ import type { ProviderSource } from "../registry.js";
2
2
  import type { ImplementorDriver, ImplementorPromptSet } from "./types.js";
3
3
  import type { DriverName } from "../../flow/types.js";
4
4
  export { implement } from "./dsl.js";
5
5
  export { ImplementorRoleHandler } from "./handler.js";
6
6
  export type { ImplementorDriver, ImplementorPromptSet } from "./types.js";
7
7
  export type ImplementorFactory = (workdir: string, prompts?: ImplementorPromptSet) => ImplementorDriver;
8
- export declare const registerProvider: (name: DriverName, strategy: ProviderStrategy) => void;
8
+ export declare const registerProvider: (name: DriverName, strategy: ProviderSource) => void;
9
9
  export declare const registerFactory: (name: string, factory: ImplementorFactory) => void, availableDrivers: () => string[];
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agents/implementors/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAMtD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAE1E,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,iBAAiB,CAAC;AAoBxG,eAAO,MAAM,gBAAgB,EAA2B,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,KAAK,IAAI,CAAC;AAC/G,eAAO,MAAQ,eAAe,uDAAE,gBAAgB,gBAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agents/implementors/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAMtD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAE1E,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,iBAAiB,CAAC;AAoBxG,eAAO,MAAM,gBAAgB,EAA2B,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,KAAK,IAAI,CAAC;AAC7G,eAAO,MAAQ,eAAe,uDAAE,gBAAgB,gBAAQ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agents/implementors/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAEzD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAKtD,MAAM,GAAG,GAAG,gBAAgB,CAAwC;IAClE,QAAQ,EAAE,aAAa;IACvB,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,yBAAyB,CAAC;IAC9E,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CACxC,IAAI,kBAAkB,CACpB,QAAQ,EACR,OAAO,EACP,yBAAyB,EACzB,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,KAAK,EACX,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,iBAAiB,CACxB;IACH,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,sBAAsB,CAAC,MAAM,CAAC;CAC1D,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC,gBAA0E,CAAC;AAC/G,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agents/implementors/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAEzD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAKtD,MAAM,GAAG,GAAG,gBAAgB,CAAwC;IAClE,QAAQ,EAAE,aAAa;IACvB,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,yBAAyB,CAAC;IAC9E,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CACxC,IAAI,kBAAkB,CACpB,QAAQ,EACR,OAAO,EACP,yBAAyB,EACzB,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,KAAK,EACX,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,iBAAiB,CACxB;IACH,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,sBAAsB,CAAC,MAAM,CAAC;CAC1D,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC,gBAAwE,CAAC;AAC7G,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AACA,OAAO,qBAAqB,CAAC;AAC7B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,wBAAwB,CAAC;AAChC,OAAO,yBAAyB,CAAC;AACjC,OAAO,sBAAsB,CAAC;AAW9B,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACvE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,wBAAgB,wBAAwB,IAAI,IAAI,CAS/C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AACA,OAAO,qBAAqB,CAAC;AAC7B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,wBAAwB,CAAC;AAChC,OAAO,yBAAyB,CAAC;AACjC,OAAO,sBAAsB,CAAC;AAW9B,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACvE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,wBAAgB,wBAAwB,IAAI,IAAI,CAU/C"}
@@ -5,7 +5,7 @@ import "./implementors/index.js";
5
5
  import "./simplifiers/index.js";
6
6
  import "./interviewers/index.js";
7
7
  import "./executors/index.js";
8
- import { builtinStrategies } from "../providers/registry.js";
8
+ import { builtinStrategies, resolveProvider } from "../providers/registry.js";
9
9
  import * as planners from "./planners/index.js";
10
10
  import * as reviewers from "./reviewers/index.js";
11
11
  import * as implementors from "./implementors/index.js";
@@ -22,11 +22,12 @@ export { executor } from "./executors/index.js";
22
22
  export { createHandler, availableDriversForRole } from "./registry.js";
23
23
  export function registerBuiltinProviders() {
24
24
  for (const [name, strategy] of builtinStrategies()) {
25
- planners.registerProvider(name, strategy);
26
- reviewers.registerProvider(name, strategy);
27
- implementors.registerProvider(name, strategy);
28
- simplifiers.registerProvider(name, strategy);
29
- interviewers.registerProvider(name, strategy);
25
+ const currentStrategy = () => resolveProvider(name);
26
+ planners.registerProvider(name, currentStrategy);
27
+ reviewers.registerProvider(name, currentStrategy);
28
+ implementors.registerProvider(name, currentStrategy);
29
+ simplifiers.registerProvider(name, currentStrategy);
30
+ interviewers.registerProvider(name, currentStrategy);
30
31
  executors.registerProvider(name, strategy);
31
32
  }
32
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,OAAO,qBAAqB,CAAC;AAC7B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,wBAAwB,CAAC;AAChC,OAAO,yBAAyB,CAAC;AACjC,OAAO,sBAAsB,CAAC;AAE9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,WAAW,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAElD,qCAAqC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAGvE,MAAM,UAAU,wBAAwB;IACtC,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,iBAAiB,EAAE,EAAE,CAAC;QACnD,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC1C,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC3C,YAAY,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC9C,WAAW,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC7C,YAAY,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC9C,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/agents/index.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,OAAO,qBAAqB,CAAC;AAC7B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,yBAAyB,CAAC;AACjC,OAAO,wBAAwB,CAAC;AAChC,OAAO,yBAAyB,CAAC;AACjC,OAAO,sBAAsB,CAAC;AAE9B,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC9E,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,WAAW,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,YAAY,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAC;AAElD,qCAAqC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAGvE,MAAM,UAAU,wBAAwB;IACtC,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,iBAAiB,EAAE,EAAE,CAAC;QACnD,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACpD,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QACjD,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QAClD,YAAY,CAAC,gBAAgB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QACrD,WAAW,CAAC,gBAAgB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QACpD,YAAY,CAAC,gBAAgB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QACrD,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { ProviderStrategy } from "../../providers/types.js";
1
+ import type { ProviderSource } from "../registry.js";
2
2
  import type { DriverName } from "../../flow/types.js";
3
3
  import type { InterviewerDriver, InterviewerPromptSet } from "./types.js";
4
4
  export { interviewer } from "./dsl.js";
@@ -6,6 +6,6 @@ export { InterviewerRoleHandler } from "./handler.js";
6
6
  export { defaultInterviewerPrompts } from "./prompts.js";
7
7
  export type { InterviewerDriver, InterviewerMode, InterviewerPromptSet, InterviewerRunOpts, InterviewResult, InterviewerLiveSidecarMeta, } from "./types.js";
8
8
  export type InterviewerFactory = (workdir: string, prompts?: InterviewerPromptSet) => InterviewerDriver;
9
- export declare const registerProvider: (name: DriverName, strategy: ProviderStrategy) => void;
9
+ export declare const registerProvider: (name: DriverName, strategy: ProviderSource) => void;
10
10
  export declare const registerFactory: (name: string, factory: InterviewerFactory) => void, availableDrivers: () => string[];
11
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agents/interviewers/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAKtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAE1E,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACzD,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,0BAA0B,GAC3B,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,kBAAkB,GAAG,CAC/B,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,oBAAoB,KAC3B,iBAAiB,CAAC;AAoBvB,eAAO,MAAM,gBAAgB,EAA2B,CACtD,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,gBAAgB,KACvB,IAAI,CAAC;AACV,eAAO,MAAQ,eAAe,uDAAE,gBAAgB,gBAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agents/interviewers/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAKtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAE1E,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACzD,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,0BAA0B,GAC3B,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,kBAAkB,GAAG,CAC/B,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,oBAAoB,KAC3B,iBAAiB,CAAC;AAoBvB,eAAO,MAAM,gBAAgB,EAA2B,CACtD,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,cAAc,KACrB,IAAI,CAAC;AACV,eAAO,MAAQ,eAAe,uDAAE,gBAAgB,gBAAQ,CAAC"}
@@ -1,10 +1,10 @@
1
- import type { ProviderStrategy } from "../../providers/types.js";
1
+ import type { ProviderSource } from "../registry.js";
2
2
  import type { PlannerDriver, PlannerPromptSet } from "./types.js";
3
3
  import type { DriverName } from "../../flow/types.js";
4
4
  export { plan } from "./dsl.js";
5
5
  export { PlannerRoleHandler } from "./handler.js";
6
6
  export type { PlannerDriver, PlannerPromptSet } from "./types.js";
7
7
  export type PlannerFactory = (workdir: string, prompts?: PlannerPromptSet) => PlannerDriver;
8
- export declare const registerProvider: (name: DriverName, strategy: ProviderStrategy) => void;
8
+ export declare const registerProvider: (name: DriverName, strategy: ProviderSource) => void;
9
9
  export declare const registerFactory: (name: string, factory: PlannerFactory) => void, availableDrivers: () => string[];
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agents/planners/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAMtD,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAElE,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,KAAK,aAAa,CAAC;AAoB5F,eAAO,MAAM,gBAAgB,EAA2B,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,KAAK,IAAI,CAAC;AAC/G,eAAO,MAAQ,eAAe,mDAAE,gBAAgB,gBAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agents/planners/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAMtD,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAElE,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,KAAK,aAAa,CAAC;AAoB5F,eAAO,MAAM,gBAAgB,EAA2B,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,KAAK,IAAI,CAAC;AAC7G,eAAO,MAAQ,eAAe,mDAAE,gBAAgB,gBAAQ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agents/planners/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAErD,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAKlD,MAAM,GAAG,GAAG,gBAAgB,CAAgC;IAC1D,QAAQ,EAAE,SAAS;IACnB,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,qBAAqB,CAAC;IAC1E,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CACxC,IAAI,cAAc,CAChB,QAAQ,EACR,OAAO,EACP,qBAAqB,EACrB,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,KAAK,EACX,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,iBAAiB,CACxB;IACH,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,kBAAkB,CAAC,MAAM,CAAC;CACtD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC,gBAA0E,CAAC;AAC/G,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agents/planners/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAErD,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAKlD,MAAM,GAAG,GAAG,gBAAgB,CAAgC;IAC1D,QAAQ,EAAE,SAAS;IACnB,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,qBAAqB,CAAC;IAC1E,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CACxC,IAAI,cAAc,CAChB,QAAQ,EACR,OAAO,EACP,qBAAqB,EACrB,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,KAAK,EACX,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,iBAAiB,CACxB;IACH,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,kBAAkB,CAAC,MAAM,CAAC;CACtD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC,gBAAwE,CAAC;AAC7G,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import type { RoleHandler } from "../flow/types.js";
2
2
  import type { ProviderContext } from "../flow/types.js";
3
3
  import type { ProviderStrategy } from "../providers/types.js";
4
+ export type ProviderSource = ProviderStrategy | (() => ProviderStrategy);
4
5
  export interface HandlerOpts {
5
6
  variant?: string;
6
7
  yolo?: boolean;
@@ -27,7 +28,7 @@ export declare function createRoleModule<TDriver, TFactory>(config: {
27
28
  fromProvider: (strategy: ProviderStrategy, workdir: string, opts?: HandlerOpts) => TDriver;
28
29
  toHandler: (driver: TDriver, workdir: string) => RoleHandler;
29
30
  }): {
30
- registerProvider: (name: string, strategy: ProviderStrategy) => void;
31
+ registerProvider: (name: string, strategy: ProviderSource) => void;
31
32
  registerFactory: (name: string, factory: TFactory) => void;
32
33
  availableDrivers: () => string[];
33
34
  };
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/agents/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,UAAU;IACzB,aAAa,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,WAAW,CAAC;IACrF,gBAAgB,IAAI,MAAM,EAAE,CAAC;CAC9B;AAID,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,GAAG,IAAI,CAEhE;AAED,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GACpE,WAAW,CAOb;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAE9D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE;IAC1D,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC;IACjF,YAAY,EAAE,CAAC,QAAQ,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC;IAC3F,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,WAAW,CAAC;CAC9D,GAAG;IACF,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACrE,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC3D,gBAAgB,EAAE,MAAM,MAAM,EAAE,CAAC;CAClC,CAiCA"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/agents/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,MAAM,MAAM,cAAc,GAAG,gBAAgB,GAAG,CAAC,MAAM,gBAAgB,CAAC,CAAC;AAEzE,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,UAAU;IACzB,aAAa,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,WAAW,CAAC;IACrF,gBAAgB,IAAI,MAAM,EAAE,CAAC;CAC9B;AAID,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,GAAG,IAAI,CAEhE;AAED,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GACpE,WAAW,CAOb;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAE9D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE;IAC1D,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC;IACjF,YAAY,EAAE,CAAC,QAAQ,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC;IAC3F,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,WAAW,CAAC;CAC9D,GAAG;IACF,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,KAAK,IAAI,CAAC;IACnE,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC3D,gBAAgB,EAAE,MAAM,MAAM,EAAE,CAAC;CAClC,CAiCA"}
@@ -39,7 +39,7 @@ export function createRoleModule(config) {
39
39
  if (!strategy) {
40
40
  throw new Error(`Unknown ${config.roleName} driver: "${driverName}". Available: ${availableDrivers().join(", ")}`);
41
41
  }
42
- return config.toHandler(config.fromProvider(strategy, workdir, opts), workdir);
42
+ return config.toHandler(config.fromProvider(typeof strategy === "function" ? strategy() : strategy, workdir, opts), workdir);
43
43
  }
44
44
  registerRole(config.roleName, { createHandler: roleCreateHandler, availableDrivers });
45
45
  return { registerProvider, registerFactory, availableDrivers };
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/agents/registry.ts"],"names":[],"mappings":"AAmBA,MAAM,OAAO,GAAG,IAAI,GAAG,EAAsB,CAAC;AAE9C,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,GAAe;IACxD,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,IAAY,EAAE,UAAkB,EAAE,OAAe,EAAE,IAAkB;IAErE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,IAAI,GAAG,CAAC,CAAC;IACtE,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,gEAAgE,CAAC,CAAC;IACjG,CAAC;IACD,OAAO,GAAG,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;AACrD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAoB,MAKnD;IAKC,MAAM,SAAS,GAAG,IAAI,GAAG,EAA4B,CAAC;IACtD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAC;IAE9C,SAAS,gBAAgB,CAAC,IAAY,EAAE,QAA0B;QAChE,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAChC,CAAC;IAED,SAAS,eAAe,CAAC,IAAY,EAAE,OAAiB;QACtD,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED,SAAS,gBAAgB;QACvB,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,EAAE,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,SAAS,iBAAiB,CAAC,UAAkB,EAAE,OAAe,EAAE,IAAkB;QAChF,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC1C,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;QAC/E,CAAC;QACD,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CACb,WAAW,MAAM,CAAC,QAAQ,aAAa,UAAU,iBAAiB,gBAAgB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClG,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IACjF,CAAC;IAED,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAEtF,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC;AACjE,CAAC"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/agents/registry.ts"],"names":[],"mappings":"AAqBA,MAAM,OAAO,GAAG,IAAI,GAAG,EAAsB,CAAC;AAE9C,MAAM,UAAU,YAAY,CAAC,IAAY,EAAE,GAAe;IACxD,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,IAAY,EAAE,UAAkB,EAAE,OAAe,EAAE,IAAkB;IAErE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,IAAI,GAAG,CAAC,CAAC;IACtE,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,gEAAgE,CAAC,CAAC;IACjG,CAAC;IACD,OAAO,GAAG,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;AACrD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAoB,MAKnD;IAKC,MAAM,SAAS,GAAG,IAAI,GAAG,EAA0B,CAAC;IACpD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAC;IAE9C,SAAS,gBAAgB,CAAC,IAAY,EAAE,QAAwB;QAC9D,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAChC,CAAC;IAED,SAAS,eAAe,CAAC,IAAY,EAAE,OAAiB;QACtD,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED,SAAS,gBAAgB;QACvB,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,EAAE,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,SAAS,iBAAiB,CAAC,UAAkB,EAAE,OAAe,EAAE,IAAkB;QAChF,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC1C,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;QAC/E,CAAC;QACD,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CACb,WAAW,MAAM,CAAC,QAAQ,aAAa,UAAU,iBAAiB,gBAAgB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClG,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;IAC/H,CAAC;IAED,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAEtF,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC;AACjE,CAAC"}
@@ -1,10 +1,10 @@
1
- import type { ProviderStrategy } from "../../providers/types.js";
1
+ import type { ProviderSource } from "../registry.js";
2
2
  import type { ReviewerDriver, ReviewPromptBuilder, FreshRevisionReviewPromptBuilder } from "./types.js";
3
3
  import type { DriverName } from "../../flow/types.js";
4
4
  export { review } from "./dsl.js";
5
5
  export { ReviewerRoleHandler } from "./handler.js";
6
6
  export type { ReviewerDriver, ReviewPromptBuilder, FreshRevisionReviewPromptBuilder, ReviewPromptContext, } from "./types.js";
7
7
  export type ReviewerFactory = (workdir: string, promptBuilder?: ReviewPromptBuilder, resumePromptBuilder?: ReviewPromptBuilder, freshRevisionPromptBuilder?: FreshRevisionReviewPromptBuilder) => ReviewerDriver;
8
- export declare const registerProvider: (name: DriverName, strategy: ProviderStrategy) => void;
8
+ export declare const registerProvider: (name: DriverName, strategy: ProviderSource) => void;
9
9
  export declare const registerFactory: (name: string, factory: ReviewerFactory) => void, availableDrivers: () => string[];
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agents/reviewers/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,gCAAgC,EAEjC,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AActD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,gCAAgC,EAChC,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,eAAe,GAAG,CAC5B,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,mBAAmB,EACnC,mBAAmB,CAAC,EAAE,mBAAmB,EACzC,0BAA0B,CAAC,EAAE,gCAAgC,KAC1D,cAAc,CAAC;AAqDpB,eAAO,MAAM,gBAAgB,EAA2B,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,KAAK,IAAI,CAAC;AAC/G,eAAO,MAAQ,eAAe,oDAAE,gBAAgB,gBAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agents/reviewers/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,gCAAgC,EAEjC,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AActD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,gCAAgC,EAChC,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,eAAe,GAAG,CAC5B,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,mBAAmB,EACnC,mBAAmB,CAAC,EAAE,mBAAmB,EACzC,0BAA0B,CAAC,EAAE,gCAAgC,KAC1D,cAAc,CAAC;AAqDpB,eAAO,MAAM,gBAAgB,EAA2B,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,KAAK,IAAI,CAAC;AAC7G,eAAO,MAAQ,eAAe,oDAAE,gBAAgB,gBAAQ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agents/reviewers/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAoB,MAAM,gBAAgB,CAAC;AACpE,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,iCAAiC,EACjC,uCAAuC,EACvC,gCAAgC,EAChC,2BAA2B,EAC3B,iCAAiC,GAClC,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAenD,SAAS,sBAAsB,CAAC,IAAkB;IAKhD,IAAI,IAAI,EAAE,OAAO,KAAK,MAAM,EAAE,CAAC;QAC7B,OAAO;YACL,EAAE,EAAE,iCAAiC;YACrC,GAAG,EAAE,uCAAuC;YAC5C,IAAI,EAAE,SAAS;SAChB,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,EAAE,OAAO,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO;YACL,EAAE,EAAE,2BAA2B;YAC/B,GAAG,EAAE,iCAAiC;YACtC,IAAI,EAAE,SAAS;SAChB,CAAC;IACJ,CAAC;IACD,OAAO;QACL,EAAE,EAAE,mBAAmB;QACvB,GAAG,EAAE,yBAAyB;QAC9B,IAAI,EAAE,gCAAgC;KACvC,CAAC;AACJ,CAAC;AAED,MAAM,GAAG,GAAG,gBAAgB,CAAkC;IAC5D,QAAQ,EAAE,UAAU;IACpB,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACtC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACvD,OAAO,OAAO,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IACD,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACxC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACvD,OAAO,IAAI,eAAe,CACxB,QAAQ,EACR,OAAO,EACP,EAAE,EACF,GAAG,EACH,IAAI,EACJ,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,KAAK,EACX,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,iBAAiB,CACxB,CAAC;IACJ,CAAC;IACD,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,mBAAmB,CAAC,MAAM,CAAC;CACvD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC,gBAA0E,CAAC;AAC/G,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agents/reviewers/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAoB,MAAM,gBAAgB,CAAC;AACpE,OAAO,EACL,mBAAmB,EACnB,yBAAyB,EACzB,iCAAiC,EACjC,uCAAuC,EACvC,gCAAgC,EAChC,2BAA2B,EAC3B,iCAAiC,GAClC,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAenD,SAAS,sBAAsB,CAAC,IAAkB;IAKhD,IAAI,IAAI,EAAE,OAAO,KAAK,MAAM,EAAE,CAAC;QAC7B,OAAO;YACL,EAAE,EAAE,iCAAiC;YACrC,GAAG,EAAE,uCAAuC;YAC5C,IAAI,EAAE,SAAS;SAChB,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,EAAE,OAAO,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO;YACL,EAAE,EAAE,2BAA2B;YAC/B,GAAG,EAAE,iCAAiC;YACtC,IAAI,EAAE,SAAS;SAChB,CAAC;IACJ,CAAC;IACD,OAAO;QACL,EAAE,EAAE,mBAAmB;QACvB,GAAG,EAAE,yBAAyB;QAC9B,IAAI,EAAE,gCAAgC;KACvC,CAAC;AACJ,CAAC;AAED,MAAM,GAAG,GAAG,gBAAgB,CAAkC;IAC5D,QAAQ,EAAE,UAAU;IACpB,WAAW,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACtC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACvD,OAAO,OAAO,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IACD,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACxC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACvD,OAAO,IAAI,eAAe,CACxB,QAAQ,EACR,OAAO,EACP,EAAE,EACF,GAAG,EACH,IAAI,EACJ,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,KAAK,EACX,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,iBAAiB,CACxB,CAAC;IACJ,CAAC;IACD,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,mBAAmB,CAAC,MAAM,CAAC;CACvD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC,gBAAwE,CAAC;AAC7G,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { CompletionDisposition, FileAndTurnCompletionPolicy, NativePlanResult, ProviderObserverDiagnostics, ProviderObserverRun, ProviderStrategy } from "../providers/types.js";
1
+ import type { CompletionDisposition, FileAndTurnCompletionPolicy, NativePlanResult, ProviderObserverDiagnostics, ProviderObserverDiagnosticsSource, ProviderObserverRun, ProviderStrategy } from "../providers/types.js";
2
2
  import type { OrchestrationOutput } from "../terminal/output.js";
3
3
  import type { TerminalHost } from "../terminal/host.js";
4
4
  import { PtyTailBuffer } from "../dump/pty-tail-buffer.js";
@@ -64,6 +64,7 @@ export interface RunRequest {
64
64
  onAttemptFailure?: (record: AttemptFailureRecord) => void;
65
65
  /** Invoked with the latest sanitized provider observer state for dumps. */
66
66
  onObserverDiagnostics?: (diagnostics: ProviderObserverDiagnostics) => void;
67
+ registerObserverDiagnosticsSource?: (source: ProviderObserverDiagnosticsSource) => () => void;
67
68
  /** Run-scoped observer service for the request's provider. */
68
69
  observerRun?: ProviderObserverRun;
69
70
  }
@@ -160,6 +161,7 @@ export declare abstract class BaseAdapter {
160
161
  attemptFailureCallback?: (record: AttemptFailureRecord) => void;
161
162
  /** Optional callback invoked with sanitized provider observer diagnostics. */
162
163
  observerDiagnosticsCallback?: (diagnostics: ProviderObserverDiagnostics) => void;
164
+ observerDiagnosticsSourceCallback?: (source: ProviderObserverDiagnosticsSource) => () => void;
163
165
  private writeSidecar;
164
166
  protected runAgent(request: RunRequest): Promise<RunResult>;
165
167
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/agents/runner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,qBAAqB,EACrB,2BAA2B,EAC3B,gBAAgB,EAChB,2BAA2B,EAC3B,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAQ/B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAS7D,MAAM,WAAW,UAAU;IACzB,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kEAAkE;IAClE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oEAAoE;IACpE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wCAAwC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,iDAAiD;IACjD,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;OAMG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,4CAA4C;IAC5C,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,8FAA8F;IAC9F,gBAAgB,CAAC,EAAE,2BAA2B,CAAC;IAC/C,gFAAgF;IAChF,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,0EAA0E;IAC1E,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;IAC9C,6DAA6D;IAC7D,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC1D,2EAA2E;IAC3E,qBAAqB,CAAC,EAAE,CAAC,WAAW,EAAE,2BAA2B,KAAK,IAAI,CAAC;IAC3E,8DAA8D;IAC9D,WAAW,CAAC,EAAE,mBAAmB,CAAC;CACnC;AAED,MAAM,WAAW,SAAS;IACxB,4DAA4D;IAC5D,YAAY,EAAE,MAAM,CAAC;IACrB,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,eAAe,EAAE,MAAM,CAAC;IACxB,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,yGAAyG;IACzG,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;CAC/C;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,QAAQ,CAAC,IAAI,EAAG,mBAAmB,CAAU;IAC7C;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,QAAQ;gBACZ,OAAO,SAA0B;CAI9C;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,qBAAqB,CAMlF;AAED;;;;;;GAMG;AACH,8BAAsB,WAAW;IAY7B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB;IAC7C,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM;IAElC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM;IACjC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM;IAClC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO;IACjC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe;IAjB9C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IACvC,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,SAAS,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,OAAO,CAAC,mBAAmB,CAA4B;IACvD,kFAAkF;IAClF,SAAS,CAAC,aAAa,EAAE,mBAAmB,GAAG,SAAS,CAAC;IACzD,SAAS,CAAC,WAAW,EAAE,YAAY,GAAG,SAAS,CAAC;IAChD,SAAS,CAAC,oBAAoB,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAAG,SAAS,CAAC;gBAGhE,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE,MAAM,EAClC,IAAI,CAAC,EAAE,OAAO,EACK,KAAK,CAAC,EAAE,MAAM,YAAA,EACd,MAAM,CAAC,EAAE,MAAM,YAAA,EACf,IAAI,CAAC,EAAE,OAAO,YAAA,EACd,OAAO,CAAC,EAAE,eAAe,YAAA,EAC5C,iBAAiB,CAAC,EAAE,MAAM;IAM5B,YAAY,IAAI,MAAM,GAAG,SAAS;IAI5B,uBAAuB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAUtD,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAIvE,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIzD,oBAAoB,IAAI,OAAO;IAI/B,sBAAsB,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI;IAIrD,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,GAAG,IAAI;IAY1D,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAS1C;;;;OAIG;IACH,UAAU,CAAC,OAAO,EAAE;QAClB,MAAM,CAAC,EAAE,mBAAmB,CAAC;QAC7B,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,oBAAoB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;KACjE,GAAG,IAAI;IAMR,SAAS,CAAC,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAKxD,2FAA2F;IAC3F,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAE7C;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;IACpD,8EAA8E;IAC9E,sBAAsB,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAChE,8EAA8E;IAC9E,2BAA2B,CAAC,EAAE,CAAC,WAAW,EAAE,2BAA2B,KAAK,IAAI,CAAC;YAEnE,YAAY;cAsBV,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;CAsBlE;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,OAAO,EACf,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,eAAe,GACpB,IAAI,CAKN;AAED,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAIvE;AAED,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,OAAO,EACf,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAM7B;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAMnE;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,OAAO,EACf,eAAe,EAAE,MAAM,GACtB,IAAI,CAKN;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,OAAO,EACf,OAAO,EAAE;IACP,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,oBAAoB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;CACjE,GACA,IAAI,CAIN;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,OAAO,EACf,gBAAgB,EAAE,MAAM,EAAE,GACzB,IAAI,CAYN;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,GAAG,IAAI,CAY7E;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,GAAG,IAAI,CAclF;AAED,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,GAAG,IAAI,CAqBvF;AAqHD;;;;;;;;;GASG;AACH,qBAAa,WAAW;IAKpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAJ3B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAU;IAC/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAqB;gBAGpC,QAAQ,EAAE,gBAAgB,EAC3C,IAAI,CAAC,EAAE,OAAO,EACd,iBAAiB,CAAC,EAAE,MAAM;IAMtB,GAAG,CACP,OAAO,EAAE,UAAU,EACnB,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GACrC,OAAO,CAAC,SAAS,CAAC;YA8BP,WAAW;CAqY1B"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/agents/runner.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import { rm, writeFile } from "node:fs/promises";
2
2
  import { validateCompletionPolicy } from "../providers/completion-gate.js";
3
3
  import { resolveSpawnCommand, spawnPty } from "../pty/spawn.js";
4
- import { sendExit } from "../pty/exit.js";
4
+ import { sendExit, terminatePty } from "../pty/exit.js";
5
+ import { cleanupResources } from "../cleanup.js";
5
6
  import { discoverSessionFile, prepareSessionLaunch, } from "../providers/session-launch.js";
6
7
  import { PtyTailBuffer } from "../dump/pty-tail-buffer.js";
7
8
  import { AgentExitError, classifyAgentFailure } from "./errors.js";
@@ -144,6 +145,7 @@ export class BaseAdapter {
144
145
  attemptFailureCallback;
145
146
  /** Optional callback invoked with sanitized provider observer diagnostics. */
146
147
  observerDiagnosticsCallback;
148
+ observerDiagnosticsSourceCallback;
147
149
  async writeSidecar(sidecarPath, meta, sessionFilePath) {
148
150
  try {
149
151
  const sessionId = await this.strategy.session.extractSessionId(sessionFilePath);
@@ -166,6 +168,7 @@ export class BaseAdapter {
166
168
  onPtyBuffer: request.onPtyBuffer ?? this.ptyBufferCallback,
167
169
  onAttemptFailure: request.onAttemptFailure ?? this.attemptFailureCallback,
168
170
  onObserverDiagnostics: request.onObserverDiagnostics ?? this.observerDiagnosticsCallback,
171
+ registerObserverDiagnosticsSource: request.registerObserverDiagnosticsSource ?? this.observerDiagnosticsSourceCallback,
169
172
  observerRun: request.observerRun ?? this.providerObserverRuns?.get(this.strategy.name),
170
173
  model: request.model ?? this.model,
171
174
  effort: request.effort ?? this.effort,
@@ -285,6 +288,14 @@ export function bindObserverDiagnosticsReporter(driver, ctx) {
285
288
  entries.push(diagnostics);
286
289
  }
287
290
  };
291
+ driver.observerDiagnosticsSourceCallback = (source) => {
292
+ const inflight = ctx.inFlightStep;
293
+ if (!inflight)
294
+ return () => { };
295
+ const sources = inflight.observerDiagnosticsSources ??= new Set();
296
+ sources.add(source);
297
+ return () => { sources.delete(source); };
298
+ };
288
299
  }
289
300
  }
290
301
  /**
@@ -349,6 +360,10 @@ class RunLifecycle {
349
360
  markSettled() {
350
361
  this.settled = true;
351
362
  }
363
+ fail(error) {
364
+ this.settled = true;
365
+ this.controller.abort(error);
366
+ }
352
367
  markActivationObserved() {
353
368
  this.activationObserved = true;
354
369
  }
@@ -419,7 +434,8 @@ export class AgentRunner {
419
434
  }
420
435
  catch (err) {
421
436
  // Don't retry on user interrupt — that's an explicit cancel.
422
- if (isAgentInterruptedError(err))
437
+ if (isAgentInterruptedError(err)
438
+ || (err && typeof err === "object" && "noRetry" in err && err.noRetry === true))
423
439
  throw err;
424
440
  const msg = `${this.strategy.name} resume failed, falling back to fresh session: ${err instanceof Error ? err.message : err}`;
425
441
  if (request.output) {
@@ -499,6 +515,15 @@ export class AgentRunner {
499
515
  // Diagnostics capture must not affect provider execution.
500
516
  }
501
517
  };
518
+ let detachObserverDiagnostics;
519
+ try {
520
+ if (prepared.observer?.snapshotDiagnostics) {
521
+ detachObserverDiagnostics = request.registerObserverDiagnosticsSource?.(() => prepared.observer?.snapshotDiagnostics?.());
522
+ }
523
+ }
524
+ catch {
525
+ // Optional dump wiring cannot affect the launched operation.
526
+ }
502
527
  emitObserverDiagnostics();
503
528
  let lifecycle;
504
529
  lifecycle = new RunLifecycle((event) => {
@@ -542,68 +567,83 @@ export class AgentRunner {
542
567
  }
543
568
  catch (err) {
544
569
  emitObserverDiagnostics();
545
- await prepared.observer?.dispose();
546
570
  const failureMode = classifyAgentFailure({
547
571
  spawnFailed: true,
548
572
  activationObserved: false,
549
573
  });
550
574
  const record = buildFailureRecord(failureMode, null, undefined, 0, false);
551
575
  emitAttemptFailure(record);
552
- throw new AgentExitError({
576
+ const failure = new AgentExitError({
553
577
  failureMode,
554
578
  exitCode: null,
555
579
  message: err instanceof Error ? err.message : String(err),
556
580
  });
581
+ await cleanupResources([
582
+ () => prepared.observer?.dispose(),
583
+ () => emitObserverDiagnostics(),
584
+ () => detachObserverDiagnostics?.(),
585
+ ], { error: failure });
586
+ throw failure;
557
587
  }
558
588
  // 4. Wire up completion detector and lifecycle observers IMMEDIATELY.
559
589
  // The detector data callback must be registered before opening the
560
590
  // gate so very fast first-byte JSONL emissions are not missed. The
561
591
  // exit and interrupt observers must race the entire post-spawn
562
592
  // lifecycle, including session discovery — not only `detector.start`.
563
- const detector = (prepared.observer ?? this.strategy).createDetector({
564
- planMode: request.planMode,
565
- completionMarkerFile: request.completionSignalFile ?? request.completionMarkerFile,
566
- completionPolicy: request.completionPolicy,
567
- onActivation: () => {
568
- lifecycle.markActivationObserved();
569
- },
570
- });
571
- handle.onData((data) => detector.onPtyData(data));
572
- const observerVt = prepared.observer
573
- ? new VirtualTerminal(spawnCols ?? layout?.childCols ?? process.stdout.columns ?? 120, layout?.childRows ?? process.stdout.rows ?? 30)
574
- : undefined;
575
- if (observerVt) {
576
- handle.onData((data) => {
577
- observerVt.write(data);
578
- });
579
- }
580
- // Separate per-attempt PTY tail buffer for dump capture. Notify the
581
- // caller before the first byte flows so the handler-side `inFlightStep`
582
- // reference is ready in time. On retry this overwrites the prior
583
- // buffer; the failed attempt's tail is discarded.
584
- request.onPtyBuffer?.(ptyTailBuffer);
585
- handle.onData((data) => ptyTailBuffer.append(data));
586
- // Plan-mode activator's onData listener must be registered in the
587
- // same immediate-wiring block so PTY bytes emitted during session
588
- // discovery (the Codex header, status line) are not missed. attach()
589
- // is side-effect-free on the PTY (no writes); drive() runs later.
590
- const attachedActivator = willActivatePlanMode
591
- ? this.strategy.planModeActivator.attach(handle)
592
- : undefined;
593
- // Attach to the host BEFORE opening the gate so the first user
594
- // keystrokes already route through the host's input router.
595
- const detachFromHost = request.terminalHost?.attachChild(handle);
596
- // Register child-exit observer immediately. PtyHandle.onExit invokes
597
- // the callback synchronously when the child has already exited, so
598
- // very fast crashes are also covered.
599
- lifecycle.registerChildExit(handle);
600
- // Register host-interrupt subscription before opening the gate so
601
- // Ctrl+C is honored from the very first keystroke the host sees.
602
- if (request.terminalHost) {
603
- lifecycle.registerHostInterrupt(request.terminalHost);
604
- }
605
- handle.openGate();
593
+ let detector;
594
+ let observerVt;
595
+ let attachedActivator;
596
+ let detachFromHost;
597
+ let observing = true;
598
+ let failure;
606
599
  try {
600
+ detector = (prepared.observer ?? this.strategy).createDetector({
601
+ planMode: request.planMode,
602
+ completionMarkerFile: request.completionSignalFile ?? request.completionMarkerFile,
603
+ completionPolicy: request.completionPolicy,
604
+ onActivation: () => {
605
+ lifecycle.markActivationObserved();
606
+ },
607
+ });
608
+ const activeDetector = detector;
609
+ handle.onData((data) => { if (observing)
610
+ activeDetector.onPtyData(data); });
611
+ observerVt = prepared.observer
612
+ ? new VirtualTerminal(spawnCols ?? layout?.childCols ?? process.stdout.columns ?? 120, layout?.childRows ?? process.stdout.rows ?? 30)
613
+ : undefined;
614
+ if (observerVt) {
615
+ const activeVt = observerVt;
616
+ handle.onData((data) => {
617
+ if (observing)
618
+ activeVt.write(data);
619
+ });
620
+ }
621
+ // Separate per-attempt PTY tail buffer for dump capture. Notify the
622
+ // caller before the first byte flows so the handler-side `inFlightStep`
623
+ // reference is ready in time. On retry this overwrites the prior
624
+ // buffer; the failed attempt's tail is discarded.
625
+ request.onPtyBuffer?.(ptyTailBuffer);
626
+ handle.onData((data) => ptyTailBuffer.append(data));
627
+ // Plan-mode activator's onData listener must be registered in the
628
+ // same immediate-wiring block so PTY bytes emitted during session
629
+ // discovery (the Codex header, status line) are not missed. attach()
630
+ // is side-effect-free on the PTY (no writes); drive() runs later.
631
+ attachedActivator = willActivatePlanMode
632
+ ? this.strategy.planModeActivator.attach(handle)
633
+ : undefined;
634
+ // Attach to the host BEFORE opening the gate so the first user
635
+ // keystrokes already route through the host's input router.
636
+ detachFromHost = request.terminalHost?.attachChild(handle);
637
+ // Register child-exit observer immediately. PtyHandle.onExit invokes
638
+ // the callback synchronously when the child has already exited, so
639
+ // very fast crashes are also covered.
640
+ lifecycle.registerChildExit(handle);
641
+ // Register host-interrupt subscription before opening the gate so
642
+ // Ctrl+C is honored from the very first keystroke the host sees.
643
+ if (request.terminalHost) {
644
+ lifecycle.registerHostInterrupt(request.terminalHost);
645
+ }
646
+ handle.openGate();
607
647
  let planModePtyWidened = false;
608
648
  const widenPtyForPlanModeAutomation = () => {
609
649
  if (!willActivatePlanMode || !layout)
@@ -720,7 +760,6 @@ export class AgentRunner {
720
760
  // Clear the host's child surface so the next screen does not
721
761
  // inherit the finished provider's trailing output / scrollback.
722
762
  request.terminalHost?.clearChildSurface();
723
- detector.dispose();
724
763
  return {
725
764
  responseText,
726
765
  sessionId,
@@ -732,27 +771,30 @@ export class AgentRunner {
732
771
  };
733
772
  }
734
773
  catch (err) {
735
- detector.dispose();
774
+ failure = { error: err };
775
+ lifecycle.fail(err);
736
776
  emitObserverDiagnostics();
737
- // Failure path: drive()'s own finally may not have run yet. dispose
738
- // is idempotent so calling it here is safe in either case.
739
- attachedActivator?.dispose();
740
- handle.suppressOutput();
741
- detachFromHost?.();
742
- // Close the gate so any racing user keystrokes stop reaching the
743
- // child after the run has been cancelled.
744
- handle.closeGate();
745
- handle.kill();
746
- // Failed/cancelled run still clears the surface so a follow-up
747
- // user/agent screen starts blank.
748
- request.terminalHost?.clearChildSurface();
749
777
  throw err;
750
778
  }
751
779
  finally {
780
+ observing = false;
752
781
  emitObserverDiagnostics();
753
- observerVt?.dispose();
754
- await prepared.observer?.dispose();
755
- lifecycle.cleanup();
782
+ await cleanupResources([
783
+ () => detector?.dispose(),
784
+ () => attachedActivator?.dispose(),
785
+ ...(failure ? [
786
+ () => handle.suppressOutput(),
787
+ () => detachFromHost?.(),
788
+ () => handle.closeGate(),
789
+ () => terminatePty(handle),
790
+ () => request.terminalHost?.clearChildSurface(),
791
+ ] : []),
792
+ () => observerVt?.dispose(),
793
+ () => prepared.observer?.dispose(),
794
+ () => lifecycle.cleanup(),
795
+ () => emitObserverDiagnostics(),
796
+ () => detachObserverDiagnostics?.(),
797
+ ], failure);
756
798
  }
757
799
  }
758
800
  }