@chanl/scenarios-core 0.4.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 (298) hide show
  1. package/LICENSE +21 -0
  2. package/dist/__tests__/e2e/test-helpers.d.ts +79 -0
  3. package/dist/__tests__/e2e/test-helpers.d.ts.map +1 -0
  4. package/dist/__tests__/e2e/test-helpers.js +162 -0
  5. package/dist/__tests__/e2e/test-helpers.js.map +1 -0
  6. package/dist/adapters/adapter-registry.d.ts +14 -0
  7. package/dist/adapters/adapter-registry.d.ts.map +1 -0
  8. package/dist/adapters/adapter-registry.js +53 -0
  9. package/dist/adapters/adapter-registry.js.map +1 -0
  10. package/dist/adapters/agent-adapter.interface.d.ts +70 -0
  11. package/dist/adapters/agent-adapter.interface.d.ts.map +1 -0
  12. package/dist/adapters/agent-adapter.interface.js +3 -0
  13. package/dist/adapters/agent-adapter.interface.js.map +1 -0
  14. package/dist/adapters/anthropic.adapter.d.ts +17 -0
  15. package/dist/adapters/anthropic.adapter.d.ts.map +1 -0
  16. package/dist/adapters/anthropic.adapter.js +145 -0
  17. package/dist/adapters/anthropic.adapter.js.map +1 -0
  18. package/dist/adapters/http.adapter.d.ts +17 -0
  19. package/dist/adapters/http.adapter.d.ts.map +1 -0
  20. package/dist/adapters/http.adapter.js +95 -0
  21. package/dist/adapters/http.adapter.js.map +1 -0
  22. package/dist/adapters/index.d.ts +6 -0
  23. package/dist/adapters/index.d.ts.map +1 -0
  24. package/dist/adapters/index.js +22 -0
  25. package/dist/adapters/index.js.map +1 -0
  26. package/dist/adapters/openai.adapter.d.ts +17 -0
  27. package/dist/adapters/openai.adapter.d.ts.map +1 -0
  28. package/dist/adapters/openai.adapter.js +133 -0
  29. package/dist/adapters/openai.adapter.js.map +1 -0
  30. package/dist/dataset/convert.d.ts +28 -0
  31. package/dist/dataset/convert.d.ts.map +1 -0
  32. package/dist/dataset/convert.js +94 -0
  33. package/dist/dataset/convert.js.map +1 -0
  34. package/dist/dataset/formats/dpo.d.ts +41 -0
  35. package/dist/dataset/formats/dpo.d.ts.map +1 -0
  36. package/dist/dataset/formats/dpo.js +79 -0
  37. package/dist/dataset/formats/dpo.js.map +1 -0
  38. package/dist/dataset/formats/index.d.ts +4 -0
  39. package/dist/dataset/formats/index.d.ts.map +1 -0
  40. package/dist/dataset/formats/index.js +13 -0
  41. package/dist/dataset/formats/index.js.map +1 -0
  42. package/dist/dataset/formats/openai.d.ts +29 -0
  43. package/dist/dataset/formats/openai.d.ts.map +1 -0
  44. package/dist/dataset/formats/openai.js +98 -0
  45. package/dist/dataset/formats/openai.js.map +1 -0
  46. package/dist/dataset/formats/sharegpt.d.ts +31 -0
  47. package/dist/dataset/formats/sharegpt.d.ts.map +1 -0
  48. package/dist/dataset/formats/sharegpt.js +76 -0
  49. package/dist/dataset/formats/sharegpt.js.map +1 -0
  50. package/dist/dataset/index.d.ts +4 -0
  51. package/dist/dataset/index.d.ts.map +1 -0
  52. package/dist/dataset/index.js +20 -0
  53. package/dist/dataset/index.js.map +1 -0
  54. package/dist/dataset/types.d.ts +108 -0
  55. package/dist/dataset/types.d.ts.map +1 -0
  56. package/dist/dataset/types.js +7 -0
  57. package/dist/dataset/types.js.map +1 -0
  58. package/dist/execution/agent-config-resolver.d.ts +44 -0
  59. package/dist/execution/agent-config-resolver.d.ts.map +1 -0
  60. package/dist/execution/agent-config-resolver.js +76 -0
  61. package/dist/execution/agent-config-resolver.js.map +1 -0
  62. package/dist/execution/execution-processor.d.ts +75 -0
  63. package/dist/execution/execution-processor.d.ts.map +1 -0
  64. package/dist/execution/execution-processor.js +569 -0
  65. package/dist/execution/execution-processor.js.map +1 -0
  66. package/dist/execution/execution.module.d.ts +3 -0
  67. package/dist/execution/execution.module.d.ts.map +1 -0
  68. package/dist/execution/execution.module.js +56 -0
  69. package/dist/execution/execution.module.js.map +1 -0
  70. package/dist/execution/execution.service.d.ts +52 -0
  71. package/dist/execution/execution.service.d.ts.map +1 -0
  72. package/dist/execution/execution.service.js +182 -0
  73. package/dist/execution/execution.service.js.map +1 -0
  74. package/dist/execution/index.d.ts +11 -0
  75. package/dist/execution/index.d.ts.map +1 -0
  76. package/dist/execution/index.js +30 -0
  77. package/dist/execution/index.js.map +1 -0
  78. package/dist/execution/interfaces/job-data.interface.d.ts +38 -0
  79. package/dist/execution/interfaces/job-data.interface.d.ts.map +1 -0
  80. package/dist/execution/interfaces/job-data.interface.js +3 -0
  81. package/dist/execution/interfaces/job-data.interface.js.map +1 -0
  82. package/dist/execution/judge-llm.d.ts +35 -0
  83. package/dist/execution/judge-llm.d.ts.map +1 -0
  84. package/dist/execution/judge-llm.js +129 -0
  85. package/dist/execution/judge-llm.js.map +1 -0
  86. package/dist/execution/llm-config-resolver.d.ts +26 -0
  87. package/dist/execution/llm-config-resolver.d.ts.map +1 -0
  88. package/dist/execution/llm-config-resolver.js +99 -0
  89. package/dist/execution/llm-config-resolver.js.map +1 -0
  90. package/dist/execution/persona-llm.d.ts +29 -0
  91. package/dist/execution/persona-llm.d.ts.map +1 -0
  92. package/dist/execution/persona-llm.js +98 -0
  93. package/dist/execution/persona-llm.js.map +1 -0
  94. package/dist/execution/persona-strategy-registry.d.ts +14 -0
  95. package/dist/execution/persona-strategy-registry.d.ts.map +1 -0
  96. package/dist/execution/persona-strategy-registry.js +51 -0
  97. package/dist/execution/persona-strategy-registry.js.map +1 -0
  98. package/dist/execution/persona-strategy.interface.d.ts +88 -0
  99. package/dist/execution/persona-strategy.interface.d.ts.map +1 -0
  100. package/dist/execution/persona-strategy.interface.js +3 -0
  101. package/dist/execution/persona-strategy.interface.js.map +1 -0
  102. package/dist/execution/queue-producer.service.d.ts +21 -0
  103. package/dist/execution/queue-producer.service.d.ts.map +1 -0
  104. package/dist/execution/queue-producer.service.js +60 -0
  105. package/dist/execution/queue-producer.service.js.map +1 -0
  106. package/dist/execution/queues.config.d.ts +39 -0
  107. package/dist/execution/queues.config.d.ts.map +1 -0
  108. package/dist/execution/queues.config.js +43 -0
  109. package/dist/execution/queues.config.js.map +1 -0
  110. package/dist/execution/strategies/default.strategy.d.ts +11 -0
  111. package/dist/execution/strategies/default.strategy.d.ts.map +1 -0
  112. package/dist/execution/strategies/default.strategy.js +31 -0
  113. package/dist/execution/strategies/default.strategy.js.map +1 -0
  114. package/dist/execution/strategies/reactive.strategy.d.ts +28 -0
  115. package/dist/execution/strategies/reactive.strategy.d.ts.map +1 -0
  116. package/dist/execution/strategies/reactive.strategy.js +220 -0
  117. package/dist/execution/strategies/reactive.strategy.js.map +1 -0
  118. package/dist/execution/template-renderer.d.ts +52 -0
  119. package/dist/execution/template-renderer.d.ts.map +1 -0
  120. package/dist/execution/template-renderer.js +90 -0
  121. package/dist/execution/template-renderer.js.map +1 -0
  122. package/dist/generation/index.d.ts +2 -0
  123. package/dist/generation/index.d.ts.map +1 -0
  124. package/dist/generation/index.js +6 -0
  125. package/dist/generation/index.js.map +1 -0
  126. package/dist/generation/scenario-generator.service.d.ts +77 -0
  127. package/dist/generation/scenario-generator.service.d.ts.map +1 -0
  128. package/dist/generation/scenario-generator.service.js +272 -0
  129. package/dist/generation/scenario-generator.service.js.map +1 -0
  130. package/dist/index.d.ts +10 -0
  131. package/dist/index.d.ts.map +1 -0
  132. package/dist/index.js +27 -0
  133. package/dist/index.js.map +1 -0
  134. package/dist/personas/dto/create-persona.dto.d.ts +61 -0
  135. package/dist/personas/dto/create-persona.dto.d.ts.map +1 -0
  136. package/dist/personas/dto/create-persona.dto.js +146 -0
  137. package/dist/personas/dto/create-persona.dto.js.map +1 -0
  138. package/dist/personas/dto/index.d.ts +3 -0
  139. package/dist/personas/dto/index.d.ts.map +1 -0
  140. package/dist/personas/dto/index.js +19 -0
  141. package/dist/personas/dto/index.js.map +1 -0
  142. package/dist/personas/dto/update-persona.dto.d.ts +8 -0
  143. package/dist/personas/dto/update-persona.dto.d.ts.map +1 -0
  144. package/dist/personas/dto/update-persona.dto.js +29 -0
  145. package/dist/personas/dto/update-persona.dto.js.map +1 -0
  146. package/dist/personas/index.d.ts +6 -0
  147. package/dist/personas/index.d.ts.map +1 -0
  148. package/dist/personas/index.js +22 -0
  149. package/dist/personas/index.js.map +1 -0
  150. package/dist/personas/persona.controller.d.ts +69 -0
  151. package/dist/personas/persona.controller.d.ts.map +1 -0
  152. package/dist/personas/persona.controller.js +282 -0
  153. package/dist/personas/persona.controller.js.map +1 -0
  154. package/dist/personas/persona.module.d.ts +3 -0
  155. package/dist/personas/persona.module.d.ts.map +1 -0
  156. package/dist/personas/persona.module.js +28 -0
  157. package/dist/personas/persona.module.js.map +1 -0
  158. package/dist/personas/persona.service.d.ts +85 -0
  159. package/dist/personas/persona.service.d.ts.map +1 -0
  160. package/dist/personas/persona.service.js +382 -0
  161. package/dist/personas/persona.service.js.map +1 -0
  162. package/dist/personas/schemas/persona.schema.d.ts +90 -0
  163. package/dist/personas/schemas/persona.schema.d.ts.map +1 -0
  164. package/dist/personas/schemas/persona.schema.js +321 -0
  165. package/dist/personas/schemas/persona.schema.js.map +1 -0
  166. package/dist/scenarios/controllers/scenario-execution.controller.d.ts +48 -0
  167. package/dist/scenarios/controllers/scenario-execution.controller.d.ts.map +1 -0
  168. package/dist/scenarios/controllers/scenario-execution.controller.js +260 -0
  169. package/dist/scenarios/controllers/scenario-execution.controller.js.map +1 -0
  170. package/dist/scenarios/controllers/scenario.controller.d.ts +81 -0
  171. package/dist/scenarios/controllers/scenario.controller.d.ts.map +1 -0
  172. package/dist/scenarios/controllers/scenario.controller.js +345 -0
  173. package/dist/scenarios/controllers/scenario.controller.js.map +1 -0
  174. package/dist/scenarios/dto/create-scenario.dto.d.ts +31 -0
  175. package/dist/scenarios/dto/create-scenario.dto.d.ts.map +1 -0
  176. package/dist/scenarios/dto/create-scenario.dto.js +102 -0
  177. package/dist/scenarios/dto/create-scenario.dto.js.map +1 -0
  178. package/dist/scenarios/dto/execute-scenario.dto.d.ts +34 -0
  179. package/dist/scenarios/dto/execute-scenario.dto.d.ts.map +1 -0
  180. package/dist/scenarios/dto/execute-scenario.dto.js +150 -0
  181. package/dist/scenarios/dto/execute-scenario.dto.js.map +1 -0
  182. package/dist/scenarios/dto/index.d.ts +4 -0
  183. package/dist/scenarios/dto/index.d.ts.map +1 -0
  184. package/dist/scenarios/dto/index.js +20 -0
  185. package/dist/scenarios/dto/index.js.map +1 -0
  186. package/dist/scenarios/dto/update-scenario.dto.d.ts +6 -0
  187. package/dist/scenarios/dto/update-scenario.dto.d.ts.map +1 -0
  188. package/dist/scenarios/dto/update-scenario.dto.js +9 -0
  189. package/dist/scenarios/dto/update-scenario.dto.js.map +1 -0
  190. package/dist/scenarios/index.d.ts +9 -0
  191. package/dist/scenarios/index.d.ts.map +1 -0
  192. package/dist/scenarios/index.js +25 -0
  193. package/dist/scenarios/index.js.map +1 -0
  194. package/dist/scenarios/scenario.module.d.ts +3 -0
  195. package/dist/scenarios/scenario.module.d.ts.map +1 -0
  196. package/dist/scenarios/scenario.module.js +42 -0
  197. package/dist/scenarios/scenario.module.js.map +1 -0
  198. package/dist/scenarios/schemas/scenario-execution.schema.d.ts +133 -0
  199. package/dist/scenarios/schemas/scenario-execution.schema.d.ts.map +1 -0
  200. package/dist/scenarios/schemas/scenario-execution.schema.js +292 -0
  201. package/dist/scenarios/schemas/scenario-execution.schema.js.map +1 -0
  202. package/dist/scenarios/schemas/scenario.schema.d.ts +106 -0
  203. package/dist/scenarios/schemas/scenario.schema.d.ts.map +1 -0
  204. package/dist/scenarios/schemas/scenario.schema.js +205 -0
  205. package/dist/scenarios/schemas/scenario.schema.js.map +1 -0
  206. package/dist/scenarios/services/scenario-execution.service.d.ts +73 -0
  207. package/dist/scenarios/services/scenario-execution.service.d.ts.map +1 -0
  208. package/dist/scenarios/services/scenario-execution.service.js +505 -0
  209. package/dist/scenarios/services/scenario-execution.service.js.map +1 -0
  210. package/dist/scenarios/services/scenario.service.d.ts +110 -0
  211. package/dist/scenarios/services/scenario.service.d.ts.map +1 -0
  212. package/dist/scenarios/services/scenario.service.js +608 -0
  213. package/dist/scenarios/services/scenario.service.js.map +1 -0
  214. package/dist/simulator/index.d.ts +2 -0
  215. package/dist/simulator/index.d.ts.map +1 -0
  216. package/dist/simulator/index.js +18 -0
  217. package/dist/simulator/index.js.map +1 -0
  218. package/dist/simulator/persona-simulator.service.d.ts +81 -0
  219. package/dist/simulator/persona-simulator.service.d.ts.map +1 -0
  220. package/dist/simulator/persona-simulator.service.js +358 -0
  221. package/dist/simulator/persona-simulator.service.js.map +1 -0
  222. package/dist/templates/dto/create-template.dto.d.ts +16 -0
  223. package/dist/templates/dto/create-template.dto.d.ts.map +1 -0
  224. package/dist/templates/dto/create-template.dto.js +75 -0
  225. package/dist/templates/dto/create-template.dto.js.map +1 -0
  226. package/dist/templates/dto/index.d.ts +4 -0
  227. package/dist/templates/dto/index.d.ts.map +1 -0
  228. package/dist/templates/dto/index.js +10 -0
  229. package/dist/templates/dto/index.js.map +1 -0
  230. package/dist/templates/dto/instantiate-template.dto.d.ts +7 -0
  231. package/dist/templates/dto/instantiate-template.dto.d.ts.map +1 -0
  232. package/dist/templates/dto/instantiate-template.dto.js +38 -0
  233. package/dist/templates/dto/instantiate-template.dto.js.map +1 -0
  234. package/dist/templates/dto/update-template.dto.d.ts +6 -0
  235. package/dist/templates/dto/update-template.dto.d.ts.map +1 -0
  236. package/dist/templates/dto/update-template.dto.js +9 -0
  237. package/dist/templates/dto/update-template.dto.js.map +1 -0
  238. package/dist/templates/index.d.ts +6 -0
  239. package/dist/templates/index.d.ts.map +1 -0
  240. package/dist/templates/index.js +22 -0
  241. package/dist/templates/index.js.map +1 -0
  242. package/dist/templates/scenario-template.controller.d.ts +42 -0
  243. package/dist/templates/scenario-template.controller.d.ts.map +1 -0
  244. package/dist/templates/scenario-template.controller.js +148 -0
  245. package/dist/templates/scenario-template.controller.js.map +1 -0
  246. package/dist/templates/scenario-template.module.d.ts +3 -0
  247. package/dist/templates/scenario-template.module.d.ts.map +1 -0
  248. package/dist/templates/scenario-template.module.js +30 -0
  249. package/dist/templates/scenario-template.module.js.map +1 -0
  250. package/dist/templates/scenario-template.service.d.ts +50 -0
  251. package/dist/templates/scenario-template.service.d.ts.map +1 -0
  252. package/dist/templates/scenario-template.service.js +497 -0
  253. package/dist/templates/scenario-template.service.js.map +1 -0
  254. package/dist/templates/schemas/scenario-template.schema.d.ts +59 -0
  255. package/dist/templates/schemas/scenario-template.schema.d.ts.map +1 -0
  256. package/dist/templates/schemas/scenario-template.schema.js +132 -0
  257. package/dist/templates/schemas/scenario-template.schema.js.map +1 -0
  258. package/dist/tool-fixtures/dto/create-tool-fixture.dto.d.ts +18 -0
  259. package/dist/tool-fixtures/dto/create-tool-fixture.dto.d.ts.map +1 -0
  260. package/dist/tool-fixtures/dto/create-tool-fixture.dto.js +46 -0
  261. package/dist/tool-fixtures/dto/create-tool-fixture.dto.js.map +1 -0
  262. package/dist/tool-fixtures/dto/index.d.ts +4 -0
  263. package/dist/tool-fixtures/dto/index.d.ts.map +1 -0
  264. package/dist/tool-fixtures/dto/index.js +20 -0
  265. package/dist/tool-fixtures/dto/index.js.map +1 -0
  266. package/dist/tool-fixtures/dto/tool-fixture-filter.dto.d.ts +6 -0
  267. package/dist/tool-fixtures/dto/tool-fixture-filter.dto.d.ts.map +1 -0
  268. package/dist/tool-fixtures/dto/tool-fixture-filter.dto.js +33 -0
  269. package/dist/tool-fixtures/dto/tool-fixture-filter.dto.js.map +1 -0
  270. package/dist/tool-fixtures/dto/update-tool-fixture.dto.d.ts +6 -0
  271. package/dist/tool-fixtures/dto/update-tool-fixture.dto.d.ts.map +1 -0
  272. package/dist/tool-fixtures/dto/update-tool-fixture.dto.js +9 -0
  273. package/dist/tool-fixtures/dto/update-tool-fixture.dto.js.map +1 -0
  274. package/dist/tool-fixtures/index.d.ts +7 -0
  275. package/dist/tool-fixtures/index.d.ts.map +1 -0
  276. package/dist/tool-fixtures/index.js +23 -0
  277. package/dist/tool-fixtures/index.js.map +1 -0
  278. package/dist/tool-fixtures/mock-resolver.service.d.ts +48 -0
  279. package/dist/tool-fixtures/mock-resolver.service.d.ts.map +1 -0
  280. package/dist/tool-fixtures/mock-resolver.service.js +99 -0
  281. package/dist/tool-fixtures/mock-resolver.service.js.map +1 -0
  282. package/dist/tool-fixtures/schemas/tool-fixture.schema.d.ts +35 -0
  283. package/dist/tool-fixtures/schemas/tool-fixture.schema.d.ts.map +1 -0
  284. package/dist/tool-fixtures/schemas/tool-fixture.schema.js +87 -0
  285. package/dist/tool-fixtures/schemas/tool-fixture.schema.js.map +1 -0
  286. package/dist/tool-fixtures/tool-fixture.controller.d.ts +45 -0
  287. package/dist/tool-fixtures/tool-fixture.controller.d.ts.map +1 -0
  288. package/dist/tool-fixtures/tool-fixture.controller.js +223 -0
  289. package/dist/tool-fixtures/tool-fixture.controller.js.map +1 -0
  290. package/dist/tool-fixtures/tool-fixture.module.d.ts +3 -0
  291. package/dist/tool-fixtures/tool-fixture.module.d.ts.map +1 -0
  292. package/dist/tool-fixtures/tool-fixture.module.js +31 -0
  293. package/dist/tool-fixtures/tool-fixture.module.js.map +1 -0
  294. package/dist/tool-fixtures/tool-fixture.service.d.ts +59 -0
  295. package/dist/tool-fixtures/tool-fixture.service.d.ts.map +1 -0
  296. package/dist/tool-fixtures/tool-fixture.service.js +198 -0
  297. package/dist/tool-fixtures/tool-fixture.service.js.map +1 -0
  298. package/package.json +47 -0
@@ -0,0 +1,569 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var ExecutionProcessor_1;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.ExecutionProcessor = void 0;
17
+ const bull_1 = require("@nestjs/bull");
18
+ const common_1 = require("@nestjs/common");
19
+ const mongoose_1 = require("@nestjs/mongoose");
20
+ const mongoose_2 = require("mongoose");
21
+ const queues_config_1 = require("./queues.config");
22
+ const scenario_execution_schema_1 = require("../scenarios/schemas/scenario-execution.schema");
23
+ const scenario_schema_1 = require("../scenarios/schemas/scenario.schema");
24
+ const persona_schema_1 = require("../personas/schemas/persona.schema");
25
+ const adapter_registry_1 = require("../adapters/adapter-registry");
26
+ const persona_simulator_service_1 = require("../simulator/persona-simulator.service");
27
+ const scorecards_core_1 = require("@chanl/scorecards-core");
28
+ const tool_fixture_service_1 = require("../tool-fixtures/tool-fixture.service");
29
+ const mock_resolver_service_1 = require("../tool-fixtures/mock-resolver.service");
30
+ const judge_llm_1 = require("./judge-llm");
31
+ const agent_config_resolver_1 = require("./agent-config-resolver");
32
+ const llm_config_resolver_1 = require("./llm-config-resolver");
33
+ const template_renderer_1 = require("./template-renderer");
34
+ const persona_strategy_registry_1 = require("./persona-strategy-registry");
35
+ const MAX_TOOL_CALLS_PER_TURN = 5;
36
+ let ExecutionProcessor = ExecutionProcessor_1 = class ExecutionProcessor {
37
+ constructor(executionModel, scenarioModel, personaModel, adapterRegistry, agentConfigResolver, personaSimulator, evaluationService, toolFixtureService, mockResolver, personaStrategyRegistry) {
38
+ this.executionModel = executionModel;
39
+ this.scenarioModel = scenarioModel;
40
+ this.personaModel = personaModel;
41
+ this.adapterRegistry = adapterRegistry;
42
+ this.agentConfigResolver = agentConfigResolver;
43
+ this.personaSimulator = personaSimulator;
44
+ this.evaluationService = evaluationService;
45
+ this.toolFixtureService = toolFixtureService;
46
+ this.mockResolver = mockResolver;
47
+ this.personaStrategyRegistry = personaStrategyRegistry;
48
+ this.logger = new common_1.Logger(ExecutionProcessor_1.name);
49
+ }
50
+ /**
51
+ * Main job handler. Dequeues, runs the conversation loop, and stores results.
52
+ */
53
+ async processExecution(job) {
54
+ const { data } = job;
55
+ const startTime = Date.now();
56
+ this.logger.log(`Processing execution ${data.executionId} for scenario ${data.scenarioId}`);
57
+ try {
58
+ await job.progress(5);
59
+ // 1. Update status to running
60
+ await this.executionModel.findOneAndUpdate({ executionId: data.executionId }, { $set: { status: 'running', startTime: new Date() } });
61
+ await job.progress(10);
62
+ // 2. Load scenario
63
+ const scenario = await this.scenarioModel.findById(data.scenarioId);
64
+ if (!scenario) {
65
+ throw new Error(`Scenario ${data.scenarioId} not found`);
66
+ }
67
+ await job.progress(20);
68
+ // 3. Load persona
69
+ const personaId = data.personaId || scenario.personaIds?.[0]?.toString();
70
+ const persona = personaId
71
+ ? await this.personaModel.findById(personaId)
72
+ : null;
73
+ await job.progress(30);
74
+ // 3b. Load tool fixtures (if provided)
75
+ let toolFixtures = [];
76
+ if (data.toolFixtureIds?.length) {
77
+ toolFixtures = await this.toolFixtureService.findByIds(data.toolFixtureIds);
78
+ this.logger.debug(`Loaded ${toolFixtures.length} tool fixtures for execution ${data.executionId}`);
79
+ }
80
+ // 4. Generate persona system prompt
81
+ // Priority: Liquid template (if set) → code-generated → scenario prompt fallback
82
+ const personaTraits = persona
83
+ ? {
84
+ name: persona.name,
85
+ emotion: persona.emotion,
86
+ speechStyle: persona.speechStyle,
87
+ intentClarity: persona.intentClarity,
88
+ backgroundNoise: persona.backgroundNoise,
89
+ description: persona.description,
90
+ backstory: persona.backstory,
91
+ gender: persona.gender,
92
+ language: persona.language,
93
+ accent: persona.accent,
94
+ behavior: persona.behavior,
95
+ conversationTraits: persona.conversationTraits,
96
+ variables: (typeof persona.variables === 'object' && !Array.isArray(persona.variables))
97
+ ? persona.variables
98
+ : undefined,
99
+ }
100
+ : null;
101
+ let personaSystemPrompt;
102
+ if (scenario.promptTemplate && personaTraits) {
103
+ // Try Liquid template first — falls back to code-generated on failure
104
+ const templateVars = (0, template_renderer_1.buildTemplateVariables)(personaTraits, scenario.prompt, {
105
+ name: scenario.name,
106
+ description: scenario.description,
107
+ category: scenario.category,
108
+ difficulty: scenario.difficulty,
109
+ promptVariables: scenario.promptVariables,
110
+ });
111
+ const rendered = await (0, template_renderer_1.renderPersonaTemplate)(scenario.promptTemplate, templateVars);
112
+ personaSystemPrompt = rendered || this.personaSimulator.toSystemPrompt(personaTraits, scenario.prompt);
113
+ }
114
+ else if (personaTraits) {
115
+ personaSystemPrompt = this.personaSimulator.toSystemPrompt(personaTraits, scenario.prompt);
116
+ }
117
+ else {
118
+ personaSystemPrompt = scenario.prompt;
119
+ }
120
+ await job.progress(40);
121
+ // 5. Resolve agent config from Prompt entity (or inline fallback)
122
+ const settingsLookup = async (provider) => {
123
+ try {
124
+ const settingsDoc = await this.scenarioModel.db
125
+ .collection('settings')
126
+ .findOne({});
127
+ const settings = settingsDoc;
128
+ const providerKeys = settings?.providerKeys ?? {};
129
+ return providerKeys[provider] || undefined;
130
+ }
131
+ catch {
132
+ return undefined;
133
+ }
134
+ };
135
+ // Load Prompt entity — the agent under test
136
+ if (!data.promptId) {
137
+ throw new Error('No agent configured — promptId is required in the execute request');
138
+ }
139
+ const promptDoc = await this.scenarioModel.db
140
+ .collection('prompts')
141
+ .findOne({ _id: new mongoose_2.Types.ObjectId(data.promptId) });
142
+ if (!promptDoc) {
143
+ throw new Error(`Prompt ${data.promptId} not found`);
144
+ }
145
+ const toolDefs = toolFixtures.map((tf) => ({
146
+ name: tf.name,
147
+ description: tf.description,
148
+ parameters: tf.parameters || { type: 'object', properties: {} },
149
+ }));
150
+ const { adapterType, config: adapterConfig } = await this.agentConfigResolver.resolve({
151
+ prompt: promptDoc,
152
+ settingsLookup,
153
+ tools: toolDefs,
154
+ });
155
+ const adapter = this.adapterRegistry.getOrThrow(adapterType);
156
+ await adapter.connect(adapterConfig);
157
+ await job.progress(50);
158
+ // 7. Run conversation loop
159
+ const maxTurns = data.maxTurns || queues_config_1.DEFAULT_MAX_TURNS;
160
+ const transcript = [];
161
+ const history = [];
162
+ // Resolve persona strategy (default, reactive, etc.)
163
+ const strategyType = scenario.personaStrategyType || 'default';
164
+ const personaStrategy = this.personaStrategyRegistry.has(strategyType)
165
+ ? this.personaStrategyRegistry.getOrThrow(strategyType)
166
+ : this.personaStrategyRegistry.getOrThrow('default');
167
+ const makeStrategyCtx = (lastAgentResponse, turn) => ({
168
+ personaTraits: personaTraits || { name: 'Customer' },
169
+ systemPrompt: personaSystemPrompt,
170
+ history,
171
+ lastAgentResponse,
172
+ turn,
173
+ transcript,
174
+ scenarioPrompt: scenario.prompt,
175
+ adapterType,
176
+ adapterConfig,
177
+ });
178
+ // Initial persona message (strategy → heuristic fallback)
179
+ let personaMessage = (await personaStrategy.generateOpening(makeStrategyCtx('', 0))) ||
180
+ this.getOpeningMessage(scenario.prompt, persona);
181
+ for (let turn = 0; turn < maxTurns; turn++) {
182
+ const turnProgress = 50 + Math.round((turn / maxTurns) * 40);
183
+ await job.progress(turnProgress);
184
+ // Record persona message in transcript
185
+ transcript.push({
186
+ role: 'persona',
187
+ content: personaMessage,
188
+ timestamp: new Date(),
189
+ });
190
+ // Send to agent adapter
191
+ let agentResponse = await adapter.sendMessage(personaMessage, history);
192
+ // Handle tool calls if the LLM wants to use tools
193
+ const hadToolCalls = !!(agentResponse.toolCalls?.length && toolFixtures.length > 0);
194
+ if (hadToolCalls) {
195
+ // Add persona message to history first — the tool call loop needs
196
+ // the full conversation context when re-calling the LLM
197
+ history.push({ role: 'user', content: personaMessage });
198
+ // resolveToolCallLoop pushes: [assistant+tool_calls, tool_results, ...]
199
+ // and re-calls the LLM until it returns plain text
200
+ agentResponse = await this.resolveToolCallLoop(adapter, agentResponse, toolFixtures, history, transcript);
201
+ // Add the final text response to history
202
+ history.push({ role: 'assistant', content: agentResponse.content });
203
+ }
204
+ else {
205
+ // No tool calls — standard history update
206
+ history.push({ role: 'user', content: personaMessage });
207
+ history.push({ role: 'assistant', content: agentResponse.content });
208
+ }
209
+ // Record agent response (final text after any tool call resolution)
210
+ transcript.push({
211
+ role: 'agent',
212
+ content: agentResponse.content,
213
+ timestamp: new Date(),
214
+ latencyMs: agentResponse.latencyMs,
215
+ });
216
+ // Check if conversation should end
217
+ if (this.shouldEndConversation(agentResponse.content, turn, maxTurns)) {
218
+ break;
219
+ }
220
+ // Optional: let strategy update system prompt mid-conversation
221
+ if (personaStrategy.updateSystemPrompt) {
222
+ const updatedPrompt = await personaStrategy.updateSystemPrompt(makeStrategyCtx(agentResponse.content, turn));
223
+ if (updatedPrompt) {
224
+ personaSystemPrompt = updatedPrompt;
225
+ }
226
+ }
227
+ const llmNext = await personaStrategy.generateUtterance(makeStrategyCtx(agentResponse.content, turn));
228
+ personaMessage =
229
+ llmNext ||
230
+ this.generateNextPersonaMessage(personaSystemPrompt, history, turn);
231
+ }
232
+ // 8. Disconnect adapter
233
+ await adapter.disconnect();
234
+ await job.progress(90);
235
+ // 9. Scorecard evaluation (optional)
236
+ const duration = Date.now() - startTime;
237
+ let scoreFromScorecard;
238
+ const transcriptText = transcript
239
+ .map((e) => e.role === 'agent' ? `Agent: ${e.content}` : `Customer: ${e.content}`)
240
+ .join('\n');
241
+ this.logger.debug(`Scorecard check: scorecardId=${scenario.scorecardId}, evaluationService=${!!this.evaluationService}`);
242
+ let scorecardSummary;
243
+ if (scenario.scorecardId && this.evaluationService) {
244
+ try {
245
+ // Extract tool calls from transcript for RAG faithfulness evaluation
246
+ const allToolCalls = transcript
247
+ .filter((t) => t.toolCalls?.length)
248
+ .flatMap((t) => t.toolCalls);
249
+ const evalResult = await this.evaluationService.evaluate(scenario.scorecardId.toString(), {
250
+ transcriptText,
251
+ segments: transcript.map((t) => ({
252
+ speaker: t.role === 'agent' ? 'agent' : 'customer',
253
+ text: t.content,
254
+ })),
255
+ metrics: {
256
+ firstResponseLatency: (transcript.find((x) => x.role === 'agent')?.latencyMs ||
257
+ 0) / 1000,
258
+ },
259
+ toolCalls: allToolCalls.length > 0 ? allToolCalls : undefined,
260
+ groundTruth: scenario.groundTruth || undefined,
261
+ llmEvaluate: (0, judge_llm_1.buildLlmJudge)(adapterConfig.apiKey
262
+ ? { kind: (adapterType === 'anthropic' ? 'anthropic' : 'openai'), apiKey: adapterConfig.apiKey, model: adapterConfig.model }
263
+ : undefined),
264
+ }, { scenarioExecutionId: data.executionId });
265
+ scoreFromScorecard = Math.min(100, Math.round((evalResult.overallScore || 0) * 10));
266
+ // Generate critical summary from eval results
267
+ this.logger.debug(`Generating eval summary: apiKey=${!!adapterConfig.apiKey}, adapterType=${adapterType}`);
268
+ scorecardSummary = await this.generateEvalSummary(evalResult, adapterConfig.apiKey, adapterType);
269
+ this.logger.debug(`Eval summary: ${scorecardSummary ? scorecardSummary.substring(0, 80) + '...' : 'NONE'}`);
270
+ }
271
+ catch (err) {
272
+ this.logger.warn(`Scorecard evaluation skipped or failed: ${err?.message || err}`);
273
+ }
274
+ }
275
+ // 10. Calculate results
276
+ const engagementScore = this.calculateScore(transcript);
277
+ const result = {
278
+ passed: true,
279
+ score: scoreFromScorecard ?? engagementScore,
280
+ duration,
281
+ transcript,
282
+ metrics: {
283
+ totalTurns: Math.ceil(transcript.length / 2),
284
+ avgLatencyMs: this.calculateAvgLatency(transcript),
285
+ },
286
+ };
287
+ // 11. Update execution with results
288
+ await this.executionModel.findOneAndUpdate({ executionId: data.executionId }, {
289
+ $set: {
290
+ status: 'completed',
291
+ endTime: new Date(),
292
+ duration,
293
+ overallScore: result.score,
294
+ stepResults: transcript.map((entry, idx) => ({
295
+ stepId: `turn-${Math.floor(idx / 2)}-${entry.role}`,
296
+ status: 'completed',
297
+ role: entry.role,
298
+ actualResponse: entry.content,
299
+ duration: entry.latencyMs || 0,
300
+ startTime: entry.timestamp,
301
+ endTime: entry.timestamp,
302
+ ...(entry.toolCalls?.length ? { toolCalls: entry.toolCalls } : {}),
303
+ })),
304
+ 'metrics.totalSteps': transcript.length,
305
+ 'metrics.completedSteps': transcript.length,
306
+ 'metrics.failedSteps': 0,
307
+ 'metrics.skippedSteps': 0,
308
+ 'metrics.responseTime': result.metrics?.avgLatencyMs || 0,
309
+ 'metrics.completion': 100,
310
+ 'metrics.accuracy': result.score,
311
+ ...(scorecardSummary ? { scorecardSummary } : {}),
312
+ },
313
+ });
314
+ await job.progress(100);
315
+ this.logger.log(`Execution ${data.executionId} completed: score=${result.score}, turns=${result.metrics?.totalTurns}`);
316
+ return result;
317
+ }
318
+ catch (error) {
319
+ const message = error instanceof Error ? error.message : 'Unknown error';
320
+ this.logger.error(`Execution ${data.executionId} failed: ${message}`, error instanceof Error ? error.stack : undefined);
321
+ // Update execution status to failed
322
+ await this.executionModel.findOneAndUpdate({ executionId: data.executionId }, {
323
+ $set: {
324
+ status: 'failed',
325
+ endTime: new Date(),
326
+ duration: Date.now() - startTime,
327
+ },
328
+ $push: {
329
+ errorMessages: message,
330
+ },
331
+ });
332
+ throw error;
333
+ }
334
+ }
335
+ /**
336
+ * Generate an opening message based on the scenario prompt and persona.
337
+ */
338
+ getOpeningMessage(prompt, persona) {
339
+ // Use the scenario prompt as the basis for the opening message.
340
+ // In a full implementation, an LLM with persona system prompt would
341
+ // generate a natural opening line.
342
+ if (persona?.description) {
343
+ return `Hi, ${prompt}`;
344
+ }
345
+ return prompt;
346
+ }
347
+ /**
348
+ * Generate the next persona message in the conversation.
349
+ * Placeholder implementation -- a real system would call an LLM with
350
+ * the persona system prompt and conversation history.
351
+ */
352
+ generateNextPersonaMessage(_systemPrompt, history, turn) {
353
+ // Simple follow-up; real implementation uses LLM
354
+ const lastAgent = history[history.length - 1]?.content || '';
355
+ if (turn === 0) {
356
+ return 'Can you tell me more about that?';
357
+ }
358
+ if (lastAgent.toLowerCase().includes('anything else')) {
359
+ return 'No, that is all. Thank you!';
360
+ }
361
+ return 'I see. Can you help me with that?';
362
+ }
363
+ /**
364
+ * Resolve tool calls in a loop until the LLM returns a text-only response
365
+ * or the iteration limit is reached.
366
+ *
367
+ * Each iteration:
368
+ * 1. Resolves all tool calls via MockResolver
369
+ * 2. Records tool calls in the transcript
370
+ * 3. Adds assistant message (with tool calls) and tool results to history
371
+ * 4. Calls the LLM again with tool results
372
+ *
373
+ * Returns the final AgentResponse (text, no pending tool calls).
374
+ */
375
+ async resolveToolCallLoop(adapter, initialResponse, toolFixtures, history, transcript) {
376
+ let agentResponse = initialResponse;
377
+ let iteration = 0;
378
+ while (agentResponse.toolCalls?.length && iteration < MAX_TOOL_CALLS_PER_TURN) {
379
+ iteration++;
380
+ // Resolve each tool call via MockResolver
381
+ const resolvedCalls = this.mockResolver.resolveAll(agentResponse.toolCalls, toolFixtures);
382
+ // Record tool calls in transcript
383
+ for (const call of resolvedCalls) {
384
+ transcript.push({
385
+ role: 'tool',
386
+ content: JSON.stringify({
387
+ name: call.name,
388
+ arguments: call.arguments,
389
+ result: call.result,
390
+ }),
391
+ timestamp: new Date(),
392
+ toolCalls: [{
393
+ name: call.name,
394
+ arguments: call.arguments,
395
+ result: call.result,
396
+ }],
397
+ });
398
+ }
399
+ // Let the adapter build the complete history messages (assistant + tool results)
400
+ // Each provider has different format requirements — the adapter owns this
401
+ const historyMessages = adapter.buildToolCallHistory(agentResponse, resolvedCalls);
402
+ history.push(...historyMessages);
403
+ this.logger.debug(`Tool call iteration ${iteration}: resolved ${resolvedCalls.length} tool(s), calling LLM again`);
404
+ // Call LLM again with tool results — empty message since context is in history
405
+ agentResponse = await adapter.sendMessage('', history);
406
+ }
407
+ if (iteration >= MAX_TOOL_CALLS_PER_TURN && agentResponse.toolCalls?.length) {
408
+ this.logger.warn(`Tool call loop hit max iterations (${MAX_TOOL_CALLS_PER_TURN}), returning last response`);
409
+ }
410
+ return agentResponse;
411
+ }
412
+ /**
413
+ * Determine whether the conversation should end.
414
+ */
415
+ shouldEndConversation(agentResponse, turn, maxTurns) {
416
+ // End on last turn
417
+ if (turn >= maxTurns - 1)
418
+ return true;
419
+ // End if agent signals completion
420
+ const endPhrases = [
421
+ 'goodbye',
422
+ 'have a great day',
423
+ 'is there anything else',
424
+ 'thank you for calling',
425
+ ];
426
+ const lower = agentResponse.toLowerCase();
427
+ return endPhrases.some((phrase) => lower.includes(phrase));
428
+ }
429
+ /**
430
+ * Generate a critical 2-3 sentence summary of scorecard results.
431
+ * Uses one LLM call after evaluation to distill findings.
432
+ */
433
+ async generateEvalSummary(evalResult, apiKey, adapterType) {
434
+ try {
435
+ const llmConfig = (0, llm_config_resolver_1.resolveLlmConfigSync)(apiKey ? (adapterType === 'anthropic' ? 'anthropic' : 'openai') : undefined, apiKey ? { apiKey } : undefined);
436
+ if (!llmConfig)
437
+ return undefined;
438
+ const failed = evalResult.criteriaResults.filter((c) => !c.passed);
439
+ const passed = evalResult.criteriaResults.filter((c) => c.passed);
440
+ const scorePercent = Math.round(evalResult.overallScore * 10);
441
+ const prompt = `You are a QA analyst summarizing an AI agent evaluation.
442
+
443
+ Score: ${scorePercent}% (${passed.length}/${evalResult.criteriaResults.length} criteria passed)
444
+
445
+ Failed criteria:
446
+ ${failed.length === 0 ? 'None — all criteria passed.' : failed.map((c) => `- ${c.criteriaName} (${c.categoryName}): ${c.reasoning || 'No reasoning'}`).join('\n')}
447
+
448
+ Passed criteria:
449
+ ${passed.map((c) => `- ${c.criteriaName} (${c.categoryName})`).join('\n')}
450
+
451
+ Write a critical 2-3 sentence summary. Focus on what went wrong (if anything) and the most important strengths. Be specific — name the criteria. No filler.`;
452
+ if (llmConfig.kind === 'openai') {
453
+ const res = await fetch('https://api.openai.com/v1/chat/completions', {
454
+ method: 'POST',
455
+ headers: { 'Content-Type': 'application/json', Authorization: `Bearer ${llmConfig.apiKey}` },
456
+ body: JSON.stringify({
457
+ model: llmConfig.model || 'gpt-4o-mini',
458
+ messages: [{ role: 'user', content: prompt }],
459
+ max_tokens: 150,
460
+ temperature: 0.3,
461
+ }),
462
+ });
463
+ if (!res.ok)
464
+ return undefined;
465
+ const data = await res.json();
466
+ return data.choices?.[0]?.message?.content?.trim() || undefined;
467
+ }
468
+ else if (llmConfig.kind === 'anthropic') {
469
+ const res = await fetch('https://api.anthropic.com/v1/messages', {
470
+ method: 'POST',
471
+ headers: {
472
+ 'Content-Type': 'application/json',
473
+ 'x-api-key': llmConfig.apiKey,
474
+ 'anthropic-version': '2023-06-01',
475
+ },
476
+ body: JSON.stringify({
477
+ model: llmConfig.model || 'claude-3-5-haiku-20241022',
478
+ max_tokens: 150,
479
+ messages: [{ role: 'user', content: prompt }],
480
+ }),
481
+ });
482
+ if (!res.ok)
483
+ return undefined;
484
+ const data = await res.json();
485
+ return data.content?.[0]?.text?.trim() || undefined;
486
+ }
487
+ return undefined;
488
+ }
489
+ catch (err) {
490
+ this.logger.warn(`Summary generation failed: ${err?.message || err}`);
491
+ return undefined;
492
+ }
493
+ }
494
+ /**
495
+ * Calculate a basic score based on transcript completeness.
496
+ */
497
+ calculateScore(transcript) {
498
+ if (transcript.length === 0)
499
+ return 0;
500
+ // Basic scoring: more turns = better engagement, capped at 100
501
+ const turns = Math.ceil(transcript.length / 2);
502
+ const baseScore = Math.min(turns * 20, 80);
503
+ // Check that all messages have content
504
+ const allHaveContent = transcript.every((entry) => entry.content && entry.content.length > 0);
505
+ const contentBonus = allHaveContent ? 20 : 0;
506
+ return Math.min(baseScore + contentBonus, 100);
507
+ }
508
+ /**
509
+ * Calculate average latency from agent responses.
510
+ */
511
+ calculateAvgLatency(transcript) {
512
+ const agentEntries = transcript.filter((e) => e.role === 'agent' && e.latencyMs !== undefined);
513
+ if (agentEntries.length === 0)
514
+ return 0;
515
+ const total = agentEntries.reduce((sum, e) => sum + (e.latencyMs || 0), 0);
516
+ return Math.round(total / agentEntries.length);
517
+ }
518
+ onActive(job) {
519
+ this.logger.debug(`Job ${job.id} started for execution ${job.data.executionId}`);
520
+ }
521
+ onCompleted(job) {
522
+ this.logger.log(`Job ${job.id} completed for execution ${job.data.executionId}`);
523
+ }
524
+ onFailed(job, error) {
525
+ this.logger.error(`Job ${job.id} failed for execution ${job.data.executionId}: ${error.message}`, error.stack);
526
+ }
527
+ };
528
+ exports.ExecutionProcessor = ExecutionProcessor;
529
+ __decorate([
530
+ (0, bull_1.Process)('execute'),
531
+ __metadata("design:type", Function),
532
+ __metadata("design:paramtypes", [Object]),
533
+ __metadata("design:returntype", Promise)
534
+ ], ExecutionProcessor.prototype, "processExecution", null);
535
+ __decorate([
536
+ (0, bull_1.OnQueueActive)(),
537
+ __metadata("design:type", Function),
538
+ __metadata("design:paramtypes", [Object]),
539
+ __metadata("design:returntype", void 0)
540
+ ], ExecutionProcessor.prototype, "onActive", null);
541
+ __decorate([
542
+ (0, bull_1.OnQueueCompleted)(),
543
+ __metadata("design:type", Function),
544
+ __metadata("design:paramtypes", [Object]),
545
+ __metadata("design:returntype", void 0)
546
+ ], ExecutionProcessor.prototype, "onCompleted", null);
547
+ __decorate([
548
+ (0, bull_1.OnQueueFailed)(),
549
+ __metadata("design:type", Function),
550
+ __metadata("design:paramtypes", [Object, Error]),
551
+ __metadata("design:returntype", void 0)
552
+ ], ExecutionProcessor.prototype, "onFailed", null);
553
+ exports.ExecutionProcessor = ExecutionProcessor = ExecutionProcessor_1 = __decorate([
554
+ (0, bull_1.Processor)(queues_config_1.QUEUE_NAMES.SCENARIO_EXECUTION),
555
+ __param(0, (0, mongoose_1.InjectModel)(scenario_execution_schema_1.ScenarioExecution.name)),
556
+ __param(1, (0, mongoose_1.InjectModel)(scenario_schema_1.Scenario.name)),
557
+ __param(2, (0, mongoose_1.InjectModel)(persona_schema_1.Persona.name)),
558
+ __metadata("design:paramtypes", [mongoose_2.Model,
559
+ mongoose_2.Model,
560
+ mongoose_2.Model,
561
+ adapter_registry_1.AdapterRegistry,
562
+ agent_config_resolver_1.AgentConfigResolver,
563
+ persona_simulator_service_1.PersonaSimulatorService,
564
+ scorecards_core_1.EvaluationService,
565
+ tool_fixture_service_1.ToolFixtureService,
566
+ mock_resolver_service_1.MockResolver,
567
+ persona_strategy_registry_1.PersonaStrategyRegistry])
568
+ ], ExecutionProcessor);
569
+ //# sourceMappingURL=execution-processor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-processor.js","sourceRoot":"","sources":["../../src/execution/execution-processor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uCAAkG;AAClG,2CAAwC;AACxC,+CAA+C;AAC/C,uCAAwC;AAExC,mDAAiE;AAMjE,8FAGwD;AACxD,0EAAkF;AAClF,uEAA8E;AAC9E,mEAA+D;AAE/D,sFAAiF;AACjF,4DAA2D;AAC3D,gFAA2E;AAC3E,kFAAsE;AAMtE,2CAA4C;AAC5C,mEAA4E;AAC5E,+DAA6D;AAC7D,2DAAoF;AACpF,2EAAsE;AAQtE,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAG3B,IAAM,kBAAkB,0BAAxB,MAAM,kBAAkB;IAG7B,YAEE,cAAwD,EAExD,aAA8C,EAE9C,YAA4C,EAC3B,eAAgC,EAChC,mBAAwC,EACxC,gBAAyC,EACzC,iBAAoC,EACpC,kBAAsC,EACtC,YAA0B,EAC1B,uBAAgD;QAXzD,mBAAc,GAAd,cAAc,CAAkC;QAEhD,kBAAa,GAAb,aAAa,CAAyB;QAEtC,iBAAY,GAAZ,YAAY,CAAwB;QAC3B,oBAAe,GAAf,eAAe,CAAiB;QAChC,wBAAmB,GAAnB,mBAAmB,CAAqB;QACxC,qBAAgB,GAAhB,gBAAgB,CAAyB;QACzC,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,4BAAuB,GAAvB,uBAAuB,CAAyB;QAflD,WAAM,GAAG,IAAI,eAAM,CAAC,oBAAkB,CAAC,IAAI,CAAC,CAAC;IAgB3D,CAAC;IAEJ;;OAEG;IAEG,AAAN,KAAK,CAAC,gBAAgB,CACpB,GAAkC;QAElC,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC;QACrB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,wBAAwB,IAAI,CAAC,WAAW,iBAAiB,IAAI,CAAC,UAAU,EAAE,CAC3E,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAEtB,8BAA8B;YAC9B,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,CACxC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,EACjC,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,CACvD,CAAC;YAEF,MAAM,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAEvB,mBAAmB;YACnB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACpE,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,UAAU,YAAY,CAAC,CAAC;YAC3D,CAAC;YAED,MAAM,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAEvB,kBAAkB;YAClB,MAAM,SAAS,GACb,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;YACzD,MAAM,OAAO,GAAG,SAAS;gBACvB,CAAC,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAC7C,CAAC,CAAC,IAAI,CAAC;YAET,MAAM,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAEvB,uCAAuC;YACvC,IAAI,YAAY,GAAkB,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC;gBAChC,YAAY,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBAC5E,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,UAAU,YAAY,CAAC,MAAM,gCAAgC,IAAI,CAAC,WAAW,EAAE,CAChF,CAAC;YACJ,CAAC;YAED,oCAAoC;YACpC,iFAAiF;YACjF,MAAM,aAAa,GAAG,OAAO;gBAC3B,CAAC,CAAC;oBACE,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,WAAW,EAAE,OAAO,CAAC,WAAW;oBAChC,aAAa,EAAE,OAAO,CAAC,aAAa;oBACpC,eAAe,EAAE,OAAO,CAAC,eAAe;oBACxC,WAAW,EAAE,OAAO,CAAC,WAAW;oBAChC,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;oBAC9C,SAAS,EAAE,CAAC,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;wBACrF,CAAC,CAAC,OAAO,CAAC,SAAmC;wBAC7C,CAAC,CAAC,SAAS;iBACd;gBACH,CAAC,CAAC,IAAI,CAAC;YAET,IAAI,mBAA2B,CAAC;YAChC,IAAI,QAAQ,CAAC,cAAc,IAAI,aAAa,EAAE,CAAC;gBAC7C,sEAAsE;gBACtE,MAAM,YAAY,GAAG,IAAA,0CAAsB,EAAC,aAAa,EAAE,QAAQ,CAAC,MAAM,EAAE;oBAC1E,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oBAC3B,UAAU,EAAE,QAAQ,CAAC,UAAU;oBAC/B,eAAe,EAAE,QAAQ,CAAC,eAAe;iBAC1C,CAAC,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAA,yCAAqB,EAAC,QAAQ,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;gBACpF,mBAAmB,GAAG,QAAQ,IAAI,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;YACzG,CAAC;iBAAM,IAAI,aAAa,EAAE,CAAC;gBACzB,mBAAmB,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC7F,CAAC;iBAAM,CAAC;gBACN,mBAAmB,GAAG,QAAQ,CAAC,MAAM,CAAC;YACxC,CAAC;YAED,MAAM,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAEvB,kEAAkE;YAClE,MAAM,cAAc,GAAG,KAAK,EAAE,QAAgB,EAA+B,EAAE;gBAC7E,IAAI,CAAC;oBACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE;yBAC5C,UAAU,CAAC,UAAU,CAAC;yBACtB,OAAO,CAAC,EAAE,CAAC,CAAC;oBACf,MAAM,QAAQ,GAAG,WAAsC,CAAC;oBACxD,MAAM,YAAY,GAAG,QAAQ,EAAE,YAAY,IAAI,EAAE,CAAC;oBAClD,OAAO,YAAY,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;gBAC7C,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,SAAS,CAAC;gBACnB,CAAC;YACH,CAAC,CAAC;YAEF,4CAA4C;YAC5C,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;YACvF,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE;iBAC1C,UAAU,CAAC,SAAS,CAAC;iBACrB,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,gBAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACvD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,QAAQ,YAAY,CAAC,CAAC;YACvD,CAAC;YAED,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;gBACzC,IAAI,EAAE,EAAE,CAAC,IAAI;gBACb,WAAW,EAAE,EAAE,CAAC,WAAW;gBAC3B,UAAU,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;aAChE,CAAC,CAAC,CAAC;YAEJ,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC;gBACpF,MAAM,EAAE,SAAoC;gBAC5C,cAAc;gBACd,KAAK,EAAE,QAAQ;aAChB,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAC7D,MAAM,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YAErC,MAAM,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAEvB,2BAA2B;YAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,iCAAiB,CAAC;YACpD,MAAM,UAAU,GAAsB,EAAE,CAAC;YACzC,MAAM,OAAO,GAAmB,EAAE,CAAC;YAEnC,qDAAqD;YACrD,MAAM,YAAY,GAAG,QAAQ,CAAC,mBAAmB,IAAI,SAAS,CAAC;YAC/D,MAAM,eAAe,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,YAAY,CAAC;gBACpE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,YAAY,CAAC;gBACvD,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAEvD,MAAM,eAAe,GAAG,CAAC,iBAAyB,EAAE,IAAY,EAA0B,EAAE,CAAC,CAAC;gBAC5F,aAAa,EAAE,aAAa,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE;gBACpD,YAAY,EAAE,mBAAmB;gBACjC,OAAO;gBACP,iBAAiB;gBACjB,IAAI;gBACJ,UAAU;gBACV,cAAc,EAAE,QAAQ,CAAC,MAAM;gBAC/B,WAAW;gBACX,aAAa;aACd,CAAC,CAAC;YAEH,0DAA0D;YAC1D,IAAI,cAAc,GAChB,CAAC,MAAM,eAAe,CAAC,eAAe,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC/D,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAEnD,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;gBAC3C,MAAM,YAAY,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC7D,MAAM,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;gBAEjC,uCAAuC;gBACvC,UAAU,CAAC,IAAI,CAAC;oBACd,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,cAAc;oBACvB,SAAS,EAAE,IAAI,IAAI,EAAE;iBACtB,CAAC,CAAC;gBAEH,wBAAwB;gBACxB,IAAI,aAAa,GAAkB,MAAM,OAAO,CAAC,WAAW,CAC1D,cAAc,EACd,OAAO,CACR,CAAC;gBAEF,kDAAkD;gBAClD,MAAM,YAAY,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACpF,IAAI,YAAY,EAAE,CAAC;oBACjB,kEAAkE;oBAClE,wDAAwD;oBACxD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;oBAExD,wEAAwE;oBACxE,mDAAmD;oBACnD,aAAa,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC5C,OAAO,EACP,aAAa,EACb,YAAY,EACZ,OAAO,EACP,UAAU,CACX,CAAC;oBAEF,yCAAyC;oBACzC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;gBACtE,CAAC;qBAAM,CAAC;oBACN,0CAA0C;oBAC1C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;oBACxD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;gBACtE,CAAC;gBAED,oEAAoE;gBACpE,UAAU,CAAC,IAAI,CAAC;oBACd,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,aAAa,CAAC,OAAO;oBAC9B,SAAS,EAAE,IAAI,IAAI,EAAE;oBACrB,SAAS,EAAE,aAAa,CAAC,SAAS;iBACnC,CAAC,CAAC;gBAEH,mCAAmC;gBACnC,IAAI,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;oBACtE,MAAM;gBACR,CAAC;gBAED,+DAA+D;gBAC/D,IAAI,eAAe,CAAC,kBAAkB,EAAE,CAAC;oBACvC,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,kBAAkB,CAC5D,eAAe,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAC7C,CAAC;oBACF,IAAI,aAAa,EAAE,CAAC;wBAClB,mBAAmB,GAAG,aAAa,CAAC;oBACtC,CAAC;gBACH,CAAC;gBAED,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,iBAAiB,CACrD,eAAe,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAC7C,CAAC;gBACF,cAAc;oBACZ,OAAO;wBACP,IAAI,CAAC,0BAA0B,CAAC,mBAAmB,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YACxE,CAAC;YAED,wBAAwB;YACxB,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;YAE3B,MAAM,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAEvB,qCAAqC;YACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,IAAI,kBAAsC,CAAC;YAC3C,MAAM,cAAc,GAAG,UAAU;iBAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACT,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,CACtE;iBACA,IAAI,CAAC,IAAI,CAAC,CAAC;YAEd,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,QAAQ,CAAC,WAAW,uBAAuB,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;YACzH,IAAI,gBAAoC,CAAC;YACzC,IAAI,QAAQ,CAAC,WAAW,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACnD,IAAI,CAAC;oBACH,qEAAqE;oBACrE,MAAM,YAAY,GAAG,UAAU;yBAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC;yBAClC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAU,CAAC,CAAC;oBAEhC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CACtD,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,EAC/B;wBACE,cAAc;wBACd,QAAQ,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BAC/B,OAAO,EAAE,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU;4BAClD,IAAI,EAAE,CAAC,CAAC,OAAO;yBAChB,CAAC,CAAC;wBACH,OAAO,EAAE;4BACP,oBAAoB,EAClB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,SAAS;gCACpD,CAAC,CAAC,GAAG,IAAI;yBACd;wBACD,SAAS,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;wBAC7D,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,SAAS;wBAC9C,WAAW,EAAE,IAAA,yBAAa,EACxB,aAAa,CAAC,MAAM;4BAClB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAA2B,EAAE,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE;4BACtJ,CAAC,CAAC,SAAS,CACd;qBACF,EACD,EAAE,mBAAmB,EAAE,IAAI,CAAC,WAAW,EAAE,CAC1C,CAAC;oBACF,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAC3B,GAAG,EACH,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,YAAY,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAChD,CAAC;oBAEF,8CAA8C;oBAC9C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC,aAAa,CAAC,MAAM,iBAAiB,WAAW,EAAE,CAAC,CAAC;oBAC3G,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC/C,UAAU,EACV,aAAa,CAAC,MAAM,EACpB,WAAW,CACZ,CAAC;oBACF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC9G,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,2CAA2C,GAAG,EAAE,OAAO,IAAI,GAAG,EAAE,CACjE,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,wBAAwB;YACxB,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;YACxD,MAAM,MAAM,GAA4B;gBACtC,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,kBAAkB,IAAI,eAAe;gBAC5C,QAAQ;gBACR,UAAU;gBACV,OAAO,EAAE;oBACP,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;oBAC5C,YAAY,EAAE,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC;iBACnD;aACF,CAAC;YAEF,oCAAoC;YACpC,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,CACxC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,EACjC;gBACE,IAAI,EAAE;oBACJ,MAAM,EAAE,WAAW;oBACnB,OAAO,EAAE,IAAI,IAAI,EAAE;oBACnB,QAAQ;oBACR,YAAY,EAAE,MAAM,CAAC,KAAK;oBAC1B,WAAW,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;wBAC3C,MAAM,EAAE,QAAQ,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE;wBACnD,MAAM,EAAE,WAAoB;wBAC5B,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,cAAc,EAAE,KAAK,CAAC,OAAO;wBAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,IAAI,CAAC;wBAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;wBAC1B,OAAO,EAAE,KAAK,CAAC,SAAS;wBACxB,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACnE,CAAC,CAAC;oBACH,oBAAoB,EAAE,UAAU,CAAC,MAAM;oBACvC,wBAAwB,EAAE,UAAU,CAAC,MAAM;oBAC3C,qBAAqB,EAAE,CAAC;oBACxB,sBAAsB,EAAE,CAAC;oBACzB,sBAAsB,EAAE,MAAM,CAAC,OAAO,EAAE,YAAY,IAAI,CAAC;oBACzD,oBAAoB,EAAE,GAAG;oBACzB,kBAAkB,EAAE,MAAM,CAAC,KAAK;oBAChC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAClD;aACF,CACF,CAAC;YAEF,MAAM,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAExB,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,aAAa,IAAI,CAAC,WAAW,qBAAqB,MAAM,CAAC,KAAK,WAAW,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,CACtG,CAAC;YAEF,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GACX,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC3D,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,aAAa,IAAI,CAAC,WAAW,YAAY,OAAO,EAAE,EAClD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CACjD,CAAC;YAEF,oCAAoC;YACpC,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,CACxC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,EACjC;gBACE,IAAI,EAAE;oBACJ,MAAM,EAAE,QAAQ;oBAChB,OAAO,EAAE,IAAI,IAAI,EAAE;oBACnB,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;iBACjC;gBACD,KAAK,EAAE;oBACL,aAAa,EAAE,OAAO;iBACvB;aACF,CACF,CAAC;YAEF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,iBAAiB,CACvB,MAAc,EACd,OAA+B;QAE/B,gEAAgE;QAChE,oEAAoE;QACpE,mCAAmC;QACnC,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;YACzB,OAAO,OAAO,MAAM,EAAE,CAAC;QACzB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACK,0BAA0B,CAChC,aAAqB,EACrB,OAAuB,EACvB,IAAY;QAEZ,iDAAiD;QACjD,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC;QAC7D,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;YACf,OAAO,kCAAkC,CAAC;QAC5C,CAAC;QACD,IAAI,SAAS,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;YACtD,OAAO,6BAA6B,CAAC;QACvC,CAAC;QACD,OAAO,mCAAmC,CAAC;IAC7C,CAAC;IAED;;;;;;;;;;;OAWG;IACK,KAAK,CAAC,mBAAmB,CAC/B,OAAqB,EACrB,eAA8B,EAC9B,YAA2B,EAC3B,OAAuB,EACvB,UAA6B;QAE7B,IAAI,aAAa,GAAG,eAAe,CAAC;QACpC,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,OAAO,aAAa,CAAC,SAAS,EAAE,MAAM,IAAI,SAAS,GAAG,uBAAuB,EAAE,CAAC;YAC9E,SAAS,EAAE,CAAC;YAEZ,0CAA0C;YAC1C,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,aAAa,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;YAE1F,kCAAkC;YAClC,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;gBACjC,UAAU,CAAC,IAAI,CAAC;oBACd,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;wBACtB,IAAI,EAAE,IAAI,CAAC,IAAI;wBACf,SAAS,EAAE,IAAI,CAAC,SAAS;wBACzB,MAAM,EAAE,IAAI,CAAC,MAAM;qBACpB,CAAC;oBACF,SAAS,EAAE,IAAI,IAAI,EAAE;oBACrB,SAAS,EAAE,CAAC;4BACV,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,MAAM,EAAE,IAAI,CAAC,MAAM;yBACpB,CAAC;iBACH,CAAC,CAAC;YACL,CAAC;YAED,iFAAiF;YACjF,0EAA0E;YAC1E,MAAM,eAAe,GAAG,OAAO,CAAC,oBAAoB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;YACnF,OAAO,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC;YAEjC,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,uBAAuB,SAAS,cAAc,aAAa,CAAC,MAAM,6BAA6B,CAChG,CAAC;YAEF,+EAA+E;YAC/E,aAAa,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,SAAS,IAAI,uBAAuB,IAAI,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;YAC5E,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,sCAAsC,uBAAuB,4BAA4B,CAC1F,CAAC;QACJ,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;OAEG;IACK,qBAAqB,CAC3B,aAAqB,EACrB,IAAY,EACZ,QAAgB;QAEhB,mBAAmB;QACnB,IAAI,IAAI,IAAI,QAAQ,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QAEtC,kCAAkC;QAClC,MAAM,UAAU,GAAG;YACjB,SAAS;YACT,kBAAkB;YAClB,wBAAwB;YACxB,uBAAuB;SACxB,CAAC;QACF,MAAM,KAAK,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;QAC1C,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,mBAAmB,CAC/B,UAAoK,EACpK,MAA0B,EAC1B,WAAmB;QAEnB,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,IAAA,0CAAoB,EACpC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,EAC3E,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAChC,CAAC;YACF,IAAI,CAAC,SAAS;gBAAE,OAAO,SAAS,CAAC;YAEjC,MAAM,MAAM,GAAG,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YACnE,MAAM,MAAM,GAAG,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAClE,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC;YAE9D,MAAM,MAAM,GAAG;;SAEZ,YAAY,MAAM,MAAM,CAAC,MAAM,IAAI,UAAU,CAAC,eAAe,CAAC,MAAM;;;EAG3E,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,YAAY,MAAM,CAAC,CAAC,SAAS,IAAI,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;EAG/J,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;4JAEmF,CAAC;YAEvJ,IAAI,SAAS,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAChC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,4CAA4C,EAAE;oBACpE,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,aAAa,EAAE,UAAU,SAAS,CAAC,MAAM,EAAE,EAAE;oBAC5F,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,aAAa;wBACvC,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;wBAC7C,UAAU,EAAE,GAAG;wBACf,WAAW,EAAE,GAAG;qBACjB,CAAC;iBACH,CAAC,CAAC;gBACH,IAAI,CAAC,GAAG,CAAC,EAAE;oBAAE,OAAO,SAAS,CAAC;gBAC9B,MAAM,IAAI,GAAQ,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;gBACnC,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;YAClE,CAAC;iBAAM,IAAI,SAAS,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC1C,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,uCAAuC,EAAE;oBAC/D,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE;wBACP,cAAc,EAAE,kBAAkB;wBAClC,WAAW,EAAE,SAAS,CAAC,MAAM;wBAC7B,mBAAmB,EAAE,YAAY;qBAClC;oBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,2BAA2B;wBACrD,UAAU,EAAE,GAAG;wBACf,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;qBAC9C,CAAC;iBACH,CAAC,CAAC;gBACH,IAAI,CAAC,GAAG,CAAC,EAAE;oBAAE,OAAO,SAAS,CAAC;gBAC9B,MAAM,IAAI,GAAQ,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;gBACnC,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;YACtD,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,GAAG,EAAE,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC;YACtE,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,UAA6B;QAClD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAEtC,+DAA+D;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;QAE3C,uCAAuC;QACvC,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CACrC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CACrD,CAAC;QACF,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAE7C,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,YAAY,EAAE,GAAG,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,UAA6B;QACvD,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CACpC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,CACvD,CAAC;QACF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACxC,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3E,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAGD,QAAQ,CAAC,GAAkC;QACzC,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,OAAO,GAAG,CAAC,EAAE,0BAA0B,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAC9D,CAAC;IACJ,CAAC;IAGD,WAAW,CAAC,GAAkC;QAC5C,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,OAAO,GAAG,CAAC,EAAE,4BAA4B,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAChE,CAAC;IACJ,CAAC;IAGD,QAAQ,CAAC,GAAkC,EAAE,KAAY;QACvD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,OAAO,GAAG,CAAC,EAAE,yBAAyB,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC,OAAO,EAAE,EAC9E,KAAK,CAAC,KAAK,CACZ,CAAC;IACJ,CAAC;CACF,CAAA;AA1oBY,gDAAkB;AAuBvB;IADL,IAAA,cAAO,EAAC,SAAS,CAAC;;;;0DAwXlB;AAwOD;IADC,IAAA,oBAAa,GAAE;;;;kDAKf;AAGD;IADC,IAAA,uBAAgB,GAAE;;;;qDAKlB;AAGD;IADC,IAAA,oBAAa,GAAE;;6CACoC,KAAK;;kDAKxD;6BAzoBU,kBAAkB;IAD9B,IAAA,gBAAS,EAAC,2BAAW,CAAC,kBAAkB,CAAC;IAKrC,WAAA,IAAA,sBAAW,EAAC,6CAAiB,CAAC,IAAI,CAAC,CAAA;IAEnC,WAAA,IAAA,sBAAW,EAAC,0BAAQ,CAAC,IAAI,CAAC,CAAA;IAE1B,WAAA,IAAA,sBAAW,EAAC,wBAAO,CAAC,IAAI,CAAC,CAAA;qCAHF,gBAAK;QAEN,gBAAK;QAEN,gBAAK;QACO,kCAAe;QACX,2CAAmB;QACtB,mDAAuB;QACtB,mCAAiB;QAChB,yCAAkB;QACxB,oCAAY;QACD,mDAAuB;GAhBxD,kBAAkB,CA0oB9B"}
@@ -0,0 +1,3 @@
1
+ export declare class ExecutionModule {
2
+ }
3
+ //# sourceMappingURL=execution.module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.module.d.ts","sourceRoot":"","sources":["../../src/execution/execution.module.ts"],"names":[],"mappings":"AA0BA,qBAyBa,eAAe;CAAG"}