@pellux/goodvibes-sdk 0.24.0 → 0.25.1

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 (198) hide show
  1. package/dist/_internal/platform/agents/orchestrator.d.ts +2 -0
  2. package/dist/_internal/platform/agents/orchestrator.d.ts.map +1 -1
  3. package/dist/_internal/platform/agents/orchestrator.js +38 -0
  4. package/dist/_internal/platform/automation/delivery-manager.d.ts +5 -0
  5. package/dist/_internal/platform/automation/delivery-manager.d.ts.map +1 -1
  6. package/dist/_internal/platform/automation/delivery-manager.js +14 -1
  7. package/dist/_internal/platform/automation/manager-runtime.d.ts +5 -0
  8. package/dist/_internal/platform/automation/manager-runtime.d.ts.map +1 -1
  9. package/dist/_internal/platform/automation/manager-runtime.js +32 -0
  10. package/dist/_internal/platform/channels/plugin-registry.d.ts +6 -0
  11. package/dist/_internal/platform/channels/plugin-registry.d.ts.map +1 -1
  12. package/dist/_internal/platform/channels/plugin-registry.js +17 -4
  13. package/dist/_internal/platform/channels/route-manager.d.ts +7 -0
  14. package/dist/_internal/platform/channels/route-manager.d.ts.map +1 -1
  15. package/dist/_internal/platform/channels/route-manager.js +41 -3
  16. package/dist/_internal/platform/channels/surface-registry.d.ts +3 -1
  17. package/dist/_internal/platform/channels/surface-registry.d.ts.map +1 -1
  18. package/dist/_internal/platform/channels/surface-registry.js +16 -17
  19. package/dist/_internal/platform/config/schema-types.d.ts +1 -1
  20. package/dist/_internal/platform/config/schema-types.d.ts.map +1 -1
  21. package/dist/_internal/platform/control-plane/gateway.d.ts +5 -0
  22. package/dist/_internal/platform/control-plane/gateway.d.ts.map +1 -1
  23. package/dist/_internal/platform/control-plane/gateway.js +69 -4
  24. package/dist/_internal/platform/daemon/facade-composition.d.ts.map +1 -1
  25. package/dist/_internal/platform/daemon/facade-composition.js +2 -0
  26. package/dist/_internal/platform/daemon/facade.d.ts.map +1 -1
  27. package/dist/_internal/platform/daemon/facade.js +3 -1
  28. package/dist/_internal/platform/daemon/service-manager.d.ts +5 -0
  29. package/dist/_internal/platform/daemon/service-manager.d.ts.map +1 -1
  30. package/dist/_internal/platform/daemon/service-manager.js +29 -0
  31. package/dist/_internal/platform/integrations/delivery.d.ts +5 -1
  32. package/dist/_internal/platform/integrations/delivery.d.ts.map +1 -1
  33. package/dist/_internal/platform/integrations/delivery.js +8 -1
  34. package/dist/_internal/platform/integrations/notifier.d.ts +5 -1
  35. package/dist/_internal/platform/integrations/notifier.d.ts.map +1 -1
  36. package/dist/_internal/platform/integrations/notifier.js +6 -3
  37. package/dist/_internal/platform/intelligence/lsp/service.d.ts.map +1 -1
  38. package/dist/_internal/platform/intelligence/lsp/service.js +18 -9
  39. package/dist/_internal/platform/permissions/manager.d.ts +3 -1
  40. package/dist/_internal/platform/permissions/manager.d.ts.map +1 -1
  41. package/dist/_internal/platform/permissions/manager.js +9 -5
  42. package/dist/_internal/platform/providers/anthropic-vertex.d.ts.map +1 -1
  43. package/dist/_internal/platform/providers/anthropic-vertex.js +135 -2
  44. package/dist/_internal/platform/runtime/emitters/routes.d.ts +5 -0
  45. package/dist/_internal/platform/runtime/emitters/routes.d.ts.map +1 -1
  46. package/dist/_internal/platform/runtime/emitters/routes.js +3 -0
  47. package/dist/_internal/platform/runtime/events/contracts/automation-route.d.ts +1 -0
  48. package/dist/_internal/platform/runtime/events/contracts/automation-route.d.ts.map +1 -1
  49. package/dist/_internal/platform/runtime/events/contracts/automation-route.js +7 -0
  50. package/dist/_internal/platform/runtime/events/contracts.d.ts +1 -1
  51. package/dist/_internal/platform/runtime/events/contracts.d.ts.map +1 -1
  52. package/dist/_internal/platform/runtime/events/contracts.js +3 -2
  53. package/dist/_internal/platform/runtime/events/routes.d.ts +5 -0
  54. package/dist/_internal/platform/runtime/events/routes.d.ts.map +1 -1
  55. package/dist/_internal/platform/runtime/feature-flags/flags.d.ts.map +1 -1
  56. package/dist/_internal/platform/runtime/feature-flags/flags.js +17 -21
  57. package/dist/_internal/platform/runtime/feature-flags/gates.d.ts +7 -0
  58. package/dist/_internal/platform/runtime/feature-flags/gates.d.ts.map +1 -0
  59. package/dist/_internal/platform/runtime/feature-flags/gates.js +38 -0
  60. package/dist/_internal/platform/runtime/feature-flags/index.d.ts +2 -0
  61. package/dist/_internal/platform/runtime/feature-flags/index.d.ts.map +1 -1
  62. package/dist/_internal/platform/runtime/feature-flags/index.js +1 -0
  63. package/dist/_internal/platform/runtime/mcp/index.d.ts +2 -1
  64. package/dist/_internal/platform/runtime/mcp/index.d.ts.map +1 -1
  65. package/dist/_internal/platform/runtime/mcp/index.js +4 -1
  66. package/dist/_internal/platform/runtime/permissions/index.d.ts +20 -1
  67. package/dist/_internal/platform/runtime/permissions/index.d.ts.map +1 -1
  68. package/dist/_internal/platform/runtime/permissions/index.js +27 -1
  69. package/dist/_internal/platform/runtime/permissions/policy-loader.d.ts +6 -0
  70. package/dist/_internal/platform/runtime/permissions/policy-loader.d.ts.map +1 -1
  71. package/dist/_internal/platform/runtime/permissions/policy-loader.js +7 -2
  72. package/dist/_internal/platform/runtime/plugins/index.d.ts +2 -1
  73. package/dist/_internal/platform/runtime/plugins/index.d.ts.map +1 -1
  74. package/dist/_internal/platform/runtime/plugins/index.js +4 -1
  75. package/dist/_internal/platform/runtime/services.d.ts +1 -0
  76. package/dist/_internal/platform/runtime/services.d.ts.map +1 -1
  77. package/dist/_internal/platform/runtime/services.js +21 -5
  78. package/dist/_internal/platform/runtime/shell-command-ops.d.ts +2 -0
  79. package/dist/_internal/platform/runtime/shell-command-ops.d.ts.map +1 -1
  80. package/dist/_internal/platform/runtime/shell-command-ops.js +4 -1
  81. package/dist/_internal/platform/runtime/tasks/index.d.ts +2 -1
  82. package/dist/_internal/platform/runtime/tasks/index.d.ts.map +1 -1
  83. package/dist/_internal/platform/runtime/tasks/index.js +2 -2
  84. package/dist/_internal/platform/runtime/tasks/manager.d.ts +5 -1
  85. package/dist/_internal/platform/runtime/tasks/manager.d.ts.map +1 -1
  86. package/dist/_internal/platform/runtime/tasks/manager.js +30 -1
  87. package/dist/_internal/platform/runtime/telemetry/index.d.ts +9 -3
  88. package/dist/_internal/platform/runtime/telemetry/index.d.ts.map +1 -1
  89. package/dist/_internal/platform/runtime/telemetry/index.js +7 -4
  90. package/dist/_internal/platform/runtime/tools/index.d.ts.map +1 -1
  91. package/dist/_internal/platform/runtime/tools/index.js +4 -1
  92. package/dist/_internal/platform/runtime/tools/types.d.ts +6 -0
  93. package/dist/_internal/platform/runtime/tools/types.d.ts.map +1 -1
  94. package/dist/_internal/platform/security/token-audit.d.ts +7 -0
  95. package/dist/_internal/platform/security/token-audit.d.ts.map +1 -1
  96. package/dist/_internal/platform/security/token-audit.js +6 -2
  97. package/dist/_internal/platform/state/mode-manager.d.ts +7 -0
  98. package/dist/_internal/platform/state/mode-manager.d.ts.map +1 -1
  99. package/dist/_internal/platform/state/mode-manager.js +25 -0
  100. package/dist/_internal/platform/tools/index.d.ts +4 -0
  101. package/dist/_internal/platform/tools/index.d.ts.map +1 -1
  102. package/dist/_internal/platform/tools/index.js +37 -23
  103. package/dist/_internal/platform/tools/shared/overflow.d.ts +3 -0
  104. package/dist/_internal/platform/tools/shared/overflow.d.ts.map +1 -1
  105. package/dist/_internal/platform/tools/shared/overflow.js +6 -2
  106. package/dist/_internal/platform/version.js +1 -1
  107. package/dist/_internal/platform/watchers/registry.d.ts +6 -0
  108. package/dist/_internal/platform/watchers/registry.d.ts.map +1 -1
  109. package/dist/_internal/platform/watchers/registry.js +35 -0
  110. package/package.json +9 -8
  111. package/vendor/bash-language-server/CHANGELOG.md +453 -0
  112. package/vendor/bash-language-server/GOODVIBES_PATCH.md +22 -0
  113. package/vendor/bash-language-server/README.md +230 -0
  114. package/vendor/bash-language-server/out/analyser.d.ts +187 -0
  115. package/vendor/bash-language-server/out/analyser.js +782 -0
  116. package/vendor/bash-language-server/out/analyser.js.map +1 -0
  117. package/vendor/bash-language-server/out/builtins.d.ts +2 -0
  118. package/vendor/bash-language-server/out/builtins.js +71 -0
  119. package/vendor/bash-language-server/out/builtins.js.map +1 -0
  120. package/vendor/bash-language-server/out/cli.d.ts +3 -0
  121. package/vendor/bash-language-server/out/cli.js +74 -0
  122. package/vendor/bash-language-server/out/cli.js.map +1 -0
  123. package/vendor/bash-language-server/out/config.d.ts +88 -0
  124. package/vendor/bash-language-server/out/config.js +96 -0
  125. package/vendor/bash-language-server/out/config.js.map +1 -0
  126. package/vendor/bash-language-server/out/executables.d.ts +19 -0
  127. package/vendor/bash-language-server/out/executables.js +86 -0
  128. package/vendor/bash-language-server/out/executables.js.map +1 -0
  129. package/vendor/bash-language-server/out/parser.d.ts +2 -0
  130. package/vendor/bash-language-server/out/parser.js +36 -0
  131. package/vendor/bash-language-server/out/parser.js.map +1 -0
  132. package/vendor/bash-language-server/out/reserved-words.d.ts +2 -0
  133. package/vendor/bash-language-server/out/reserved-words.js +33 -0
  134. package/vendor/bash-language-server/out/reserved-words.js.map +1 -0
  135. package/vendor/bash-language-server/out/server.d.ts +56 -0
  136. package/vendor/bash-language-server/out/server.js +756 -0
  137. package/vendor/bash-language-server/out/server.js.map +1 -0
  138. package/vendor/bash-language-server/out/shellcheck/config.d.ts +5 -0
  139. package/vendor/bash-language-server/out/shellcheck/config.js +17 -0
  140. package/vendor/bash-language-server/out/shellcheck/config.js.map +1 -0
  141. package/vendor/bash-language-server/out/shellcheck/directive.d.ts +18 -0
  142. package/vendor/bash-language-server/out/shellcheck/directive.js +62 -0
  143. package/vendor/bash-language-server/out/shellcheck/directive.js.map +1 -0
  144. package/vendor/bash-language-server/out/shellcheck/index.d.ts +22 -0
  145. package/vendor/bash-language-server/out/shellcheck/index.js +229 -0
  146. package/vendor/bash-language-server/out/shellcheck/index.js.map +1 -0
  147. package/vendor/bash-language-server/out/shellcheck/types.d.ts +175 -0
  148. package/vendor/bash-language-server/out/shellcheck/types.js +35 -0
  149. package/vendor/bash-language-server/out/shellcheck/types.js.map +1 -0
  150. package/vendor/bash-language-server/out/shfmt/index.d.ts +18 -0
  151. package/vendor/bash-language-server/out/shfmt/index.js +151 -0
  152. package/vendor/bash-language-server/out/shfmt/index.js.map +1 -0
  153. package/vendor/bash-language-server/out/snippets.d.ts +2 -0
  154. package/vendor/bash-language-server/out/snippets.js +671 -0
  155. package/vendor/bash-language-server/out/snippets.js.map +1 -0
  156. package/vendor/bash-language-server/out/types.d.ts +13 -0
  157. package/vendor/bash-language-server/out/types.js +12 -0
  158. package/vendor/bash-language-server/out/types.js.map +1 -0
  159. package/vendor/bash-language-server/out/util/array.d.ts +14 -0
  160. package/vendor/bash-language-server/out/util/array.js +36 -0
  161. package/vendor/bash-language-server/out/util/array.js.map +1 -0
  162. package/vendor/bash-language-server/out/util/async.d.ts +13 -0
  163. package/vendor/bash-language-server/out/util/async.js +24 -0
  164. package/vendor/bash-language-server/out/util/async.js.map +1 -0
  165. package/vendor/bash-language-server/out/util/declarations.d.ts +88 -0
  166. package/vendor/bash-language-server/out/util/declarations.js +295 -0
  167. package/vendor/bash-language-server/out/util/declarations.js.map +1 -0
  168. package/vendor/bash-language-server/out/util/discriminate.d.ts +1 -0
  169. package/vendor/bash-language-server/out/util/discriminate.js +7 -0
  170. package/vendor/bash-language-server/out/util/discriminate.js.map +1 -0
  171. package/vendor/bash-language-server/out/util/fs.d.ts +6 -0
  172. package/vendor/bash-language-server/out/util/fs.js +73 -0
  173. package/vendor/bash-language-server/out/util/fs.js.map +1 -0
  174. package/vendor/bash-language-server/out/util/logger.d.ts +35 -0
  175. package/vendor/bash-language-server/out/util/logger.js +105 -0
  176. package/vendor/bash-language-server/out/util/logger.js.map +1 -0
  177. package/vendor/bash-language-server/out/util/lsp.d.ts +5 -0
  178. package/vendor/bash-language-server/out/util/lsp.js +13 -0
  179. package/vendor/bash-language-server/out/util/lsp.js.map +1 -0
  180. package/vendor/bash-language-server/out/util/platform.d.ts +1 -0
  181. package/vendor/bash-language-server/out/util/platform.js +7 -0
  182. package/vendor/bash-language-server/out/util/platform.js.map +1 -0
  183. package/vendor/bash-language-server/out/util/sh.d.ts +16 -0
  184. package/vendor/bash-language-server/out/util/sh.js +132 -0
  185. package/vendor/bash-language-server/out/util/sh.js.map +1 -0
  186. package/vendor/bash-language-server/out/util/shebang.d.ts +10 -0
  187. package/vendor/bash-language-server/out/util/shebang.js +53 -0
  188. package/vendor/bash-language-server/out/util/shebang.js.map +1 -0
  189. package/vendor/bash-language-server/out/util/sourcing.d.ts +15 -0
  190. package/vendor/bash-language-server/out/util/sourcing.js +182 -0
  191. package/vendor/bash-language-server/out/util/sourcing.js.map +1 -0
  192. package/vendor/bash-language-server/out/util/tree-sitter.d.ts +22 -0
  193. package/vendor/bash-language-server/out/util/tree-sitter.js +110 -0
  194. package/vendor/bash-language-server/out/util/tree-sitter.js.map +1 -0
  195. package/vendor/bash-language-server/package.json +52 -0
  196. package/vendor/bash-language-server/parser.info +2 -0
  197. package/vendor/bash-language-server/tree-sitter-bash.wasm +0 -0
  198. package/scripts/postinstall-patch-minimatch.mjs +0 -285
@@ -89,6 +89,8 @@ export declare class AgentOrchestrator {
89
89
  */
90
90
  private buildScopedRegistry;
91
91
  private resolveProviderForRecord;
92
+ private resolveOptimizedProviderRoute;
93
+ private buildOptimizerRequestProfile;
92
94
  private resolveProviderRouting;
93
95
  private normalizeRequestedModelId;
94
96
  private resolveChatModelId;
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/agents/orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/agents/orchestrator.ts"],"names":[],"mappings":"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"}
@@ -177,6 +177,9 @@ export class AgentOrchestrator {
177
177
  return scopedRegistry;
178
178
  }
179
179
  resolveProviderForRecord(providerRegistry, record, currentModel) {
180
+ const optimizedRoute = this.resolveOptimizedProviderRoute(providerRegistry, record);
181
+ if (optimizedRoute)
182
+ return optimizedRoute;
180
183
  const routing = this.resolveProviderRouting(record, currentModel);
181
184
  const scopedModelId = this.normalizeRequestedModelId(routing.requestedModelId, routing.providerOverride);
182
185
  try {
@@ -203,6 +206,41 @@ export class AgentOrchestrator {
203
206
  throw new Error(`Cannot resolve provider for model '${scopedModelId}': ${summarizeError(err)}`);
204
207
  }
205
208
  }
209
+ resolveOptimizedProviderRoute(providerRegistry, record) {
210
+ const optimizer = this.toolDeps?.providerOptimizer;
211
+ if (!optimizer?.enabled || optimizer.mode === 'manual')
212
+ return null;
213
+ if (record.model || record.provider)
214
+ return null;
215
+ if (record.routing?.providerSelection === 'concrete' || record.routing?.providerSelection === 'synthetic') {
216
+ return null;
217
+ }
218
+ const decision = optimizer.selectRoute(this.buildOptimizerRequestProfile(record));
219
+ if (!decision?.explanation.accepted)
220
+ return null;
221
+ try {
222
+ return {
223
+ provider: providerRegistry.getForModel(decision.modelId, decision.providerId),
224
+ modelId: this.resolveChatModelId(providerRegistry, decision.modelId, decision.providerId),
225
+ requestedModelId: `${decision.providerId}:${decision.modelId}`,
226
+ };
227
+ }
228
+ catch (error) {
229
+ logger.warn('[AgentOrchestrator] provider optimizer selected an unresolved route; falling back to legacy routing', {
230
+ agentId: record.id,
231
+ providerId: decision.providerId,
232
+ modelId: decision.modelId,
233
+ error: summarizeError(error),
234
+ });
235
+ return null;
236
+ }
237
+ }
238
+ buildOptimizerRequestProfile(record) {
239
+ return {
240
+ requiresToolCalling: record.tools.length > 0,
241
+ requiresReasoningControls: record.reasoningEffort !== undefined,
242
+ };
243
+ }
206
244
  resolveProviderRouting(record, currentModel) {
207
245
  const requestedModelId = record.model ?? currentModel.id;
208
246
  const fallbackModels = (record.routing?.fallbackModels
@@ -6,9 +6,11 @@ import type { RuntimeEventBus } from '../runtime/events/index.js';
6
6
  import type { AutomationDeliveryAttempt, AutomationDeliveryTarget } from './delivery.js';
7
7
  import type { AutomationJob } from './jobs.js';
8
8
  import type { AutomationRun } from './runs.js';
9
+ import type { FeatureFlagReader } from '../runtime/feature-flags/index.js';
9
10
  export declare class AutomationDeliveryManager {
10
11
  private readonly routeBindings;
11
12
  private readonly deliveryRouter;
13
+ private readonly featureFlags;
12
14
  private runtimeDispatch;
13
15
  private runtimeBus;
14
16
  constructor(config: {
@@ -19,12 +21,15 @@ export declare class AutomationDeliveryManager {
19
21
  readonly artifactStore?: ArtifactStore;
20
22
  readonly runtimeStore?: RuntimeStore;
21
23
  readonly runtimeBus?: RuntimeEventBus;
24
+ readonly featureFlags?: FeatureFlagReader;
22
25
  });
23
26
  attachRuntime(config: {
24
27
  readonly runtimeStore?: RuntimeStore | null;
25
28
  readonly runtimeBus?: RuntimeEventBus | null;
26
29
  }): void;
27
30
  getDeliveryRouter(): ChannelDeliveryRouter;
31
+ private isEnabled;
32
+ private isTargetEnabled;
28
33
  setControlPlaneGateway(gateway: import('../control-plane/gateway.js').ControlPlaneGateway | null): void;
29
34
  deliverJobRun(job: AutomationJob, run: AutomationRun): Promise<readonly AutomationDeliveryAttempt[]>;
30
35
  deliverText(job: AutomationJob, run: AutomationRun, body: string, targets: readonly AutomationDeliveryTarget[]): Promise<readonly AutomationDeliveryAttempt[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-manager.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/automation/delivery-manager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAqB,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,KAAK,EAAkB,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAQlE,OAAO,KAAK,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAkF/C,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;IACvD,OAAO,CAAC,eAAe,CAA+B;IACtD,OAAO,CAAC,UAAU,CAAgC;gBAEtC,MAAM,EAAE;QAClB,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC;QAC3C,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,sBAAsB,EAAE,aAAa,CAAC;QACtE,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;QAC5C,QAAQ,CAAC,cAAc,CAAC,EAAE,qBAAqB,CAAC;QAChD,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;QACvC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;QACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,eAAe,CAAC;KACvC;IAoBD,aAAa,CAAC,MAAM,EAAE;QACpB,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;QAC5C,QAAQ,CAAC,UAAU,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;KAC9C,GAAG,IAAI;IASR,iBAAiB,IAAI,qBAAqB;IAI1C,sBAAsB,CAAC,OAAO,EAAE,OAAO,6BAA6B,EAAE,mBAAmB,GAAG,IAAI,GAAG,IAAI;IAIjG,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,yBAAyB,EAAE,CAAC;IAmBpG,WAAW,CACf,GAAG,EAAE,aAAa,EAClB,GAAG,EAAE,aAAa,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,wBAAwB,EAAE,GAC3C,OAAO,CAAC,SAAS,yBAAyB,EAAE,CAAC;IAwFhD,OAAO,CAAC,cAAc;YAoBR,UAAU;IAoBxB,OAAO,CAAC,WAAW;CA8DpB"}
1
+ {"version":3,"file":"delivery-manager.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/automation/delivery-manager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAqB,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,KAAK,EAAkB,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAQlE,OAAO,KAAK,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAG/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAiF3E,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;IACvD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAoB;IACjD,OAAO,CAAC,eAAe,CAA+B;IACtD,OAAO,CAAC,UAAU,CAAgC;gBAEtC,MAAM,EAAE;QAClB,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC;QAC3C,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,sBAAsB,EAAE,aAAa,CAAC;QACtE,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;QAC5C,QAAQ,CAAC,cAAc,CAAC,EAAE,qBAAqB,CAAC;QAChD,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;QACvC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;QACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,eAAe,CAAC;QACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,iBAAiB,CAAC;KAC3C;IAqBD,aAAa,CAAC,MAAM,EAAE;QACpB,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;QAC5C,QAAQ,CAAC,UAAU,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;KAC9C,GAAG,IAAI;IASR,iBAAiB,IAAI,qBAAqB;IAI1C,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,eAAe;IAIvB,sBAAsB,CAAC,OAAO,EAAE,OAAO,6BAA6B,EAAE,mBAAmB,GAAG,IAAI,GAAG,IAAI;IAIjG,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,yBAAyB,EAAE,CAAC;IAoBpG,WAAW,CACf,GAAG,EAAE,aAAa,EAClB,GAAG,EAAE,aAAa,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,wBAAwB,EAAE,GAC3C,OAAO,CAAC,SAAS,yBAAyB,EAAE,CAAC;IAyFhD,OAAO,CAAC,cAAc;YAoBR,UAAU;IAoBxB,OAAO,CAAC,WAAW;CA8DpB"}
@@ -5,6 +5,7 @@ import { createDomainDispatch } from '../runtime/store/index.js';
5
5
  import { emitDeliveryFailed, emitDeliveryQueued, emitDeliveryStarted, emitDeliverySucceeded, } from '../runtime/emitters/index.js';
6
6
  import { classifyDeliveryError } from '../integrations/delivery.js';
7
7
  import { summarizeError } from '../utils/error-display.js';
8
+ import { isFeatureGateEnabled, isSurfaceFeatureGateEnabled } from '../runtime/feature-flags/index.js';
8
9
  function sleep(ms) {
9
10
  return new Promise((resolve) => setTimeout(resolve, ms));
10
11
  }
@@ -79,10 +80,12 @@ function extractArtifactReferences(result) {
79
80
  export class AutomationDeliveryManager {
80
81
  routeBindings;
81
82
  deliveryRouter;
83
+ featureFlags;
82
84
  runtimeDispatch = null;
83
85
  runtimeBus = null;
84
86
  constructor(config) {
85
87
  this.routeBindings = config.routeBindings;
88
+ this.featureFlags = config.featureFlags ?? null;
86
89
  if (config.deliveryRouter) {
87
90
  this.deliveryRouter = config.deliveryRouter;
88
91
  }
@@ -111,10 +114,18 @@ export class AutomationDeliveryManager {
111
114
  getDeliveryRouter() {
112
115
  return this.deliveryRouter;
113
116
  }
117
+ isEnabled() {
118
+ return isFeatureGateEnabled(this.featureFlags, 'delivery-engine');
119
+ }
120
+ isTargetEnabled(target) {
121
+ return isSurfaceFeatureGateEnabled(this.featureFlags, target.surfaceKind ?? 'webhook');
122
+ }
114
123
  setControlPlaneGateway(gateway) {
115
124
  this.deliveryRouter.setControlPlaneGateway(gateway);
116
125
  }
117
126
  async deliverJobRun(job, run) {
127
+ if (!this.isEnabled())
128
+ return [];
118
129
  if (job.delivery.mode === 'none')
119
130
  return [];
120
131
  await this.routeBindings.start();
@@ -133,8 +144,10 @@ export class AutomationDeliveryManager {
133
144
  return [...attempts, ...fallbackAttempts];
134
145
  }
135
146
  async deliverText(job, run, body, targets) {
147
+ if (!this.isEnabled())
148
+ return [];
136
149
  await this.routeBindings.start();
137
- const resolvedTargets = this.resolveTargets(targets);
150
+ const resolvedTargets = this.resolveTargets(targets).filter((entry) => this.isTargetEnabled(entry.target));
138
151
  if (resolvedTargets.length === 0)
139
152
  return [];
140
153
  const attempts = [];
@@ -15,6 +15,7 @@ import type { AutomationSurfaceKind } from './types.js';
15
15
  import { SharedSessionBroker } from '../control-plane/index.js';
16
16
  import type { CreateAutomationJobInput, SpawnAutomationTaskInput, UpdateAutomationJobInput } from './manager-runtime-helpers.js';
17
17
  import { type AutomationHeartbeatWake } from './manager-runtime-scheduling.js';
18
+ import type { FeatureFlagReader } from '../runtime/feature-flags/index.js';
18
19
  export type { CreateAutomationJobInput, UpdateAutomationJobInput, SpawnAutomationTaskInput, } from './manager-runtime-helpers.js';
19
20
  export type { AutomationHeartbeatWake } from './manager-runtime-scheduling.js';
20
21
  interface AutomationManagerConfig {
@@ -32,6 +33,7 @@ interface AutomationManagerConfig {
32
33
  readonly sessionBroker: SharedSessionBroker;
33
34
  readonly defaultSurfaceKind?: AutomationSurfaceKind;
34
35
  readonly defaultSurfaceId?: string;
36
+ readonly featureFlags?: FeatureFlagReader;
35
37
  }
36
38
  export interface AutomationHeartbeatResult {
37
39
  readonly processed: readonly AutomationRun[];
@@ -63,11 +65,14 @@ export declare class AutomationManager {
63
65
  private readonly deliveryInFlight;
64
66
  private runtimeDispatch;
65
67
  private runtimeBus;
68
+ private readonly featureFlags;
66
69
  private loaded;
67
70
  private running;
68
71
  private startPromise;
69
72
  private reconcileTimer;
70
73
  constructor(config: AutomationManagerConfig);
74
+ private isEnabled;
75
+ private requireEnabled;
71
76
  private requireSpawnTask;
72
77
  private requireCancelTask;
73
78
  private runtimeExecutionContext;
@@ -1 +1 @@
1
- {"version":3,"file":"manager-runtime.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/automation/manager-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,KAAK,EAAkB,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAA0B,KAAK,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACtF,OAAO,EAA4B,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAiC,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACtG,OAAO,KAAK,EAAwB,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EACV,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,EACzB,MAAM,8BAA8B,CAAC;AAoBtC,OAAO,EAML,KAAK,uBAAuB,EAC7B,MAAM,iCAAiC,CAAC;AA6BzC,YAAY,EACV,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAE/E,UAAU,uBAAuB;IAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,WAAW,CAAC,EAAE,eAAe,CAAC,uBAAuB,CAAC,CAAC;IAChE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,wBAAwB,KAAK,MAAM,CAAC;IACjE,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;IAC/D,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IACrC,QAAQ,CAAC,UAAU,CAAC,EAAE,eAAe,CAAC;IACtC,QAAQ,CAAC,eAAe,CAAC,EAAE,yBAAyB,CAAC;IACrD,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;IAC5C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,qBAAqB,CAAC;IACpD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,SAAS,EAAE,SAAS,aAAa,EAAE,CAAC;IAC7C,QAAQ,CAAC,MAAM,EAAE,SAAS;QACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;KACxB,EAAE,CAAC;IACJ,QAAQ,CAAC,OAAO,EAAE,SAAS,uBAAuB,EAAE,CAAC;IACrD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA2C;IACvE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAA8C;IACzE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAA4B;IACxD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAkC;IACvE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAwB;IAC5D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoC;IACzD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAoC;IACzD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoD;IAC3E,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoD;IAChF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA8C;IAC7E,OAAO,CAAC,eAAe,CAAmC;IAC1D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqB;IACtD,OAAO,CAAC,eAAe,CAA+B;IACtD,OAAO,CAAC,UAAU,CAAgC;IAClD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,cAAc,CAA+C;gBAEzD,MAAM,EAAE,uBAAuB;IAqB3C,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,uBAAuB;IA4B/B,OAAO,CAAC,kBAAkB;IAYpB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB5B,IAAI,IAAI,IAAI;IAgBZ,aAAa,CAAC,MAAM,EAAE;QACpB,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;QAC5C,QAAQ,CAAC,UAAU,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;QAC7C,QAAQ,CAAC,eAAe,CAAC,EAAE,yBAAyB,GAAG,IAAI,CAAC;KAC7D,GAAG,IAAI;IAiBR,QAAQ,IAAI,aAAa,EAAE;IAK3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,aAAa,EAAE;IAQzC,kBAAkB,IAAI,uBAAuB,EAAE;IAK/C,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAKhD,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAK1C,SAAS,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,aAAa,CAAC;IAKlE,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS1C,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAO1E,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAKxF,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAU7C,gBAAgB,CAAC,MAAM,GAAE;QAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,yBAAyB,CAAC;IA8B/F,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAY/C,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,SAAuB,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAgDtF,uBAAuB,CAC3B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE;QACL,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;QACtD,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;QAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,sBAAsB,CAAC;QAC5C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC7C,GACA,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;YAsElB,IAAI;YAsBJ,qBAAqB;IAenC,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,4BAA4B;YAYtB,UAAU;YASV,kBAAkB;IAIhC,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,mBAAmB;YA0Bb,QAAQ;YAIR,QAAQ;IAKtB,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,cAAc;IAQtB,oBAAoB,IAAI,uBAAuB;IAS/C,OAAO,CAAC,eAAe;IAyBvB,OAAO,CAAC,uBAAuB;IAa/B,OAAO,CAAC,yBAAyB;IAIjC,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,eAAe;CASxB"}
1
+ {"version":3,"file":"manager-runtime.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/automation/manager-runtime.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,7 @@ import { collectAutomationSources, syncAutomationJobToRuntime, syncAutomationRun
19
19
  import { reconcileAutomationActiveRuns } from './manager-runtime-reconcile.js';
20
20
  import { summarizeError } from '../utils/error-display.js';
21
21
  import { createAutomationJobRecord, toggleAutomationJobEnabled, updateAutomationJobRecord, } from './manager-runtime-job-mutations.js';
22
+ import { isFeatureGateEnabled, requireFeatureGate } from '../runtime/feature-flags/index.js';
22
23
  export class AutomationManager {
23
24
  jobStore;
24
25
  runStore;
@@ -40,6 +41,7 @@ export class AutomationManager {
40
41
  deliveryInFlight = new Set();
41
42
  runtimeDispatch = null;
42
43
  runtimeBus = null;
44
+ featureFlags;
43
45
  loaded = false;
44
46
  running = false;
45
47
  startPromise = null;
@@ -61,6 +63,13 @@ export class AutomationManager {
61
63
  }
62
64
  this.runtimeBus = config.runtimeBus ?? null;
63
65
  this.deliveryManager = config.deliveryManager ?? null;
66
+ this.featureFlags = config.featureFlags ?? null;
67
+ }
68
+ isEnabled() {
69
+ return isFeatureGateEnabled(this.featureFlags, 'automation-domain', ['automation-runtime']);
70
+ }
71
+ requireEnabled(operation) {
72
+ requireFeatureGate(this.featureFlags, 'automation-domain', operation, ['automation-runtime']);
64
73
  }
65
74
  requireSpawnTask() {
66
75
  if (!this.spawnTask) {
@@ -113,6 +122,10 @@ export class AutomationManager {
113
122
  };
114
123
  }
115
124
  async start() {
125
+ if (!this.isEnabled()) {
126
+ this.stop();
127
+ return;
128
+ }
116
129
  if (this.running)
117
130
  return;
118
131
  if (this.startPromise)
@@ -165,10 +178,14 @@ export class AutomationManager {
165
178
  }
166
179
  }
167
180
  listJobs() {
181
+ if (!this.isEnabled())
182
+ return [];
168
183
  this.reconcileActiveRuns();
169
184
  return sortJobs(this.jobs.values());
170
185
  }
171
186
  listRuns(jobId) {
187
+ if (!this.isEnabled())
188
+ return [];
172
189
  this.reconcileActiveRuns();
173
190
  const runs = jobId
174
191
  ? [...this.runs.values()].filter((run) => run.jobId === jobId)
@@ -176,22 +193,30 @@ export class AutomationManager {
176
193
  return sortRuns(runs);
177
194
  }
178
195
  listHeartbeatWakes() {
196
+ if (!this.isEnabled())
197
+ return [];
179
198
  this.queueDueHeartbeatJobs('inspect');
180
199
  return [...this.heartbeatWakes.values()].sort((a, b) => a.queuedAt - b.queuedAt || a.jobId.localeCompare(b.jobId));
181
200
  }
182
201
  getRun(runId) {
202
+ if (!this.isEnabled())
203
+ return undefined;
183
204
  this.reconcileActiveRuns();
184
205
  return this.runs.get(runId);
185
206
  }
186
207
  getJob(jobId) {
208
+ if (!this.isEnabled())
209
+ return undefined;
187
210
  this.reconcileActiveRuns();
188
211
  return this.jobs.get(jobId);
189
212
  }
190
213
  async createJob(input) {
214
+ this.requireEnabled('create automation job');
191
215
  await this.start();
192
216
  return await createAutomationJobRecord(this.jobMutationContext(), input);
193
217
  }
194
218
  async removeJob(jobId) {
219
+ this.requireEnabled('remove automation job');
195
220
  await this.start();
196
221
  this.cancelTimer(jobId);
197
222
  const removed = this.jobs.delete(jobId);
@@ -201,6 +226,7 @@ export class AutomationManager {
201
226
  return true;
202
227
  }
203
228
  async setEnabled(jobId, enabled) {
229
+ this.requireEnabled('set automation job enabled state');
204
230
  await this.start();
205
231
  const updated = await toggleAutomationJobEnabled(this.jobMutationContext(), jobId, enabled);
206
232
  if (!enabled)
@@ -208,10 +234,12 @@ export class AutomationManager {
208
234
  return updated;
209
235
  }
210
236
  async updateJob(jobId, patch) {
237
+ this.requireEnabled('update automation job');
211
238
  await this.start();
212
239
  return await updateAutomationJobRecord(this.jobMutationContext(), jobId, patch);
213
240
  }
214
241
  async runNow(jobId) {
242
+ this.requireEnabled('run automation job');
215
243
  await this.start();
216
244
  const job = this.jobs.get(jobId);
217
245
  if (!job)
@@ -222,6 +250,7 @@ export class AutomationManager {
222
250
  return await this.executeJob(job, 'manual', false);
223
251
  }
224
252
  async triggerHeartbeat(_input = {}) {
253
+ this.requireEnabled('trigger automation heartbeat');
225
254
  await this.start();
226
255
  this.queueDueHeartbeatJobs('heartbeat');
227
256
  const queued = this.listHeartbeatWakes();
@@ -254,6 +283,7 @@ export class AutomationManager {
254
283
  };
255
284
  }
256
285
  async retryRun(runId) {
286
+ this.requireEnabled('retry automation run');
257
287
  await this.start();
258
288
  const run = this.runs.get(runId);
259
289
  if (!run)
@@ -267,6 +297,7 @@ export class AutomationManager {
267
297
  return await this.executeJob(job, 'manual', false, run.attempt + 1);
268
298
  }
269
299
  async cancelRun(runId, reason = 'operator-cancelled') {
300
+ this.requireEnabled('cancel automation run');
270
301
  await this.start();
271
302
  const run = this.runs.get(runId);
272
303
  if (!run)
@@ -312,6 +343,7 @@ export class AutomationManager {
312
343
  return updatedRun;
313
344
  }
314
345
  async recordExternalRunResult(runId, input) {
346
+ this.requireEnabled('record automation run result');
315
347
  await this.start();
316
348
  const run = this.runs.get(runId);
317
349
  if (!run)
@@ -2,6 +2,7 @@ import type { AutomationRouteBinding } from '../automation/routes.js';
2
2
  import type { SharedApprovalRecord } from '../control-plane/index.js';
3
3
  import type { Tool } from '../types/tools.js';
4
4
  import type { ChannelAdapterDescriptor, ChannelAllowlistEditInput, ChannelAllowlistEditResult, ChannelAllowlistResolution, ChannelAccountRecord, ChannelAccountLifecycleAction, ChannelAccountLifecycleResult, ChannelActorAuthorizationRequest, ChannelActorAuthorizationResult, ChannelCapabilityDescriptor, ChannelCapability, ChannelConversationKind, ChannelDirectoryEntry, ChannelDirectoryQueryOptions, ChannelDoctorReport, ChannelLifecycleState, ChannelOperatorActionDescriptor, ChannelRenderPolicy, ChannelRenderRequest, ChannelRenderResult, ChannelResolvedTarget, ChannelRepairAction, ChannelSetupSchema, ChannelStatusSnapshot, ChannelSurface, ChannelTargetResolveOptions, ChannelToolDescriptor } from './types.js';
5
+ import type { FeatureFlagReader } from '../runtime/feature-flags/index.js';
5
6
  export interface ChannelPlugin {
6
7
  readonly id: string;
7
8
  readonly surface: ChannelSurface;
@@ -53,7 +54,12 @@ export declare class ChannelPluginRegistry {
53
54
  private readonly plugins;
54
55
  private readonly pluginsBySurface;
55
56
  private readonly pluginsByPath;
57
+ private readonly featureFlags;
56
58
  private version;
59
+ constructor(options?: {
60
+ readonly featureFlags?: FeatureFlagReader;
61
+ });
62
+ private isPluginEnabled;
57
63
  register(plugin: ChannelPlugin): void;
58
64
  unregister(pluginId: string): boolean;
59
65
  getVersion(): number;
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-registry.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/channels/plugin-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-registry.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/channels/plugin-registry.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,16 @@
1
+ import { isSurfaceFeatureGateEnabled } from '../runtime/feature-flags/index.js';
1
2
  export class ChannelPluginRegistry {
2
3
  plugins = new Map();
3
4
  pluginsBySurface = new Map();
4
5
  pluginsByPath = new Map();
6
+ featureFlags;
5
7
  version = 0;
8
+ constructor(options = {}) {
9
+ this.featureFlags = options.featureFlags ?? null;
10
+ }
11
+ isPluginEnabled(plugin) {
12
+ return isSurfaceFeatureGateEnabled(this.featureFlags, plugin.surface);
13
+ }
6
14
  register(plugin) {
7
15
  const existingById = this.plugins.get(plugin.id);
8
16
  if (existingById?.webhookPath) {
@@ -42,7 +50,9 @@ export class ChannelPluginRegistry {
42
50
  return this.version;
43
51
  }
44
52
  list() {
45
- return [...this.plugins.values()].sort((a, b) => a.displayName.localeCompare(b.displayName));
53
+ return [...this.plugins.values()]
54
+ .filter((plugin) => this.isPluginEnabled(plugin))
55
+ .sort((a, b) => a.displayName.localeCompare(b.displayName));
46
56
  }
47
57
  listDescriptors() {
48
58
  return this.list().map((plugin) => ({
@@ -54,13 +64,16 @@ export class ChannelPluginRegistry {
54
64
  }));
55
65
  }
56
66
  getBySurface(surface) {
57
- return this.pluginsBySurface.get(surface) ?? null;
67
+ const plugin = this.pluginsBySurface.get(surface);
68
+ return plugin && this.isPluginEnabled(plugin) ? plugin : null;
58
69
  }
59
70
  get(pluginId) {
60
- return this.plugins.get(pluginId) ?? null;
71
+ const plugin = this.plugins.get(pluginId);
72
+ return plugin && this.isPluginEnabled(plugin) ? plugin : null;
61
73
  }
62
74
  getByPath(pathname) {
63
- return this.pluginsByPath.get(pathname) ?? null;
75
+ const plugin = this.pluginsByPath.get(pathname);
76
+ return plugin && this.isPluginEnabled(plugin) ? plugin : null;
64
77
  }
65
78
  async handleInbound(pathname, req) {
66
79
  const plugin = this.getByPath(pathname);
@@ -3,6 +3,7 @@ import type { RuntimeEventBus } from '../runtime/events/index.js';
3
3
  import type { AutomationRouteBinding } from '../automation/routes.js';
4
4
  import type { AutomationSurfaceKind } from '../automation/types.js';
5
5
  import { AutomationRouteStore } from '../automation/store/routes.js';
6
+ import type { FeatureFlagManager } from '../runtime/feature-flags/index.js';
6
7
  export interface UpsertRouteBindingInput {
7
8
  readonly id?: string;
8
9
  readonly kind: AutomationRouteBinding['kind'];
@@ -32,17 +33,22 @@ export interface PatchRouteBindingInput {
32
33
  readonly title?: string;
33
34
  readonly metadata?: Record<string, unknown>;
34
35
  }
36
+ type RouteBindingFeatureFlags = Pick<FeatureFlagManager, 'isEnabled'>;
35
37
  export declare class RouteBindingManager {
36
38
  private readonly store;
37
39
  private readonly bindings;
38
40
  private runtimeDispatch;
39
41
  private runtimeBus;
42
+ private readonly featureFlags;
40
43
  private loaded;
41
44
  constructor(config?: {
42
45
  readonly store?: AutomationRouteStore;
43
46
  readonly runtimeStore?: RuntimeStore;
44
47
  readonly runtimeBus?: RuntimeEventBus;
48
+ readonly featureFlags?: RouteBindingFeatureFlags | null;
45
49
  });
50
+ private isEnabled;
51
+ private requireEnabled;
46
52
  attachRuntime(config: {
47
53
  readonly runtimeStore?: RuntimeStore | null;
48
54
  readonly runtimeBus?: RuntimeEventBus | null;
@@ -57,4 +63,5 @@ export declare class RouteBindingManager {
57
63
  removeBinding(bindingId: string): Promise<boolean>;
58
64
  recordFailure(surfaceKind: AutomationSurfaceKind, externalId: string, error: string): void;
59
65
  }
66
+ export {};
60
67
  //# sourceMappingURL=route-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"route-manager.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/channels/route-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"route-manager.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/channels/route-manager.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import { createHash } from 'node:crypto';
2
2
  import { createDomainDispatch } from '../runtime/store/index.js';
3
- import { emitRouteBindingCreated, emitRouteBindingFailed, emitRouteBindingResolved, emitRouteBindingUpdated, emitRouteReplyTargetCaptured, } from '../runtime/emitters/index.js';
3
+ import { emitRouteBindingCreated, emitRouteBindingFailed, emitRouteBindingRemoved, emitRouteBindingResolved, emitRouteBindingUpdated, emitRouteReplyTargetCaptured, } from '../runtime/emitters/index.js';
4
4
  import { AutomationRouteStore } from '../automation/store/routes.js';
5
+ import { isFeatureGateEnabled } from '../runtime/feature-flags/index.js';
5
6
  function toEventSurfaceKind(surfaceKind) {
6
7
  switch (surfaceKind) {
7
8
  case 'tui':
@@ -45,12 +46,22 @@ export class RouteBindingManager {
45
46
  bindings = new Map();
46
47
  runtimeDispatch = null;
47
48
  runtimeBus = null;
49
+ featureFlags;
48
50
  loaded = false;
49
51
  constructor(config = {}) {
50
52
  this.store = config.store ?? new AutomationRouteStore();
51
53
  if (config.runtimeStore)
52
54
  this.runtimeDispatch = createDomainDispatch(config.runtimeStore);
53
55
  this.runtimeBus = config.runtimeBus ?? null;
56
+ this.featureFlags = config.featureFlags ?? null;
57
+ }
58
+ isEnabled() {
59
+ return isFeatureGateEnabled(this.featureFlags, 'route-binding', ['omnichannel-route-binding']);
60
+ }
61
+ requireEnabled(operation) {
62
+ if (this.isEnabled())
63
+ return;
64
+ throw new Error(`route-binding feature flag is disabled; cannot ${operation}`);
54
65
  }
55
66
  attachRuntime(config) {
56
67
  if (config.runtimeStore) {
@@ -64,6 +75,8 @@ export class RouteBindingManager {
64
75
  }
65
76
  }
66
77
  async start() {
78
+ if (!this.isEnabled())
79
+ return;
67
80
  if (this.loaded)
68
81
  return;
69
82
  const snapshot = await this.store.load();
@@ -75,12 +88,18 @@ export class RouteBindingManager {
75
88
  this.loaded = true;
76
89
  }
77
90
  listBindings() {
91
+ if (!this.isEnabled())
92
+ return [];
78
93
  return sortBindings(this.bindings.values());
79
94
  }
80
95
  getBinding(bindingId) {
96
+ if (!this.isEnabled())
97
+ return undefined;
81
98
  return this.bindings.get(bindingId);
82
99
  }
83
100
  resolve(surfaceKind, externalId, threadId) {
101
+ if (!this.isEnabled())
102
+ return undefined;
84
103
  const binding = this.listBindings().find((entry) => {
85
104
  if (entry.surfaceKind !== surfaceKind)
86
105
  return false;
@@ -112,6 +131,7 @@ export class RouteBindingManager {
112
131
  return binding;
113
132
  }
114
133
  async upsertBinding(input) {
134
+ this.requireEnabled('upsert route bindings');
115
135
  await this.start();
116
136
  const now = Date.now();
117
137
  const previous = input.id
@@ -174,6 +194,7 @@ export class RouteBindingManager {
174
194
  return binding;
175
195
  }
176
196
  async captureReplyTarget(bindingId, replyTargetId, threadId) {
197
+ this.requireEnabled('capture route reply targets');
177
198
  await this.start();
178
199
  const binding = this.bindings.get(bindingId);
179
200
  if (!binding)
@@ -208,6 +229,7 @@ export class RouteBindingManager {
208
229
  return updated;
209
230
  }
210
231
  async patchBinding(bindingId, patch) {
232
+ this.requireEnabled('patch route bindings');
211
233
  await this.start();
212
234
  const binding = this.bindings.get(bindingId);
213
235
  if (!binding)
@@ -255,14 +277,30 @@ export class RouteBindingManager {
255
277
  return updated;
256
278
  }
257
279
  async removeBinding(bindingId) {
280
+ this.requireEnabled('remove route bindings');
258
281
  await this.start();
259
- const removed = this.bindings.delete(bindingId);
260
- if (!removed)
282
+ const binding = this.bindings.get(bindingId);
283
+ if (!binding)
261
284
  return false;
285
+ this.bindings.delete(bindingId);
262
286
  await this.store.save(sortBindings(this.bindings.values()));
287
+ const eventSurfaceKind = toEventSurfaceKind(binding.surfaceKind);
288
+ if (this.runtimeBus) {
289
+ emitRouteBindingRemoved(this.runtimeBus, {
290
+ sessionId: binding.sessionId ?? 'routes',
291
+ source: 'route-binding-manager',
292
+ traceId: binding.id,
293
+ }, {
294
+ bindingId: binding.id,
295
+ surfaceKind: eventSurfaceKind,
296
+ externalId: binding.externalId,
297
+ });
298
+ }
263
299
  return true;
264
300
  }
265
301
  recordFailure(surfaceKind, externalId, error) {
302
+ if (!this.isEnabled())
303
+ return;
266
304
  this.runtimeDispatch?.recordRouteBindingFailure(surfaceKind, externalId, 'routes.failure');
267
305
  const eventSurfaceKind = toEventSurfaceKind(surfaceKind);
268
306
  if (this.runtimeBus) {