@generacy-ai/orchestrator 0.6.0 → 0.8.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 (208) hide show
  1. package/dist/config/loader.d.ts.map +1 -1
  2. package/dist/config/loader.js +32 -1
  3. package/dist/config/loader.js.map +1 -1
  4. package/dist/config/schema.d.ts +436 -7
  5. package/dist/config/schema.d.ts.map +1 -1
  6. package/dist/index.d.ts +3 -1
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +4 -1
  9. package/dist/index.js.map +1 -1
  10. package/dist/launcher/agent-launcher.d.ts +15 -16
  11. package/dist/launcher/agent-launcher.d.ts.map +1 -1
  12. package/dist/launcher/agent-launcher.js +54 -23
  13. package/dist/launcher/agent-launcher.js.map +1 -1
  14. package/dist/launcher/constants.d.ts +5 -0
  15. package/dist/launcher/constants.d.ts.map +1 -0
  16. package/dist/launcher/constants.js +5 -0
  17. package/dist/launcher/constants.js.map +1 -0
  18. package/dist/launcher/errors.d.ts +15 -0
  19. package/dist/launcher/errors.d.ts.map +1 -0
  20. package/dist/launcher/errors.js +25 -0
  21. package/dist/launcher/errors.js.map +1 -0
  22. package/dist/launcher/generic-subprocess-plugin.d.ts +1 -0
  23. package/dist/launcher/generic-subprocess-plugin.d.ts.map +1 -1
  24. package/dist/launcher/generic-subprocess-plugin.js +2 -0
  25. package/dist/launcher/generic-subprocess-plugin.js.map +1 -1
  26. package/dist/launcher/index.d.ts +2 -1
  27. package/dist/launcher/index.d.ts.map +1 -1
  28. package/dist/launcher/index.js +1 -0
  29. package/dist/launcher/index.js.map +1 -1
  30. package/dist/launcher/types.d.ts +81 -4
  31. package/dist/launcher/types.d.ts.map +1 -1
  32. package/dist/routes/health.d.ts.map +1 -1
  33. package/dist/routes/health.js +5 -0
  34. package/dist/routes/health.js.map +1 -1
  35. package/dist/server.d.ts.map +1 -1
  36. package/dist/server.js +130 -26
  37. package/dist/server.js.map +1 -1
  38. package/dist/services/base-advance-monitor-service.d.ts +78 -0
  39. package/dist/services/base-advance-monitor-service.d.ts.map +1 -0
  40. package/dist/services/base-advance-monitor-service.js +233 -0
  41. package/dist/services/base-advance-monitor-service.js.map +1 -0
  42. package/dist/services/boot-resume-service.d.ts +19 -0
  43. package/dist/services/boot-resume-service.d.ts.map +1 -0
  44. package/dist/services/boot-resume-service.js +87 -0
  45. package/dist/services/boot-resume-service.js.map +1 -0
  46. package/dist/services/epic-completion-monitor-service.d.ts.map +1 -1
  47. package/dist/services/epic-completion-monitor-service.js +2 -0
  48. package/dist/services/epic-completion-monitor-service.js.map +1 -1
  49. package/dist/services/in-memory-queue-adapter.d.ts +4 -0
  50. package/dist/services/in-memory-queue-adapter.d.ts.map +1 -1
  51. package/dist/services/in-memory-queue-adapter.js +30 -3
  52. package/dist/services/in-memory-queue-adapter.js.map +1 -1
  53. package/dist/services/label-monitor-service.d.ts +3 -3
  54. package/dist/services/label-monitor-service.d.ts.map +1 -1
  55. package/dist/services/label-monitor-service.js +58 -41
  56. package/dist/services/label-monitor-service.js.map +1 -1
  57. package/dist/services/label-sync-service.d.ts.map +1 -1
  58. package/dist/services/label-sync-service.js +45 -10
  59. package/dist/services/label-sync-service.js.map +1 -1
  60. package/dist/services/merge-conflict-monitor-service.d.ts +73 -0
  61. package/dist/services/merge-conflict-monitor-service.d.ts.map +1 -0
  62. package/dist/services/merge-conflict-monitor-service.js +295 -0
  63. package/dist/services/merge-conflict-monitor-service.js.map +1 -0
  64. package/dist/services/orchestrator-version.d.ts +2 -0
  65. package/dist/services/orchestrator-version.d.ts.map +1 -0
  66. package/dist/services/orchestrator-version.js +23 -0
  67. package/dist/services/orchestrator-version.js.map +1 -0
  68. package/dist/services/phase-tracker-service.d.ts +10 -0
  69. package/dist/services/phase-tracker-service.d.ts.map +1 -1
  70. package/dist/services/phase-tracker-service.js +38 -0
  71. package/dist/services/phase-tracker-service.js.map +1 -1
  72. package/dist/services/post-activation-dispatch.d.ts +18 -0
  73. package/dist/services/post-activation-dispatch.d.ts.map +1 -0
  74. package/dist/services/post-activation-dispatch.js +30 -0
  75. package/dist/services/post-activation-dispatch.js.map +1 -0
  76. package/dist/services/post-activation-retry.d.ts +3 -0
  77. package/dist/services/post-activation-retry.d.ts.map +1 -1
  78. package/dist/services/post-activation-retry.js +34 -2
  79. package/dist/services/post-activation-retry.js.map +1 -1
  80. package/dist/services/pr-feedback-monitor-service.d.ts +13 -4
  81. package/dist/services/pr-feedback-monitor-service.d.ts.map +1 -1
  82. package/dist/services/pr-feedback-monitor-service.js +212 -26
  83. package/dist/services/pr-feedback-monitor-service.js.map +1 -1
  84. package/dist/services/redis-queue-adapter.d.ts +4 -0
  85. package/dist/services/redis-queue-adapter.d.ts.map +1 -1
  86. package/dist/services/redis-queue-adapter.js +90 -10
  87. package/dist/services/redis-queue-adapter.js.map +1 -1
  88. package/dist/services/worker-dispatcher.d.ts +14 -2
  89. package/dist/services/worker-dispatcher.d.ts.map +1 -1
  90. package/dist/services/worker-dispatcher.js +55 -2
  91. package/dist/services/worker-dispatcher.js.map +1 -1
  92. package/dist/types/api.d.ts +3 -0
  93. package/dist/types/api.d.ts.map +1 -1
  94. package/dist/types/api.js +1 -0
  95. package/dist/types/api.js.map +1 -1
  96. package/dist/types/index.d.ts +1 -1
  97. package/dist/types/index.d.ts.map +1 -1
  98. package/dist/types/index.js.map +1 -1
  99. package/dist/types/monitor.d.ts +72 -4
  100. package/dist/types/monitor.d.ts.map +1 -1
  101. package/dist/worker/base-merge.d.ts +54 -0
  102. package/dist/worker/base-merge.d.ts.map +1 -0
  103. package/dist/worker/base-merge.js +99 -0
  104. package/dist/worker/base-merge.js.map +1 -0
  105. package/dist/worker/clarification-markers.d.ts +29 -0
  106. package/dist/worker/clarification-markers.d.ts.map +1 -0
  107. package/dist/worker/clarification-markers.js +44 -0
  108. package/dist/worker/clarification-markers.js.map +1 -0
  109. package/dist/worker/clarification-poster.d.ts.map +1 -1
  110. package/dist/worker/clarification-poster.js +266 -25
  111. package/dist/worker/clarification-poster.js.map +1 -1
  112. package/dist/worker/claude-cli-worker.d.ts +21 -2
  113. package/dist/worker/claude-cli-worker.d.ts.map +1 -1
  114. package/dist/worker/claude-cli-worker.js +150 -4
  115. package/dist/worker/claude-cli-worker.js.map +1 -1
  116. package/dist/worker/cli-spawner.d.ts +4 -0
  117. package/dist/worker/cli-spawner.d.ts.map +1 -1
  118. package/dist/worker/cli-spawner.js +53 -7
  119. package/dist/worker/cli-spawner.js.map +1 -1
  120. package/dist/worker/config.d.ts +420 -8
  121. package/dist/worker/config.d.ts.map +1 -1
  122. package/dist/worker/config.js +179 -2
  123. package/dist/worker/config.js.map +1 -1
  124. package/dist/worker/evidence-hash.d.ts +32 -0
  125. package/dist/worker/evidence-hash.d.ts.map +1 -0
  126. package/dist/worker/evidence-hash.js +139 -0
  127. package/dist/worker/evidence-hash.js.map +1 -0
  128. package/dist/worker/handler-outcome-assertion.d.ts +38 -0
  129. package/dist/worker/handler-outcome-assertion.d.ts.map +1 -0
  130. package/dist/worker/handler-outcome-assertion.js +58 -0
  131. package/dist/worker/handler-outcome-assertion.js.map +1 -0
  132. package/dist/worker/handler-outcome.d.ts +50 -0
  133. package/dist/worker/handler-outcome.d.ts.map +1 -0
  134. package/dist/worker/handler-outcome.js +2 -0
  135. package/dist/worker/handler-outcome.js.map +1 -0
  136. package/dist/worker/label-manager.d.ts +58 -2
  137. package/dist/worker/label-manager.d.ts.map +1 -1
  138. package/dist/worker/label-manager.js +225 -27
  139. package/dist/worker/label-manager.js.map +1 -1
  140. package/dist/worker/merge-conflict-handler.d.ts +141 -0
  141. package/dist/worker/merge-conflict-handler.d.ts.map +1 -0
  142. package/dist/worker/merge-conflict-handler.js +642 -0
  143. package/dist/worker/merge-conflict-handler.js.map +1 -0
  144. package/dist/worker/merge-conflict-prompt.d.ts +35 -0
  145. package/dist/worker/merge-conflict-prompt.d.ts.map +1 -0
  146. package/dist/worker/merge-conflict-prompt.js +71 -0
  147. package/dist/worker/merge-conflict-prompt.js.map +1 -0
  148. package/dist/worker/merge-conflict-remedy.d.ts +42 -0
  149. package/dist/worker/merge-conflict-remedy.d.ts.map +1 -0
  150. package/dist/worker/merge-conflict-remedy.js +28 -0
  151. package/dist/worker/merge-conflict-remedy.js.map +1 -0
  152. package/dist/worker/output-tail-synthesis.d.ts +15 -0
  153. package/dist/worker/output-tail-synthesis.d.ts.map +1 -0
  154. package/dist/worker/output-tail-synthesis.js +25 -0
  155. package/dist/worker/output-tail-synthesis.js.map +1 -0
  156. package/dist/worker/output-tail.d.ts +13 -0
  157. package/dist/worker/output-tail.d.ts.map +1 -0
  158. package/dist/worker/output-tail.js +31 -0
  159. package/dist/worker/output-tail.js.map +1 -0
  160. package/dist/worker/pause-context.d.ts +30 -0
  161. package/dist/worker/pause-context.d.ts.map +1 -0
  162. package/dist/worker/pause-context.js +98 -0
  163. package/dist/worker/pause-context.js.map +1 -0
  164. package/dist/worker/phase-loop.d.ts +66 -0
  165. package/dist/worker/phase-loop.d.ts.map +1 -1
  166. package/dist/worker/phase-loop.js +329 -30
  167. package/dist/worker/phase-loop.js.map +1 -1
  168. package/dist/worker/pr-feedback-handler.d.ts +46 -46
  169. package/dist/worker/pr-feedback-handler.d.ts.map +1 -1
  170. package/dist/worker/pr-feedback-handler.js +286 -108
  171. package/dist/worker/pr-feedback-handler.js.map +1 -1
  172. package/dist/worker/pr-manager.d.ts +5 -0
  173. package/dist/worker/pr-manager.d.ts.map +1 -1
  174. package/dist/worker/pr-manager.js +7 -0
  175. package/dist/worker/pr-manager.js.map +1 -1
  176. package/dist/worker/product-diff.d.ts +39 -0
  177. package/dist/worker/product-diff.d.ts.map +1 -0
  178. package/dist/worker/product-diff.js +43 -0
  179. package/dist/worker/product-diff.js.map +1 -0
  180. package/dist/worker/provisioning-failure.d.ts +14 -0
  181. package/dist/worker/provisioning-failure.d.ts.map +1 -0
  182. package/dist/worker/provisioning-failure.js +2 -0
  183. package/dist/worker/provisioning-failure.js.map +1 -0
  184. package/dist/worker/repo-checkout.d.ts +14 -0
  185. package/dist/worker/repo-checkout.d.ts.map +1 -1
  186. package/dist/worker/repo-checkout.js +19 -1
  187. package/dist/worker/repo-checkout.js.map +1 -1
  188. package/dist/worker/stage-comment-manager.d.ts +42 -1
  189. package/dist/worker/stage-comment-manager.d.ts.map +1 -1
  190. package/dist/worker/stage-comment-manager.js +205 -1
  191. package/dist/worker/stage-comment-manager.js.map +1 -1
  192. package/dist/worker/terminal-label-op-error.d.ts +23 -0
  193. package/dist/worker/terminal-label-op-error.d.ts.map +1 -0
  194. package/dist/worker/terminal-label-op-error.js +27 -0
  195. package/dist/worker/terminal-label-op-error.js.map +1 -0
  196. package/dist/worker/types.d.ts +181 -2
  197. package/dist/worker/types.d.ts.map +1 -1
  198. package/dist/worker/types.js +11 -0
  199. package/dist/worker/types.js.map +1 -1
  200. package/dist/worker/validate-fix-handler.d.ts +79 -0
  201. package/dist/worker/validate-fix-handler.d.ts.map +1 -0
  202. package/dist/worker/validate-fix-handler.js +320 -0
  203. package/dist/worker/validate-fix-handler.js.map +1 -0
  204. package/dist/worker/worker-result.d.ts +39 -0
  205. package/dist/worker/worker-result.d.ts.map +1 -0
  206. package/dist/worker/worker-result.js +10 -0
  207. package/dist/worker/worker-result.js.map +1 -0
  208. package/package.json +12 -7
package/dist/index.d.ts CHANGED
@@ -22,9 +22,11 @@ export { registerRoutes, type RouteRegistrationOptions, } from './routes/index.j
22
22
  export { InMemoryIntegrationRegistry, type IntegrationRegistry, } from './routes/integrations.js';
23
23
  export { SSEStream, createSSEStream, parseLastEventId, formatSSEEvent, formatHeartbeat, createWorkflowEvent, createQueueEvent, createAgentEvent, createErrorEvent, createConnectedEvent, SSESubscriptionManager, getSSESubscriptionManager, resetSSESubscriptionManager, } from './sse/index.js';
24
24
  export { setupEventsRoutes, getActiveConnectionCount, closeAllSSEConnections, } from './routes/events.js';
25
- export { createAgentLauncher, type AgentLauncher, type GenericSubprocessIntent, type ShellIntent, type LaunchIntent, type LaunchRequest, type LaunchSpec, type AgentLaunchPlugin, type OutputParser, type LaunchHandle, } from './launcher/index.js';
25
+ export { AgentLauncher, GenericSubprocessPlugin, createAgentLauncher, type GenericSubprocessIntent, type ShellIntent, type LaunchIntent, type LaunchRequest, type LaunchSpec, type AgentLaunchPlugin, type OutputParser, type LaunchHandle, } from './launcher/index.js';
26
26
  export { defaultProcessFactory } from './worker/claude-cli-worker.js';
27
27
  export { conversationProcessFactory } from './conversation/process-factory.js';
28
+ export { PhaseResolver, GATE_MAPPING, WORKFLOW_GATE_MAPPING, } from './worker/phase-resolver.js';
29
+ export { PHASE_SEQUENCE, WORKFLOW_PHASE_SEQUENCES, getPhaseSequence, type WorkflowPhase, } from './worker/types.js';
28
30
  export { setupGracefulShutdown, CORRELATION_ID_HEADER, generateCorrelationId, } from './utils/index.js';
29
31
  export type { AgentLauncher as IAgentLauncher, OrchestratorConfig as OrchestratorConfigBase, ChildProcessHandle, } from '@generacy-ai/orchestrator-types';
30
32
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -31,10 +31,13 @@ export { InMemoryIntegrationRegistry, } from './routes/integrations.js';
31
31
  export { SSEStream, createSSEStream, parseLastEventId, formatSSEEvent, formatHeartbeat, createWorkflowEvent, createQueueEvent, createAgentEvent, createErrorEvent, createConnectedEvent, SSESubscriptionManager, getSSESubscriptionManager, resetSSESubscriptionManager, } from './sse/index.js';
32
32
  export { setupEventsRoutes, getActiveConnectionCount, closeAllSSEConnections, } from './routes/events.js';
33
33
  // Launcher
34
- export { createAgentLauncher, } from './launcher/index.js';
34
+ export { AgentLauncher, GenericSubprocessPlugin, createAgentLauncher, } from './launcher/index.js';
35
35
  // Process factories
36
36
  export { defaultProcessFactory } from './worker/claude-cli-worker.js';
37
37
  export { conversationProcessFactory } from './conversation/process-factory.js';
38
+ // Worker phase resolution (gate mapping + phase sequence)
39
+ export { PhaseResolver, GATE_MAPPING, WORKFLOW_GATE_MAPPING, } from './worker/phase-resolver.js';
40
+ export { PHASE_SEQUENCE, WORKFLOW_PHASE_SEQUENCES, getPhaseSequence, } from './worker/types.js';
38
41
  // Utils
39
42
  export { setupGracefulShutdown, CORRELATION_ID_HEADER, generateCorrelationId, } from './utils/index.js';
40
43
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,SAAS;AACT,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAA4B,MAAM,aAAa,CAAC;AAEpG,gBAAgB;AAChB,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,cAAc,GAaf,MAAM,mBAAmB,CAAC;AAE3B,QAAQ;AACR,OAAO,EAKL,UAAU,EACV,oBAAoB,EAqDpB,kBAAkB,GAwBnB,MAAM,kBAAkB,CAAC;AAE1B,WAAW;AACX,OAAO,EACL,eAAe,EACf,qBAAqB,GAEtB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,YAAY,EACZ,kBAAkB,GAEnB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,aAAa,GAEd,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,gBAAgB,GAIjB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,mBAAmB,GAEpB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EACL,mBAAmB,GAEpB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEzD,OAAO,EACL,mBAAmB,GAEpB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAEtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAE7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EACL,mBAAmB,GAIpB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EACL,sBAAsB,EACtB,gBAAgB,GAEjB,MAAM,wBAAwB,CAAC;AAEhC,OAAO;AACP,OAAO,EACL,cAAc,EACd,UAAU,EACV,cAAc,EACd,mBAAmB,GAEpB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,YAAY,GAEb,MAAM,sBAAsB,CAAC;AAE9B,aAAa;AACb,OAAO,EACL,cAAc,EACd,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,iBAAiB,EACjB,SAAS,EACT,MAAM,GACP,MAAM,+BAA+B,CAAC;AAEvC,SAAS;AACT,OAAO,EACL,cAAc,GAEf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,2BAA2B,GAE5B,MAAM,0BAA0B,CAAC;AAElC,MAAM;AACN,OAAO,EACL,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,WAAW;AACX,OAAO,EACL,mBAAmB,GAUpB,MAAM,qBAAqB,CAAC;AAE7B,oBAAoB;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAE/E,QAAQ;AACR,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,SAAS;AACT,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAA4B,MAAM,aAAa,CAAC;AAEpG,gBAAgB;AAChB,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,cAAc,GAaf,MAAM,mBAAmB,CAAC;AAE3B,QAAQ;AACR,OAAO,EAKL,UAAU,EACV,oBAAoB,EAqDpB,kBAAkB,GAwBnB,MAAM,kBAAkB,CAAC;AAE1B,WAAW;AACX,OAAO,EACL,eAAe,EACf,qBAAqB,GAEtB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,YAAY,EACZ,kBAAkB,GAEnB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,aAAa,GAEd,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,gBAAgB,GAIjB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,mBAAmB,GAEpB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EACL,mBAAmB,GAEpB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEzD,OAAO,EACL,mBAAmB,GAEpB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAEtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAE7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EACL,mBAAmB,GAIpB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EACL,sBAAsB,EACtB,gBAAgB,GAEjB,MAAM,wBAAwB,CAAC;AAEhC,OAAO;AACP,OAAO,EACL,cAAc,EACd,UAAU,EACV,cAAc,EACd,mBAAmB,GAEpB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,YAAY,GAEb,MAAM,sBAAsB,CAAC;AAE9B,aAAa;AACb,OAAO,EACL,cAAc,EACd,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,iBAAiB,EACjB,SAAS,EACT,MAAM,GACP,MAAM,+BAA+B,CAAC;AAEvC,SAAS;AACT,OAAO,EACL,cAAc,GAEf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,2BAA2B,GAE5B,MAAM,0BAA0B,CAAC;AAElC,MAAM;AACN,OAAO,EACL,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,WAAW;AACX,OAAO,EACL,aAAa,EACb,uBAAuB,EACvB,mBAAmB,GASpB,MAAM,qBAAqB,CAAC;AAE7B,oBAAoB;AACpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAE/E,0DAA0D;AAC1D,OAAO,EACL,aAAa,EACb,YAAY,EACZ,qBAAqB,GACtB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,gBAAgB,GAEjB,MAAM,mBAAmB,CAAC;AAE3B,QAAQ;AACR,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC"}
@@ -2,33 +2,32 @@ import type { ProcessFactory } from '../worker/types.js';
2
2
  import type { AgentLaunchPlugin, LaunchHandle, LaunchRequest } from './types.js';
3
3
  import type { CredhelperClient } from './credhelper-client.js';
4
4
  /**
5
- * Plugin-based process launcher with registry dispatch.
5
+ * Plugin-based process launcher with tuple-keyed registry dispatch.
6
6
  *
7
- * Resolves a LaunchRequest's intent to a registered plugin, delegates
8
- * command/args/env construction to the plugin, performs 3-layer env merge,
9
- * optionally applies credentials interceptor, selects a ProcessFactory
10
- * by stdio profile, and returns a LaunchHandle.
7
+ * Registry keys are composed as `${provider}:${kind}`. Callers may pass
8
+ * `LaunchRequest.provider` to select a plugin; if omitted, resolves to
9
+ * `DEFAULT_PROVIDER`. For kinds only the internal `SYSTEM_PROVIDER` claims,
10
+ * a default-provider request falls back to the system plugin (call-site parity).
11
11
  */
12
12
  export declare class AgentLauncher {
13
13
  private readonly factories;
14
- private readonly kindToPlugin;
14
+ private readonly registry;
15
15
  private readonly credhelperClient?;
16
16
  constructor(factories: Map<string, ProcessFactory>, credhelperClient?: CredhelperClient);
17
17
  /**
18
- * Register a plugin for the intent kinds it supports.
19
- * Throws on duplicate kind registration.
18
+ * Register a plugin for each of its supported kinds under (provider, kind).
19
+ * Throws DuplicatePluginRegistrationError on duplicate key.
20
20
  */
21
21
  registerPlugin(plugin: AgentLaunchPlugin): void;
22
22
  /**
23
- * Launch a process based on the request's intent.
23
+ * Launch a process based on the request's intent + provider.
24
24
  *
25
- * 1. Resolve plugin from registry by intent kind
26
- * 2. Call plugin.buildLaunch() to get LaunchSpec
27
- * 3. Merge env: process.env ← plugin env ← caller env
28
- * 4. If credentials: apply credentials interceptor (begin session, merge env, wrap command)
29
- * 5. Select ProcessFactory by LaunchSpec.stdioProfile
30
- * 6. Spawn process and return LaunchHandle
31
- * 7. If credentials: register exit cleanup (end session)
25
+ * 1. Resolve provider (request.provider ?? DEFAULT_PROVIDER)
26
+ * 2. Look up plugin by `${provider}:${kind}`; else fall back to
27
+ * `${SYSTEM_PROVIDER}:${kind}` when provider was defaulted
28
+ * 3. Otherwise classify miss: known-provider-unknown-kind (Error)
29
+ * vs. unknown-provider (UnknownProviderError)
30
+ * 4. Merge env, apply credentials, select factory, spawn.
32
31
  */
33
32
  launch(request: LaunchRequest): Promise<LaunchHandle>;
34
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent-launcher.d.ts","sourceRoot":"","sources":["../../src/launcher/agent-launcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACd,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI/D;;;;;;;GAOG;AACH,qBAAa,aAAa;IAKtB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAJ5B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAwC;IACrE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAmB;gBAGlC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,EACvD,gBAAgB,CAAC,EAAE,gBAAgB;IAKrC;;;OAGG;IACH,cAAc,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAY/C;;;;;;;;;;OAUG;IACG,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;CAqG5D"}
1
+ {"version":3,"file":"agent-launcher.d.ts","sourceRoot":"","sources":["../../src/launcher/agent-launcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACd,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAS/D;;;;;;;GAOG;AACH,qBAAa,aAAa;IAKtB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAJ5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwC;IACjE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAmB;gBAGlC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,EACvD,gBAAgB,CAAC,EAAE,gBAAgB;IAKrC;;;OAGG;IACH,cAAc,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAoB/C;;;;;;;;;OASG;IACG,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;CA0H5D"}
@@ -1,52 +1,78 @@
1
1
  import { applyCredentials } from './credentials-interceptor.js';
2
2
  import { CredhelperUnavailableError } from './credhelper-errors.js';
3
+ import { DEFAULT_PROVIDER, SYSTEM_PROVIDER } from './constants.js';
4
+ import { DuplicatePluginRegistrationError, UnknownProviderError, } from './errors.js';
3
5
  /**
4
- * Plugin-based process launcher with registry dispatch.
6
+ * Plugin-based process launcher with tuple-keyed registry dispatch.
5
7
  *
6
- * Resolves a LaunchRequest's intent to a registered plugin, delegates
7
- * command/args/env construction to the plugin, performs 3-layer env merge,
8
- * optionally applies credentials interceptor, selects a ProcessFactory
9
- * by stdio profile, and returns a LaunchHandle.
8
+ * Registry keys are composed as `${provider}:${kind}`. Callers may pass
9
+ * `LaunchRequest.provider` to select a plugin; if omitted, resolves to
10
+ * `DEFAULT_PROVIDER`. For kinds only the internal `SYSTEM_PROVIDER` claims,
11
+ * a default-provider request falls back to the system plugin (call-site parity).
10
12
  */
11
13
  export class AgentLauncher {
12
14
  factories;
13
- kindToPlugin = new Map();
15
+ registry = new Map();
14
16
  credhelperClient;
15
17
  constructor(factories, credhelperClient) {
16
18
  this.factories = factories;
17
19
  this.credhelperClient = credhelperClient;
18
20
  }
19
21
  /**
20
- * Register a plugin for the intent kinds it supports.
21
- * Throws on duplicate kind registration.
22
+ * Register a plugin for each of its supported kinds under (provider, kind).
23
+ * Throws DuplicatePluginRegistrationError on duplicate key.
22
24
  */
23
25
  registerPlugin(plugin) {
26
+ if (typeof plugin.provider !== 'string' || plugin.provider.length === 0) {
27
+ throw new Error(`Plugin "${plugin.pluginId}" must declare a non-empty provider string`);
28
+ }
24
29
  for (const kind of plugin.supportedKinds) {
25
- if (this.kindToPlugin.has(kind)) {
26
- const existing = this.kindToPlugin.get(kind);
27
- throw new Error(`Intent kind "${kind}" already registered by plugin "${existing.pluginId}"`);
30
+ const key = `${plugin.provider}:${kind}`;
31
+ const existing = this.registry.get(key);
32
+ if (existing) {
33
+ throw new DuplicatePluginRegistrationError(plugin.provider, kind, existing.pluginId);
28
34
  }
29
- this.kindToPlugin.set(kind, plugin);
35
+ this.registry.set(key, plugin);
30
36
  }
31
37
  }
32
38
  /**
33
- * Launch a process based on the request's intent.
39
+ * Launch a process based on the request's intent + provider.
34
40
  *
35
- * 1. Resolve plugin from registry by intent kind
36
- * 2. Call plugin.buildLaunch() to get LaunchSpec
37
- * 3. Merge env: process.env ← plugin env ← caller env
38
- * 4. If credentials: apply credentials interceptor (begin session, merge env, wrap command)
39
- * 5. Select ProcessFactory by LaunchSpec.stdioProfile
40
- * 6. Spawn process and return LaunchHandle
41
- * 7. If credentials: register exit cleanup (end session)
41
+ * 1. Resolve provider (request.provider ?? DEFAULT_PROVIDER)
42
+ * 2. Look up plugin by `${provider}:${kind}`; else fall back to
43
+ * `${SYSTEM_PROVIDER}:${kind}` when provider was defaulted
44
+ * 3. Otherwise classify miss: known-provider-unknown-kind (Error)
45
+ * vs. unknown-provider (UnknownProviderError)
46
+ * 4. Merge env, apply credentials, select factory, spawn.
42
47
  */
43
48
  async launch(request) {
44
49
  const { intent } = request;
50
+ const provider = request.provider ?? DEFAULT_PROVIDER;
51
+ const kind = intent.kind;
52
+ const key = `${provider}:${kind}`;
45
53
  // 1. Resolve plugin
46
- const plugin = this.kindToPlugin.get(intent.kind);
54
+ let plugin = this.registry.get(key);
55
+ if (!plugin && request.provider === undefined) {
56
+ // Default-provider fallback: system-owned kinds (generic-subprocess, shell)
57
+ // resolve without callers needing to spell 'system'.
58
+ plugin = this.registry.get(`${SYSTEM_PROVIDER}:${kind}`);
59
+ }
47
60
  if (!plugin) {
48
- const availableKinds = [...this.kindToPlugin.keys()].join(', ');
49
- throw new Error(`Unknown intent kind "${intent.kind}". Available kinds: ${availableKinds}`);
61
+ const registryKeys = [...this.registry.keys()];
62
+ const kindsForProvider = [];
63
+ const providers = new Set();
64
+ for (const registryKey of registryKeys) {
65
+ const [keyProvider, keyKind] = splitKey(registryKey);
66
+ providers.add(keyProvider);
67
+ if (keyProvider === provider) {
68
+ kindsForProvider.push(keyKind);
69
+ }
70
+ }
71
+ if (kindsForProvider.length > 0) {
72
+ throw new Error(`Unknown intent kind "${kind}" for provider "${provider}". Known kinds for this provider: ${kindsForProvider.join(', ')}`);
73
+ }
74
+ const availableProviders = [...providers].sort();
75
+ throw new UnknownProviderError(provider, kind, availableProviders);
50
76
  }
51
77
  // 2. Build launch spec
52
78
  const launchSpec = plugin.buildLaunch(intent);
@@ -113,4 +139,9 @@ export class AgentLauncher {
113
139
  };
114
140
  }
115
141
  }
142
+ /** Split a `${provider}:${kind}` registry key. Provider is everything before the first colon. */
143
+ function splitKey(key) {
144
+ const colonIndex = key.indexOf(':');
145
+ return [key.slice(0, colonIndex), key.slice(colonIndex + 1)];
146
+ }
116
147
  //# sourceMappingURL=agent-launcher.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-launcher.js","sourceRoot":"","sources":["../../src/launcher/agent-launcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-launcher.js","sourceRoot":"","sources":["../../src/launcher/agent-launcher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /** Reserved provider for non-agent plugins (subprocess, shell). Internal — never exported from `index.ts`, never valid in workflow config. */
2
+ export declare const SYSTEM_PROVIDER: "system";
3
+ /** Default provider when `LaunchRequest.provider` is omitted. Internal — call sites must not depend on it. */
4
+ export declare const DEFAULT_PROVIDER: "claude-code";
5
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/launcher/constants.ts"],"names":[],"mappings":"AAAA,8IAA8I;AAC9I,eAAO,MAAM,eAAe,EAAG,QAAiB,CAAC;AAEjD,8GAA8G;AAC9G,eAAO,MAAM,gBAAgB,EAAG,aAAsB,CAAC"}
@@ -0,0 +1,5 @@
1
+ /** Reserved provider for non-agent plugins (subprocess, shell). Internal — never exported from `index.ts`, never valid in workflow config. */
2
+ export const SYSTEM_PROVIDER = 'system';
3
+ /** Default provider when `LaunchRequest.provider` is omitted. Internal — call sites must not depend on it. */
4
+ export const DEFAULT_PROVIDER = 'claude-code';
5
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/launcher/constants.ts"],"names":[],"mappings":"AAAA,8IAA8I;AAC9I,MAAM,CAAC,MAAM,eAAe,GAAG,QAAiB,CAAC;AAEjD,8GAA8G;AAC9G,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAsB,CAAC"}
@@ -0,0 +1,15 @@
1
+ export declare class UnknownProviderError extends Error {
2
+ readonly name = "UnknownProviderError";
3
+ readonly provider: string;
4
+ readonly kind: string;
5
+ readonly availableProviders: readonly string[];
6
+ constructor(provider: string, kind: string, availableProviders: readonly string[]);
7
+ }
8
+ export declare class DuplicatePluginRegistrationError extends Error {
9
+ readonly name = "DuplicatePluginRegistrationError";
10
+ readonly provider: string;
11
+ readonly kind: string;
12
+ readonly existingPluginId: string;
13
+ constructor(provider: string, kind: string, existingPluginId: string);
14
+ }
15
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/launcher/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,IAAI,0BAA0B;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAC;gBACnC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,kBAAkB,EAAE,SAAS,MAAM,EAAE;CAQlF;AAED,qBAAa,gCAAiC,SAAQ,KAAK;IACzD,QAAQ,CAAC,IAAI,sCAAsC;IACnD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;gBACtB,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM;CAQrE"}
@@ -0,0 +1,25 @@
1
+ export class UnknownProviderError extends Error {
2
+ name = 'UnknownProviderError';
3
+ provider;
4
+ kind;
5
+ availableProviders;
6
+ constructor(provider, kind, availableProviders) {
7
+ super(`Unknown provider "${provider}" for intent kind "${kind}". Available providers: ${availableProviders.join(', ') || '(none)'}`);
8
+ this.provider = provider;
9
+ this.kind = kind;
10
+ this.availableProviders = availableProviders;
11
+ }
12
+ }
13
+ export class DuplicatePluginRegistrationError extends Error {
14
+ name = 'DuplicatePluginRegistrationError';
15
+ provider;
16
+ kind;
17
+ existingPluginId;
18
+ constructor(provider, kind, existingPluginId) {
19
+ super(`Intent (provider: "${provider}", kind: "${kind}") already registered by plugin "${existingPluginId}"`);
20
+ this.provider = provider;
21
+ this.kind = kind;
22
+ this.existingPluginId = existingPluginId;
23
+ }
24
+ }
25
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/launcher/errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IACpC,IAAI,GAAG,sBAAsB,CAAC;IAC9B,QAAQ,CAAS;IACjB,IAAI,CAAS;IACb,kBAAkB,CAAoB;IAC/C,YAAY,QAAgB,EAAE,IAAY,EAAE,kBAAqC;QAC/E,KAAK,CACH,qBAAqB,QAAQ,sBAAsB,IAAI,2BAA2B,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAC9H,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IAC/C,CAAC;CACF;AAED,MAAM,OAAO,gCAAiC,SAAQ,KAAK;IAChD,IAAI,GAAG,kCAAkC,CAAC;IAC1C,QAAQ,CAAS;IACjB,IAAI,CAAS;IACb,gBAAgB,CAAS;IAClC,YAAY,QAAgB,EAAE,IAAY,EAAE,gBAAwB;QAClE,KAAK,CACH,sBAAsB,QAAQ,aAAa,IAAI,oCAAoC,gBAAgB,GAAG,CACvG,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;CACF"}
@@ -7,6 +7,7 @@ import type { AgentLaunchPlugin, LaunchIntent, LaunchSpec, OutputParser } from '
7
7
  */
8
8
  export declare class GenericSubprocessPlugin implements AgentLaunchPlugin {
9
9
  readonly pluginId = "generic-subprocess";
10
+ readonly provider: "system";
10
11
  readonly supportedKinds: readonly ["generic-subprocess", "shell"];
11
12
  buildLaunch(intent: LaunchIntent): LaunchSpec;
12
13
  createOutputParser(_intent: LaunchIntent): OutputParser;
@@ -1 +1 @@
1
- {"version":3,"file":"generic-subprocess-plugin.d.ts","sourceRoot":"","sources":["../../src/launcher/generic-subprocess-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB;;;;;GAKG;AACH,qBAAa,uBAAwB,YAAW,iBAAiB;IAC/D,QAAQ,CAAC,QAAQ,wBAAwB;IACzC,QAAQ,CAAC,cAAc,2CAA4C;IAEnE,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,UAAU;IAuB7C,kBAAkB,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY;CAUxD"}
1
+ {"version":3,"file":"generic-subprocess-plugin.d.ts","sourceRoot":"","sources":["../../src/launcher/generic-subprocess-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,YAAY,EACb,MAAM,YAAY,CAAC;AAGpB;;;;;GAKG;AACH,qBAAa,uBAAwB,YAAW,iBAAiB;IAC/D,QAAQ,CAAC,QAAQ,wBAAwB;IACzC,QAAQ,CAAC,QAAQ,WAAmB;IACpC,QAAQ,CAAC,cAAc,2CAA4C;IAEnE,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,UAAU;IAuB7C,kBAAkB,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY;CAUxD"}
@@ -1,3 +1,4 @@
1
+ import { SYSTEM_PROVIDER } from './constants.js';
1
2
  /**
2
3
  * Pass-through plugin for generic-subprocess and shell intents.
3
4
  *
@@ -6,6 +7,7 @@
6
7
  */
7
8
  export class GenericSubprocessPlugin {
8
9
  pluginId = 'generic-subprocess';
10
+ provider = SYSTEM_PROVIDER;
9
11
  supportedKinds = ['generic-subprocess', 'shell'];
10
12
  buildLaunch(intent) {
11
13
  switch (intent.kind) {
@@ -1 +1 @@
1
- {"version":3,"file":"generic-subprocess-plugin.js","sourceRoot":"","sources":["../../src/launcher/generic-subprocess-plugin.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,MAAM,OAAO,uBAAuB;IACzB,QAAQ,GAAG,oBAAoB,CAAC;IAChC,cAAc,GAAG,CAAC,oBAAoB,EAAE,OAAO,CAAU,CAAC;IAEnE,WAAW,CAAC,MAAoB;QAC9B,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;YACpB,KAAK,oBAAoB;gBACvB,OAAO;oBACL,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,GAAG,EAAE,MAAM,CAAC,GAAG;oBACf,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,SAAS;oBAC9C,QAAQ,EAAE,MAAM,CAAC,QAAQ;iBAC1B,CAAC;YACJ,KAAK,OAAO;gBACV,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC;oBAC5B,GAAG,EAAE,MAAM,CAAC,GAAG;oBACf,YAAY,EAAE,SAAS;oBACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;iBAC1B,CAAC;YACJ;gBACE,MAAM,IAAI,KAAK,CAAC,4BAA6B,MAAuB,CAAC,IAAI,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED,kBAAkB,CAAC,OAAqB;QACtC,OAAO;YACL,YAAY,CAAC,OAA4B,EAAE,KAAa;gBACtD,qBAAqB;YACvB,CAAC;YACD,KAAK;gBACH,QAAQ;YACV,CAAC;SACF,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"generic-subprocess-plugin.js","sourceRoot":"","sources":["../../src/launcher/generic-subprocess-plugin.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,OAAO,uBAAuB;IACzB,QAAQ,GAAG,oBAAoB,CAAC;IAChC,QAAQ,GAAG,eAAe,CAAC;IAC3B,cAAc,GAAG,CAAC,oBAAoB,EAAE,OAAO,CAAU,CAAC;IAEnE,WAAW,CAAC,MAAoB;QAC9B,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;YACpB,KAAK,oBAAoB;gBACvB,OAAO;oBACL,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,GAAG,EAAE,MAAM,CAAC,GAAG;oBACf,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,SAAS;oBAC9C,QAAQ,EAAE,MAAM,CAAC,QAAQ;iBAC1B,CAAC;YACJ,KAAK,OAAO;gBACV,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC;oBAC5B,GAAG,EAAE,MAAM,CAAC,GAAG;oBACf,YAAY,EAAE,SAAS;oBACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;iBAC1B,CAAC;YACJ;gBACE,MAAM,IAAI,KAAK,CAAC,4BAA6B,MAAuB,CAAC,IAAI,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED,kBAAkB,CAAC,OAAqB;QACtC,OAAO;YACL,YAAY,CAAC,OAA4B,EAAE,KAAa;gBACtD,qBAAqB;YACvB,CAAC;YACD,KAAK;gBACH,QAAQ;YACV,CAAC;SACF,CAAC;IACJ,CAAC;CACF"}
@@ -6,5 +6,6 @@ export { CredhelperHttpClient } from './credhelper-client.js';
6
6
  export type { CredhelperClient, CredhelperClientOptions, BeginSessionResult } from './credhelper-client.js';
7
7
  export { generateSessionId, buildSessionEnv, wrapCommand, applyCredentials, } from './credentials-interceptor.js';
8
8
  export type { InterceptorResult } from './credentials-interceptor.js';
9
- export type { GenericSubprocessIntent, ShellIntent, LaunchIntent, LaunchRequest, LaunchSpec, AgentLaunchPlugin, OutputParser, LaunchHandle, } from './types.js';
9
+ export { UnknownProviderError, DuplicatePluginRegistrationError, } from './errors.js';
10
+ export type { GenericSubprocessIntent, ShellIntent, PhaseIntent, PrFeedbackIntent, ValidateFixIntent, MergeConflictIntent, ConversationTurnIntent, InvokeIntent, LaunchIntent, LaunchRequest, LaunchSpec, AgentLaunchPlugin, OutputParser, LaunchHandle, } from './types.js';
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/launcher/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5G,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,gBAAgB,GACjB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,YAAY,EACV,uBAAuB,EACvB,WAAW,EACX,YAAY,EACZ,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,YAAY,GACb,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/launcher/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5G,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,gBAAgB,GACjB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EACL,oBAAoB,EACpB,gCAAgC,GACjC,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,uBAAuB,EACvB,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,YAAY,GACb,MAAM,YAAY,CAAC"}
@@ -4,4 +4,5 @@ export { createAgentLauncher } from './launcher-setup.js';
4
4
  export { CredhelperUnavailableError, CredhelperSessionError } from './credhelper-errors.js';
5
5
  export { CredhelperHttpClient } from './credhelper-client.js';
6
6
  export { generateSessionId, buildSessionEnv, wrapCommand, applyCredentials, } from './credentials-interceptor.js';
7
+ export { UnknownProviderError, DuplicatePluginRegistrationError, } from './errors.js';
7
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/launcher/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,gBAAgB,GACjB,MAAM,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/launcher/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,gBAAgB,GACjB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,oBAAoB,EACpB,gCAAgC,GACjC,MAAM,aAAa,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import type { ChildProcessHandle } from '../worker/types.js';
2
- import type { ClaudeCodeIntent } from '@generacy-ai/generacy-plugin-claude-code';
3
2
  import type { LaunchRequestCredentials } from '@generacy-ai/credhelper';
4
3
  /**
5
4
  * Intent for launching a generic subprocess with explicit command/args.
@@ -22,12 +21,86 @@ export interface ShellIntent {
22
21
  env?: Record<string, string>;
23
22
  detached?: boolean;
24
23
  }
24
+ /**
25
+ * Intent for executing a speckit workflow phase.
26
+ * Excludes 'validate' at compile time — validate runs via GenericSubprocessPlugin.
27
+ */
28
+ export interface PhaseIntent {
29
+ kind: 'phase';
30
+ /** Speckit phase to execute */
31
+ phase: 'specify' | 'clarify' | 'plan' | 'tasks' | 'implement';
32
+ /** Full prompt text: slash command + issue URL (composed by caller) */
33
+ prompt: string;
34
+ /** Resume a previous session (for MCP server warmth + context carry) */
35
+ sessionId?: string;
36
+ /** Optional model override, provider-interpreted. */
37
+ model?: string;
38
+ }
39
+ /**
40
+ * Intent for addressing PR review feedback.
41
+ */
42
+ export interface PrFeedbackIntent {
43
+ kind: 'pr-feedback';
44
+ /** PR number for logging/tracing */
45
+ prNumber: number;
46
+ /** Full prompt text (pre-built by caller via buildFeedbackPrompt()) */
47
+ prompt: string;
48
+ /** Optional model override, provider-interpreted. */
49
+ model?: string;
50
+ }
51
+ /**
52
+ * Intent for a bounded validate-fix agent attempt (#892). Routes through the
53
+ * same launcher plumbing as `pr-feedback`. The `evidenceHash` surfaces in
54
+ * launcher observability + PhaseTracker dedupe key.
55
+ */
56
+ export interface ValidateFixIntent {
57
+ kind: 'validate-fix';
58
+ /** PR number for logging/tracing */
59
+ prNumber: number;
60
+ /** Full prompt text (pre-built by ValidateFixHandler with stdout evidence) */
61
+ prompt: string;
62
+ /** 64-hex SHA-256 identity of the failing evidence — surfaces in logs. */
63
+ evidenceHash: string;
64
+ }
65
+ /**
66
+ * Intent for a bounded merge-conflict resolution agent attempt (#898).
67
+ * Routes through the same launcher plumbing as `pr-feedback`.
68
+ */
69
+ export interface MergeConflictIntent {
70
+ kind: 'merge-conflict';
71
+ /** For logging/tracing */
72
+ issueNumber: number;
73
+ /** Full prompt (built by MergeConflictHandler via buildMergeConflictPrompt) */
74
+ prompt: string;
75
+ }
76
+ /**
77
+ * Intent for a single interactive conversation turn.
78
+ */
79
+ export interface ConversationTurnIntent {
80
+ kind: 'conversation-turn';
81
+ /** User message to send */
82
+ message: string;
83
+ /** Resume session ID (omit for first turn) */
84
+ sessionId?: string;
85
+ /** Model override (omit for default) */
86
+ model?: string;
87
+ /** Whether to skip permission prompts */
88
+ skipPermissions: boolean;
89
+ }
90
+ /**
91
+ * Intent for invoking a raw command string.
92
+ */
93
+ export interface InvokeIntent {
94
+ kind: 'invoke';
95
+ /** Raw command string (e.g., "/speckit:specify https://...") */
96
+ command: string;
97
+ /** Whether to stream output (reserved for future use) */
98
+ streaming?: boolean;
99
+ }
25
100
  /**
26
101
  * Discriminated union of all launch intent kinds.
27
- * Phase 1: generic-subprocess, shell
28
- * Phase 2: phase, pr-feedback, conversation-turn (ClaudeCodeIntent)
29
102
  */
30
- export type LaunchIntent = GenericSubprocessIntent | ShellIntent | ClaudeCodeIntent;
103
+ export type LaunchIntent = GenericSubprocessIntent | ShellIntent | PhaseIntent | PrFeedbackIntent | ValidateFixIntent | MergeConflictIntent | ConversationTurnIntent | InvokeIntent;
31
104
  /**
32
105
  * Request to launch a process through the AgentLauncher.
33
106
  */
@@ -44,6 +117,8 @@ export interface LaunchRequest {
44
117
  detached?: boolean;
45
118
  /** Optional credential scoping — when set, a credhelper session is managed around the subprocess */
46
119
  credentials?: LaunchRequestCredentials;
120
+ /** Optional provider selector. Default: 'claude-code'. Runtime-validated (UnknownProviderError). */
121
+ provider?: string;
47
122
  }
48
123
  /**
49
124
  * Output of a plugin's buildLaunch() — tells the launcher HOW to spawn.
@@ -71,6 +146,8 @@ export interface LaunchSpec {
71
146
  export interface AgentLaunchPlugin {
72
147
  /** Unique identifier for this plugin */
73
148
  readonly pluginId: string;
149
+ /** Provider namespace this plugin claims. Registry key is (provider, kind). */
150
+ readonly provider: string;
74
151
  /** Intent kinds this plugin can handle */
75
152
  readonly supportedKinds: readonly string[];
76
153
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/launcher/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAExE;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,oBAAoB,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8EAA8E;IAC9E,YAAY,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG,uBAAuB,GAAG,WAAW,GAAG,gBAAgB,CAAC;AAEpF;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,MAAM,EAAE,YAAY,CAAC;IACrB,gDAAgD;IAChD,GAAG,EAAE,MAAM,CAAC;IACZ,wEAAwE;IACxE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,6CAA6C;IAC7C,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oGAAoG;IACpG,WAAW,CAAC,EAAE,wBAAwB,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,yBAAyB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,wBAAwB;IACxB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,uEAAuE;IACvE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,wCAAwC;IACxC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,0CAA0C;IAC1C,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C;;;OAGG;IACH,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,UAAU,CAAC;IAC9C;;;;OAIG;IACH,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAAC;CACxD;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,YAAY,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9D;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;CACf;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,6EAA6E;IAC7E,OAAO,EAAE,kBAAkB,CAAC;IAC5B,mDAAmD;IACnD,YAAY,EAAE,YAAY,CAAC;IAC3B,8DAA8D;IAC9D,QAAQ,EAAE;QACR,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;CACH"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/launcher/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../src/routes/health.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAgC,MAAM,SAAS,CAAC;AAC7E,OAAO,KAAK,EAAgC,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACrF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAIlE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wCAAwC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;IACtD;;;;OAIG;IACH,OAAO,CAAC,EAAE;QACR,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,kBAAkB,GAAG,SAAS,CAAC;CACnD;AAqBD;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,EACvB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CA2Kf"}
1
+ {"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../src/routes/health.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAgC,MAAM,SAAS,CAAC;AAC7E,OAAO,KAAK,EAAgC,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACrF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAKlE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wCAAwC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;IACtD;;;;OAIG;IACH,OAAO,CAAC,EAAE;QACR,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,kBAAkB,GAAG,SAAS,CAAC;CACnD;AAqBD;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,eAAe,EACvB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CA+Kf"}
@@ -1,5 +1,6 @@
1
1
  import { probeCodeServerSocket } from '../services/code-server-probe.js';
2
2
  import { probeControlPlaneSocket } from '../services/control-plane-probe.js';
3
+ import { resolveOrchestratorVersion } from '../services/orchestrator-version.js';
3
4
  const GITHUB_AUTH_SCHEMA = {
4
5
  type: 'object',
5
6
  properties: {
@@ -24,6 +25,7 @@ export async function setupHealthRoutes(server, options = {}) {
24
25
  const checks = { ...defaultChecks, ...options.checks };
25
26
  const cluster = options.cluster;
26
27
  const githubAuthGetter = options.githubAuth;
28
+ const resolvedVersion = resolveOrchestratorVersion();
27
29
  // GET /health - Health check endpoint
28
30
  server.get('/health', {
29
31
  schema: {
@@ -39,6 +41,7 @@ export async function setupHealthRoutes(server, options = {}) {
39
41
  type: 'object',
40
42
  additionalProperties: { type: 'string', enum: ['ok', 'error'] },
41
43
  },
44
+ version: { type: 'string' },
42
45
  codeServerReady: { type: 'boolean' },
43
46
  controlPlaneReady: { type: 'boolean' },
44
47
  displayName: { type: 'string' },
@@ -55,6 +58,7 @@ export async function setupHealthRoutes(server, options = {}) {
55
58
  type: 'object',
56
59
  additionalProperties: { type: 'string', enum: ['ok', 'error'] },
57
60
  },
61
+ version: { type: 'string' },
58
62
  codeServerReady: { type: 'boolean' },
59
63
  controlPlaneReady: { type: 'boolean' },
60
64
  displayName: { type: 'string' },
@@ -93,6 +97,7 @@ export async function setupHealthRoutes(server, options = {}) {
93
97
  status: overallStatus,
94
98
  timestamp: new Date().toISOString(),
95
99
  services,
100
+ version: resolvedVersion,
96
101
  codeServerReady,
97
102
  controlPlaneReady,
98
103
  };
@@ -1 +1 @@
1
- {"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/routes/health.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/routes/health.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AACA,OAAgB,EAAE,KAAK,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAKnF,OAAO,EAAE,KAAK,kBAAkB,EAAgC,MAAM,mBAAmB,CAAC;AAM1F,OAAO,EAAwB,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AA0D5E;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,0DAA0D;IAC1D,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,iCAAiC;IACjC,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,8DAA8D;IAC9D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uEAAuE;IACvE,WAAW,CAAC,EAAE,mBAAmB,CAAC;CACnC;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,eAAe,CAAC,CA4mB9F;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CA4C1E;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,eAAe,GAAE,OAAO,CAAC,kBAAkB,CAAM,GAChD,OAAO,CAAC,eAAe,CAAC,CAG1B;AAED;;GAEG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,eAAe,CAAC,CAGvE;AA+PD,OAAO,QAAQ,SAAS,CAAC;IACvB,UAAU,eAAe;QACvB,MAAM,EAAE,kBAAkB,CAAC;KAC5B;CACF"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AACA,OAAgB,EAAE,KAAK,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAKnF,OAAO,EAAE,KAAK,kBAAkB,EAAgC,MAAM,mBAAmB,CAAC;AAM1F,OAAO,EAAwB,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AA4D5E;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,0DAA0D;IAC1D,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,iCAAiC;IACjC,cAAc,CAAC,EAAE,oBAAoB,CAAC;IACtC,8DAA8D;IAC9D,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uEAAuE;IACvE,WAAW,CAAC,EAAE,mBAAmB,CAAC;CACnC;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,OAAO,CAAC,eAAe,CAAC,CAmwB9F;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CA4C1E;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,eAAe,GAAE,OAAO,CAAC,kBAAkB,CAAM,GAChD,OAAO,CAAC,eAAe,CAAC,CAG1B;AAED;;GAEG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,eAAe,CAAC,CAGvE;AA8PD,OAAO,QAAQ,SAAS,CAAC;IACvB,UAAU,eAAe;QACvB,MAAM,EAAE,kBAAkB,CAAC;KAC5B;CACF"}