poly-weaver 1.1.1 → 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 (201) 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 +51 -36
  53. package/dist/crosscheck/coordinator.js.map +1 -1
  54. package/dist/crosscheck/live-agent-session.d.ts +5 -1
  55. package/dist/crosscheck/live-agent-session.d.ts.map +1 -1
  56. package/dist/crosscheck/live-agent-session.js +53 -32
  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.map +1 -1
  92. package/dist/offscreen/controller.js +67 -45
  93. package/dist/offscreen/controller.js.map +1 -1
  94. package/dist/offscreen/fork.d.ts +4 -2
  95. package/dist/offscreen/fork.d.ts.map +1 -1
  96. package/dist/offscreen/fork.js +49 -34
  97. package/dist/offscreen/fork.js.map +1 -1
  98. package/dist/offscreen/inquiry-pane.d.ts.map +1 -1
  99. package/dist/offscreen/inquiry-pane.js +7 -2
  100. package/dist/offscreen/inquiry-pane.js.map +1 -1
  101. package/dist/offscreen/inquiry-sender.d.ts +1 -0
  102. package/dist/offscreen/inquiry-sender.d.ts.map +1 -1
  103. package/dist/offscreen/inquiry-sender.js +12 -2
  104. package/dist/offscreen/inquiry-sender.js.map +1 -1
  105. package/dist/offscreen/registry.d.ts.map +1 -1
  106. package/dist/offscreen/registry.js +14 -12
  107. package/dist/offscreen/registry.js.map +1 -1
  108. package/dist/orchestrator.d.ts.map +1 -1
  109. package/dist/orchestrator.js +20 -24
  110. package/dist/orchestrator.js.map +1 -1
  111. package/dist/preview-panel.d.ts +4 -1
  112. package/dist/preview-panel.d.ts.map +1 -1
  113. package/dist/preview-panel.js +114 -55
  114. package/dist/preview-panel.js.map +1 -1
  115. package/dist/providers/configuration-presentation.d.ts.map +1 -1
  116. package/dist/providers/configuration-presentation.js +5 -8
  117. package/dist/providers/configuration-presentation.js.map +1 -1
  118. package/dist/providers/copilot/capability-discovery.d.ts +16 -0
  119. package/dist/providers/copilot/capability-discovery.d.ts.map +1 -0
  120. package/dist/providers/copilot/capability-discovery.js +238 -0
  121. package/dist/providers/copilot/capability-discovery.js.map +1 -0
  122. package/dist/providers/copilot/capability-extension/extension.d.mts +2 -0
  123. package/dist/providers/copilot/capability-extension/extension.d.mts.map +1 -0
  124. package/dist/providers/copilot/capability-extension/extension.mjs +46 -0
  125. package/dist/providers/copilot/capability-extension/extension.mjs.map +1 -0
  126. package/dist/providers/copilot/completion.d.ts +2 -0
  127. package/dist/providers/copilot/completion.d.ts.map +1 -1
  128. package/dist/providers/copilot/completion.js +27 -0
  129. package/dist/providers/copilot/completion.js.map +1 -1
  130. package/dist/providers/copilot/model-capabilities.d.ts +21 -0
  131. package/dist/providers/copilot/model-capabilities.d.ts.map +1 -0
  132. package/dist/providers/copilot/model-capabilities.js +76 -0
  133. package/dist/providers/copilot/model-capabilities.js.map +1 -0
  134. package/dist/providers/copilot/observation.d.ts +123 -15
  135. package/dist/providers/copilot/observation.d.ts.map +1 -1
  136. package/dist/providers/copilot/observation.js +807 -179
  137. package/dist/providers/copilot/observation.js.map +1 -1
  138. package/dist/providers/copilot/observer-extension/com.github.copilot/extensions/poly-weaver-observer/extension.mjs +332 -66
  139. package/dist/providers/copilot/observer-extension/com.github.copilot/extensions/poly-weaver-observer/extension.mjs.map +1 -1
  140. package/dist/providers/copilot/observer-extension/com.github.copilot/extensions/poly-weaver-observer/history-evidence.d.mts +17 -0
  141. package/dist/providers/copilot/observer-extension/com.github.copilot/extensions/poly-weaver-observer/history-evidence.d.mts.map +1 -0
  142. package/dist/providers/copilot/observer-extension/com.github.copilot/extensions/poly-weaver-observer/history-evidence.mjs +54 -0
  143. package/dist/providers/copilot/observer-extension/com.github.copilot/extensions/poly-weaver-observer/history-evidence.mjs.map +1 -0
  144. package/dist/providers/copilot/strategy.d.ts +8 -8
  145. package/dist/providers/copilot/strategy.d.ts.map +1 -1
  146. package/dist/providers/copilot/strategy.js +61 -145
  147. package/dist/providers/copilot/strategy.js.map +1 -1
  148. package/dist/providers/fork-cleanup.d.ts.map +1 -1
  149. package/dist/providers/fork-cleanup.js +3 -19
  150. package/dist/providers/fork-cleanup.js.map +1 -1
  151. package/dist/providers/initialization.d.ts +14 -0
  152. package/dist/providers/initialization.d.ts.map +1 -0
  153. package/dist/providers/initialization.js +74 -0
  154. package/dist/providers/initialization.js.map +1 -0
  155. package/dist/providers/invoke.d.ts.map +1 -1
  156. package/dist/providers/invoke.js +54 -32
  157. package/dist/providers/invoke.js.map +1 -1
  158. package/dist/providers/observer-run.d.ts.map +1 -1
  159. package/dist/providers/observer-run.js +3 -2
  160. package/dist/providers/observer-run.js.map +1 -1
  161. package/dist/providers/option-catalog.d.ts +12 -8
  162. package/dist/providers/option-catalog.d.ts.map +1 -1
  163. package/dist/providers/option-catalog.js +25 -13
  164. package/dist/providers/option-catalog.js.map +1 -1
  165. package/dist/providers/registry.d.ts +3 -1
  166. package/dist/providers/registry.d.ts.map +1 -1
  167. package/dist/providers/registry.js +20 -9
  168. package/dist/providers/registry.js.map +1 -1
  169. package/dist/providers/session-launch.d.ts.map +1 -1
  170. package/dist/providers/session-launch.js +2 -1
  171. package/dist/providers/session-launch.js.map +1 -1
  172. package/dist/providers/types.d.ts +35 -8
  173. package/dist/providers/types.d.ts.map +1 -1
  174. package/dist/providers/types.js +1 -1
  175. package/dist/providers/types.js.map +1 -1
  176. package/dist/pty/exit.d.ts +3 -1
  177. package/dist/pty/exit.d.ts.map +1 -1
  178. package/dist/pty/exit.js +39 -6
  179. package/dist/pty/exit.js.map +1 -1
  180. package/dist/pty/spawn.d.ts.map +1 -1
  181. package/dist/pty/spawn.js +7 -3
  182. package/dist/pty/spawn.js.map +1 -1
  183. package/dist/pty/types.d.ts +1 -1
  184. package/dist/pty/types.d.ts.map +1 -1
  185. package/dist/session/resume.d.ts.map +1 -1
  186. package/dist/session/resume.js +7 -0
  187. package/dist/session/resume.js.map +1 -1
  188. package/dist/startup-tui.d.ts +1 -0
  189. package/dist/startup-tui.d.ts.map +1 -1
  190. package/dist/startup-tui.js +17 -6
  191. package/dist/startup-tui.js.map +1 -1
  192. package/dist/terminal/host.d.ts.map +1 -1
  193. package/dist/terminal/host.js +11 -10
  194. package/dist/terminal/host.js.map +1 -1
  195. package/dist/user/host-curate-prompt.d.ts.map +1 -1
  196. package/dist/user/host-curate-prompt.js +9 -5
  197. package/dist/user/host-curate-prompt.js.map +1 -1
  198. package/dist/user/host-prompt.d.ts.map +1 -1
  199. package/dist/user/host-prompt.js +9 -5
  200. package/dist/user/host-prompt.js.map +1 -1
  201. package/package.json +1 -1
@@ -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":"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"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/agents/runner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,qBAAqB,EAErB,2BAA2B,EAC3B,gBAAgB,EAChB,2BAA2B,EAC3B,iCAAiC,EACjC,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAS/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,iCAAiC,CAAC,EAAE,CAAC,MAAM,EAAE,iCAAiC,KAAK,MAAM,IAAI,CAAC;IAC9F,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;IACjF,iCAAiC,CAAC,EAAE,CAAC,MAAM,EAAE,iCAAiC,KAAK,MAAM,IAAI,CAAC;YAEhF,YAAY;cAsBV,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;CAuBlE;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,CA4BvF;AA0HD;;;;;;;;;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;YA+BP,WAAW;CA6Z1B"}
@@ -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
  }