repoburg 1.3.9 → 1.3.11

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 (300) hide show
  1. package/backend/dist/bin/grammar/tree-sitter-bash.wasm +0 -0
  2. package/backend/dist/bin/grammar/tree-sitter-css.wasm +0 -0
  3. package/backend/dist/bin/grammar/tree-sitter-html.wasm +0 -0
  4. package/backend/dist/bin/grammar/tree-sitter-javascript.wasm +0 -0
  5. package/backend/dist/bin/grammar/tree-sitter-json.wasm +0 -0
  6. package/backend/dist/bin/grammar/tree-sitter-python.wasm +0 -0
  7. package/backend/dist/bin/grammar/tree-sitter-rust.wasm +0 -0
  8. package/backend/dist/bin/grammar/tree-sitter-toml.wasm +0 -0
  9. package/backend/dist/bin/grammar/tree-sitter-tsx.wasm +0 -0
  10. package/backend/dist/bin/grammar/tree-sitter-typescript.wasm +0 -0
  11. package/backend/dist/bin/grammar/tree-sitter-yaml.wasm +0 -0
  12. package/backend/dist/packages/tokenpatch/index.d.ts +1 -0
  13. package/backend/dist/packages/tokenpatch/index.js +52 -0
  14. package/backend/dist/packages/tokenpatch/index.js.map +1 -0
  15. package/backend/dist/packages/tokenpatch/parser.d.ts +2 -0
  16. package/backend/dist/packages/tokenpatch/parser.js +17 -0
  17. package/backend/dist/packages/tokenpatch/parser.js.map +1 -0
  18. package/backend/dist/packages/tokenpatch/patcher.d.ts +11 -0
  19. package/backend/dist/packages/tokenpatch/patcher.js +189 -0
  20. package/backend/dist/packages/tokenpatch/patcher.js.map +1 -0
  21. package/backend/dist/packages/tokenpatch/tokens.d.ts +6 -0
  22. package/backend/dist/packages/tokenpatch/tokens.js +49 -0
  23. package/backend/dist/packages/tokenpatch/tokens.js.map +1 -0
  24. package/backend/dist/packages/tokenpatch/types.d.ts +8 -0
  25. package/backend/dist/packages/tokenpatch/types.js +3 -0
  26. package/backend/dist/packages/tokenpatch/types.js.map +1 -0
  27. package/backend/dist/src/ai-actions/ai-actions.service.d.ts +1 -0
  28. package/backend/dist/src/ai-actions/ai-actions.service.js +2 -0
  29. package/backend/dist/src/ai-actions/ai-actions.service.js.map +1 -1
  30. package/backend/dist/src/llm-orchestration/action-handlers/action-handler.interface.d.ts +1 -0
  31. package/backend/dist/src/llm-orchestration/action-handlers/apply-diff.handler.d.ts +1 -0
  32. package/backend/dist/src/llm-orchestration/action-handlers/apply-diff.handler.js +35 -0
  33. package/backend/dist/src/llm-orchestration/action-handlers/apply-diff.handler.js.map +1 -1
  34. package/backend/dist/src/llm-orchestration/action-handlers/create-file.handler.d.ts +1 -0
  35. package/backend/dist/src/llm-orchestration/action-handlers/create-file.handler.js +48 -0
  36. package/backend/dist/src/llm-orchestration/action-handlers/create-file.handler.js.map +1 -1
  37. package/backend/dist/src/llm-orchestration/action-handlers/delete-file.handler.d.ts +1 -0
  38. package/backend/dist/src/llm-orchestration/action-handlers/delete-file.handler.js +21 -0
  39. package/backend/dist/src/llm-orchestration/action-handlers/delete-file.handler.js.map +1 -1
  40. package/backend/dist/src/llm-orchestration/action-handlers/dto/howto.args.dto.d.ts +2 -0
  41. package/backend/dist/src/llm-orchestration/action-handlers/dto/howto.args.dto.js +7 -0
  42. package/backend/dist/src/llm-orchestration/action-handlers/dto/howto.args.dto.js.map +1 -0
  43. package/backend/dist/src/llm-orchestration/action-handlers/dto/patch.args.dto.d.ts +4 -0
  44. package/backend/dist/src/llm-orchestration/action-handlers/dto/patch.args.dto.js +29 -0
  45. package/backend/dist/src/llm-orchestration/action-handlers/dto/patch.args.dto.js.map +1 -0
  46. package/backend/dist/src/llm-orchestration/action-handlers/edit-file.handler.d.ts +1 -0
  47. package/backend/dist/src/llm-orchestration/action-handlers/edit-file.handler.js +55 -0
  48. package/backend/dist/src/llm-orchestration/action-handlers/edit-file.handler.js.map +1 -1
  49. package/backend/dist/src/llm-orchestration/action-handlers/final.handler.d.ts +1 -0
  50. package/backend/dist/src/llm-orchestration/action-handlers/final.handler.js +20 -0
  51. package/backend/dist/src/llm-orchestration/action-handlers/final.handler.js.map +1 -1
  52. package/backend/dist/src/llm-orchestration/action-handlers/howto.handler.d.ts +9 -0
  53. package/backend/dist/src/llm-orchestration/action-handlers/howto.handler.js +85 -0
  54. package/backend/dist/src/llm-orchestration/action-handlers/howto.handler.js.map +1 -0
  55. package/backend/dist/src/llm-orchestration/action-handlers/new-session.handler.d.ts +1 -0
  56. package/backend/dist/src/llm-orchestration/action-handlers/new-session.handler.js +21 -0
  57. package/backend/dist/src/llm-orchestration/action-handlers/new-session.handler.js.map +1 -1
  58. package/backend/dist/src/llm-orchestration/action-handlers/patch.handler.d.ts +13 -0
  59. package/backend/dist/src/llm-orchestration/action-handlers/patch.handler.js +247 -0
  60. package/backend/dist/src/llm-orchestration/action-handlers/patch.handler.js.map +1 -0
  61. package/backend/dist/src/llm-orchestration/action-handlers/quick-edit.handler.d.ts +1 -0
  62. package/backend/dist/src/llm-orchestration/action-handlers/quick-edit.handler.js +53 -0
  63. package/backend/dist/src/llm-orchestration/action-handlers/quick-edit.handler.js.map +1 -1
  64. package/backend/dist/src/llm-orchestration/action-handlers/request-context.handler.d.ts +1 -0
  65. package/backend/dist/src/llm-orchestration/action-handlers/request-context.handler.js +30 -0
  66. package/backend/dist/src/llm-orchestration/action-handlers/request-context.handler.js.map +1 -1
  67. package/backend/dist/src/llm-orchestration/action-handlers/run-command.handler.d.ts +1 -0
  68. package/backend/dist/src/llm-orchestration/action-handlers/run-command.handler.js +45 -0
  69. package/backend/dist/src/llm-orchestration/action-handlers/run-command.handler.js.map +1 -1
  70. package/backend/dist/src/llm-orchestration/action-handlers/use-mcp-tool.handler.d.ts +1 -0
  71. package/backend/dist/src/llm-orchestration/action-handlers/use-mcp-tool.handler.js +29 -0
  72. package/backend/dist/src/llm-orchestration/action-handlers/use-mcp-tool.handler.js.map +1 -1
  73. package/backend/dist/src/llm-orchestration/llm-orchestration.module.js +6 -2
  74. package/backend/dist/src/llm-orchestration/llm-orchestration.module.js.map +1 -1
  75. package/backend/dist/src/llm-orchestration/llm-turn-processor.service.js +1 -0
  76. package/backend/dist/src/llm-orchestration/llm-turn-processor.service.js.map +1 -1
  77. package/backend/dist/src/seeding/data/custom-snippets/eta-for.d.ts +4 -0
  78. package/backend/dist/src/seeding/data/custom-snippets/eta-for.js +8 -0
  79. package/backend/dist/src/seeding/data/custom-snippets/eta-for.js.map +1 -0
  80. package/backend/dist/src/seeding/data/custom-snippets/eta-if.d.ts +4 -0
  81. package/backend/dist/src/seeding/data/custom-snippets/eta-if.js +8 -0
  82. package/backend/dist/src/seeding/data/custom-snippets/eta-if.js.map +1 -0
  83. package/backend/dist/src/seeding/data/custom-snippets/eta-ifelse.d.ts +4 -0
  84. package/backend/dist/src/seeding/data/custom-snippets/eta-ifelse.js +8 -0
  85. package/backend/dist/src/seeding/data/custom-snippets/eta-ifelse.js.map +1 -0
  86. package/backend/dist/src/seeding/data/custom-snippets/it-mcp.d.ts +4 -0
  87. package/backend/dist/src/seeding/data/custom-snippets/it-mcp.js +8 -0
  88. package/backend/dist/src/seeding/data/custom-snippets/it-mcp.js.map +1 -0
  89. package/backend/dist/src/seeding/data/custom-snippets/it-tools.d.ts +4 -0
  90. package/backend/dist/src/seeding/data/custom-snippets/it-tools.js +8 -0
  91. package/backend/dist/src/seeding/data/custom-snippets/it-tools.js.map +1 -0
  92. package/backend/dist/src/seeding/data/system-prompts/default_master-agent.d.ts +1 -1
  93. package/backend/dist/src/seeding/data/system-prompts/default_master-agent.js +1 -1
  94. package/backend/dist/src/seeding/data/system-prompts/experimental_eta_master-agent.d.ts +2 -0
  95. package/backend/dist/src/seeding/data/system-prompts/experimental_eta_master-agent.js +62 -0
  96. package/backend/dist/src/seeding/data/system-prompts/experimental_eta_master-agent.js.map +1 -0
  97. package/backend/dist/src/seeding/data/system-prompts/experimental_patch_master-agent.d.ts +2 -0
  98. package/backend/dist/src/seeding/data/system-prompts/experimental_patch_master-agent.js +463 -0
  99. package/backend/dist/src/seeding/data/system-prompts/experimental_patch_master-agent.js.map +1 -0
  100. package/backend/dist/src/system-prompts/dto/system-prompt.dto.d.ts +6 -0
  101. package/backend/dist/src/system-prompts/dto/system-prompt.dto.js +12 -1
  102. package/backend/dist/src/system-prompts/dto/system-prompt.dto.js.map +1 -1
  103. package/backend/dist/src/system-prompts/system-prompts.controller.d.ts +3 -1
  104. package/backend/dist/src/system-prompts/system-prompts.controller.js +20 -0
  105. package/backend/dist/src/system-prompts/system-prompts.controller.js.map +1 -1
  106. package/backend/dist/src/system-prompts/system-prompts.module.js +11 -1
  107. package/backend/dist/src/system-prompts/system-prompts.module.js.map +1 -1
  108. package/backend/dist/src/system-prompts/system-prompts.service.d.ts +11 -3
  109. package/backend/dist/src/system-prompts/system-prompts.service.js +39 -12
  110. package/backend/dist/src/system-prompts/system-prompts.service.js.map +1 -1
  111. package/backend/dist/src/utils/ai-format-generator.d.ts +1 -0
  112. package/backend/dist/src/utils/ai-format-generator.js +23 -0
  113. package/backend/dist/src/utils/ai-format-generator.js.map +1 -0
  114. package/backend/dist/src/utils/index.d.ts +1 -0
  115. package/backend/dist/src/utils/index.js +1 -0
  116. package/backend/dist/src/utils/index.js.map +1 -1
  117. package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
  118. package/backend/package.json +6 -3
  119. package/backend/packages/tokenpatch/grammar/tree-sitter-tsx.wasm +0 -0
  120. package/backend/packages/tokenpatch/grammar/tree-sitter-typescript.wasm +0 -0
  121. package/backend/packages/tokenpatch/index.spec.ts +579 -0
  122. package/backend/packages/tokenpatch/index.ts +80 -0
  123. package/backend/packages/tokenpatch/parser.ts +18 -0
  124. package/backend/packages/tokenpatch/patcher.spec.ts +194 -0
  125. package/backend/packages/tokenpatch/patcher.ts +300 -0
  126. package/backend/packages/tokenpatch/tokens.spec.ts +84 -0
  127. package/backend/packages/tokenpatch/tokens.ts +50 -0
  128. package/backend/packages/tokenpatch/types.ts +9 -0
  129. package/package.json +13 -12
  130. package/backend/coverage/clover.xml +0 -3434
  131. package/backend/coverage/coverage-final.json +0 -120
  132. package/backend/coverage/lcov-report/base.css +0 -224
  133. package/backend/coverage/lcov-report/block-navigation.js +0 -87
  134. package/backend/coverage/lcov-report/favicon.png +0 -0
  135. package/backend/coverage/lcov-report/index.html +0 -701
  136. package/backend/coverage/lcov-report/prettify.css +0 -1
  137. package/backend/coverage/lcov-report/prettify.js +0 -2
  138. package/backend/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  139. package/backend/coverage/lcov-report/sorter.js +0 -196
  140. package/backend/coverage/lcov-report/src/action-execution/action-execution.module.ts.html +0 -109
  141. package/backend/coverage/lcov-report/src/action-execution/action-execution.service.ts.html +0 -448
  142. package/backend/coverage/lcov-report/src/action-execution/index.html +0 -131
  143. package/backend/coverage/lcov-report/src/ai-actions/ai-action-batch.service.ts.html +0 -940
  144. package/backend/coverage/lcov-report/src/ai-actions/ai-action-creation.service.ts.html +0 -1243
  145. package/backend/coverage/lcov-report/src/ai-actions/ai-actions.controller.ts.html +0 -664
  146. package/backend/coverage/lcov-report/src/ai-actions/ai-actions.module.ts.html +0 -154
  147. package/backend/coverage/lcov-report/src/ai-actions/ai-actions.service.ts.html +0 -859
  148. package/backend/coverage/lcov-report/src/ai-actions/index.html +0 -176
  149. package/backend/coverage/lcov-report/src/app.controller.ts.html +0 -151
  150. package/backend/coverage/lcov-report/src/app.module.ts.html +0 -373
  151. package/backend/coverage/lcov-report/src/app.service.ts.html +0 -196
  152. package/backend/coverage/lcov-report/src/application-state/application-state.controller.ts.html +0 -319
  153. package/backend/coverage/lcov-report/src/application-state/application-state.module.ts.html +0 -124
  154. package/backend/coverage/lcov-report/src/application-state/application-state.service.ts.html +0 -439
  155. package/backend/coverage/lcov-report/src/application-state/dto/index.html +0 -161
  156. package/backend/coverage/lcov-report/src/application-state/dto/set-auto-context-fetch-enabled.dto.ts.html +0 -103
  157. package/backend/coverage/lcov-report/src/application-state/dto/set-orchestration-timeout.dto.ts.html +0 -103
  158. package/backend/coverage/lcov-report/src/application-state/dto/set-theme.dto.ts.html +0 -106
  159. package/backend/coverage/lcov-report/src/application-state/dto/set-websocket-enabled.dto.ts.html +0 -103
  160. package/backend/coverage/lcov-report/src/application-state/index.html +0 -146
  161. package/backend/coverage/lcov-report/src/context-generation/context-generation.module.ts.html +0 -118
  162. package/backend/coverage/lcov-report/src/context-generation/context-generation.service.ts.html +0 -1348
  163. package/backend/coverage/lcov-report/src/context-generation/index.html +0 -131
  164. package/backend/coverage/lcov-report/src/context-snippets/context-snippets.controller.ts.html +0 -289
  165. package/backend/coverage/lcov-report/src/context-snippets/context-snippets.module.ts.html +0 -136
  166. package/backend/coverage/lcov-report/src/context-snippets/context-snippets.service.ts.html +0 -400
  167. package/backend/coverage/lcov-report/src/context-snippets/dto/context-snippet.dto.ts.html +0 -211
  168. package/backend/coverage/lcov-report/src/context-snippets/dto/index.html +0 -116
  169. package/backend/coverage/lcov-report/src/context-snippets/index.html +0 -146
  170. package/backend/coverage/lcov-report/src/context-templates/context-templates.controller.ts.html +0 -397
  171. package/backend/coverage/lcov-report/src/context-templates/context-templates.module.ts.html +0 -136
  172. package/backend/coverage/lcov-report/src/context-templates/context-templates.service.ts.html +0 -835
  173. package/backend/coverage/lcov-report/src/context-templates/dto/context-template.dto.ts.html +0 -358
  174. package/backend/coverage/lcov-report/src/context-templates/dto/index.html +0 -116
  175. package/backend/coverage/lcov-report/src/context-templates/index.html +0 -146
  176. package/backend/coverage/lcov-report/src/core-entities/ai-action.entity.ts.html +0 -241
  177. package/backend/coverage/lcov-report/src/core-entities/application-state.entity.ts.html +0 -115
  178. package/backend/coverage/lcov-report/src/core-entities/base.entity.ts.html +0 -145
  179. package/backend/coverage/lcov-report/src/core-entities/context-snippet.entity.ts.html +0 -130
  180. package/backend/coverage/lcov-report/src/core-entities/context-template.entity.ts.html +0 -223
  181. package/backend/coverage/lcov-report/src/core-entities/custom-snippet.entity.ts.html +0 -136
  182. package/backend/coverage/lcov-report/src/core-entities/execution-log.entity.ts.html +0 -157
  183. package/backend/coverage/lcov-report/src/core-entities/index.html +0 -281
  184. package/backend/coverage/lcov-report/src/core-entities/index.ts.html +0 -118
  185. package/backend/coverage/lcov-report/src/core-entities/project.entity.ts.html +0 -130
  186. package/backend/coverage/lcov-report/src/core-entities/session-input.entity.ts.html +0 -289
  187. package/backend/coverage/lcov-report/src/core-entities/session.entity.ts.html +0 -280
  188. package/backend/coverage/lcov-report/src/core-entities/system-prompt.entity.ts.html +0 -148
  189. package/backend/coverage/lcov-report/src/custom-snippets/custom-snippets.controller.ts.html +0 -277
  190. package/backend/coverage/lcov-report/src/custom-snippets/custom-snippets.module.ts.html +0 -124
  191. package/backend/coverage/lcov-report/src/custom-snippets/custom-snippets.service.ts.html +0 -304
  192. package/backend/coverage/lcov-report/src/custom-snippets/dto/custom-snippet.dto.ts.html +0 -205
  193. package/backend/coverage/lcov-report/src/custom-snippets/dto/index.html +0 -116
  194. package/backend/coverage/lcov-report/src/custom-snippets/index.html +0 -146
  195. package/backend/coverage/lcov-report/src/events/events.gateway.ts.html +0 -292
  196. package/backend/coverage/lcov-report/src/events/events.module.ts.html +0 -109
  197. package/backend/coverage/lcov-report/src/events/index.html +0 -131
  198. package/backend/coverage/lcov-report/src/execution-logs/dto/execution-log.dto.ts.html +0 -130
  199. package/backend/coverage/lcov-report/src/execution-logs/dto/index.html +0 -116
  200. package/backend/coverage/lcov-report/src/execution-logs/execution-logs.controller.ts.html +0 -130
  201. package/backend/coverage/lcov-report/src/execution-logs/execution-logs.module.ts.html +0 -124
  202. package/backend/coverage/lcov-report/src/execution-logs/execution-logs.service.ts.html +0 -238
  203. package/backend/coverage/lcov-report/src/execution-logs/index.html +0 -146
  204. package/backend/coverage/lcov-report/src/http-exception.filter.ts.html +0 -340
  205. package/backend/coverage/lcov-report/src/index.html +0 -191
  206. package/backend/coverage/lcov-report/src/llm-response-parser/dto/ai-action.dto.ts.html +0 -400
  207. package/backend/coverage/lcov-report/src/llm-response-parser/dto/index.html +0 -116
  208. package/backend/coverage/lcov-report/src/llm-response-parser/errors/index.html +0 -116
  209. package/backend/coverage/lcov-report/src/llm-response-parser/errors/parsing.error.ts.html +0 -118
  210. package/backend/coverage/lcov-report/src/llm-response-parser/index.html +0 -146
  211. package/backend/coverage/lcov-report/src/llm-response-parser/llm-response-parser.module.ts.html +0 -109
  212. package/backend/coverage/lcov-report/src/llm-response-parser/llm-response-parser.service.ts.html +0 -808
  213. package/backend/coverage/lcov-report/src/llm-response-parser/parsing.constants.ts.html +0 -139
  214. package/backend/coverage/lcov-report/src/llm-responses/dto/index.html +0 -116
  215. package/backend/coverage/lcov-report/src/llm-responses/dto/submit-llm-response.dto.ts.html +0 -172
  216. package/backend/coverage/lcov-report/src/llm-responses/index.html +0 -146
  217. package/backend/coverage/lcov-report/src/llm-responses/llm-responses.controller.ts.html +0 -154
  218. package/backend/coverage/lcov-report/src/llm-responses/llm-responses.module.ts.html +0 -166
  219. package/backend/coverage/lcov-report/src/llm-responses/llm-responses.service.ts.html +0 -787
  220. package/backend/coverage/lcov-report/src/main.ts.html +0 -382
  221. package/backend/coverage/lcov-report/src/orchestration/dto/index.html +0 -116
  222. package/backend/coverage/lcov-report/src/orchestration/dto/orchestration.dto.ts.html +0 -169
  223. package/backend/coverage/lcov-report/src/orchestration/index.html +0 -191
  224. package/backend/coverage/lcov-report/src/orchestration/orchestration-fs.service.ts.html +0 -595
  225. package/backend/coverage/lcov-report/src/orchestration/orchestration-parser.service.ts.html +0 -142
  226. package/backend/coverage/lcov-report/src/orchestration/orchestration.controller.ts.html +0 -406
  227. package/backend/coverage/lcov-report/src/orchestration/orchestration.module.ts.html +0 -169
  228. package/backend/coverage/lcov-report/src/orchestration/orchestration.service.ts.html +0 -1093
  229. package/backend/coverage/lcov-report/src/orchestration/orchestration.types.ts.html +0 -175
  230. package/backend/coverage/lcov-report/src/projects/dto/index.html +0 -116
  231. package/backend/coverage/lcov-report/src/projects/dto/project.dto.ts.html +0 -154
  232. package/backend/coverage/lcov-report/src/projects/index.html +0 -146
  233. package/backend/coverage/lcov-report/src/projects/projects.controller.ts.html +0 -232
  234. package/backend/coverage/lcov-report/src/projects/projects.module.ts.html +0 -124
  235. package/backend/coverage/lcov-report/src/projects/projects.service.ts.html +0 -223
  236. package/backend/coverage/lcov-report/src/seeding/context-template-seeding.service.ts.html +0 -355
  237. package/backend/coverage/lcov-report/src/seeding/custom-snippet-seeding.service.ts.html +0 -271
  238. package/backend/coverage/lcov-report/src/seeding/data/context-templates/default-followup_ad-hoc-focused-context.ts.html +0 -136
  239. package/backend/coverage/lcov-report/src/seeding/data/context-templates/default-initial_condensed-project-context.ts.html +0 -148
  240. package/backend/coverage/lcov-report/src/seeding/data/context-templates/default-initial_full-project-context.ts.html +0 -247
  241. package/backend/coverage/lcov-report/src/seeding/data/context-templates/index.html +0 -190
  242. package/backend/coverage/lcov-report/src/seeding/data/context-templates/pm-context.ts.html +0 -250
  243. package/backend/coverage/lcov-report/src/seeding/data/context-templates/pr-description.ts.html +0 -186
  244. package/backend/coverage/lcov-report/src/seeding/data/context-templates/sample_focused-tree.ts.html +0 -124
  245. package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/default_rglob.ts.html +0 -94
  246. package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/git-diff.ts.html +0 -94
  247. package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/index.html +0 -236
  248. package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/rg-exclude.ts.html +0 -94
  249. package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/rg-search-glob.ts.html +0 -94
  250. package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/rg-search.ts.html +0 -94
  251. package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/run-command.ts.html +0 -94
  252. package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/tree.ts.html +0 -94
  253. package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/usr-adhoc-incl.ts.html +0 -100
  254. package/backend/coverage/lcov-report/src/seeding/data/custom-snippets/usr-input-incl.ts.html +0 -94
  255. package/backend/coverage/lcov-report/src/seeding/data/system-prompts/codebase-explorer.ts.html +0 -331
  256. package/backend/coverage/lcov-report/src/seeding/data/system-prompts/default_multi-file-action-generator-with-requester.ts.html +0 -675
  257. package/backend/coverage/lcov-report/src/seeding/data/system-prompts/index.html +0 -160
  258. package/backend/coverage/lcov-report/src/seeding/data/system-prompts/multi-file-action-generator.ts.html +0 -550
  259. package/backend/coverage/lcov-report/src/seeding/data/system-prompts/packup.ts.html +0 -184
  260. package/backend/coverage/lcov-report/src/seeding/data/system-prompts/refactor-split.ts.html +0 -244
  261. package/backend/coverage/lcov-report/src/seeding/index.html +0 -176
  262. package/backend/coverage/lcov-report/src/seeding/seeding.module.ts.html +0 -145
  263. package/backend/coverage/lcov-report/src/seeding/seeding.service.ts.html +0 -151
  264. package/backend/coverage/lcov-report/src/seeding/system-prompt-seeding.service.ts.html +0 -289
  265. package/backend/coverage/lcov-report/src/session-followup/index.html +0 -131
  266. package/backend/coverage/lcov-report/src/session-followup/session-followup.module.ts.html +0 -130
  267. package/backend/coverage/lcov-report/src/session-followup/session-followup.service.ts.html +0 -670
  268. package/backend/coverage/lcov-report/src/session-inputs/dto/index.html +0 -116
  269. package/backend/coverage/lcov-report/src/session-inputs/dto/session-input.dto.ts.html +0 -247
  270. package/backend/coverage/lcov-report/src/session-inputs/index.html +0 -161
  271. package/backend/coverage/lcov-report/src/session-inputs/session-input-context.service.ts.html +0 -763
  272. package/backend/coverage/lcov-report/src/session-inputs/session-inputs.controller.ts.html +0 -337
  273. package/backend/coverage/lcov-report/src/session-inputs/session-inputs.module.ts.html +0 -205
  274. package/backend/coverage/lcov-report/src/session-inputs/session-inputs.service.ts.html +0 -1621
  275. package/backend/coverage/lcov-report/src/session-transfer/index.html +0 -131
  276. package/backend/coverage/lcov-report/src/session-transfer/session-transfer.module.ts.html +0 -172
  277. package/backend/coverage/lcov-report/src/session-transfer/session-transfer.service.ts.html +0 -574
  278. package/backend/coverage/lcov-report/src/sessions/dto/index.html +0 -116
  279. package/backend/coverage/lcov-report/src/sessions/dto/session.dto.ts.html +0 -340
  280. package/backend/coverage/lcov-report/src/sessions/index.html +0 -146
  281. package/backend/coverage/lcov-report/src/sessions/sessions.controller.ts.html +0 -457
  282. package/backend/coverage/lcov-report/src/sessions/sessions.module.ts.html +0 -214
  283. package/backend/coverage/lcov-report/src/sessions/sessions.service.ts.html +0 -844
  284. package/backend/coverage/lcov-report/src/system-prompts/dto/index.html +0 -116
  285. package/backend/coverage/lcov-report/src/system-prompts/dto/system-prompt.dto.ts.html +0 -217
  286. package/backend/coverage/lcov-report/src/system-prompts/index.html +0 -146
  287. package/backend/coverage/lcov-report/src/system-prompts/system-prompts.controller.ts.html +0 -298
  288. package/backend/coverage/lcov-report/src/system-prompts/system-prompts.module.ts.html +0 -127
  289. package/backend/coverage/lcov-report/src/system-prompts/system-prompts.service.ts.html +0 -352
  290. package/backend/coverage/lcov-report/src/timeout.interceptor.ts.html +0 -178
  291. package/backend/coverage/lcov-report/src/utils/fuzzy-search.ts.html +0 -310
  292. package/backend/coverage/lcov-report/src/utils/index.html +0 -131
  293. package/backend/coverage/lcov-report/src/utils/index.ts.html +0 -88
  294. package/backend/coverage/lcov-report/src/workspace/dto/index.html +0 -116
  295. package/backend/coverage/lcov-report/src/workspace/dto/search-workspace.dto.ts.html +0 -193
  296. package/backend/coverage/lcov-report/src/workspace/index.html +0 -146
  297. package/backend/coverage/lcov-report/src/workspace/workspace.controller.ts.html +0 -247
  298. package/backend/coverage/lcov-report/src/workspace/workspace.module.ts.html +0 -121
  299. package/backend/coverage/lcov-report/src/workspace/workspace.service.ts.html +0 -745
  300. package/backend/coverage/lcov.info +0 -5590
@@ -1,1093 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for src/orchestration/orchestration.service.ts</title>
7
- <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../../prettify.css" />
9
- <link rel="stylesheet" href="../../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
- <meta name="viewport" content="width=device-width, initial-scale=1" />
12
- <style type='text/css'>
13
- .coverage-summary .sorter {
14
- background-image: url(../../sort-arrow-sprite.png);
15
- }
16
- </style>
17
- </head>
18
-
19
- <body>
20
- <div class='wrapper'>
21
- <div class='pad1'>
22
- <h1><a href="../../index.html">All files</a> / <a href="index.html">src/orchestration</a> orchestration.service.ts</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">87.24% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>130/149</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">78.26% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>36/46</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">81.81% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>18/22</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">90.51% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>124/137</span>
50
- </div>
51
-
52
-
53
- </div>
54
- <p class="quiet">
55
- Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
- </p>
57
- <template id="filterTemplate">
58
- <div class="quiet">
59
- Filter:
60
- <input type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line high'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a>
126
- <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a>
128
- <a name='L63'></a><a href='#L63'>63</a>
129
- <a name='L64'></a><a href='#L64'>64</a>
130
- <a name='L65'></a><a href='#L65'>65</a>
131
- <a name='L66'></a><a href='#L66'>66</a>
132
- <a name='L67'></a><a href='#L67'>67</a>
133
- <a name='L68'></a><a href='#L68'>68</a>
134
- <a name='L69'></a><a href='#L69'>69</a>
135
- <a name='L70'></a><a href='#L70'>70</a>
136
- <a name='L71'></a><a href='#L71'>71</a>
137
- <a name='L72'></a><a href='#L72'>72</a>
138
- <a name='L73'></a><a href='#L73'>73</a>
139
- <a name='L74'></a><a href='#L74'>74</a>
140
- <a name='L75'></a><a href='#L75'>75</a>
141
- <a name='L76'></a><a href='#L76'>76</a>
142
- <a name='L77'></a><a href='#L77'>77</a>
143
- <a name='L78'></a><a href='#L78'>78</a>
144
- <a name='L79'></a><a href='#L79'>79</a>
145
- <a name='L80'></a><a href='#L80'>80</a>
146
- <a name='L81'></a><a href='#L81'>81</a>
147
- <a name='L82'></a><a href='#L82'>82</a>
148
- <a name='L83'></a><a href='#L83'>83</a>
149
- <a name='L84'></a><a href='#L84'>84</a>
150
- <a name='L85'></a><a href='#L85'>85</a>
151
- <a name='L86'></a><a href='#L86'>86</a>
152
- <a name='L87'></a><a href='#L87'>87</a>
153
- <a name='L88'></a><a href='#L88'>88</a>
154
- <a name='L89'></a><a href='#L89'>89</a>
155
- <a name='L90'></a><a href='#L90'>90</a>
156
- <a name='L91'></a><a href='#L91'>91</a>
157
- <a name='L92'></a><a href='#L92'>92</a>
158
- <a name='L93'></a><a href='#L93'>93</a>
159
- <a name='L94'></a><a href='#L94'>94</a>
160
- <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a>
162
- <a name='L97'></a><a href='#L97'>97</a>
163
- <a name='L98'></a><a href='#L98'>98</a>
164
- <a name='L99'></a><a href='#L99'>99</a>
165
- <a name='L100'></a><a href='#L100'>100</a>
166
- <a name='L101'></a><a href='#L101'>101</a>
167
- <a name='L102'></a><a href='#L102'>102</a>
168
- <a name='L103'></a><a href='#L103'>103</a>
169
- <a name='L104'></a><a href='#L104'>104</a>
170
- <a name='L105'></a><a href='#L105'>105</a>
171
- <a name='L106'></a><a href='#L106'>106</a>
172
- <a name='L107'></a><a href='#L107'>107</a>
173
- <a name='L108'></a><a href='#L108'>108</a>
174
- <a name='L109'></a><a href='#L109'>109</a>
175
- <a name='L110'></a><a href='#L110'>110</a>
176
- <a name='L111'></a><a href='#L111'>111</a>
177
- <a name='L112'></a><a href='#L112'>112</a>
178
- <a name='L113'></a><a href='#L113'>113</a>
179
- <a name='L114'></a><a href='#L114'>114</a>
180
- <a name='L115'></a><a href='#L115'>115</a>
181
- <a name='L116'></a><a href='#L116'>116</a>
182
- <a name='L117'></a><a href='#L117'>117</a>
183
- <a name='L118'></a><a href='#L118'>118</a>
184
- <a name='L119'></a><a href='#L119'>119</a>
185
- <a name='L120'></a><a href='#L120'>120</a>
186
- <a name='L121'></a><a href='#L121'>121</a>
187
- <a name='L122'></a><a href='#L122'>122</a>
188
- <a name='L123'></a><a href='#L123'>123</a>
189
- <a name='L124'></a><a href='#L124'>124</a>
190
- <a name='L125'></a><a href='#L125'>125</a>
191
- <a name='L126'></a><a href='#L126'>126</a>
192
- <a name='L127'></a><a href='#L127'>127</a>
193
- <a name='L128'></a><a href='#L128'>128</a>
194
- <a name='L129'></a><a href='#L129'>129</a>
195
- <a name='L130'></a><a href='#L130'>130</a>
196
- <a name='L131'></a><a href='#L131'>131</a>
197
- <a name='L132'></a><a href='#L132'>132</a>
198
- <a name='L133'></a><a href='#L133'>133</a>
199
- <a name='L134'></a><a href='#L134'>134</a>
200
- <a name='L135'></a><a href='#L135'>135</a>
201
- <a name='L136'></a><a href='#L136'>136</a>
202
- <a name='L137'></a><a href='#L137'>137</a>
203
- <a name='L138'></a><a href='#L138'>138</a>
204
- <a name='L139'></a><a href='#L139'>139</a>
205
- <a name='L140'></a><a href='#L140'>140</a>
206
- <a name='L141'></a><a href='#L141'>141</a>
207
- <a name='L142'></a><a href='#L142'>142</a>
208
- <a name='L143'></a><a href='#L143'>143</a>
209
- <a name='L144'></a><a href='#L144'>144</a>
210
- <a name='L145'></a><a href='#L145'>145</a>
211
- <a name='L146'></a><a href='#L146'>146</a>
212
- <a name='L147'></a><a href='#L147'>147</a>
213
- <a name='L148'></a><a href='#L148'>148</a>
214
- <a name='L149'></a><a href='#L149'>149</a>
215
- <a name='L150'></a><a href='#L150'>150</a>
216
- <a name='L151'></a><a href='#L151'>151</a>
217
- <a name='L152'></a><a href='#L152'>152</a>
218
- <a name='L153'></a><a href='#L153'>153</a>
219
- <a name='L154'></a><a href='#L154'>154</a>
220
- <a name='L155'></a><a href='#L155'>155</a>
221
- <a name='L156'></a><a href='#L156'>156</a>
222
- <a name='L157'></a><a href='#L157'>157</a>
223
- <a name='L158'></a><a href='#L158'>158</a>
224
- <a name='L159'></a><a href='#L159'>159</a>
225
- <a name='L160'></a><a href='#L160'>160</a>
226
- <a name='L161'></a><a href='#L161'>161</a>
227
- <a name='L162'></a><a href='#L162'>162</a>
228
- <a name='L163'></a><a href='#L163'>163</a>
229
- <a name='L164'></a><a href='#L164'>164</a>
230
- <a name='L165'></a><a href='#L165'>165</a>
231
- <a name='L166'></a><a href='#L166'>166</a>
232
- <a name='L167'></a><a href='#L167'>167</a>
233
- <a name='L168'></a><a href='#L168'>168</a>
234
- <a name='L169'></a><a href='#L169'>169</a>
235
- <a name='L170'></a><a href='#L170'>170</a>
236
- <a name='L171'></a><a href='#L171'>171</a>
237
- <a name='L172'></a><a href='#L172'>172</a>
238
- <a name='L173'></a><a href='#L173'>173</a>
239
- <a name='L174'></a><a href='#L174'>174</a>
240
- <a name='L175'></a><a href='#L175'>175</a>
241
- <a name='L176'></a><a href='#L176'>176</a>
242
- <a name='L177'></a><a href='#L177'>177</a>
243
- <a name='L178'></a><a href='#L178'>178</a>
244
- <a name='L179'></a><a href='#L179'>179</a>
245
- <a name='L180'></a><a href='#L180'>180</a>
246
- <a name='L181'></a><a href='#L181'>181</a>
247
- <a name='L182'></a><a href='#L182'>182</a>
248
- <a name='L183'></a><a href='#L183'>183</a>
249
- <a name='L184'></a><a href='#L184'>184</a>
250
- <a name='L185'></a><a href='#L185'>185</a>
251
- <a name='L186'></a><a href='#L186'>186</a>
252
- <a name='L187'></a><a href='#L187'>187</a>
253
- <a name='L188'></a><a href='#L188'>188</a>
254
- <a name='L189'></a><a href='#L189'>189</a>
255
- <a name='L190'></a><a href='#L190'>190</a>
256
- <a name='L191'></a><a href='#L191'>191</a>
257
- <a name='L192'></a><a href='#L192'>192</a>
258
- <a name='L193'></a><a href='#L193'>193</a>
259
- <a name='L194'></a><a href='#L194'>194</a>
260
- <a name='L195'></a><a href='#L195'>195</a>
261
- <a name='L196'></a><a href='#L196'>196</a>
262
- <a name='L197'></a><a href='#L197'>197</a>
263
- <a name='L198'></a><a href='#L198'>198</a>
264
- <a name='L199'></a><a href='#L199'>199</a>
265
- <a name='L200'></a><a href='#L200'>200</a>
266
- <a name='L201'></a><a href='#L201'>201</a>
267
- <a name='L202'></a><a href='#L202'>202</a>
268
- <a name='L203'></a><a href='#L203'>203</a>
269
- <a name='L204'></a><a href='#L204'>204</a>
270
- <a name='L205'></a><a href='#L205'>205</a>
271
- <a name='L206'></a><a href='#L206'>206</a>
272
- <a name='L207'></a><a href='#L207'>207</a>
273
- <a name='L208'></a><a href='#L208'>208</a>
274
- <a name='L209'></a><a href='#L209'>209</a>
275
- <a name='L210'></a><a href='#L210'>210</a>
276
- <a name='L211'></a><a href='#L211'>211</a>
277
- <a name='L212'></a><a href='#L212'>212</a>
278
- <a name='L213'></a><a href='#L213'>213</a>
279
- <a name='L214'></a><a href='#L214'>214</a>
280
- <a name='L215'></a><a href='#L215'>215</a>
281
- <a name='L216'></a><a href='#L216'>216</a>
282
- <a name='L217'></a><a href='#L217'>217</a>
283
- <a name='L218'></a><a href='#L218'>218</a>
284
- <a name='L219'></a><a href='#L219'>219</a>
285
- <a name='L220'></a><a href='#L220'>220</a>
286
- <a name='L221'></a><a href='#L221'>221</a>
287
- <a name='L222'></a><a href='#L222'>222</a>
288
- <a name='L223'></a><a href='#L223'>223</a>
289
- <a name='L224'></a><a href='#L224'>224</a>
290
- <a name='L225'></a><a href='#L225'>225</a>
291
- <a name='L226'></a><a href='#L226'>226</a>
292
- <a name='L227'></a><a href='#L227'>227</a>
293
- <a name='L228'></a><a href='#L228'>228</a>
294
- <a name='L229'></a><a href='#L229'>229</a>
295
- <a name='L230'></a><a href='#L230'>230</a>
296
- <a name='L231'></a><a href='#L231'>231</a>
297
- <a name='L232'></a><a href='#L232'>232</a>
298
- <a name='L233'></a><a href='#L233'>233</a>
299
- <a name='L234'></a><a href='#L234'>234</a>
300
- <a name='L235'></a><a href='#L235'>235</a>
301
- <a name='L236'></a><a href='#L236'>236</a>
302
- <a name='L237'></a><a href='#L237'>237</a>
303
- <a name='L238'></a><a href='#L238'>238</a>
304
- <a name='L239'></a><a href='#L239'>239</a>
305
- <a name='L240'></a><a href='#L240'>240</a>
306
- <a name='L241'></a><a href='#L241'>241</a>
307
- <a name='L242'></a><a href='#L242'>242</a>
308
- <a name='L243'></a><a href='#L243'>243</a>
309
- <a name='L244'></a><a href='#L244'>244</a>
310
- <a name='L245'></a><a href='#L245'>245</a>
311
- <a name='L246'></a><a href='#L246'>246</a>
312
- <a name='L247'></a><a href='#L247'>247</a>
313
- <a name='L248'></a><a href='#L248'>248</a>
314
- <a name='L249'></a><a href='#L249'>249</a>
315
- <a name='L250'></a><a href='#L250'>250</a>
316
- <a name='L251'></a><a href='#L251'>251</a>
317
- <a name='L252'></a><a href='#L252'>252</a>
318
- <a name='L253'></a><a href='#L253'>253</a>
319
- <a name='L254'></a><a href='#L254'>254</a>
320
- <a name='L255'></a><a href='#L255'>255</a>
321
- <a name='L256'></a><a href='#L256'>256</a>
322
- <a name='L257'></a><a href='#L257'>257</a>
323
- <a name='L258'></a><a href='#L258'>258</a>
324
- <a name='L259'></a><a href='#L259'>259</a>
325
- <a name='L260'></a><a href='#L260'>260</a>
326
- <a name='L261'></a><a href='#L261'>261</a>
327
- <a name='L262'></a><a href='#L262'>262</a>
328
- <a name='L263'></a><a href='#L263'>263</a>
329
- <a name='L264'></a><a href='#L264'>264</a>
330
- <a name='L265'></a><a href='#L265'>265</a>
331
- <a name='L266'></a><a href='#L266'>266</a>
332
- <a name='L267'></a><a href='#L267'>267</a>
333
- <a name='L268'></a><a href='#L268'>268</a>
334
- <a name='L269'></a><a href='#L269'>269</a>
335
- <a name='L270'></a><a href='#L270'>270</a>
336
- <a name='L271'></a><a href='#L271'>271</a>
337
- <a name='L272'></a><a href='#L272'>272</a>
338
- <a name='L273'></a><a href='#L273'>273</a>
339
- <a name='L274'></a><a href='#L274'>274</a>
340
- <a name='L275'></a><a href='#L275'>275</a>
341
- <a name='L276'></a><a href='#L276'>276</a>
342
- <a name='L277'></a><a href='#L277'>277</a>
343
- <a name='L278'></a><a href='#L278'>278</a>
344
- <a name='L279'></a><a href='#L279'>279</a>
345
- <a name='L280'></a><a href='#L280'>280</a>
346
- <a name='L281'></a><a href='#L281'>281</a>
347
- <a name='L282'></a><a href='#L282'>282</a>
348
- <a name='L283'></a><a href='#L283'>283</a>
349
- <a name='L284'></a><a href='#L284'>284</a>
350
- <a name='L285'></a><a href='#L285'>285</a>
351
- <a name='L286'></a><a href='#L286'>286</a>
352
- <a name='L287'></a><a href='#L287'>287</a>
353
- <a name='L288'></a><a href='#L288'>288</a>
354
- <a name='L289'></a><a href='#L289'>289</a>
355
- <a name='L290'></a><a href='#L290'>290</a>
356
- <a name='L291'></a><a href='#L291'>291</a>
357
- <a name='L292'></a><a href='#L292'>292</a>
358
- <a name='L293'></a><a href='#L293'>293</a>
359
- <a name='L294'></a><a href='#L294'>294</a>
360
- <a name='L295'></a><a href='#L295'>295</a>
361
- <a name='L296'></a><a href='#L296'>296</a>
362
- <a name='L297'></a><a href='#L297'>297</a>
363
- <a name='L298'></a><a href='#L298'>298</a>
364
- <a name='L299'></a><a href='#L299'>299</a>
365
- <a name='L300'></a><a href='#L300'>300</a>
366
- <a name='L301'></a><a href='#L301'>301</a>
367
- <a name='L302'></a><a href='#L302'>302</a>
368
- <a name='L303'></a><a href='#L303'>303</a>
369
- <a name='L304'></a><a href='#L304'>304</a>
370
- <a name='L305'></a><a href='#L305'>305</a>
371
- <a name='L306'></a><a href='#L306'>306</a>
372
- <a name='L307'></a><a href='#L307'>307</a>
373
- <a name='L308'></a><a href='#L308'>308</a>
374
- <a name='L309'></a><a href='#L309'>309</a>
375
- <a name='L310'></a><a href='#L310'>310</a>
376
- <a name='L311'></a><a href='#L311'>311</a>
377
- <a name='L312'></a><a href='#L312'>312</a>
378
- <a name='L313'></a><a href='#L313'>313</a>
379
- <a name='L314'></a><a href='#L314'>314</a>
380
- <a name='L315'></a><a href='#L315'>315</a>
381
- <a name='L316'></a><a href='#L316'>316</a>
382
- <a name='L317'></a><a href='#L317'>317</a>
383
- <a name='L318'></a><a href='#L318'>318</a>
384
- <a name='L319'></a><a href='#L319'>319</a>
385
- <a name='L320'></a><a href='#L320'>320</a>
386
- <a name='L321'></a><a href='#L321'>321</a>
387
- <a name='L322'></a><a href='#L322'>322</a>
388
- <a name='L323'></a><a href='#L323'>323</a>
389
- <a name='L324'></a><a href='#L324'>324</a>
390
- <a name='L325'></a><a href='#L325'>325</a>
391
- <a name='L326'></a><a href='#L326'>326</a>
392
- <a name='L327'></a><a href='#L327'>327</a>
393
- <a name='L328'></a><a href='#L328'>328</a>
394
- <a name='L329'></a><a href='#L329'>329</a>
395
- <a name='L330'></a><a href='#L330'>330</a>
396
- <a name='L331'></a><a href='#L331'>331</a>
397
- <a name='L332'></a><a href='#L332'>332</a>
398
- <a name='L333'></a><a href='#L333'>333</a>
399
- <a name='L334'></a><a href='#L334'>334</a>
400
- <a name='L335'></a><a href='#L335'>335</a>
401
- <a name='L336'></a><a href='#L336'>336</a>
402
- <a name='L337'></a><a href='#L337'>337</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">8x</span>
403
- <span class="cline-any cline-neutral">&nbsp;</span>
404
- <span class="cline-any cline-neutral">&nbsp;</span>
405
- <span class="cline-any cline-neutral">&nbsp;</span>
406
- <span class="cline-any cline-neutral">&nbsp;</span>
407
- <span class="cline-any cline-neutral">&nbsp;</span>
408
- <span class="cline-any cline-neutral">&nbsp;</span>
409
- <span class="cline-any cline-neutral">&nbsp;</span>
410
- <span class="cline-any cline-yes">8x</span>
411
- <span class="cline-any cline-yes">8x</span>
412
- <span class="cline-any cline-yes">8x</span>
413
- <span class="cline-any cline-neutral">&nbsp;</span>
414
- <span class="cline-any cline-neutral">&nbsp;</span>
415
- <span class="cline-any cline-neutral">&nbsp;</span>
416
- <span class="cline-any cline-neutral">&nbsp;</span>
417
- <span class="cline-any cline-neutral">&nbsp;</span>
418
- <span class="cline-any cline-yes">8x</span>
419
- <span class="cline-any cline-yes">8x</span>
420
- <span class="cline-any cline-yes">8x</span>
421
- <span class="cline-any cline-yes">8x</span>
422
- <span class="cline-any cline-yes">8x</span>
423
- <span class="cline-any cline-neutral">&nbsp;</span>
424
- <span class="cline-any cline-neutral">&nbsp;</span>
425
- <span class="cline-any cline-yes">8x</span>
426
- <span class="cline-any cline-yes">21x</span>
427
- <span class="cline-any cline-yes">21x</span>
428
- <span class="cline-any cline-yes">21x</span>
429
- <span class="cline-any cline-neutral">&nbsp;</span>
430
- <span class="cline-any cline-neutral">&nbsp;</span>
431
- <span class="cline-any cline-yes">21x</span>
432
- <span class="cline-any cline-yes">21x</span>
433
- <span class="cline-any cline-yes">21x</span>
434
- <span class="cline-any cline-yes">21x</span>
435
- <span class="cline-any cline-yes">21x</span>
436
- <span class="cline-any cline-yes">21x</span>
437
- <span class="cline-any cline-yes">21x</span>
438
- <span class="cline-any cline-neutral">&nbsp;</span>
439
- <span class="cline-any cline-yes">21x</span>
440
- <span class="cline-any cline-neutral">&nbsp;</span>
441
- <span class="cline-any cline-neutral">&nbsp;</span>
442
- <span class="cline-any cline-neutral">&nbsp;</span>
443
- <span class="cline-any cline-neutral">&nbsp;</span>
444
- <span class="cline-any cline-yes">23x</span>
445
- <span class="cline-any cline-yes">23x</span>
446
- <span class="cline-any cline-yes">16x</span>
447
- <span class="cline-any cline-yes">16x</span>
448
- <span class="cline-any cline-neutral">&nbsp;</span>
449
- <span class="cline-any cline-neutral">&nbsp;</span>
450
- <span class="cline-any cline-neutral">&nbsp;</span>
451
- <span class="cline-any cline-neutral">&nbsp;</span>
452
- <span class="cline-any cline-neutral">&nbsp;</span>
453
- <span class="cline-any cline-yes">1x</span>
454
- <span class="cline-any cline-neutral">&nbsp;</span>
455
- <span class="cline-any cline-neutral">&nbsp;</span>
456
- <span class="cline-any cline-yes">1x</span>
457
- <span class="cline-any cline-yes">1x</span>
458
- <span class="cline-any cline-neutral">&nbsp;</span>
459
- <span class="cline-any cline-yes">1x</span>
460
- <span class="cline-any cline-yes">1x</span>
461
- <span class="cline-any cline-yes">1x</span>
462
- <span class="cline-any cline-yes">15x</span>
463
- <span class="cline-any cline-neutral">&nbsp;</span>
464
- <span class="cline-any cline-neutral">&nbsp;</span>
465
- <span class="cline-any cline-neutral">&nbsp;</span>
466
- <span class="cline-any cline-neutral">&nbsp;</span>
467
- <span class="cline-any cline-neutral">&nbsp;</span>
468
- <span class="cline-any cline-neutral">&nbsp;</span>
469
- <span class="cline-any cline-neutral">&nbsp;</span>
470
- <span class="cline-any cline-yes">15x</span>
471
- <span class="cline-any cline-yes">15x</span>
472
- <span class="cline-any cline-neutral">&nbsp;</span>
473
- <span class="cline-any cline-neutral">&nbsp;</span>
474
- <span class="cline-any cline-neutral">&nbsp;</span>
475
- <span class="cline-any cline-neutral">&nbsp;</span>
476
- <span class="cline-any cline-neutral">&nbsp;</span>
477
- <span class="cline-any cline-neutral">&nbsp;</span>
478
- <span class="cline-any cline-neutral">&nbsp;</span>
479
- <span class="cline-any cline-neutral">&nbsp;</span>
480
- <span class="cline-any cline-yes">29x</span>
481
- <span class="cline-any cline-yes">29x</span>
482
- <span class="cline-any cline-yes">29x</span>
483
- <span class="cline-any cline-neutral">&nbsp;</span>
484
- <span class="cline-any cline-yes">29x</span>
485
- <span class="cline-any cline-yes">5x</span>
486
- <span class="cline-any cline-yes">5x</span>
487
- <span class="cline-any cline-yes">5x</span>
488
- <span class="cline-any cline-neutral">&nbsp;</span>
489
- <span class="cline-any cline-yes">24x</span>
490
- <span class="cline-any cline-neutral">&nbsp;</span>
491
- <span class="cline-any cline-yes">29x</span>
492
- <span class="cline-any cline-no">&nbsp;</span>
493
- <span class="cline-any cline-no">&nbsp;</span>
494
- <span class="cline-any cline-neutral">&nbsp;</span>
495
- <span class="cline-any cline-neutral">&nbsp;</span>
496
- <span class="cline-any cline-neutral">&nbsp;</span>
497
- <span class="cline-any cline-neutral">&nbsp;</span>
498
- <span class="cline-any cline-yes">32x</span>
499
- <span class="cline-any cline-neutral">&nbsp;</span>
500
- <span class="cline-any cline-neutral">&nbsp;</span>
501
- <span class="cline-any cline-neutral">&nbsp;</span>
502
- <span class="cline-any cline-yes">52x</span>
503
- <span class="cline-any cline-neutral">&nbsp;</span>
504
- <span class="cline-any cline-neutral">&nbsp;</span>
505
- <span class="cline-any cline-neutral">&nbsp;</span>
506
- <span class="cline-any cline-yes">53x</span>
507
- <span class="cline-any cline-yes">52x</span>
508
- <span class="cline-any cline-yes">52x</span>
509
- <span class="cline-any cline-yes">52x</span>
510
- <span class="cline-any cline-neutral">&nbsp;</span>
511
- <span class="cline-any cline-neutral">&nbsp;</span>
512
- <span class="cline-any cline-neutral">&nbsp;</span>
513
- <span class="cline-any cline-yes">21x</span>
514
- <span class="cline-any cline-neutral">&nbsp;</span>
515
- <span class="cline-any cline-neutral">&nbsp;</span>
516
- <span class="cline-any cline-neutral">&nbsp;</span>
517
- <span class="cline-any cline-yes">7x</span>
518
- <span class="cline-any cline-no">&nbsp;</span>
519
- <span class="cline-any cline-neutral">&nbsp;</span>
520
- <span class="cline-any cline-neutral">&nbsp;</span>
521
- <span class="cline-any cline-neutral">&nbsp;</span>
522
- <span class="cline-any cline-no">&nbsp;</span>
523
- <span class="cline-any cline-no">&nbsp;</span>
524
- <span class="cline-any cline-no">&nbsp;</span>
525
- <span class="cline-any cline-neutral">&nbsp;</span>
526
- <span class="cline-any cline-no">&nbsp;</span>
527
- <span class="cline-any cline-neutral">&nbsp;</span>
528
- <span class="cline-any cline-neutral">&nbsp;</span>
529
- <span class="cline-any cline-neutral">&nbsp;</span>
530
- <span class="cline-any cline-neutral">&nbsp;</span>
531
- <span class="cline-any cline-neutral">&nbsp;</span>
532
- <span class="cline-any cline-yes">7x</span>
533
- <span class="cline-any cline-yes">7x</span>
534
- <span class="cline-any cline-neutral">&nbsp;</span>
535
- <span class="cline-any cline-yes">7x</span>
536
- <span class="cline-any cline-yes">7x</span>
537
- <span class="cline-any cline-neutral">&nbsp;</span>
538
- <span class="cline-any cline-yes">7x</span>
539
- <span class="cline-any cline-neutral">&nbsp;</span>
540
- <span class="cline-any cline-neutral">&nbsp;</span>
541
- <span class="cline-any cline-neutral">&nbsp;</span>
542
- <span class="cline-any cline-neutral">&nbsp;</span>
543
- <span class="cline-any cline-neutral">&nbsp;</span>
544
- <span class="cline-any cline-neutral">&nbsp;</span>
545
- <span class="cline-any cline-neutral">&nbsp;</span>
546
- <span class="cline-any cline-neutral">&nbsp;</span>
547
- <span class="cline-any cline-neutral">&nbsp;</span>
548
- <span class="cline-any cline-neutral">&nbsp;</span>
549
- <span class="cline-any cline-neutral">&nbsp;</span>
550
- <span class="cline-any cline-neutral">&nbsp;</span>
551
- <span class="cline-any cline-neutral">&nbsp;</span>
552
- <span class="cline-any cline-yes">7x</span>
553
- <span class="cline-any cline-yes">7x</span>
554
- <span class="cline-any cline-neutral">&nbsp;</span>
555
- <span class="cline-any cline-neutral">&nbsp;</span>
556
- <span class="cline-any cline-yes">7x</span>
557
- <span class="cline-any cline-neutral">&nbsp;</span>
558
- <span class="cline-any cline-neutral">&nbsp;</span>
559
- <span class="cline-any cline-yes">7x</span>
560
- <span class="cline-any cline-no">&nbsp;</span>
561
- <span class="cline-any cline-neutral">&nbsp;</span>
562
- <span class="cline-any cline-neutral">&nbsp;</span>
563
- <span class="cline-any cline-neutral">&nbsp;</span>
564
- <span class="cline-any cline-no">&nbsp;</span>
565
- <span class="cline-any cline-neutral">&nbsp;</span>
566
- <span class="cline-any cline-neutral">&nbsp;</span>
567
- <span class="cline-any cline-neutral">&nbsp;</span>
568
- <span class="cline-any cline-neutral">&nbsp;</span>
569
- <span class="cline-any cline-yes">10x</span>
570
- <span class="cline-any cline-neutral">&nbsp;</span>
571
- <span class="cline-any cline-yes">10x</span>
572
- <span class="cline-any cline-no">&nbsp;</span>
573
- <span class="cline-any cline-no">&nbsp;</span>
574
- <span class="cline-any cline-no">&nbsp;</span>
575
- <span class="cline-any cline-neutral">&nbsp;</span>
576
- <span class="cline-any cline-neutral">&nbsp;</span>
577
- <span class="cline-any cline-yes">10x</span>
578
- <span class="cline-any cline-neutral">&nbsp;</span>
579
- <span class="cline-any cline-yes">10x</span>
580
- <span class="cline-any cline-yes">10x</span>
581
- <span class="cline-any cline-neutral">&nbsp;</span>
582
- <span class="cline-any cline-yes">10x</span>
583
- <span class="cline-any cline-yes">2x</span>
584
- <span class="cline-any cline-neutral">&nbsp;</span>
585
- <span class="cline-any cline-neutral">&nbsp;</span>
586
- <span class="cline-any cline-yes">2x</span>
587
- <span class="cline-any cline-yes">2x</span>
588
- <span class="cline-any cline-neutral">&nbsp;</span>
589
- <span class="cline-any cline-neutral">&nbsp;</span>
590
- <span class="cline-any cline-yes">8x</span>
591
- <span class="cline-any cline-yes">8x</span>
592
- <span class="cline-any cline-neutral">&nbsp;</span>
593
- <span class="cline-any cline-yes">8x</span>
594
- <span class="cline-any cline-yes">8x</span>
595
- <span class="cline-any cline-yes">8x</span>
596
- <span class="cline-any cline-yes">8x</span>
597
- <span class="cline-any cline-neutral">&nbsp;</span>
598
- <span class="cline-any cline-yes">8x</span>
599
- <span class="cline-any cline-neutral">&nbsp;</span>
600
- <span class="cline-any cline-neutral">&nbsp;</span>
601
- <span class="cline-any cline-neutral">&nbsp;</span>
602
- <span class="cline-any cline-yes">8x</span>
603
- <span class="cline-any cline-neutral">&nbsp;</span>
604
- <span class="cline-any cline-neutral">&nbsp;</span>
605
- <span class="cline-any cline-neutral">&nbsp;</span>
606
- <span class="cline-any cline-neutral">&nbsp;</span>
607
- <span class="cline-any cline-neutral">&nbsp;</span>
608
- <span class="cline-any cline-yes">8x</span>
609
- <span class="cline-any cline-yes">8x</span>
610
- <span class="cline-any cline-neutral">&nbsp;</span>
611
- <span class="cline-any cline-yes">8x</span>
612
- <span class="cline-any cline-neutral">&nbsp;</span>
613
- <span class="cline-any cline-neutral">&nbsp;</span>
614
- <span class="cline-any cline-neutral">&nbsp;</span>
615
- <span class="cline-any cline-yes">8x</span>
616
- <span class="cline-any cline-neutral">&nbsp;</span>
617
- <span class="cline-any cline-neutral">&nbsp;</span>
618
- <span class="cline-any cline-neutral">&nbsp;</span>
619
- <span class="cline-any cline-neutral">&nbsp;</span>
620
- <span class="cline-any cline-neutral">&nbsp;</span>
621
- <span class="cline-any cline-yes">8x</span>
622
- <span class="cline-any cline-neutral">&nbsp;</span>
623
- <span class="cline-any cline-neutral">&nbsp;</span>
624
- <span class="cline-any cline-neutral">&nbsp;</span>
625
- <span class="cline-any cline-neutral">&nbsp;</span>
626
- <span class="cline-any cline-neutral">&nbsp;</span>
627
- <span class="cline-any cline-neutral">&nbsp;</span>
628
- <span class="cline-any cline-yes">8x</span>
629
- <span class="cline-any cline-yes">2x</span>
630
- <span class="cline-any cline-neutral">&nbsp;</span>
631
- <span class="cline-any cline-neutral">&nbsp;</span>
632
- <span class="cline-any cline-neutral">&nbsp;</span>
633
- <span class="cline-any cline-no">&nbsp;</span>
634
- <span class="cline-any cline-neutral">&nbsp;</span>
635
- <span class="cline-any cline-neutral">&nbsp;</span>
636
- <span class="cline-any cline-neutral">&nbsp;</span>
637
- <span class="cline-any cline-neutral">&nbsp;</span>
638
- <span class="cline-any cline-yes">10x</span>
639
- <span class="cline-any cline-yes">7x</span>
640
- <span class="cline-any cline-neutral">&nbsp;</span>
641
- <span class="cline-any cline-neutral">&nbsp;</span>
642
- <span class="cline-any cline-yes">7x</span>
643
- <span class="cline-any cline-neutral">&nbsp;</span>
644
- <span class="cline-any cline-neutral">&nbsp;</span>
645
- <span class="cline-any cline-neutral">&nbsp;</span>
646
- <span class="cline-any cline-yes">7x</span>
647
- <span class="cline-any cline-yes">1x</span>
648
- <span class="cline-any cline-neutral">&nbsp;</span>
649
- <span class="cline-any cline-neutral">&nbsp;</span>
650
- <span class="cline-any cline-yes">3x</span>
651
- <span class="cline-any cline-neutral">&nbsp;</span>
652
- <span class="cline-any cline-neutral">&nbsp;</span>
653
- <span class="cline-any cline-neutral">&nbsp;</span>
654
- <span class="cline-any cline-neutral">&nbsp;</span>
655
- <span class="cline-any cline-neutral">&nbsp;</span>
656
- <span class="cline-any cline-neutral">&nbsp;</span>
657
- <span class="cline-any cline-yes">2x</span>
658
- <span class="cline-any cline-neutral">&nbsp;</span>
659
- <span class="cline-any cline-neutral">&nbsp;</span>
660
- <span class="cline-any cline-neutral">&nbsp;</span>
661
- <span class="cline-any cline-neutral">&nbsp;</span>
662
- <span class="cline-any cline-yes">1x</span>
663
- <span class="cline-any cline-yes">1x</span>
664
- <span class="cline-any cline-yes">1x</span>
665
- <span class="cline-any cline-neutral">&nbsp;</span>
666
- <span class="cline-any cline-neutral">&nbsp;</span>
667
- <span class="cline-any cline-neutral">&nbsp;</span>
668
- <span class="cline-any cline-neutral">&nbsp;</span>
669
- <span class="cline-any cline-yes">3x</span>
670
- <span class="cline-any cline-neutral">&nbsp;</span>
671
- <span class="cline-any cline-neutral">&nbsp;</span>
672
- <span class="cline-any cline-neutral">&nbsp;</span>
673
- <span class="cline-any cline-yes">2x</span>
674
- <span class="cline-any cline-yes">2x</span>
675
- <span class="cline-any cline-yes">2x</span>
676
- <span class="cline-any cline-neutral">&nbsp;</span>
677
- <span class="cline-any cline-neutral">&nbsp;</span>
678
- <span class="cline-any cline-neutral">&nbsp;</span>
679
- <span class="cline-any cline-neutral">&nbsp;</span>
680
- <span class="cline-any cline-yes">1x</span>
681
- <span class="cline-any cline-yes">1x</span>
682
- <span class="cline-any cline-yes">1x</span>
683
- <span class="cline-any cline-yes">1x</span>
684
- <span class="cline-any cline-neutral">&nbsp;</span>
685
- <span class="cline-any cline-neutral">&nbsp;</span>
686
- <span class="cline-any cline-neutral">&nbsp;</span>
687
- <span class="cline-any cline-neutral">&nbsp;</span>
688
- <span class="cline-any cline-neutral">&nbsp;</span>
689
- <span class="cline-any cline-neutral">&nbsp;</span>
690
- <span class="cline-any cline-yes">9x</span>
691
- <span class="cline-any cline-yes">5x</span>
692
- <span class="cline-any cline-yes">5x</span>
693
- <span class="cline-any cline-neutral">&nbsp;</span>
694
- <span class="cline-any cline-neutral">&nbsp;</span>
695
- <span class="cline-any cline-neutral">&nbsp;</span>
696
- <span class="cline-any cline-neutral">&nbsp;</span>
697
- <span class="cline-any cline-yes">6x</span>
698
- <span class="cline-any cline-neutral">&nbsp;</span>
699
- <span class="cline-any cline-neutral">&nbsp;</span>
700
- <span class="cline-any cline-yes">6x</span>
701
- <span class="cline-any cline-yes">1x</span>
702
- <span class="cline-any cline-yes">1x</span>
703
- <span class="cline-any cline-neutral">&nbsp;</span>
704
- <span class="cline-any cline-yes">5x</span>
705
- <span class="cline-any cline-neutral">&nbsp;</span>
706
- <span class="cline-any cline-neutral">&nbsp;</span>
707
- <span class="cline-any cline-yes">1x</span>
708
- <span class="cline-any cline-neutral">&nbsp;</span>
709
- <span class="cline-any cline-neutral">&nbsp;</span>
710
- <span class="cline-any cline-yes">1x</span>
711
- <span class="cline-any cline-neutral">&nbsp;</span>
712
- <span class="cline-any cline-yes">4x</span>
713
- <span class="cline-any cline-yes">1x</span>
714
- <span class="cline-any cline-neutral">&nbsp;</span>
715
- <span class="cline-any cline-neutral">&nbsp;</span>
716
- <span class="cline-any cline-yes">1x</span>
717
- <span class="cline-any cline-neutral">&nbsp;</span>
718
- <span class="cline-any cline-neutral">&nbsp;</span>
719
- <span class="cline-any cline-yes">3x</span>
720
- <span class="cline-any cline-yes">3x</span>
721
- <span class="cline-any cline-neutral">&nbsp;</span>
722
- <span class="cline-any cline-neutral">&nbsp;</span>
723
- <span class="cline-any cline-neutral">&nbsp;</span>
724
- <span class="cline-any cline-yes">3x</span>
725
- <span class="cline-any cline-neutral">&nbsp;</span>
726
- <span class="cline-any cline-yes">3x</span>
727
- <span class="cline-any cline-yes">3x</span>
728
- <span class="cline-any cline-neutral">&nbsp;</span>
729
- <span class="cline-any cline-neutral">&nbsp;</span>
730
- <span class="cline-any cline-neutral">&nbsp;</span>
731
- <span class="cline-any cline-yes">3x</span>
732
- <span class="cline-any cline-yes">3x</span>
733
- <span class="cline-any cline-yes">3x</span>
734
- <span class="cline-any cline-yes">3x</span>
735
- <span class="cline-any cline-neutral">&nbsp;</span>
736
- <span class="cline-any cline-neutral">&nbsp;</span>
737
- <span class="cline-any cline-neutral">&nbsp;</span>
738
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import {
739
- Injectable,
740
- Logger,
741
- Scope,
742
- Inject,
743
- forwardRef,
744
- BadRequestException,
745
- } from '@nestjs/common';
746
- import { OrchestrationFsService } from './orchestration-fs.service';
747
- import { ApplicationStateService } from '../application-state/application-state.service';
748
- import {
749
- OrchestrationMode,
750
- OrchestrationRunState,
751
- OrchestrationStatus,
752
- } from './orchestration.types';
753
- import { StartOrchestrationDto } from './dto/orchestration.dto';
754
- import { randomUUID } from 'crypto';
755
- import { EventsGateway } from '../events/events.gateway';
756
- import { SessionInputsService } from '../session-inputs/session-inputs.service';
757
- import { SessionsService } from '../sessions/sessions.service';
758
- import { OrchestrationParserService } from './orchestration-parser.service';
759
- &nbsp;
760
- @Injectable({ scope: Scope.DEFAULT }) // Singleton
761
- export class OrchestrationService {
762
- private readonly logger = new Logger(OrchestrationService.name);
763
- private activeRun: OrchestrationRunState | null = null;
764
- private timeoutTimer: NodeJS.Timeout | null = null;
765
- &nbsp;
766
- constructor(
767
- private readonly fsService: OrchestrationFsService,
768
- private readonly appStateService: ApplicationStateService,
769
- private readonly eventsGateway: EventsGateway,
770
- private readonly parserService: OrchestrationParserService,
771
- @Inject(forwardRef(() =&gt; SessionInputsService))
772
- private readonly sessionInputsService: SessionInputsService,
773
- private readonly sessionsService: SessionsService,
774
- ) {
775
- this.loadStateFromPersistence();
776
- }
777
- &nbsp;
778
- private async loadStateFromPersistence() {
779
- const persistedState =
780
- await this.appStateService.getOrchestrationRunState();
781
- if (persistedState) {
782
- this.logger.log('Loading persisted orchestration state:', persistedState);
783
- if (
784
- [
785
- OrchestrationStatus.RUNNING,
786
- OrchestrationStatus.WAITING_FOR_LLM_RESPONSE,
787
- ].includes(persistedState.status)
788
- ) {
789
- this.logger.warn(
790
- `Server restarted during an active orchestration run (${persistedState.runId}). Setting status to FAILED.`,
791
- );
792
- persistedState.status = OrchestrationStatus.FAILED;
793
- persistedState.error =
794
- 'Orchestration failed due to an unexpected server restart.';
795
- this.activeRun = persistedState;
796
- await this.persistState();
797
- this.emitStatus();
798
- } else if (
799
- [
800
- OrchestrationStatus.COMPLETED,
801
- OrchestrationStatus.FAILED,
802
- OrchestrationStatus.STOPPED,
803
- ].includes(persistedState.status)
804
- ) {
805
- // If the server restarts after a terminal state, load it so the user can dismiss it.
806
- this.activeRun = persistedState;
807
- this.emitStatus();
808
- }
809
- }
810
- }
811
- &nbsp;
812
- private async setState(
813
- status: OrchestrationStatus,
814
- newState?: Partial&lt;Omit&lt;OrchestrationRunState, 'status'&gt;&gt;,
815
- ) {
816
- if (this.activeRun) {
817
- this.activeRun.status = status;
818
- Object.assign(this.activeRun, newState);
819
- &nbsp;
820
- if (status === OrchestrationStatus.IDLE) {
821
- this.activeRun = null;
822
- await this.appStateService.setOrchestrationRunState(null);
823
- if (this.timeoutTimer) clearTimeout(this.timeoutTimer);
824
- } else {
825
- await this.persistState();
826
- }
827
- this.emitStatus();
828
- } else <span class="cstat-no" title="statement not covered" ><span class="missing-if-branch" title="if path not taken" >I</span><span class="missing-if-branch" title="else path not taken" >E</span>if (status !== OrchestrationStatus.IDLE) {</span>
829
- <span class="cstat-no" title="statement not covered" > this.logger.warn(`Cannot set status to ${status} without an active run.`);</span>
830
- }
831
- }
832
- &nbsp;
833
- private async persistState() {
834
- await this.appStateService.setOrchestrationRunState(this.activeRun);
835
- }
836
- &nbsp;
837
- private emitStatus() {
838
- this.eventsGateway.sendToAll('orchestration_status_update', this.activeRun);
839
- }
840
- &nbsp;
841
- private log(message: string) {
842
- if (!this.activeRun) return;
843
- this.logger.log(`[Run ${this.activeRun.runId}] ${message}`);
844
- this.activeRun.log.push(`${new Date().toISOString()} - ${message}`);
845
- this.eventsGateway.sendToAll('orchestration_log', { message });
846
- }
847
- &nbsp;
848
- getActiveRun(): OrchestrationRunState | null {
849
- return this.activeRun;
850
- }
851
- &nbsp;
852
- async start(dto: StartOrchestrationDto): Promise&lt;void&gt; {
853
- <span class="missing-if-branch" title="if path not taken" >I</span>if (this.activeRun) {
854
- <span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (</span>
855
- this.activeRun.scriptName === dto.scriptName &amp;&amp;
856
- this.activeRun.status === OrchestrationStatus.STOPPED
857
- ) {
858
- <span class="cstat-no" title="statement not covered" > this.log('Resuming stopped orchestration.');</span>
859
- <span class="cstat-no" title="statement not covered" > this.execute().catch(<span class="fstat-no" title="function not covered" >(e</span>rror) =&gt; <span class="cstat-no" title="statement not covered" >this.fail(error.message))</span>;</span>
860
- <span class="cstat-no" title="statement not covered" > return;</span>
861
- }
862
- <span class="cstat-no" title="statement not covered" > throw new BadRequestException(</span>
863
- `An orchestration is already running or paused: "${this.activeRun.scriptName}" is in state "${this.activeRun.status}".`,
864
- );
865
- }
866
- &nbsp;
867
- // Clone the script for a fresh run
868
- await this.fsService.cloneScriptForRun(dto.scriptName);
869
- const runScriptContent = await this.fsService.readRunScript(dto.scriptName);
870
- const initialChunks =
871
- await this.parserService.parseScript(runScriptContent);
872
- const timeoutMs = await this.appStateService.getOrchestrationTimeoutMs();
873
- &nbsp;
874
- this.activeRun = {
875
- runId: randomUUID(),
876
- status: OrchestrationStatus.RUNNING,
877
- mode: dto.mode,
878
- scriptName: dto.scriptName,
879
- sessionId: dto.sessionId,
880
- currentStep: 0,
881
- totalSteps: initialChunks.length,
882
- waitStartTime: null,
883
- waitingOnInputId: null,
884
- error: null,
885
- log: [],
886
- timeoutMs,
887
- };
888
- await this.persistState();
889
- this.log(
890
- `Orchestration started in ${dto.mode} mode with ${initialChunks.length} total steps. Timeout is ${timeoutMs / 1000}s.`,
891
- );
892
- this.emitStatus();
893
- &nbsp;
894
- // Non-blocking execution
895
- this.execute().catch(<span class="fstat-no" title="function not covered" >(e</span>rror) =&gt; {
896
- <span class="cstat-no" title="statement not covered" > this.logger.error(</span>
897
- `Unhandled error in orchestration execution: ${error.message}`,
898
- error.stack,
899
- );
900
- <span class="cstat-no" title="statement not covered" > this.fail(`Unhandled error: ${error.message}`);</span>
901
- });
902
- }
903
- &nbsp;
904
- private async execute() {
905
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!this.activeRun) <span class="cstat-no" title="statement not covered" >return;</span>
906
- &nbsp;
907
- <span class="missing-if-branch" title="if path not taken" >I</span>if (this.activeRun.status === OrchestrationStatus.STOPPING) {
908
- <span class="cstat-no" title="statement not covered" > this.log('Execution loop halted due to STOPPING state.');</span>
909
- <span class="cstat-no" title="statement not covered" > this.setState(OrchestrationStatus.STOPPED);</span>
910
- <span class="cstat-no" title="statement not covered" > return;</span>
911
- }
912
- &nbsp;
913
- const { scriptName, mode, sessionId } = this.activeRun;
914
- &nbsp;
915
- const runScriptContent = await this.fsService.readRunScript(scriptName);
916
- const chunks = await this.parserService.parseScript(runScriptContent);
917
- &nbsp;
918
- if (chunks.length === 0) {
919
- this.log(
920
- 'Orchestration completed successfully: No more chunks to process.',
921
- );
922
- this.setState(OrchestrationStatus.COMPLETED);
923
- return;
924
- }
925
- &nbsp;
926
- const nextPrompt = chunks[0];
927
- const session = await this.sessionsService.findOne(sessionId);
928
- &nbsp;
929
- try {
930
- const totalSteps = this.activeRun.totalSteps;
931
- const completedSteps = totalSteps - chunks.length;
932
- this.activeRun.currentStep = completedSteps + 1;
933
- &nbsp;
934
- this.setState(OrchestrationStatus.RUNNING, {
935
- currentStep: this.activeRun.currentStep,
936
- });
937
- &nbsp;
938
- this.log(
939
- `Executing step ${
940
- this.activeRun.currentStep
941
- }/${totalSteps}: ${nextPrompt.substring(0, 100)}...`,
942
- );
943
- &nbsp;
944
- const existingInputsCount = session.sessionInputs?.length || 0;
945
- const isFirstPromptInSession = existingInputsCount === 0;
946
- &nbsp;
947
- const context_template_id = isFirstPromptInSession
948
- ? session.default_initial_context_template_id
949
- : session.default_followup_context_template_id;
950
- &nbsp;
951
- this.log(
952
- `Session has ${existingInputsCount} existing inputs. Using ${
953
- isFirstPromptInSession ? 'initial' : 'follow-up'
954
- } context template.`,
955
- );
956
- &nbsp;
957
- await this.sessionInputsService.prepareLlmInput(sessionId, {
958
- user_prompt: nextPrompt,
959
- execution_strategy:
960
- mode === OrchestrationMode.AUTO ? 'auto_apply' : 'review_first',
961
- context_template_id: context_template_id,
962
- });
963
- &nbsp;
964
- if (mode === OrchestrationMode.INTERACTIVE) {
965
- this.setState(OrchestrationStatus.PAUSED_INTERACTIVE);
966
- }
967
- // In both modes, we wait for onPromptPrepared to be called, which will change the state.
968
- } catch (error) {
969
- <span class="cstat-no" title="statement not covered" > await this.fail(error.message);</span>
970
- }
971
- }
972
- &nbsp;
973
- onPromptPrepared(inputId: string) {
974
- if (this.activeRun?.status === OrchestrationStatus.RUNNING) {
975
- this.log(
976
- `[onPromptPrepared] Prompt prepared for input ${inputId}. Awaiting LLM response.`,
977
- );
978
- this.setState(OrchestrationStatus.WAITING_FOR_LLM_RESPONSE, {
979
- waitingOnInputId: inputId,
980
- waitStartTime: Date.now(),
981
- });
982
- this.timeoutTimer = setTimeout(() =&gt; {
983
- this.fail('Orchestration timed out waiting for LLM response.');
984
- }, this.activeRun.timeoutMs);
985
- } else {
986
- this.logger.warn(
987
- `[onPromptPrepared] Called but active run status is not 'RUNNING'. Current status: ${this.activeRun?.status}`,
988
- );
989
- }
990
- }
991
- &nbsp;
992
- async stop(): Promise&lt;void&gt; {
993
- if (
994
- this.activeRun &amp;&amp;
995
- (this.activeRun.status === OrchestrationStatus.RUNNING ||
996
- this.activeRun.status === OrchestrationStatus.WAITING_FOR_LLM_RESPONSE)
997
- ) {
998
- this.log('Graceful stop requested.');
999
- <span class="missing-if-branch" title="if path not taken" >I</span>if (this.timeoutTimer) <span class="cstat-no" title="statement not covered" >clearTimeout(this.timeoutTimer);</span>
1000
- this.setState(OrchestrationStatus.STOPPING);
1001
- }
1002
- }
1003
- &nbsp;
1004
- async proceed(): Promise&lt;void&gt; {
1005
- if (
1006
- this.activeRun &amp;&amp;
1007
- this.activeRun.status === OrchestrationStatus.PAUSED_INTERACTIVE
1008
- ) {
1009
- this.log('Proceeding to next step...');
1010
- await this.fsService.consumeNextChunk(this.activeRun.scriptName);
1011
- this.execute().catch(<span class="fstat-no" title="function not covered" >(e</span>) =&gt; <span class="cstat-no" title="statement not covered" >this.fail(e.message))</span>;
1012
- }
1013
- }
1014
- &nbsp;
1015
- async emergencyStop(): Promise&lt;void&gt; {
1016
- if (this.activeRun) {
1017
- this.log('Emergency stop triggered!');
1018
- <span class="missing-if-branch" title="if path not taken" >I</span>if (this.timeoutTimer) <span class="cstat-no" title="statement not covered" >clearTimeout(this.timeoutTimer);</span>
1019
- this.setState(OrchestrationStatus.FAILED, {
1020
- error: 'Forcefully stopped by user.',
1021
- });
1022
- }
1023
- }
1024
- &nbsp;
1025
- async clearActiveRun(): Promise&lt;void&gt; {
1026
- if (this.activeRun) {
1027
- this.log('Clearing active run state.');
1028
- this.setState(OrchestrationStatus.IDLE);
1029
- }
1030
- }
1031
- &nbsp;
1032
- async resumeFromInput(inputId: string): Promise&lt;void&gt; {
1033
- this.log(
1034
- `[resumeFromInput] Attempting to resume for completed input ID: ${inputId}`,
1035
- );
1036
- if (!this.activeRun) {
1037
- this.logger.warn('[resumeFromInput] Cannot resume, no active run.');
1038
- return;
1039
- }
1040
- if (
1041
- this.activeRun.status !== OrchestrationStatus.WAITING_FOR_LLM_RESPONSE
1042
- ) {
1043
- this.logger.warn(
1044
- `[resumeFromInput] Cannot resume, status is '${this.activeRun.status}', not 'waiting_for_llm_response'.`,
1045
- );
1046
- return;
1047
- }
1048
- if (this.activeRun.waitingOnInputId !== inputId) {
1049
- this.logger.warn(
1050
- `[resumeFromInput] Mismatched input ID. Expected '${this.activeRun.waitingOnInputId}', but got '${inputId}'.`,
1051
- );
1052
- return;
1053
- }
1054
- &nbsp;
1055
- if (this.timeoutTimer) clearTimeout(this.timeoutTimer);
1056
- this.log(
1057
- `[resumeFromInput] Resuming orchestration after receiving response for ${inputId}`,
1058
- );
1059
- &nbsp;
1060
- await this.fsService.consumeNextChunk(this.activeRun.scriptName);
1061
- &nbsp;
1062
- this.log(`[resumeFromInput] Re-triggering execution loop.`);
1063
- this.execute().catch(<span class="fstat-no" title="function not covered" >(e</span>) =&gt; <span class="cstat-no" title="statement not covered" >this.fail(e.message))</span>;
1064
- }
1065
- &nbsp;
1066
- async fail(error: string): Promise&lt;void&gt; {
1067
- if (this.activeRun) {
1068
- this.logger.error(`Orchestration failed: ${error}`);
1069
- if (this.timeoutTimer) clearTimeout(this.timeoutTimer);
1070
- this.setState(OrchestrationStatus.FAILED, { error });
1071
- }
1072
- }
1073
- }
1074
- &nbsp;</pre></td></tr></table></pre>
1075
-
1076
- <div class='push'></div><!-- for sticky footer -->
1077
- </div><!-- /wrapper -->
1078
- <div class='footer quiet pad2 space-top1 center small'>
1079
- Code coverage generated by
1080
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1081
- at 2025-09-12T19:21:55.945Z
1082
- </div>
1083
- <script src="../../prettify.js"></script>
1084
- <script>
1085
- window.onload = function () {
1086
- prettyPrint();
1087
- };
1088
- </script>
1089
- <script src="../../sorter.js"></script>
1090
- <script src="../../block-navigation.js"></script>
1091
- </body>
1092
- </html>
1093
-