@autobe/agent 0.28.1 → 0.29.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (543) hide show
  1. package/lib/AutoBeAgent.js +5 -4
  2. package/lib/AutoBeAgent.js.map +1 -1
  3. package/lib/AutoBeMockAgent.js +1 -0
  4. package/lib/AutoBeMockAgent.js.map +1 -1
  5. package/lib/constants/AutoBeConfigConstant.d.ts +3 -1
  6. package/lib/constants/AutoBeSystemPromptConstant.d.ts +39 -26
  7. package/lib/constants/AutoBeSystemPromptConstant.js.map +1 -1
  8. package/lib/context/AutoBeContext.d.ts +1 -1
  9. package/lib/factory/createAutoBeContext.js +13 -13
  10. package/lib/factory/createAutoBeContext.js.map +1 -1
  11. package/lib/index.mjs +43499 -23744
  12. package/lib/index.mjs.map +1 -1
  13. package/lib/orchestrate/analyze/histories/transformAnalyzeReviewHistories.d.ts +7 -2
  14. package/lib/orchestrate/analyze/histories/transformAnalyzeReviewHistories.js +11 -21
  15. package/lib/orchestrate/analyze/histories/transformAnalyzeReviewHistories.js.map +1 -1
  16. package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.d.ts +2 -2
  17. package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.js +12 -5
  18. package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.js.map +1 -1
  19. package/lib/orchestrate/analyze/histories/transformAnalyzeWriteHistories.d.ts +2 -2
  20. package/lib/orchestrate/analyze/histories/transformAnalyzeWriteHistories.js +53 -50
  21. package/lib/orchestrate/analyze/histories/transformAnalyzeWriteHistories.js.map +1 -1
  22. package/lib/orchestrate/analyze/orchestrateAnalyze.js +2 -2
  23. package/lib/orchestrate/analyze/orchestrateAnalyze.js.map +1 -1
  24. package/lib/orchestrate/analyze/orchestrateAnalyzeReview.js +855 -258
  25. package/lib/orchestrate/analyze/orchestrateAnalyzeReview.js.map +1 -1
  26. package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js +2 -14
  27. package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js.map +1 -1
  28. package/lib/orchestrate/analyze/orchestrateAnalyzeWrite.js +2 -9
  29. package/lib/orchestrate/analyze/orchestrateAnalyzeWrite.js.map +1 -1
  30. package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeReviewApplication.d.ts +110 -36
  31. package/lib/orchestrate/common/AutoBePreliminaryController.d.ts +40 -0
  32. package/lib/orchestrate/common/AutoBePreliminaryController.js +97 -0
  33. package/lib/orchestrate/common/AutoBePreliminaryController.js.map +1 -0
  34. package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistory.d.ts +8 -0
  35. package/lib/orchestrate/{realize/histories/transformRealizeCorrectCastingHistories.js → common/histories/transformCommonCorrectCastingHistory.js} +16 -13
  36. package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistory.js.map +1 -0
  37. package/lib/orchestrate/common/histories/transformPreliminaryHistory.d.ts +4 -0
  38. package/lib/orchestrate/common/histories/transformPreliminaryHistory.js +285 -0
  39. package/lib/orchestrate/common/histories/transformPreliminaryHistory.js.map +1 -0
  40. package/lib/orchestrate/common/histories/{transformPreviousAndLatestCorrectHistories.d.ts → transformPreviousAndLatestCorrectHistory.d.ts} +1 -1
  41. package/lib/orchestrate/common/histories/{transformPreviousAndLatestCorrectHistories.js → transformPreviousAndLatestCorrectHistory.js} +4 -4
  42. package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistory.js.map +1 -0
  43. package/lib/orchestrate/common/internal/complementPreliminaryCollection.d.ts +7 -0
  44. package/lib/orchestrate/common/internal/complementPreliminaryCollection.js +99 -0
  45. package/lib/orchestrate/common/internal/complementPreliminaryCollection.js.map +1 -0
  46. package/lib/orchestrate/common/internal/createPreliminaryCollection.d.ts +3 -0
  47. package/lib/orchestrate/common/internal/createPreliminaryCollection.js +20 -0
  48. package/lib/orchestrate/common/internal/createPreliminaryCollection.js.map +1 -0
  49. package/lib/orchestrate/common/internal/validatePreliminary.d.ts +5 -0
  50. package/lib/orchestrate/common/internal/validatePreliminary.js +217 -0
  51. package/lib/orchestrate/common/internal/validatePreliminary.js.map +1 -0
  52. package/lib/orchestrate/common/orchestrateCommonCorrectCasting.js +10 -22
  53. package/lib/orchestrate/common/orchestrateCommonCorrectCasting.js.map +1 -1
  54. package/lib/orchestrate/common/orchestratePreliminary.d.ts +12 -0
  55. package/lib/orchestrate/common/orchestratePreliminary.js +231 -0
  56. package/lib/orchestrate/common/orchestratePreliminary.js.map +1 -0
  57. package/lib/orchestrate/common/structures/AutoBePreliminaryRequest.d.ts +16 -0
  58. package/lib/orchestrate/{realize/structures/IAutoBeRealizeAuthorizationApplication.js → common/structures/AutoBePreliminaryRequest.js} +1 -1
  59. package/lib/orchestrate/common/structures/AutoBePreliminaryRequest.js.map +1 -0
  60. package/lib/orchestrate/common/structures/IAutoBeCommonCorrectCastingApplication.d.ts +1 -4
  61. package/lib/orchestrate/common/structures/IAutoBeOrchestrateResult.d.ts +9 -0
  62. package/lib/orchestrate/{interface/structures/IAutoBeInterfacePrerequisitesApplication.js → common/structures/IAutoBeOrchestrateResult.js} +1 -1
  63. package/lib/orchestrate/common/structures/IAutoBeOrchestrateResult.js.map +1 -0
  64. package/lib/orchestrate/common/structures/IAutoBePreliminaryCollection.d.ts +8 -0
  65. package/lib/orchestrate/{interface/structures/IAutoBeInterfaceEndpointsReviewApplication.js → common/structures/IAutoBePreliminaryCollection.js} +1 -1
  66. package/lib/orchestrate/common/structures/IAutoBePreliminaryCollection.js.map +1 -0
  67. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetAnalysisFiles.d.ts +27 -0
  68. package/lib/orchestrate/{interface/structures/IAutoBeInterfaceOperationsReviewApplication.js → common/structures/IAutoBePreliminaryGetAnalysisFiles.js} +1 -1
  69. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetAnalysisFiles.js.map +1 -0
  70. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceOperations.d.ts +28 -0
  71. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceOperations.js +3 -0
  72. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceOperations.js.map +1 -0
  73. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceSchemas.d.ts +27 -0
  74. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceSchemas.js +3 -0
  75. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceSchemas.js.map +1 -0
  76. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetPrismaSchemas.d.ts +27 -0
  77. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetPrismaSchemas.js +3 -0
  78. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetPrismaSchemas.js.map +1 -0
  79. package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationHistory.d.ts +10 -0
  80. package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationHistory.js +70 -0
  81. package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationHistory.js.map +1 -0
  82. package/lib/orchestrate/interface/histories/transformInterfaceCommonHistory.d.ts +3 -0
  83. package/lib/orchestrate/interface/histories/{transformInterfaceCommonHistories.js → transformInterfaceCommonHistory.js} +4 -4
  84. package/lib/orchestrate/interface/histories/transformInterfaceCommonHistory.js.map +1 -0
  85. package/lib/orchestrate/interface/histories/transformInterfaceComplementHistory.d.ts +9 -0
  86. package/lib/orchestrate/interface/histories/transformInterfaceComplementHistory.js +60 -0
  87. package/lib/orchestrate/interface/histories/transformInterfaceComplementHistory.js.map +1 -0
  88. package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistory.d.ts +12 -0
  89. package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistory.js +63 -0
  90. package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistory.js.map +1 -0
  91. package/lib/orchestrate/interface/histories/transformInterfaceEndpointReviewHistory.d.ts +7 -0
  92. package/lib/orchestrate/interface/histories/transformInterfaceEndpointReviewHistory.js +36 -0
  93. package/lib/orchestrate/interface/histories/transformInterfaceEndpointReviewHistory.js.map +1 -0
  94. package/lib/orchestrate/interface/histories/transformInterfaceGroupHistory.d.ts +6 -0
  95. package/lib/orchestrate/interface/histories/transformInterfaceGroupHistory.js +68 -0
  96. package/lib/orchestrate/interface/histories/transformInterfaceGroupHistory.js.map +1 -0
  97. package/lib/orchestrate/interface/histories/transformInterfaceOperationHistory.d.ts +9 -0
  98. package/lib/orchestrate/interface/histories/transformInterfaceOperationHistory.js +72 -0
  99. package/lib/orchestrate/interface/histories/transformInterfaceOperationHistory.js.map +1 -0
  100. package/lib/orchestrate/interface/histories/transformInterfaceOperationReviewHistory.d.ts +7 -0
  101. package/lib/orchestrate/interface/histories/transformInterfaceOperationReviewHistory.js +38 -0
  102. package/lib/orchestrate/interface/histories/transformInterfaceOperationReviewHistory.js.map +1 -0
  103. package/lib/orchestrate/interface/histories/transformInterfacePrerequisiteHistory.d.ts +8 -0
  104. package/lib/orchestrate/interface/histories/transformInterfacePrerequisiteHistory.js +73 -0
  105. package/lib/orchestrate/interface/histories/transformInterfacePrerequisiteHistory.js.map +1 -0
  106. package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistory.d.ts +11 -0
  107. package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistory.js +95 -0
  108. package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistory.js.map +1 -0
  109. package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistory.d.ts +5 -0
  110. package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistory.js +54 -0
  111. package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistory.js.map +1 -0
  112. package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistory.d.ts +12 -0
  113. package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistory.js +75 -0
  114. package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistory.js.map +1 -0
  115. package/lib/orchestrate/interface/orchestrateInterface.js +90 -46
  116. package/lib/orchestrate/interface/orchestrateInterface.js.map +1 -1
  117. package/lib/orchestrate/interface/orchestrateInterfaceAuthorization.d.ts +6 -0
  118. package/lib/orchestrate/interface/{orchestrateInterfaceAuthorizations.js → orchestrateInterfaceAuthorization.js} +1370 -226
  119. package/lib/orchestrate/interface/orchestrateInterfaceAuthorization.js.map +1 -0
  120. package/lib/orchestrate/interface/orchestrateInterfaceComplement.d.ts +4 -3
  121. package/lib/orchestrate/interface/orchestrateInterfaceComplement.js +2807 -532
  122. package/lib/orchestrate/interface/orchestrateInterfaceComplement.js.map +1 -1
  123. package/lib/orchestrate/interface/{orchestrateInterfaceEndpoints.d.ts → orchestrateInterfaceEndpoint.d.ts} +1 -1
  124. package/lib/orchestrate/interface/orchestrateInterfaceEndpoint.js +1356 -0
  125. package/lib/orchestrate/interface/orchestrateInterfaceEndpoint.js.map +1 -0
  126. package/lib/orchestrate/interface/orchestrateInterfaceEndpointReview.d.ts +4 -0
  127. package/lib/orchestrate/interface/orchestrateInterfaceEndpointReview.js +1337 -0
  128. package/lib/orchestrate/interface/orchestrateInterfaceEndpointReview.js.map +1 -0
  129. package/lib/orchestrate/interface/{orchestrateInterfaceGroups.d.ts → orchestrateInterfaceGroup.d.ts} +1 -2
  130. package/lib/orchestrate/interface/orchestrateInterfaceGroup.js +621 -0
  131. package/lib/orchestrate/interface/orchestrateInterfaceGroup.js.map +1 -0
  132. package/lib/orchestrate/interface/{orchestrateInterfaceOperations.d.ts → orchestrateInterfaceOperation.d.ts} +1 -2
  133. package/lib/orchestrate/interface/{orchestrateInterfaceOperations.js → orchestrateInterfaceOperation.js} +1275 -216
  134. package/lib/orchestrate/interface/orchestrateInterfaceOperation.js.map +1 -0
  135. package/lib/orchestrate/interface/orchestrateInterfaceOperationReview.d.ts +4 -0
  136. package/lib/orchestrate/interface/{orchestrateInterfaceOperationsReview.js → orchestrateInterfaceOperationReview.js} +1421 -247
  137. package/lib/orchestrate/interface/orchestrateInterfaceOperationReview.js.map +1 -0
  138. package/lib/orchestrate/interface/{orchestrateInterfacePrerequisites.d.ts → orchestrateInterfacePrerequisite.d.ts} +1 -1
  139. package/lib/orchestrate/interface/orchestrateInterfacePrerequisite.js +2159 -0
  140. package/lib/orchestrate/interface/orchestrateInterfacePrerequisite.js.map +1 -0
  141. package/lib/orchestrate/interface/{orchestrateInterfaceSchemas.d.ts → orchestrateInterfaceSchema.d.ts} +1 -2
  142. package/lib/orchestrate/interface/{orchestrateInterfaceSchemas.js → orchestrateInterfaceSchema.js} +2550 -546
  143. package/lib/orchestrate/interface/orchestrateInterfaceSchema.js.map +1 -0
  144. package/lib/orchestrate/interface/orchestrateInterfaceSchemaRename.js +7 -17
  145. package/lib/orchestrate/interface/orchestrateInterfaceSchemaRename.js.map +1 -1
  146. package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.d.ts +1 -0
  147. package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.js +2823 -548
  148. package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.js.map +1 -1
  149. package/lib/orchestrate/interface/structures/IAutoBeInterfaceAuthorizationsApplication.d.ts +56 -5
  150. package/lib/orchestrate/interface/structures/IAutoBeInterfaceComplementApplication.d.ts +57 -10
  151. package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointApplication.d.ts +55 -10
  152. package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointReviewApplication.d.ts +96 -0
  153. package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointReviewApplication.js +3 -0
  154. package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointReviewApplication.js.map +1 -0
  155. package/lib/orchestrate/interface/structures/IAutoBeInterfaceGroupApplication.d.ts +6 -82
  156. package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.d.ts +58 -13
  157. package/lib/orchestrate/interface/structures/{IAutoBeInterfaceOperationsReviewApplication.d.ts → IAutoBeInterfaceOperationReviewApplication.d.ts} +58 -28
  158. package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationReviewApplication.js +3 -0
  159. package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationReviewApplication.js.map +1 -0
  160. package/lib/orchestrate/interface/structures/IAutoBeInterfacePrerequisiteApplication.d.ts +98 -0
  161. package/lib/orchestrate/interface/structures/IAutoBeInterfacePrerequisiteApplication.js +3 -0
  162. package/lib/orchestrate/interface/structures/IAutoBeInterfacePrerequisiteApplication.js.map +1 -0
  163. package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaApplication.d.ts +56 -15
  164. package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaContentReviewApplication.d.ts +62 -22
  165. package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRelationReviewApplication.d.ts +60 -21
  166. package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaSecurityReviewApplication.d.ts +61 -19
  167. package/lib/orchestrate/interface/utils/JsonSchemaFactory.js +29 -23
  168. package/lib/orchestrate/interface/utils/JsonSchemaFactory.js.map +1 -1
  169. package/lib/orchestrate/interface/utils/JsonSchemaNamingConvention.js +67 -61
  170. package/lib/orchestrate/interface/utils/JsonSchemaNamingConvention.js.map +1 -1
  171. package/lib/orchestrate/interface/utils/JsonSchemaValidator.d.ts +2 -1
  172. package/lib/orchestrate/interface/utils/JsonSchemaValidator.js +52 -25
  173. package/lib/orchestrate/interface/utils/JsonSchemaValidator.js.map +1 -1
  174. package/lib/orchestrate/interface/utils/OperationValidator.js +59 -1
  175. package/lib/orchestrate/interface/utils/OperationValidator.js.map +1 -1
  176. package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistory.d.ts +6 -0
  177. package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistory.js +98 -0
  178. package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistory.js.map +1 -0
  179. package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistory.d.ts +7 -0
  180. package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistory.js +31 -0
  181. package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistory.js.map +1 -0
  182. package/lib/orchestrate/prisma/histories/transformPrismaReviewHistory.d.ts +7 -0
  183. package/lib/orchestrate/prisma/histories/transformPrismaReviewHistory.js +38 -0
  184. package/lib/orchestrate/prisma/histories/transformPrismaReviewHistory.js.map +1 -0
  185. package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistory.d.ts +8 -0
  186. package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistory.js +79 -0
  187. package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistory.js.map +1 -0
  188. package/lib/orchestrate/prisma/orchestratePrisma.js +9 -6
  189. package/lib/orchestrate/prisma/orchestratePrisma.js.map +1 -1
  190. package/lib/orchestrate/prisma/orchestratePrismaComponent.d.ts +1 -1
  191. package/lib/orchestrate/prisma/orchestratePrismaComponent.js +8 -14
  192. package/lib/orchestrate/prisma/orchestratePrismaComponent.js.map +1 -1
  193. package/lib/orchestrate/prisma/orchestratePrismaCorrect.js +2863 -1543
  194. package/lib/orchestrate/prisma/orchestratePrismaCorrect.js.map +1 -1
  195. package/lib/orchestrate/prisma/orchestratePrismaReview.d.ts +1 -1
  196. package/lib/orchestrate/prisma/orchestratePrismaReview.js +2886 -1566
  197. package/lib/orchestrate/prisma/orchestratePrismaReview.js.map +1 -1
  198. package/lib/orchestrate/prisma/{orchestratePrismaSchemas.d.ts → orchestratePrismaSchema.d.ts} +1 -1
  199. package/lib/orchestrate/prisma/orchestratePrismaSchema.js +3068 -0
  200. package/lib/orchestrate/prisma/orchestratePrismaSchema.js.map +1 -0
  201. package/lib/orchestrate/prisma/structures/IAutoBePrismaCorrectApplication.d.ts +74 -76
  202. package/lib/orchestrate/prisma/structures/IAutoBePrismaReviewApplication.d.ts +90 -72
  203. package/lib/orchestrate/prisma/structures/IAutoBePrismaSchemaApplication.d.ts +89 -66
  204. package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistory.d.ts +9 -0
  205. package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistory.js +79 -0
  206. package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistory.js.map +1 -0
  207. package/lib/orchestrate/realize/histories/transformRealizeAuthorizationWriteHistory.d.ts +7 -0
  208. package/lib/orchestrate/realize/histories/transformRealizeAuthorizationWriteHistory.js +41 -0
  209. package/lib/orchestrate/realize/histories/transformRealizeAuthorizationWriteHistory.js.map +1 -0
  210. package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistory.d.ts +12 -0
  211. package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistory.js +67 -0
  212. package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistory.js.map +1 -0
  213. package/lib/orchestrate/realize/histories/transformRealizeCorrectHistory.d.ts +18 -0
  214. package/lib/orchestrate/realize/histories/transformRealizeCorrectHistory.js +54 -0
  215. package/lib/orchestrate/realize/histories/transformRealizeCorrectHistory.js.map +1 -0
  216. package/lib/orchestrate/realize/histories/transformRealizeWriteHistories.d.ts +4 -2
  217. package/lib/orchestrate/realize/histories/transformRealizeWriteHistories.js +140 -106
  218. package/lib/orchestrate/realize/histories/transformRealizeWriteHistories.js.map +1 -1
  219. package/lib/orchestrate/realize/histories/transformRealizeWriteMembershipHistory.d.ts +3 -0
  220. package/lib/orchestrate/realize/histories/transformRealizeWriteMembershipHistory.js +23 -0
  221. package/lib/orchestrate/realize/histories/transformRealizeWriteMembershipHistory.js.map +1 -0
  222. package/lib/orchestrate/realize/orchestrateRealize.js +4 -4
  223. package/lib/orchestrate/realize/orchestrateRealize.js.map +1 -1
  224. package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.d.ts +5 -1
  225. package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js +1288 -572
  226. package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js.map +1 -1
  227. package/lib/orchestrate/realize/{orchestrateRealizeAuthorization.d.ts → orchestrateRealizeAuthorizationWrite.d.ts} +1 -1
  228. package/lib/orchestrate/realize/orchestrateRealizeAuthorizationWrite.js +1410 -0
  229. package/lib/orchestrate/realize/orchestrateRealizeAuthorizationWrite.js.map +1 -0
  230. package/lib/orchestrate/realize/orchestrateRealizeCorrect.js +664 -140
  231. package/lib/orchestrate/realize/orchestrateRealizeCorrect.js.map +1 -1
  232. package/lib/orchestrate/realize/orchestrateRealizeCorrectCasting.js +20 -65
  233. package/lib/orchestrate/realize/orchestrateRealizeCorrectCasting.js.map +1 -1
  234. package/lib/orchestrate/realize/orchestrateRealizeWrite.js +660 -135
  235. package/lib/orchestrate/realize/orchestrateRealizeWrite.js.map +1 -1
  236. package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationCorrectApplication.d.ts +79 -19
  237. package/lib/orchestrate/realize/structures/{IAutoBeRealizeAuthorizationApplication.d.ts → IAutoBeRealizeAuthorizationWriteApplication.d.ts} +60 -27
  238. package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationWriteApplication.js +3 -0
  239. package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationWriteApplication.js.map +1 -0
  240. package/lib/orchestrate/realize/structures/IAutoBeRealizeCorrectApplication.d.ts +54 -5
  241. package/lib/orchestrate/realize/structures/IAutoBeRealizeScenarioResult.d.ts +6 -14
  242. package/lib/orchestrate/realize/structures/IAutoBeRealizeWriteApplication.d.ts +54 -6
  243. package/lib/orchestrate/realize/utils/generateRealizeScenario.d.ts +1 -3
  244. package/lib/orchestrate/realize/utils/generateRealizeScenario.js +1 -7
  245. package/lib/orchestrate/realize/utils/generateRealizeScenario.js.map +1 -1
  246. package/lib/orchestrate/test/histories/transformTestCorrectHistories.d.ts +3 -3
  247. package/lib/orchestrate/test/histories/transformTestCorrectHistories.js +23 -20
  248. package/lib/orchestrate/test/histories/transformTestCorrectHistories.js.map +1 -1
  249. package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistory.d.ts +4 -0
  250. package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistory.js +36 -0
  251. package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistory.js.map +1 -0
  252. package/lib/orchestrate/test/histories/transformTestScenarioHistory.d.ts +11 -0
  253. package/lib/orchestrate/test/histories/transformTestScenarioHistory.js +95 -0
  254. package/lib/orchestrate/test/histories/transformTestScenarioHistory.js.map +1 -0
  255. package/lib/orchestrate/test/histories/transformTestScenarioReviewHistory.d.ts +10 -0
  256. package/lib/orchestrate/test/histories/transformTestScenarioReviewHistory.js +67 -0
  257. package/lib/orchestrate/test/histories/transformTestScenarioReviewHistory.js.map +1 -0
  258. package/lib/orchestrate/test/histories/{transformTestWriteHistories.d.ts → transformTestWriteHistory.d.ts} +4 -4
  259. package/lib/orchestrate/test/histories/{transformTestWriteHistories.js → transformTestWriteHistory.js} +79 -76
  260. package/lib/orchestrate/test/histories/transformTestWriteHistory.js.map +1 -0
  261. package/lib/orchestrate/test/orchestrateTestCorrect.js +13 -26
  262. package/lib/orchestrate/test/orchestrateTestCorrect.js.map +1 -1
  263. package/lib/orchestrate/test/orchestrateTestCorrectInvalidRequest.js +3 -15
  264. package/lib/orchestrate/test/orchestrateTestCorrectInvalidRequest.js.map +1 -1
  265. package/lib/orchestrate/test/orchestrateTestScenario.d.ts +1 -1
  266. package/lib/orchestrate/test/orchestrateTestScenario.js +1370 -316
  267. package/lib/orchestrate/test/orchestrateTestScenario.js.map +1 -1
  268. package/lib/orchestrate/test/orchestrateTestScenarioReview.d.ts +5 -3
  269. package/lib/orchestrate/test/orchestrateTestScenarioReview.js +1067 -288
  270. package/lib/orchestrate/test/orchestrateTestScenarioReview.js.map +1 -1
  271. package/lib/orchestrate/test/orchestrateTestWrite.js +8 -15
  272. package/lib/orchestrate/test/orchestrateTestWrite.js.map +1 -1
  273. package/lib/orchestrate/test/structures/IAutoBeTestScenarioApplication.d.ts +66 -4
  274. package/lib/orchestrate/test/structures/IAutoBeTestScenarioReviewApplication.d.ts +82 -14
  275. package/lib/structures/IAutoBeOrchestrateHistory.d.ts +5 -0
  276. package/lib/structures/IAutoBeOrchestrateHistory.js +3 -0
  277. package/lib/structures/IAutoBeOrchestrateHistory.js.map +1 -0
  278. package/lib/utils/executeCachedBatch.d.ts +5 -1
  279. package/lib/utils/executeCachedBatch.js +23 -5
  280. package/lib/utils/executeCachedBatch.js.map +1 -1
  281. package/lib/utils/validateEmptyCode.js +2 -2
  282. package/lib/utils/validateEmptyCode.js.map +1 -1
  283. package/package.json +8 -6
  284. package/src/AutoBeAgent.ts +2 -1
  285. package/src/AutoBeMockAgent.ts +1 -0
  286. package/src/constants/AutoBeConfigConstant.ts +2 -0
  287. package/src/constants/AutoBeSystemPromptConstant.ts +39 -26
  288. package/src/context/AutoBeContext.ts +1 -1
  289. package/src/factory/createAutoBeContext.ts +10 -5
  290. package/src/orchestrate/analyze/histories/transformAnalyzeReviewHistories.ts +17 -28
  291. package/src/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.ts +12 -6
  292. package/src/orchestrate/analyze/histories/transformAnalyzeWriteHistories.ts +62 -61
  293. package/src/orchestrate/analyze/orchestrateAnalyze.ts +2 -0
  294. package/src/orchestrate/analyze/orchestrateAnalyzeReview.ts +97 -48
  295. package/src/orchestrate/analyze/orchestrateAnalyzeScenario.ts +3 -16
  296. package/src/orchestrate/analyze/orchestrateAnalyzeWrite.ts +1 -2
  297. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeReviewApplication.ts +114 -36
  298. package/src/orchestrate/common/AutoBePreliminaryController.ts +161 -0
  299. package/src/orchestrate/common/histories/transformCommonCorrectCastingHistory.ts +32 -0
  300. package/src/orchestrate/common/histories/transformPreliminaryHistory.ts +383 -0
  301. package/src/orchestrate/common/histories/{transformPreviousAndLatestCorrectHistories.ts → transformPreviousAndLatestCorrectHistory.ts} +1 -1
  302. package/src/orchestrate/common/internal/complementPreliminaryCollection.ts +123 -0
  303. package/src/orchestrate/common/internal/createPreliminaryCollection.ts +32 -0
  304. package/src/orchestrate/common/internal/validatePreliminary.ts +315 -0
  305. package/src/orchestrate/common/orchestrateCommonCorrectCasting.ts +8 -15
  306. package/src/orchestrate/common/orchestratePreliminary.ts +361 -0
  307. package/src/orchestrate/common/structures/AutoBePreliminaryRequest.ts +18 -0
  308. package/src/orchestrate/common/structures/IAutoBeCommonCorrectCastingApplication.ts +1 -4
  309. package/src/orchestrate/common/structures/IAutoBeOrchestrateResult.ts +13 -0
  310. package/src/orchestrate/common/structures/IAutoBePreliminaryCollection.ts +9 -0
  311. package/src/orchestrate/common/structures/IAutoBePreliminaryGetAnalysisFiles.ts +29 -0
  312. package/src/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceOperations.ts +30 -0
  313. package/src/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceSchemas.ts +29 -0
  314. package/src/orchestrate/common/structures/IAutoBePreliminaryGetPrismaSchemas.ts +29 -0
  315. package/src/orchestrate/interface/histories/transformInterfaceAuthorizationHistory.ts +77 -0
  316. package/src/orchestrate/interface/histories/{transformInterfaceCommonHistories.ts → transformInterfaceCommonHistory.ts} +1 -1
  317. package/src/orchestrate/interface/histories/{transformInterfaceGroupHistories.ts → transformInterfaceComplementHistory.ts} +35 -21
  318. package/src/orchestrate/interface/histories/transformInterfaceEndpointHistory.ts +74 -0
  319. package/src/orchestrate/interface/histories/transformInterfaceEndpointReviewHistory.ts +40 -0
  320. package/src/orchestrate/interface/histories/transformInterfaceGroupHistory.ts +72 -0
  321. package/src/orchestrate/interface/histories/transformInterfaceOperationHistory.ts +79 -0
  322. package/src/orchestrate/interface/histories/transformInterfaceOperationReviewHistory.ts +43 -0
  323. package/src/orchestrate/interface/histories/transformInterfacePrerequisiteHistory.ts +89 -0
  324. package/src/orchestrate/interface/histories/transformInterfaceSchemaHistory.ts +105 -0
  325. package/src/orchestrate/interface/histories/transformInterfaceSchemaRenameHistory.ts +56 -0
  326. package/src/orchestrate/interface/histories/transformInterfaceSchemaReviewHistory.ts +88 -0
  327. package/src/orchestrate/interface/orchestrateInterface.ts +115 -51
  328. package/src/orchestrate/interface/{orchestrateInterfaceAuthorizations.ts → orchestrateInterfaceAuthorization.ts} +91 -67
  329. package/src/orchestrate/interface/orchestrateInterfaceComplement.ts +174 -78
  330. package/src/orchestrate/interface/orchestrateInterfaceEndpoint.ts +207 -0
  331. package/src/orchestrate/interface/orchestrateInterfaceEndpointReview.ts +139 -0
  332. package/src/orchestrate/interface/orchestrateInterfaceGroup.ts +153 -0
  333. package/src/orchestrate/interface/{orchestrateInterfaceOperations.ts → orchestrateInterfaceOperation.ts} +109 -86
  334. package/src/orchestrate/interface/orchestrateInterfaceOperationReview.ts +186 -0
  335. package/src/orchestrate/interface/{orchestrateInterfacePrerequisites.ts → orchestrateInterfacePrerequisite.ts} +123 -58
  336. package/src/orchestrate/interface/{orchestrateInterfaceSchemas.ts → orchestrateInterfaceSchema.ts} +96 -90
  337. package/src/orchestrate/interface/orchestrateInterfaceSchemaRename.ts +10 -11
  338. package/src/orchestrate/interface/orchestrateInterfaceSchemaReview.ts +127 -60
  339. package/src/orchestrate/interface/structures/IAutoBeInterfaceAuthorizationsApplication.ts +63 -5
  340. package/src/orchestrate/interface/structures/IAutoBeInterfaceComplementApplication.ts +67 -12
  341. package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointApplication.ts +63 -10
  342. package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointReviewApplication.ts +106 -0
  343. package/src/orchestrate/interface/structures/IAutoBeInterfaceGroupApplication.ts +6 -84
  344. package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.ts +65 -13
  345. package/src/orchestrate/interface/structures/{IAutoBeInterfaceOperationsReviewApplication.ts → IAutoBeInterfaceOperationReviewApplication.ts} +65 -30
  346. package/src/orchestrate/interface/structures/IAutoBeInterfacePrerequisiteApplication.ts +111 -0
  347. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaApplication.ts +65 -15
  348. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaContentReviewApplication.ts +71 -24
  349. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaRelationReviewApplication.ts +68 -23
  350. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaSecurityReviewApplication.ts +69 -21
  351. package/src/orchestrate/interface/utils/JsonSchemaFactory.ts +31 -23
  352. package/src/orchestrate/interface/utils/JsonSchemaNamingConvention.ts +73 -61
  353. package/src/orchestrate/interface/utils/JsonSchemaValidator.ts +53 -26
  354. package/src/orchestrate/interface/utils/OperationValidator.ts +69 -1
  355. package/src/orchestrate/prisma/histories/transformPrismaComponentsHistory.ts +109 -0
  356. package/src/orchestrate/prisma/histories/{transformPrismaCorrectHistories.ts → transformPrismaCorrectHistory.ts} +13 -22
  357. package/src/orchestrate/prisma/histories/transformPrismaReviewHistory.ts +42 -0
  358. package/src/orchestrate/prisma/histories/{transformPrismaSchemaHistories.ts → transformPrismaSchemaHistory.ts} +7 -8
  359. package/src/orchestrate/prisma/orchestratePrisma.ts +12 -17
  360. package/src/orchestrate/prisma/orchestratePrismaComponent.ts +7 -15
  361. package/src/orchestrate/prisma/orchestratePrismaCorrect.ts +129 -64
  362. package/src/orchestrate/prisma/orchestratePrismaReview.ts +115 -59
  363. package/src/orchestrate/prisma/{orchestratePrismaSchemas.ts → orchestratePrismaSchema.ts} +92 -60
  364. package/src/orchestrate/prisma/structures/IAutoBePrismaCorrectApplication.ts +81 -76
  365. package/src/orchestrate/prisma/structures/IAutoBePrismaReviewApplication.ts +97 -72
  366. package/src/orchestrate/prisma/structures/IAutoBePrismaSchemaApplication.ts +93 -66
  367. package/src/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistory.ts +89 -0
  368. package/src/orchestrate/realize/histories/transformRealizeAuthorizationWriteHistory.ts +45 -0
  369. package/src/orchestrate/realize/histories/transformRealizeCorrectCastingHistory.ts +85 -0
  370. package/src/orchestrate/realize/histories/transformRealizeCorrectHistory.ts +77 -0
  371. package/src/orchestrate/realize/histories/transformRealizeWriteHistories.ts +152 -121
  372. package/src/orchestrate/realize/histories/{transformRealizeWriteAuthorizationsHistories.ts → transformRealizeWriteMembershipHistory.ts} +2 -2
  373. package/src/orchestrate/realize/orchestrateRealize.ts +4 -3
  374. package/src/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.ts +155 -97
  375. package/src/orchestrate/realize/orchestrateRealizeAuthorizationWrite.ts +241 -0
  376. package/src/orchestrate/realize/orchestrateRealizeCorrect.ts +88 -86
  377. package/src/orchestrate/realize/orchestrateRealizeCorrectCasting.ts +17 -56
  378. package/src/orchestrate/realize/orchestrateRealizeWrite.ts +82 -78
  379. package/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationCorrectApplication.ts +85 -22
  380. package/src/orchestrate/realize/structures/{IAutoBeRealizeAuthorizationApplication.ts → IAutoBeRealizeAuthorizationWriteApplication.ts} +64 -29
  381. package/src/orchestrate/realize/structures/IAutoBeRealizeCorrectApplication.ts +58 -5
  382. package/src/orchestrate/realize/structures/IAutoBeRealizeScenarioResult.ts +6 -19
  383. package/src/orchestrate/realize/structures/IAutoBeRealizeWriteApplication.ts +58 -6
  384. package/src/orchestrate/realize/utils/generateRealizeScenario.ts +2 -20
  385. package/src/orchestrate/test/histories/transformTestCorrectHistories.ts +30 -30
  386. package/src/orchestrate/test/histories/transformTestCorrectInvalidRequestHistory.ts +40 -0
  387. package/src/orchestrate/test/histories/transformTestScenarioHistory.ts +116 -0
  388. package/src/orchestrate/test/histories/transformTestScenarioReviewHistory.ts +85 -0
  389. package/src/orchestrate/test/histories/transformTestWriteHistory.ts +169 -0
  390. package/src/orchestrate/test/orchestrateTestCorrect.ts +13 -19
  391. package/src/orchestrate/test/orchestrateTestCorrectInvalidRequest.ts +5 -12
  392. package/src/orchestrate/test/orchestrateTestScenario.ts +143 -83
  393. package/src/orchestrate/test/orchestrateTestScenarioReview.ts +93 -76
  394. package/src/orchestrate/test/orchestrateTestWrite.ts +7 -7
  395. package/src/orchestrate/test/structures/IAutoBeTestScenarioApplication.ts +74 -4
  396. package/src/orchestrate/test/structures/IAutoBeTestScenarioReviewApplication.ts +89 -14
  397. package/src/structures/IAutoBeOrchestrateHistory.ts +6 -0
  398. package/src/utils/executeCachedBatch.ts +33 -7
  399. package/src/utils/validateEmptyCode.ts +2 -2
  400. package/lib/factory/AutoBeFunctionCallingMetricFactory.d.ts +0 -7
  401. package/lib/factory/AutoBeFunctionCallingMetricFactory.js +0 -35
  402. package/lib/factory/AutoBeFunctionCallingMetricFactory.js.map +0 -1
  403. package/lib/factory/AutoBeProcessAggregateFactory.d.ts +0 -13
  404. package/lib/factory/AutoBeProcessAggregateFactory.js +0 -100
  405. package/lib/factory/AutoBeProcessAggregateFactory.js.map +0 -1
  406. package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistories.d.ts +0 -8
  407. package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistories.js +0 -16
  408. package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistories.js.map +0 -1
  409. package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistories.js.map +0 -1
  410. package/lib/orchestrate/interface/histories/transformInterfaceAssetHistories.d.ts +0 -3
  411. package/lib/orchestrate/interface/histories/transformInterfaceAssetHistories.js +0 -62
  412. package/lib/orchestrate/interface/histories/transformInterfaceAssetHistories.js.map +0 -1
  413. package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.d.ts +0 -8
  414. package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.js +0 -68
  415. package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.js.map +0 -1
  416. package/lib/orchestrate/interface/histories/transformInterfaceCommonHistories.d.ts +0 -3
  417. package/lib/orchestrate/interface/histories/transformInterfaceCommonHistories.js.map +0 -1
  418. package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.d.ts +0 -9
  419. package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.js +0 -74
  420. package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.js.map +0 -1
  421. package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.d.ts +0 -10
  422. package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.js +0 -61
  423. package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.js.map +0 -1
  424. package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.d.ts +0 -4
  425. package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.js +0 -34
  426. package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.js.map +0 -1
  427. package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.d.ts +0 -6
  428. package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.js +0 -52
  429. package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.js.map +0 -1
  430. package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.d.ts +0 -8
  431. package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.js +0 -71
  432. package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.js.map +0 -1
  433. package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.d.ts +0 -5
  434. package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.js +0 -36
  435. package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.js.map +0 -1
  436. package/lib/orchestrate/interface/histories/transformInterfacePrerequisitesHistories.d.ts +0 -3
  437. package/lib/orchestrate/interface/histories/transformInterfacePrerequisitesHistories.js +0 -102
  438. package/lib/orchestrate/interface/histories/transformInterfacePrerequisitesHistories.js.map +0 -1
  439. package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.d.ts +0 -9
  440. package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.js +0 -74
  441. package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.js.map +0 -1
  442. package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.d.ts +0 -5
  443. package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.js +0 -51
  444. package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.js.map +0 -1
  445. package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.d.ts +0 -11
  446. package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.js +0 -81
  447. package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.js.map +0 -1
  448. package/lib/orchestrate/interface/orchestrateInterfaceAuthorizations.d.ts +0 -4
  449. package/lib/orchestrate/interface/orchestrateInterfaceAuthorizations.js.map +0 -1
  450. package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js +0 -508
  451. package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js.map +0 -1
  452. package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.d.ts +0 -4
  453. package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.js +0 -488
  454. package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.js.map +0 -1
  455. package/lib/orchestrate/interface/orchestrateInterfaceGroups.js +0 -458
  456. package/lib/orchestrate/interface/orchestrateInterfaceGroups.js.map +0 -1
  457. package/lib/orchestrate/interface/orchestrateInterfaceOperations.js.map +0 -1
  458. package/lib/orchestrate/interface/orchestrateInterfaceOperationsReview.d.ts +0 -4
  459. package/lib/orchestrate/interface/orchestrateInterfaceOperationsReview.js.map +0 -1
  460. package/lib/orchestrate/interface/orchestrateInterfacePrerequisites.js +0 -917
  461. package/lib/orchestrate/interface/orchestrateInterfacePrerequisites.js.map +0 -1
  462. package/lib/orchestrate/interface/orchestrateInterfaceSchemas.js.map +0 -1
  463. package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointsReviewApplication.d.ts +0 -60
  464. package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointsReviewApplication.js.map +0 -1
  465. package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationsReviewApplication.js.map +0 -1
  466. package/lib/orchestrate/interface/structures/IAutoBeInterfacePrerequisitesApplication.d.ts +0 -52
  467. package/lib/orchestrate/interface/structures/IAutoBeInterfacePrerequisitesApplication.js.map +0 -1
  468. package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistories.d.ts +0 -6
  469. package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistories.js +0 -95
  470. package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistories.js.map +0 -1
  471. package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistories.d.ts +0 -3
  472. package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistories.js +0 -41
  473. package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistories.js.map +0 -1
  474. package/lib/orchestrate/prisma/histories/transformPrismaReviewHistories.d.ts +0 -8
  475. package/lib/orchestrate/prisma/histories/transformPrismaReviewHistories.js +0 -62
  476. package/lib/orchestrate/prisma/histories/transformPrismaReviewHistories.js.map +0 -1
  477. package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistories.d.ts +0 -8
  478. package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistories.js +0 -78
  479. package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistories.js.map +0 -1
  480. package/lib/orchestrate/prisma/orchestratePrismaSchemas.js +0 -1678
  481. package/lib/orchestrate/prisma/orchestratePrismaSchemas.js.map +0 -1
  482. package/lib/orchestrate/realize/histories/transformRealizeAuthorization.d.ts +0 -5
  483. package/lib/orchestrate/realize/histories/transformRealizeAuthorization.js +0 -44
  484. package/lib/orchestrate/realize/histories/transformRealizeAuthorization.js.map +0 -1
  485. package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.d.ts +0 -5
  486. package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.js +0 -82
  487. package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.js.map +0 -1
  488. package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.d.ts +0 -5
  489. package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.js.map +0 -1
  490. package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.d.ts +0 -13
  491. package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.js +0 -29
  492. package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.js.map +0 -1
  493. package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.d.ts +0 -3
  494. package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.js +0 -23
  495. package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.js.map +0 -1
  496. package/lib/orchestrate/realize/orchestrateRealizeAuthorization.js +0 -710
  497. package/lib/orchestrate/realize/orchestrateRealizeAuthorization.js.map +0 -1
  498. package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationApplication.js.map +0 -1
  499. package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.d.ts +0 -4
  500. package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.js +0 -33
  501. package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.js.map +0 -1
  502. package/lib/orchestrate/test/histories/transformTestScenarioHistories.d.ts +0 -10
  503. package/lib/orchestrate/test/histories/transformTestScenarioHistories.js +0 -101
  504. package/lib/orchestrate/test/histories/transformTestScenarioHistories.js.map +0 -1
  505. package/lib/orchestrate/test/histories/transformTestScenarioReviewHistories.d.ts +0 -8
  506. package/lib/orchestrate/test/histories/transformTestScenarioReviewHistories.js +0 -72
  507. package/lib/orchestrate/test/histories/transformTestScenarioReviewHistories.js.map +0 -1
  508. package/lib/orchestrate/test/histories/transformTestWriteHistories.js.map +0 -1
  509. package/lib/utils/TokenUsageComputer.d.ts +0 -5
  510. package/lib/utils/TokenUsageComputer.js +0 -29
  511. package/lib/utils/TokenUsageComputer.js.map +0 -1
  512. package/src/factory/AutoBeFunctionCallingMetricFactory.ts +0 -44
  513. package/src/factory/AutoBeProcessAggregateFactory.ts +0 -141
  514. package/src/orchestrate/common/histories/transformCommonCorrectCastingHistories.ts +0 -25
  515. package/src/orchestrate/interface/histories/transformInterfaceAssetHistories.ts +0 -72
  516. package/src/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.ts +0 -75
  517. package/src/orchestrate/interface/histories/transformInterfaceComplementHistories.ts +0 -82
  518. package/src/orchestrate/interface/histories/transformInterfaceEndpointHistories.ts +0 -72
  519. package/src/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.ts +0 -40
  520. package/src/orchestrate/interface/histories/transformInterfaceOperationHistories.ts +0 -78
  521. package/src/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.ts +0 -44
  522. package/src/orchestrate/interface/histories/transformInterfacePrerequisitesHistories.ts +0 -118
  523. package/src/orchestrate/interface/histories/transformInterfaceSchemaHistories.ts +0 -80
  524. package/src/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.ts +0 -55
  525. package/src/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.ts +0 -90
  526. package/src/orchestrate/interface/orchestrateInterfaceEndpoints.ts +0 -152
  527. package/src/orchestrate/interface/orchestrateInterfaceEndpointsReview.ts +0 -98
  528. package/src/orchestrate/interface/orchestrateInterfaceGroups.ts +0 -91
  529. package/src/orchestrate/interface/orchestrateInterfaceOperationsReview.ts +0 -157
  530. package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointsReviewApplication.ts +0 -65
  531. package/src/orchestrate/interface/structures/IAutoBeInterfacePrerequisitesApplication.ts +0 -58
  532. package/src/orchestrate/prisma/histories/transformPrismaComponentsHistories.ts +0 -104
  533. package/src/orchestrate/prisma/histories/transformPrismaReviewHistories.ts +0 -69
  534. package/src/orchestrate/realize/histories/transformRealizeAuthorization.ts +0 -52
  535. package/src/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.ts +0 -95
  536. package/src/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.ts +0 -30
  537. package/src/orchestrate/realize/histories/transformRealizeCorrectHistories.ts +0 -46
  538. package/src/orchestrate/realize/orchestrateRealizeAuthorization.ts +0 -185
  539. package/src/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.ts +0 -39
  540. package/src/orchestrate/test/histories/transformTestScenarioHistories.ts +0 -125
  541. package/src/orchestrate/test/histories/transformTestScenarioReviewHistories.ts +0 -89
  542. package/src/orchestrate/test/histories/transformTestWriteHistories.ts +0 -172
  543. package/src/utils/TokenUsageComputer.ts +0 -35
@@ -45,7 +45,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
45
45
  return (mod && mod.__esModule) ? mod : { "default": mod };
46
46
  };
47
47
  Object.defineProperty(exports, "__esModule", { value: true });
48
- exports.orchestrateTestScenarioReview = orchestrateTestScenarioReview;
48
+ exports.orchestrateTestScenarioReview = void 0;
49
49
  const __typia_transform__validateReport = __importStar(require("typia/lib/internal/_validateReport.js"));
50
50
  const __typia_transform__llmApplicationFinalize = __importStar(require("typia/lib/internal/_llmApplicationFinalize.js"));
51
51
  const utils_1 = require("@autobe/utils");
@@ -53,73 +53,167 @@ const tstl_1 = require("tstl");
53
53
  const typia_1 = __importDefault(require("typia"));
54
54
  const uuid_1 = require("uuid");
55
55
  const assertSchemaModel_1 = require("../../context/assertSchemaModel");
56
- const transformTestScenarioReviewHistories_1 = require("./histories/transformTestScenarioReviewHistories");
57
- function orchestrateTestScenarioReview(ctx, props) {
58
- return __awaiter(this, void 0, void 0, function* () {
59
- const res = yield review(ctx, props);
60
- return res;
61
- });
62
- }
63
- function review(ctx, props) {
64
- return __awaiter(this, void 0, void 0, function* () {
65
- var _a, _b;
66
- try {
67
- const pointer = {
68
- value: null,
69
- };
70
- const { metric, tokenUsage } = yield ctx.conversate({
71
- source: "testScenarioReview",
72
- controller: createController({
73
- model: ctx.model,
74
- pointer,
75
- originalGroups: props.groups,
76
- }),
77
- histories: (0, transformTestScenarioReviewHistories_1.transformTestScenarioReviewHistories)({
78
- state: ctx.state(),
79
- groups: props.groups,
80
- instruction: props.instruction,
81
- }),
82
- enforceFunctionCall: true,
83
- message: "Review the Test Scenario.",
84
- });
85
- if (pointer.value === null) {
86
- // unreachable
87
- throw new Error("Failed to get review result.");
88
- }
89
- props.progress.total = Math.max(props.progress.total, (props.progress.completed += pointer.value.scenarioGroups.length));
90
- ctx.dispatch({
91
- type: "testScenarioReview",
92
- id: (0, uuid_1.v7)(),
93
- metric,
94
- tokenUsage,
95
- total: props.progress.total,
96
- completed: props.progress.completed,
97
- scenarios: pointer.value.scenarioGroups
98
- .map((group) => {
99
- return group.scenarios.map((s) => {
100
- return Object.assign(Object.assign({}, s), { endpoint: group.endpoint });
101
- });
102
- })
103
- .flat(),
104
- step: (_b = (_a = ctx.state().interface) === null || _a === void 0 ? void 0 : _a.step) !== null && _b !== void 0 ? _b : 0,
105
- created_at: new Date().toISOString(),
106
- });
107
- // @todo michael: need to investigate scenario removal more gracefully
108
- return pointer.value.pass
109
- ? // || pointer.value.scenarioGroups.length < props.groups.length
110
- props.groups
111
- : pointer.value.scenarioGroups;
112
- }
113
- catch (_c) {
114
- props.progress.completed += props.groups.length;
115
- return props.groups;
116
- }
117
- });
118
- }
119
- function createController(props) {
56
+ const transformTestScenarioReviewHistory_1 = require("./histories/transformTestScenarioReviewHistory");
57
+ const orchestrateTestScenarioReview = (ctx, props) => __awaiter(void 0, void 0, void 0, function* () {
58
+ try {
59
+ return yield process(ctx, props);
60
+ }
61
+ catch (_a) {
62
+ props.progress.completed += props.groups.length;
63
+ return props.groups;
64
+ }
65
+ });
66
+ exports.orchestrateTestScenarioReview = orchestrateTestScenarioReview;
67
+ const process = (ctx, props) => props.preliminary.orchestrate(ctx, (out) => __awaiter(void 0, void 0, void 0, function* () {
68
+ var _a, _b;
69
+ const pointer = {
70
+ value: null,
71
+ };
72
+ const result = yield ctx.conversate(Object.assign({ source: SOURCE, controller: createController({
73
+ model: ctx.model,
74
+ originalGroups: props.groups,
75
+ pointer,
76
+ preliminary: props.preliminary,
77
+ }), enforceFunctionCall: true }, (0, transformTestScenarioReviewHistory_1.transformTestScenarioReviewHistory)({
78
+ state: ctx.state(),
79
+ groups: props.groups,
80
+ instruction: props.instruction,
81
+ preliminary: props.preliminary,
82
+ })));
83
+ if (pointer.value !== null) {
84
+ props.progress.total = Math.max(props.progress.total, (props.progress.completed += pointer.value.scenarioGroups.length));
85
+ ctx.dispatch({
86
+ type: SOURCE,
87
+ id: (0, uuid_1.v7)(),
88
+ metric: result.metric,
89
+ tokenUsage: result.tokenUsage,
90
+ total: props.progress.total,
91
+ completed: props.progress.completed,
92
+ scenarios: pointer.value.scenarioGroups
93
+ .map((group) => {
94
+ return group.scenarios.map((s) => {
95
+ return Object.assign(Object.assign({}, s), { endpoint: group.endpoint });
96
+ });
97
+ })
98
+ .flat(),
99
+ step: (_b = (_a = ctx.state().interface) === null || _a === void 0 ? void 0 : _a.step) !== null && _b !== void 0 ? _b : 0,
100
+ created_at: new Date().toISOString(),
101
+ });
102
+ // @todo michael: need to investigate scenario removal more gracefully
103
+ return out(result)(pointer.value.pass
104
+ ? // || pointer.value.scenarioGroups.length < props.groups.length
105
+ props.groups
106
+ : pointer.value.scenarioGroups);
107
+ }
108
+ return out(result)(null);
109
+ }));
110
+ const createController = (props) => {
120
111
  (0, assertSchemaModel_1.assertSchemaModel)(props.model);
121
112
  const validate = (next) => {
122
- const result = (() => { const _io0 = input => "string" === typeof input.review && "string" === typeof input.plan && "boolean" === typeof input.pass && (Array.isArray(input.scenarioGroups) && input.scenarioGroups.every(elem => "object" === typeof elem && null !== elem && _io1(elem))); const _io1 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io2(input.endpoint) && (Array.isArray(input.scenarios) && (1 <= input.scenarios.length && input.scenarios.every(elem => "object" === typeof elem && null !== elem && _io3(elem)))); const _io2 = input => "string" === typeof input.path && RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) && ("get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method); const _io3 = input => "string" === typeof input.draft && "string" === typeof input.functionName && (Array.isArray(input.dependencies) && input.dependencies.every(elem => "object" === typeof elem && null !== elem && _io4(elem))); const _io4 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io2(input.endpoint) && "string" === typeof input.purpose; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.review || _report(_exceptionable, {
113
+ const result = (() => { const _io0 = input => "string" === typeof input.thinking && ("object" === typeof input.request && null !== input.request && _iu0(input.request)); const _io1 = input => "getAnalysisFiles" === input.type && (Array.isArray(input.fileNames) && (1 <= input.fileNames.length && input.fileNames.every(elem => "string" === typeof elem))); const _io2 = input => "getInterfaceOperations" === input.type && (Array.isArray(input.endpoints) && (1 <= input.endpoints.length && input.endpoints.every(elem => "object" === typeof elem && null !== elem && _io3(elem)))); const _io3 = input => "string" === typeof input.path && RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) && ("get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method); const _io4 = input => "getInterfaceSchemas" === input.type && (Array.isArray(input.typeNames) && (1 <= input.typeNames.length && input.typeNames.every(elem => "string" === typeof elem))); const _io5 = input => "complete" === input.type && "string" === typeof input.review && "string" === typeof input.plan && "boolean" === typeof input.pass && (Array.isArray(input.scenarioGroups) && input.scenarioGroups.every(elem => "object" === typeof elem && null !== elem && _io6(elem))); const _io6 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io3(input.endpoint) && (Array.isArray(input.scenarios) && (1 <= input.scenarios.length && input.scenarios.every(elem => "object" === typeof elem && null !== elem && _io7(elem)))); const _io7 = input => "string" === typeof input.draft && "string" === typeof input.functionName && (Array.isArray(input.dependencies) && input.dependencies.every(elem => "object" === typeof elem && null !== elem && _io8(elem))); const _io8 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io3(input.endpoint) && "string" === typeof input.purpose; const _iu0 = input => (() => {
114
+ if ("getAnalysisFiles" === input.type)
115
+ return _io1(input);
116
+ else if ("getInterfaceOperations" === input.type)
117
+ return _io2(input);
118
+ else if ("getInterfaceSchemas" === input.type)
119
+ return _io4(input);
120
+ else if ("complete" === input.type)
121
+ return _io5(input);
122
+ else
123
+ return false;
124
+ })(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
125
+ path: _path + ".thinking",
126
+ expected: "string",
127
+ value: input.thinking
128
+ }), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
129
+ path: _path + ".request",
130
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetInterfaceOperations | IAutoBePreliminaryGetInterfaceSchemas | IAutoBeTestScenarioReviewApplication.IComplete)",
131
+ value: input.request
132
+ })) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
133
+ path: _path + ".request",
134
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetInterfaceOperations | IAutoBePreliminaryGetInterfaceSchemas | IAutoBeTestScenarioReviewApplication.IComplete)",
135
+ value: input.request
136
+ })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getAnalysisFiles" === input.type || _report(_exceptionable, {
137
+ path: _path + ".type",
138
+ expected: "\"getAnalysisFiles\"",
139
+ value: input.type
140
+ }), (Array.isArray(input.fileNames) || _report(_exceptionable, {
141
+ path: _path + ".fileNames",
142
+ expected: "(Array<string> & MinItems<1>)",
143
+ value: input.fileNames
144
+ })) && ((1 <= input.fileNames.length || _report(_exceptionable, {
145
+ path: _path + ".fileNames",
146
+ expected: "Array<> & MinItems<1>",
147
+ value: input.fileNames
148
+ })) && input.fileNames.map((elem, _index7) => "string" === typeof elem || _report(_exceptionable, {
149
+ path: _path + ".fileNames[" + _index7 + "]",
150
+ expected: "string",
151
+ value: elem
152
+ })).every(flag => flag)) || _report(_exceptionable, {
153
+ path: _path + ".fileNames",
154
+ expected: "(Array<string> & MinItems<1>)",
155
+ value: input.fileNames
156
+ })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["getInterfaceOperations" === input.type || _report(_exceptionable, {
157
+ path: _path + ".type",
158
+ expected: "\"getInterfaceOperations\"",
159
+ value: input.type
160
+ }), (Array.isArray(input.endpoints) || _report(_exceptionable, {
161
+ path: _path + ".endpoints",
162
+ expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
163
+ value: input.endpoints
164
+ })) && ((1 <= input.endpoints.length || _report(_exceptionable, {
165
+ path: _path + ".endpoints",
166
+ expected: "Array<> & MinItems<1>",
167
+ value: input.endpoints
168
+ })) && input.endpoints.map((elem, _index8) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
169
+ path: _path + ".endpoints[" + _index8 + "]",
170
+ expected: "AutoBeOpenApi.IEndpoint",
171
+ value: elem
172
+ })) && _vo3(elem, _path + ".endpoints[" + _index8 + "]", true && _exceptionable) || _report(_exceptionable, {
173
+ path: _path + ".endpoints[" + _index8 + "]",
174
+ expected: "AutoBeOpenApi.IEndpoint",
175
+ value: elem
176
+ })).every(flag => flag)) || _report(_exceptionable, {
177
+ path: _path + ".endpoints",
178
+ expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
179
+ value: input.endpoints
180
+ })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
181
+ path: _path + ".path",
182
+ expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
183
+ value: input.path
184
+ })) || _report(_exceptionable, {
185
+ path: _path + ".path",
186
+ expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
187
+ value: input.path
188
+ }), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
189
+ path: _path + ".method",
190
+ expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
191
+ value: input.method
192
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["getInterfaceSchemas" === input.type || _report(_exceptionable, {
193
+ path: _path + ".type",
194
+ expected: "\"getInterfaceSchemas\"",
195
+ value: input.type
196
+ }), (Array.isArray(input.typeNames) || _report(_exceptionable, {
197
+ path: _path + ".typeNames",
198
+ expected: "(Array<string> & MinItems<1>)",
199
+ value: input.typeNames
200
+ })) && ((1 <= input.typeNames.length || _report(_exceptionable, {
201
+ path: _path + ".typeNames",
202
+ expected: "Array<> & MinItems<1>",
203
+ value: input.typeNames
204
+ })) && input.typeNames.map((elem, _index9) => "string" === typeof elem || _report(_exceptionable, {
205
+ path: _path + ".typeNames[" + _index9 + "]",
206
+ expected: "string",
207
+ value: elem
208
+ })).every(flag => flag)) || _report(_exceptionable, {
209
+ path: _path + ".typeNames",
210
+ expected: "(Array<string> & MinItems<1>)",
211
+ value: input.typeNames
212
+ })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
213
+ path: _path + ".type",
214
+ expected: "\"complete\"",
215
+ value: input.type
216
+ }), "string" === typeof input.review || _report(_exceptionable, {
123
217
  path: _path + ".review",
124
218
  expected: "string",
125
219
  value: input.review
@@ -135,23 +229,23 @@ function createController(props) {
135
229
  path: _path + ".scenarioGroups",
136
230
  expected: "Array<IAutoBeTestScenarioApplication.IScenarioGroup>",
137
231
  value: input.scenarioGroups
138
- })) && input.scenarioGroups.map((elem, _index4) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
139
- path: _path + ".scenarioGroups[" + _index4 + "]",
232
+ })) && input.scenarioGroups.map((elem, _index10) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
233
+ path: _path + ".scenarioGroups[" + _index10 + "]",
140
234
  expected: "IAutoBeTestScenarioApplication.IScenarioGroup",
141
235
  value: elem
142
- })) && _vo1(elem, _path + ".scenarioGroups[" + _index4 + "]", true && _exceptionable) || _report(_exceptionable, {
143
- path: _path + ".scenarioGroups[" + _index4 + "]",
236
+ })) && _vo6(elem, _path + ".scenarioGroups[" + _index10 + "]", true && _exceptionable) || _report(_exceptionable, {
237
+ path: _path + ".scenarioGroups[" + _index10 + "]",
144
238
  expected: "IAutoBeTestScenarioApplication.IScenarioGroup",
145
239
  value: elem
146
240
  })).every(flag => flag) || _report(_exceptionable, {
147
241
  path: _path + ".scenarioGroups",
148
242
  expected: "Array<IAutoBeTestScenarioApplication.IScenarioGroup>",
149
243
  value: input.scenarioGroups
150
- })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
244
+ })].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
151
245
  path: _path + ".endpoint",
152
246
  expected: "AutoBeOpenApi.IEndpoint",
153
247
  value: input.endpoint
154
- })) && _vo2(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
248
+ })) && _vo3(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
155
249
  path: _path + ".endpoint",
156
250
  expected: "AutoBeOpenApi.IEndpoint",
157
251
  value: input.endpoint
@@ -163,31 +257,19 @@ function createController(props) {
163
257
  path: _path + ".scenarios",
164
258
  expected: "Array<> & MinItems<1>",
165
259
  value: input.scenarios
166
- })) && input.scenarios.map((elem, _index5) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
167
- path: _path + ".scenarios[" + _index5 + "]",
260
+ })) && input.scenarios.map((elem, _index11) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
261
+ path: _path + ".scenarios[" + _index11 + "]",
168
262
  expected: "IAutoBeTestScenarioApplication.IScenario",
169
263
  value: elem
170
- })) && _vo3(elem, _path + ".scenarios[" + _index5 + "]", true && _exceptionable) || _report(_exceptionable, {
171
- path: _path + ".scenarios[" + _index5 + "]",
264
+ })) && _vo7(elem, _path + ".scenarios[" + _index11 + "]", true && _exceptionable) || _report(_exceptionable, {
265
+ path: _path + ".scenarios[" + _index11 + "]",
172
266
  expected: "IAutoBeTestScenarioApplication.IScenario",
173
267
  value: elem
174
268
  })).every(flag => flag)) || _report(_exceptionable, {
175
269
  path: _path + ".scenarios",
176
270
  expected: "(Array<IAutoBeTestScenarioApplication.IScenario> & MinItems<1>)",
177
271
  value: input.scenarios
178
- })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
179
- path: _path + ".path",
180
- expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
181
- value: input.path
182
- })) || _report(_exceptionable, {
183
- path: _path + ".path",
184
- expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
185
- value: input.path
186
- }), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
187
- path: _path + ".method",
188
- expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
189
- value: input.method
190
- })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["string" === typeof input.draft || _report(_exceptionable, {
272
+ })].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => ["string" === typeof input.draft || _report(_exceptionable, {
191
273
  path: _path + ".draft",
192
274
  expected: "string",
193
275
  value: input.draft
@@ -199,23 +281,23 @@ function createController(props) {
199
281
  path: _path + ".dependencies",
200
282
  expected: "Array<IAutoBeTestScenarioApplication.IDependencies>",
201
283
  value: input.dependencies
202
- })) && input.dependencies.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
203
- path: _path + ".dependencies[" + _index6 + "]",
284
+ })) && input.dependencies.map((elem, _index12) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
285
+ path: _path + ".dependencies[" + _index12 + "]",
204
286
  expected: "IAutoBeTestScenarioApplication.IDependencies",
205
287
  value: elem
206
- })) && _vo4(elem, _path + ".dependencies[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
207
- path: _path + ".dependencies[" + _index6 + "]",
288
+ })) && _vo8(elem, _path + ".dependencies[" + _index12 + "]", true && _exceptionable) || _report(_exceptionable, {
289
+ path: _path + ".dependencies[" + _index12 + "]",
208
290
  expected: "IAutoBeTestScenarioApplication.IDependencies",
209
291
  value: elem
210
292
  })).every(flag => flag) || _report(_exceptionable, {
211
293
  path: _path + ".dependencies",
212
294
  expected: "Array<IAutoBeTestScenarioApplication.IDependencies>",
213
295
  value: input.dependencies
214
- })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
296
+ })].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
215
297
  path: _path + ".endpoint",
216
298
  expected: "AutoBeOpenApi.IEndpoint",
217
299
  value: input.endpoint
218
- })) && _vo2(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
300
+ })) && _vo3(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
219
301
  path: _path + ".endpoint",
220
302
  expected: "AutoBeOpenApi.IEndpoint",
221
303
  value: input.endpoint
@@ -223,7 +305,22 @@ function createController(props) {
223
305
  path: _path + ".purpose",
224
306
  expected: "string",
225
307
  value: input.purpose
226
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
308
+ })].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
309
+ if ("getAnalysisFiles" === input.type)
310
+ return _vo1(input, _path, true && _exceptionable);
311
+ else if ("getInterfaceOperations" === input.type)
312
+ return _vo2(input, _path, true && _exceptionable);
313
+ else if ("getInterfaceSchemas" === input.type)
314
+ return _vo4(input, _path, true && _exceptionable);
315
+ else if ("complete" === input.type)
316
+ return _vo5(input, _path, true && _exceptionable);
317
+ else
318
+ return _report(_exceptionable, {
319
+ path: _path,
320
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetInterfaceOperations | IAutoBePreliminaryGetInterfaceSchemas | IAutoBeTestScenarioReviewApplication.IComplete)",
321
+ value: input
322
+ });
323
+ })(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
227
324
  if (false === __is(input)) {
228
325
  errors = [];
229
326
  _report = __typia_transform__validateReport._validateReport(errors);
@@ -253,8 +350,13 @@ function createController(props) {
253
350
  }; })()(next);
254
351
  if (result.success === false)
255
352
  return result;
353
+ else if (result.data.request.type !== "complete")
354
+ return props.preliminary.validate({
355
+ thinking: result.data.thinking,
356
+ request: result.data.request,
357
+ });
256
358
  // merge to unique scenario groups
257
- const scenarioGroups = uniqueScenarioGroups(result.data.scenarioGroups);
359
+ const scenarioGroups = uniqueScenarioGroups(result.data.request.scenarioGroups);
258
360
  const errors = [];
259
361
  // validate endpoints between scenarioGroups and originalGroups
260
362
  const filteredScenarioGroups = props.originalGroups.reduce((acc, originalGroup) => {
@@ -266,7 +368,7 @@ function createController(props) {
266
368
  }
267
369
  return [...acc, matchingGroup];
268
370
  }, []);
269
- result.data.scenarioGroups = filteredScenarioGroups;
371
+ result.data.request.scenarioGroups = filteredScenarioGroups;
270
372
  if (errors.length > 0) {
271
373
  return {
272
374
  success: false,
@@ -283,15 +385,16 @@ function createController(props) {
283
385
  : "claude"](validate);
284
386
  return {
285
387
  protocol: "class",
286
- name: "Test Scenario Reviewer",
388
+ name: SOURCE,
287
389
  application,
288
390
  execute: {
289
- review: (input) => {
290
- props.pointer.value = input;
391
+ process: (input) => {
392
+ if (input.request.type === "complete")
393
+ props.pointer.value = input.request;
291
394
  },
292
395
  },
293
396
  };
294
- }
397
+ };
295
398
  const uniqueScenarioGroups = (groups) => new tstl_1.HashMap(groups.map((g) => new tstl_1.Pair(g.endpoint, g)), utils_1.AutoBeOpenApiEndpointComparator.hashCode, utils_1.AutoBeOpenApiEndpointComparator.equals)
296
399
  .toJSON()
297
400
  .map((it) => it.second);
@@ -306,57 +409,94 @@ const collection = {
306
409
  },
307
410
  functions: [
308
411
  {
309
- name: "review",
412
+ name: "process",
310
413
  parameters: {
311
- description: "Current Type: {@link IAutoBeTestScenarioReviewApplication.IProps}",
414
+ description: " Request containing either preliminary data request or complete\ntask\n\n------------------------------\n\nCurrent Type: {@link IAutoBeTestScenarioReviewApplication.IProps}",
312
415
  type: "object",
313
416
  properties: {
314
- review: {
315
- description: "Concise review summary focusing on critical findings and key\nimprovements.\n\nShould include:\n\n- Executive summary of overall quality\n- Critical issues requiring immediate fixes\n- Key improvement recommendations\n- Database schema compliance status\n- Modified scenarios identification by functionName",
316
- type: "string"
317
- },
318
- plan: {
319
- description: "Structured action plan with priority-based improvements.\n\nShould contain:\n\n- Critical fixes required immediately\n- High priority enhancements\n- Implementation guidance\n- Success criteria\n- Specific scenario action items by functionName",
417
+ thinking: {
418
+ description: "Think before you act.\n\nBefore requesting preliminary data or completing your task, reflect on your\ncurrent state and explain your reasoning:\n\nFor preliminary requests (getAnalysisFiles, getPrismaSchemas, etc.):\n- What critical information is missing that you don't already have?\n- Why do you need it specifically right now?\n- Be brief - state the gap, don't list everything you have.\n\nFor completion (complete):\n- What key assets did you acquire?\n- What did you accomplish?\n- Why is it sufficient to complete?\n- Summarize - don't enumerate every single item.\n\nThis reflection helps you avoid duplicate requests and premature completion.",
320
419
  type: "string"
321
420
  },
322
- pass: {
323
- description: "If the scenario groups pass the review, Set to true.",
324
- type: "boolean"
325
- },
326
- scenarioGroups: {
327
- description: "The reviewed and improved scenario groups with all quality fixes applied.\n\nThis is the primary output containing:\n\n- All critical issues resolved\n- Authentication flows corrected\n- Database dependencies validated\n- Quality enhancements implemented\n- Only implementable scenarios retained",
328
- type: "array",
329
- items: {
330
- $ref: "#/$defs/IAutoBeTestScenarioApplication.IScenarioGroup"
421
+ request: {
422
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getAnalysisFiles, getInterfaceOperations, getInterfaceSchemas) or\nfinal test scenario review (complete). When preliminary returns empty\narray, that type is removed from the union, physically preventing\nrepeated calls.",
423
+ anyOf: [
424
+ {
425
+ $ref: "#/$defs/IAutoBePreliminaryGetAnalysisFiles"
426
+ },
427
+ {
428
+ $ref: "#/$defs/IAutoBePreliminaryGetInterfaceOperations"
429
+ },
430
+ {
431
+ $ref: "#/$defs/IAutoBePreliminaryGetInterfaceSchemas"
432
+ },
433
+ {
434
+ $ref: "#/$defs/IAutoBeTestScenarioReviewApplication.IComplete"
435
+ }
436
+ ],
437
+ "x-discriminator": {
438
+ propertyName: "type",
439
+ mapping: {
440
+ getAnalysisFiles: "#/$defs/IAutoBePreliminaryGetAnalysisFiles",
441
+ getInterfaceOperations: "#/$defs/IAutoBePreliminaryGetInterfaceOperations",
442
+ getInterfaceSchemas: "#/$defs/IAutoBePreliminaryGetInterfaceSchemas",
443
+ complete: "#/$defs/IAutoBeTestScenarioReviewApplication.IComplete"
444
+ }
331
445
  }
332
446
  }
333
447
  },
334
448
  required: [
335
- "review",
336
- "plan",
337
- "pass",
338
- "scenarioGroups"
449
+ "thinking",
450
+ "request"
339
451
  ],
340
452
  additionalProperties: false,
341
453
  $defs: {
342
- "IAutoBeTestScenarioApplication.IScenarioGroup": {
454
+ IAutoBePreliminaryGetAnalysisFiles: {
455
+ description: "Request to retrieve requirements analysis files for context.\n\nThis type is used in the preliminary phase to request specific analysis files\nthat provide business requirements and domain context.",
343
456
  type: "object",
344
457
  properties: {
345
- endpoint: {
346
- description: "Target API endpoint to test.\n\nThis must be **unique** across all scenario groups. An endpoint is\nidentified by its `path` and `method` combination.\n\nMultiple test scenarios may exist for a single endpoint.",
347
- $ref: "#/$defs/AutoBeOpenApi.IEndpoint"
458
+ type: {
459
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getAnalysisFiles\" indicates this is a preliminary\ndata request for analysis files.",
460
+ type: "string",
461
+ "enum": [
462
+ "getAnalysisFiles"
463
+ ]
348
464
  },
349
- scenarios: {
350
- description: "An array of test scenarios associated with the given endpoint.\n\nEach scenario represents a specific test case for the same `path` and\n`method`.\n\nIMPORTANT: Each scenario must be actually implementable. A scenario's\nimplementability is determined by the existence of ALL APIs (endpoints)\nrequired to test it. This includes not only the primary endpoint being\ntested, but also ALL dependency endpoints needed for setup,\nauthentication, and data preparation. If even one required dependency API\nis missing from the available operations, the scenario cannot be\nimplemented and should not be generated.\n\nExample: A \"test banned user login\" scenario requires both a login API\nAND a ban user API. If the ban API doesn't exist, this scenario is not\nimplementable regardless of database schema fields.\n\n\n@minItems 1",
465
+ fileNames: {
466
+ description: "List of analysis file names to retrieve.\n\nFile names from the analyze phase containing requirements, use cases, and\nbusiness logic documentation.\n\nCRITICAL: DO NOT request the same file names that you have already\nrequested in previous calls.\n\n\n@minItems 1",
351
467
  type: "array",
352
468
  items: {
353
- $ref: "#/$defs/IAutoBeTestScenarioApplication.IScenario"
469
+ type: "string"
354
470
  }
355
471
  }
356
472
  },
357
473
  required: [
358
- "endpoint",
359
- "scenarios"
474
+ "type",
475
+ "fileNames"
476
+ ]
477
+ },
478
+ IAutoBePreliminaryGetInterfaceOperations: {
479
+ description: "Request to retrieve existing interface operations for context.\n\nThis type is used in the preliminary phase to request already-generated API\noperations for review, validation, or complementary generation tasks.",
480
+ type: "object",
481
+ properties: {
482
+ type: {
483
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getInterfaceOperations\" indicates this is a\npreliminary data request for interface operations.",
484
+ type: "string",
485
+ "enum": [
486
+ "getInterfaceOperations"
487
+ ]
488
+ },
489
+ endpoints: {
490
+ description: "List of existing API operation endpoints to retrieve.\n\nOperations that have been generated in previous phases, containing paths,\nmethods, parameters, and request/response bodies.\n\nCRITICAL: DO NOT request the same endpoints that you have already requested\nin previous calls.\n\n\n@minItems 1",
491
+ type: "array",
492
+ items: {
493
+ $ref: "#/$defs/AutoBeOpenApi.IEndpoint"
494
+ }
495
+ }
496
+ },
497
+ required: [
498
+ "type",
499
+ "endpoints"
360
500
  ]
361
501
  },
362
502
  "AutoBeOpenApi.IEndpoint": {
@@ -384,6 +524,89 @@ const collection = {
384
524
  "method"
385
525
  ]
386
526
  },
527
+ IAutoBePreliminaryGetInterfaceSchemas: {
528
+ description: "Request to retrieve OpenAPI schema type definitions for context.\n\nThis type is used in the preliminary phase to request specific schema\ndefinitions from components.schemas for review or complementary generation.",
529
+ type: "object",
530
+ properties: {
531
+ type: {
532
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getInterfaceSchemas\" indicates this is a preliminary\ndata request for interface schemas.",
533
+ type: "string",
534
+ "enum": [
535
+ "getInterfaceSchemas"
536
+ ]
537
+ },
538
+ typeNames: {
539
+ description: "List of schema type names to retrieve.\n\nSchema names from the OpenAPI components.schemas section (e.g., \"IUser\",\n\"IUser.ICreate\", \"IPost.IUpdate\").\n\nCRITICAL: DO NOT request the same type names that you have already\nrequested in previous calls.\n\n\n@minItems 1",
540
+ type: "array",
541
+ items: {
542
+ type: "string"
543
+ }
544
+ }
545
+ },
546
+ required: [
547
+ "type",
548
+ "typeNames"
549
+ ]
550
+ },
551
+ "IAutoBeTestScenarioReviewApplication.IComplete": {
552
+ description: "Request to review and refine test scenarios.\n\nExecutes comprehensive scenario review to validate implementability,\ndependency correctness, authentication flows, and business logic coverage,\nproducing refined scenarios ready for test implementation.",
553
+ type: "object",
554
+ properties: {
555
+ type: {
556
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"complete\" indicates this is the final task\nexecution request.",
557
+ type: "string",
558
+ "enum": [
559
+ "complete"
560
+ ]
561
+ },
562
+ review: {
563
+ description: "Comprehensive review analysis of all test scenarios.\n\nContains detailed findings from holistic review including:\n\n- Executive summary of overall scenario quality\n- Critical issues requiring immediate fixes (non-existent dependencies,\n unimplementable scenarios)\n- Key improvement recommendations (authentication flows, edge case\n coverage)\n- Database schema compliance validation\n- Modified scenarios identification by functionName\n\nThe review provides actionable feedback for creating implementable,\ncomprehensive test scenarios that accurately reflect business\nrequirements.",
564
+ type: "string"
565
+ },
566
+ plan: {
567
+ description: "Strategic test improvement plan.\n\nContains structured action plan with priority-based improvements:\n\n- Critical fixes: Non-existent endpoints, impossible dependencies\n- High priority enhancements: Missing authentication, incomplete edge cases\n- Implementation guidance: Correct dependency patterns, proper test flows\n- Success criteria: Complete API coverage, implementable scenarios only\n- Specific scenario action items by functionName\n\nThis plan serves as the blueprint for validating and improving test\nscenarios.",
568
+ type: "string"
569
+ },
570
+ pass: {
571
+ description: "If the scenario groups pass the review, Set to true.",
572
+ type: "boolean"
573
+ },
574
+ scenarioGroups: {
575
+ description: "The reviewed and improved scenario groups with all quality fixes applied.\n\nThis is the primary output containing:\n\n- All critical issues resolved\n- Authentication flows corrected\n- Database dependencies validated\n- Quality enhancements implemented\n- Only implementable scenarios retained",
576
+ type: "array",
577
+ items: {
578
+ $ref: "#/$defs/IAutoBeTestScenarioApplication.IScenarioGroup"
579
+ }
580
+ }
581
+ },
582
+ required: [
583
+ "type",
584
+ "review",
585
+ "plan",
586
+ "pass",
587
+ "scenarioGroups"
588
+ ]
589
+ },
590
+ "IAutoBeTestScenarioApplication.IScenarioGroup": {
591
+ type: "object",
592
+ properties: {
593
+ endpoint: {
594
+ description: "Target API endpoint to test.\n\nThis must be **unique** across all scenario groups. An endpoint is\nidentified by its `path` and `method` combination.\n\nMultiple test scenarios may exist for a single endpoint.",
595
+ $ref: "#/$defs/AutoBeOpenApi.IEndpoint"
596
+ },
597
+ scenarios: {
598
+ description: "An array of test scenarios associated with the given endpoint.\n\nEach scenario represents a specific test case for the same `path` and\n`method`.\n\nIMPORTANT: Each scenario must be actually implementable. A scenario's\nimplementability is determined by the existence of ALL APIs (endpoints)\nrequired to test it. This includes not only the primary endpoint being\ntested, but also ALL dependency endpoints needed for setup,\nauthentication, and data preparation. If even one required dependency API\nis missing from the available operations, the scenario cannot be\nimplemented and should not be generated.\n\nExample: A \"test banned user login\" scenario requires both a login API\nAND a ban user API. If the ban API doesn't exist, this scenario is not\nimplementable regardless of database schema fields.\n\n\n@minItems 1",
599
+ type: "array",
600
+ items: {
601
+ $ref: "#/$defs/IAutoBeTestScenarioApplication.IScenario"
602
+ }
603
+ }
604
+ },
605
+ required: [
606
+ "endpoint",
607
+ "scenarios"
608
+ ]
609
+ },
387
610
  "IAutoBeTestScenarioApplication.IScenario": {
388
611
  description: "Represents a test scenario for a single API operation.\n\nThis interface defines a structured, user-centric test draft that includes\na descriptive function name, a detailed scenario draft, and logical\ndependencies on other endpoints required for context or setup.\n\nCRITICAL: All referenced endpoints MUST exist in the provided API\noperations. Do NOT create scenarios for non-existent APIs, even if database\nschema fields suggest their existence. Test scenarios must be implementable\nwith available APIs only.",
389
612
  type: "object",
@@ -429,7 +652,111 @@ const collection = {
429
652
  }
430
653
  }
431
654
  },
432
- validate: (() => { const _io0 = input => "string" === typeof input.review && "string" === typeof input.plan && "boolean" === typeof input.pass && (Array.isArray(input.scenarioGroups) && input.scenarioGroups.every(elem => "object" === typeof elem && null !== elem && _io1(elem))); const _io1 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io2(input.endpoint) && (Array.isArray(input.scenarios) && (1 <= input.scenarios.length && input.scenarios.every(elem => "object" === typeof elem && null !== elem && _io3(elem)))); const _io2 = input => "string" === typeof input.path && RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) && ("get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method); const _io3 = input => "string" === typeof input.draft && "string" === typeof input.functionName && (Array.isArray(input.dependencies) && input.dependencies.every(elem => "object" === typeof elem && null !== elem && _io4(elem))); const _io4 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io2(input.endpoint) && "string" === typeof input.purpose; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.review || _report(_exceptionable, {
655
+ description: "Process test scenario review task or preliminary data requests.\n\nReviews generated test scenarios to validate implementability, dependency\ncorrectness, and business logic coverage, producing necessary improvements\nvia RAG-based context retrieval.",
656
+ validate: (() => { const _io0 = input => "string" === typeof input.thinking && ("object" === typeof input.request && null !== input.request && _iu0(input.request)); const _io1 = input => "getAnalysisFiles" === input.type && (Array.isArray(input.fileNames) && (1 <= input.fileNames.length && input.fileNames.every(elem => "string" === typeof elem))); const _io2 = input => "getInterfaceOperations" === input.type && (Array.isArray(input.endpoints) && (1 <= input.endpoints.length && input.endpoints.every(elem => "object" === typeof elem && null !== elem && _io3(elem)))); const _io3 = input => "string" === typeof input.path && RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) && ("get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method); const _io4 = input => "getInterfaceSchemas" === input.type && (Array.isArray(input.typeNames) && (1 <= input.typeNames.length && input.typeNames.every(elem => "string" === typeof elem))); const _io5 = input => "complete" === input.type && "string" === typeof input.review && "string" === typeof input.plan && "boolean" === typeof input.pass && (Array.isArray(input.scenarioGroups) && input.scenarioGroups.every(elem => "object" === typeof elem && null !== elem && _io6(elem))); const _io6 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io3(input.endpoint) && (Array.isArray(input.scenarios) && (1 <= input.scenarios.length && input.scenarios.every(elem => "object" === typeof elem && null !== elem && _io7(elem)))); const _io7 = input => "string" === typeof input.draft && "string" === typeof input.functionName && (Array.isArray(input.dependencies) && input.dependencies.every(elem => "object" === typeof elem && null !== elem && _io8(elem))); const _io8 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io3(input.endpoint) && "string" === typeof input.purpose; const _iu0 = input => (() => {
657
+ if ("getAnalysisFiles" === input.type)
658
+ return _io1(input);
659
+ else if ("getInterfaceOperations" === input.type)
660
+ return _io2(input);
661
+ else if ("getInterfaceSchemas" === input.type)
662
+ return _io4(input);
663
+ else if ("complete" === input.type)
664
+ return _io5(input);
665
+ else
666
+ return false;
667
+ })(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
668
+ path: _path + ".thinking",
669
+ expected: "string",
670
+ value: input.thinking
671
+ }), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
672
+ path: _path + ".request",
673
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetInterfaceOperations | IAutoBePreliminaryGetInterfaceSchemas | IAutoBeTestScenarioReviewApplication.IComplete)",
674
+ value: input.request
675
+ })) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
676
+ path: _path + ".request",
677
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetInterfaceOperations | IAutoBePreliminaryGetInterfaceSchemas | IAutoBeTestScenarioReviewApplication.IComplete)",
678
+ value: input.request
679
+ })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getAnalysisFiles" === input.type || _report(_exceptionable, {
680
+ path: _path + ".type",
681
+ expected: "\"getAnalysisFiles\"",
682
+ value: input.type
683
+ }), (Array.isArray(input.fileNames) || _report(_exceptionable, {
684
+ path: _path + ".fileNames",
685
+ expected: "(Array<string> & MinItems<1>)",
686
+ value: input.fileNames
687
+ })) && ((1 <= input.fileNames.length || _report(_exceptionable, {
688
+ path: _path + ".fileNames",
689
+ expected: "Array<> & MinItems<1>",
690
+ value: input.fileNames
691
+ })) && input.fileNames.map((elem, _index7) => "string" === typeof elem || _report(_exceptionable, {
692
+ path: _path + ".fileNames[" + _index7 + "]",
693
+ expected: "string",
694
+ value: elem
695
+ })).every(flag => flag)) || _report(_exceptionable, {
696
+ path: _path + ".fileNames",
697
+ expected: "(Array<string> & MinItems<1>)",
698
+ value: input.fileNames
699
+ })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["getInterfaceOperations" === input.type || _report(_exceptionable, {
700
+ path: _path + ".type",
701
+ expected: "\"getInterfaceOperations\"",
702
+ value: input.type
703
+ }), (Array.isArray(input.endpoints) || _report(_exceptionable, {
704
+ path: _path + ".endpoints",
705
+ expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
706
+ value: input.endpoints
707
+ })) && ((1 <= input.endpoints.length || _report(_exceptionable, {
708
+ path: _path + ".endpoints",
709
+ expected: "Array<> & MinItems<1>",
710
+ value: input.endpoints
711
+ })) && input.endpoints.map((elem, _index8) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
712
+ path: _path + ".endpoints[" + _index8 + "]",
713
+ expected: "AutoBeOpenApi.IEndpoint",
714
+ value: elem
715
+ })) && _vo3(elem, _path + ".endpoints[" + _index8 + "]", true && _exceptionable) || _report(_exceptionable, {
716
+ path: _path + ".endpoints[" + _index8 + "]",
717
+ expected: "AutoBeOpenApi.IEndpoint",
718
+ value: elem
719
+ })).every(flag => flag)) || _report(_exceptionable, {
720
+ path: _path + ".endpoints",
721
+ expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
722
+ value: input.endpoints
723
+ })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
724
+ path: _path + ".path",
725
+ expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
726
+ value: input.path
727
+ })) || _report(_exceptionable, {
728
+ path: _path + ".path",
729
+ expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
730
+ value: input.path
731
+ }), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
732
+ path: _path + ".method",
733
+ expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
734
+ value: input.method
735
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["getInterfaceSchemas" === input.type || _report(_exceptionable, {
736
+ path: _path + ".type",
737
+ expected: "\"getInterfaceSchemas\"",
738
+ value: input.type
739
+ }), (Array.isArray(input.typeNames) || _report(_exceptionable, {
740
+ path: _path + ".typeNames",
741
+ expected: "(Array<string> & MinItems<1>)",
742
+ value: input.typeNames
743
+ })) && ((1 <= input.typeNames.length || _report(_exceptionable, {
744
+ path: _path + ".typeNames",
745
+ expected: "Array<> & MinItems<1>",
746
+ value: input.typeNames
747
+ })) && input.typeNames.map((elem, _index9) => "string" === typeof elem || _report(_exceptionable, {
748
+ path: _path + ".typeNames[" + _index9 + "]",
749
+ expected: "string",
750
+ value: elem
751
+ })).every(flag => flag)) || _report(_exceptionable, {
752
+ path: _path + ".typeNames",
753
+ expected: "(Array<string> & MinItems<1>)",
754
+ value: input.typeNames
755
+ })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
756
+ path: _path + ".type",
757
+ expected: "\"complete\"",
758
+ value: input.type
759
+ }), "string" === typeof input.review || _report(_exceptionable, {
433
760
  path: _path + ".review",
434
761
  expected: "string",
435
762
  value: input.review
@@ -445,23 +772,23 @@ const collection = {
445
772
  path: _path + ".scenarioGroups",
446
773
  expected: "Array<IAutoBeTestScenarioApplication.IScenarioGroup>",
447
774
  value: input.scenarioGroups
448
- })) && input.scenarioGroups.map((elem, _index4) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
449
- path: _path + ".scenarioGroups[" + _index4 + "]",
775
+ })) && input.scenarioGroups.map((elem, _index10) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
776
+ path: _path + ".scenarioGroups[" + _index10 + "]",
450
777
  expected: "IAutoBeTestScenarioApplication.IScenarioGroup",
451
778
  value: elem
452
- })) && _vo1(elem, _path + ".scenarioGroups[" + _index4 + "]", true && _exceptionable) || _report(_exceptionable, {
453
- path: _path + ".scenarioGroups[" + _index4 + "]",
779
+ })) && _vo6(elem, _path + ".scenarioGroups[" + _index10 + "]", true && _exceptionable) || _report(_exceptionable, {
780
+ path: _path + ".scenarioGroups[" + _index10 + "]",
454
781
  expected: "IAutoBeTestScenarioApplication.IScenarioGroup",
455
782
  value: elem
456
783
  })).every(flag => flag) || _report(_exceptionable, {
457
784
  path: _path + ".scenarioGroups",
458
785
  expected: "Array<IAutoBeTestScenarioApplication.IScenarioGroup>",
459
786
  value: input.scenarioGroups
460
- })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
787
+ })].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
461
788
  path: _path + ".endpoint",
462
789
  expected: "AutoBeOpenApi.IEndpoint",
463
790
  value: input.endpoint
464
- })) && _vo2(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
791
+ })) && _vo3(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
465
792
  path: _path + ".endpoint",
466
793
  expected: "AutoBeOpenApi.IEndpoint",
467
794
  value: input.endpoint
@@ -473,31 +800,19 @@ const collection = {
473
800
  path: _path + ".scenarios",
474
801
  expected: "Array<> & MinItems<1>",
475
802
  value: input.scenarios
476
- })) && input.scenarios.map((elem, _index5) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
477
- path: _path + ".scenarios[" + _index5 + "]",
803
+ })) && input.scenarios.map((elem, _index11) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
804
+ path: _path + ".scenarios[" + _index11 + "]",
478
805
  expected: "IAutoBeTestScenarioApplication.IScenario",
479
806
  value: elem
480
- })) && _vo3(elem, _path + ".scenarios[" + _index5 + "]", true && _exceptionable) || _report(_exceptionable, {
481
- path: _path + ".scenarios[" + _index5 + "]",
807
+ })) && _vo7(elem, _path + ".scenarios[" + _index11 + "]", true && _exceptionable) || _report(_exceptionable, {
808
+ path: _path + ".scenarios[" + _index11 + "]",
482
809
  expected: "IAutoBeTestScenarioApplication.IScenario",
483
810
  value: elem
484
811
  })).every(flag => flag)) || _report(_exceptionable, {
485
812
  path: _path + ".scenarios",
486
813
  expected: "(Array<IAutoBeTestScenarioApplication.IScenario> & MinItems<1>)",
487
814
  value: input.scenarios
488
- })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
489
- path: _path + ".path",
490
- expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
491
- value: input.path
492
- })) || _report(_exceptionable, {
493
- path: _path + ".path",
494
- expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
495
- value: input.path
496
- }), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
497
- path: _path + ".method",
498
- expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
499
- value: input.method
500
- })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["string" === typeof input.draft || _report(_exceptionable, {
815
+ })].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => ["string" === typeof input.draft || _report(_exceptionable, {
501
816
  path: _path + ".draft",
502
817
  expected: "string",
503
818
  value: input.draft
@@ -509,23 +824,23 @@ const collection = {
509
824
  path: _path + ".dependencies",
510
825
  expected: "Array<IAutoBeTestScenarioApplication.IDependencies>",
511
826
  value: input.dependencies
512
- })) && input.dependencies.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
513
- path: _path + ".dependencies[" + _index6 + "]",
827
+ })) && input.dependencies.map((elem, _index12) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
828
+ path: _path + ".dependencies[" + _index12 + "]",
514
829
  expected: "IAutoBeTestScenarioApplication.IDependencies",
515
830
  value: elem
516
- })) && _vo4(elem, _path + ".dependencies[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
517
- path: _path + ".dependencies[" + _index6 + "]",
831
+ })) && _vo8(elem, _path + ".dependencies[" + _index12 + "]", true && _exceptionable) || _report(_exceptionable, {
832
+ path: _path + ".dependencies[" + _index12 + "]",
518
833
  expected: "IAutoBeTestScenarioApplication.IDependencies",
519
834
  value: elem
520
835
  })).every(flag => flag) || _report(_exceptionable, {
521
836
  path: _path + ".dependencies",
522
837
  expected: "Array<IAutoBeTestScenarioApplication.IDependencies>",
523
838
  value: input.dependencies
524
- })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
839
+ })].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
525
840
  path: _path + ".endpoint",
526
841
  expected: "AutoBeOpenApi.IEndpoint",
527
842
  value: input.endpoint
528
- })) && _vo2(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
843
+ })) && _vo3(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
529
844
  path: _path + ".endpoint",
530
845
  expected: "AutoBeOpenApi.IEndpoint",
531
846
  value: input.endpoint
@@ -533,7 +848,22 @@ const collection = {
533
848
  path: _path + ".purpose",
534
849
  expected: "string",
535
850
  value: input.purpose
536
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
851
+ })].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
852
+ if ("getAnalysisFiles" === input.type)
853
+ return _vo1(input, _path, true && _exceptionable);
854
+ else if ("getInterfaceOperations" === input.type)
855
+ return _vo2(input, _path, true && _exceptionable);
856
+ else if ("getInterfaceSchemas" === input.type)
857
+ return _vo4(input, _path, true && _exceptionable);
858
+ else if ("complete" === input.type)
859
+ return _vo5(input, _path, true && _exceptionable);
860
+ else
861
+ return _report(_exceptionable, {
862
+ path: _path,
863
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetInterfaceOperations | IAutoBePreliminaryGetInterfaceSchemas | IAutoBeTestScenarioReviewApplication.IComplete)",
864
+ value: input
865
+ });
866
+ })(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
537
867
  if (false === __is(input)) {
538
868
  errors = [];
539
869
  _report = __typia_transform__validateReport._validateReport(errors);
@@ -566,7 +896,7 @@ const collection = {
566
896
  };
567
897
  __typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
568
898
  validate: {
569
- review: validate,
899
+ process: validate,
570
900
  },
571
901
  }), { equals: false }));
572
902
  return application;
@@ -580,58 +910,90 @@ const collection = {
580
910
  },
581
911
  functions: [
582
912
  {
583
- name: "review",
913
+ name: "process",
584
914
  parameters: {
585
- description: "Current Type: {@link IAutoBeTestScenarioReviewApplication.IProps}",
915
+ description: " Request containing either preliminary data request or complete\ntask\n\n------------------------------\n\nCurrent Type: {@link IAutoBeTestScenarioReviewApplication.IProps}",
586
916
  type: "object",
587
917
  properties: {
588
- review: {
589
- description: "Concise review summary focusing on critical findings and key\nimprovements.\n\nShould include:\n\n- Executive summary of overall quality\n- Critical issues requiring immediate fixes\n- Key improvement recommendations\n- Database schema compliance status\n- Modified scenarios identification by functionName",
918
+ thinking: {
919
+ description: "Think before you act.\n\nBefore requesting preliminary data or completing your task, reflect on your\ncurrent state and explain your reasoning:\n\nFor preliminary requests (getAnalysisFiles, getPrismaSchemas, etc.):\n- What critical information is missing that you don't already have?\n- Why do you need it specifically right now?\n- Be brief - state the gap, don't list everything you have.\n\nFor completion (complete):\n- What key assets did you acquire?\n- What did you accomplish?\n- Why is it sufficient to complete?\n- Summarize - don't enumerate every single item.\n\nThis reflection helps you avoid duplicate requests and premature completion.",
590
920
  type: "string"
591
921
  },
592
- plan: {
593
- description: "Structured action plan with priority-based improvements.\n\nShould contain:\n\n- Critical fixes required immediately\n- High priority enhancements\n- Implementation guidance\n- Success criteria\n- Specific scenario action items by functionName",
594
- type: "string"
595
- },
596
- pass: {
597
- description: "If the scenario groups pass the review, Set to true.",
598
- type: "boolean"
599
- },
600
- scenarioGroups: {
601
- description: "The reviewed and improved scenario groups with all quality fixes applied.\n\nThis is the primary output containing:\n\n- All critical issues resolved\n- Authentication flows corrected\n- Database dependencies validated\n- Quality enhancements implemented\n- Only implementable scenarios retained",
602
- type: "array",
603
- items: {
604
- $ref: "#/$defs/IAutoBeTestScenarioApplication.IScenarioGroup"
922
+ request: {
923
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getAnalysisFiles, getInterfaceOperations, getInterfaceSchemas) or\nfinal test scenario review (complete). When preliminary returns empty\narray, that type is removed from the union, physically preventing\nrepeated calls.",
924
+ oneOf: [
925
+ {
926
+ $ref: "#/$defs/IAutoBePreliminaryGetAnalysisFiles"
927
+ },
928
+ {
929
+ $ref: "#/$defs/IAutoBePreliminaryGetInterfaceOperations"
930
+ },
931
+ {
932
+ $ref: "#/$defs/IAutoBePreliminaryGetInterfaceSchemas"
933
+ },
934
+ {
935
+ $ref: "#/$defs/IAutoBeTestScenarioReviewApplication.IComplete"
936
+ }
937
+ ],
938
+ discriminator: {
939
+ propertyName: "type",
940
+ mapping: {
941
+ getAnalysisFiles: "#/$defs/IAutoBePreliminaryGetAnalysisFiles",
942
+ getInterfaceOperations: "#/$defs/IAutoBePreliminaryGetInterfaceOperations",
943
+ getInterfaceSchemas: "#/$defs/IAutoBePreliminaryGetInterfaceSchemas",
944
+ complete: "#/$defs/IAutoBeTestScenarioReviewApplication.IComplete"
945
+ }
605
946
  }
606
947
  }
607
948
  },
608
949
  required: [
609
- "review",
610
- "plan",
611
- "pass",
612
- "scenarioGroups"
950
+ "thinking",
951
+ "request"
613
952
  ],
614
953
  additionalProperties: false,
615
954
  $defs: {
616
- "IAutoBeTestScenarioApplication.IScenarioGroup": {
955
+ IAutoBePreliminaryGetAnalysisFiles: {
956
+ description: "Request to retrieve requirements analysis files for context.\n\nThis type is used in the preliminary phase to request specific analysis files\nthat provide business requirements and domain context.",
617
957
  type: "object",
618
958
  properties: {
619
- endpoint: {
620
- description: "Target API endpoint to test.\n\nThis must be **unique** across all scenario groups. An endpoint is\nidentified by its `path` and `method` combination.\n\nMultiple test scenarios may exist for a single endpoint.",
621
- $ref: "#/$defs/AutoBeOpenApi.IEndpoint"
959
+ type: {
960
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getAnalysisFiles\" indicates this is a preliminary\ndata request for analysis files.",
961
+ "const": "getAnalysisFiles"
622
962
  },
623
- scenarios: {
624
- description: "An array of test scenarios associated with the given endpoint.\n\nEach scenario represents a specific test case for the same `path` and\n`method`.\n\nIMPORTANT: Each scenario must be actually implementable. A scenario's\nimplementability is determined by the existence of ALL APIs (endpoints)\nrequired to test it. This includes not only the primary endpoint being\ntested, but also ALL dependency endpoints needed for setup,\nauthentication, and data preparation. If even one required dependency API\nis missing from the available operations, the scenario cannot be\nimplemented and should not be generated.\n\nExample: A \"test banned user login\" scenario requires both a login API\nAND a ban user API. If the ban API doesn't exist, this scenario is not\nimplementable regardless of database schema fields.",
963
+ fileNames: {
964
+ description: "List of analysis file names to retrieve.\n\nFile names from the analyze phase containing requirements, use cases, and\nbusiness logic documentation.\n\nCRITICAL: DO NOT request the same file names that you have already\nrequested in previous calls.",
625
965
  type: "array",
626
966
  items: {
627
- $ref: "#/$defs/IAutoBeTestScenarioApplication.IScenario"
967
+ type: "string"
628
968
  },
629
969
  minItems: 1
630
970
  }
631
971
  },
632
972
  required: [
633
- "endpoint",
634
- "scenarios"
973
+ "type",
974
+ "fileNames"
975
+ ]
976
+ },
977
+ IAutoBePreliminaryGetInterfaceOperations: {
978
+ description: "Request to retrieve existing interface operations for context.\n\nThis type is used in the preliminary phase to request already-generated API\noperations for review, validation, or complementary generation tasks.",
979
+ type: "object",
980
+ properties: {
981
+ type: {
982
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getInterfaceOperations\" indicates this is a\npreliminary data request for interface operations.",
983
+ "const": "getInterfaceOperations"
984
+ },
985
+ endpoints: {
986
+ description: "List of existing API operation endpoints to retrieve.\n\nOperations that have been generated in previous phases, containing paths,\nmethods, parameters, and request/response bodies.\n\nCRITICAL: DO NOT request the same endpoints that you have already requested\nin previous calls.",
987
+ type: "array",
988
+ items: {
989
+ $ref: "#/$defs/AutoBeOpenApi.IEndpoint"
990
+ },
991
+ minItems: 1
992
+ }
993
+ },
994
+ required: [
995
+ "type",
996
+ "endpoints"
635
997
  ]
636
998
  },
637
999
  "AutoBeOpenApi.IEndpoint": {
@@ -669,6 +1031,85 @@ const collection = {
669
1031
  "method"
670
1032
  ]
671
1033
  },
1034
+ IAutoBePreliminaryGetInterfaceSchemas: {
1035
+ description: "Request to retrieve OpenAPI schema type definitions for context.\n\nThis type is used in the preliminary phase to request specific schema\ndefinitions from components.schemas for review or complementary generation.",
1036
+ type: "object",
1037
+ properties: {
1038
+ type: {
1039
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getInterfaceSchemas\" indicates this is a preliminary\ndata request for interface schemas.",
1040
+ "const": "getInterfaceSchemas"
1041
+ },
1042
+ typeNames: {
1043
+ description: "List of schema type names to retrieve.\n\nSchema names from the OpenAPI components.schemas section (e.g., \"IUser\",\n\"IUser.ICreate\", \"IPost.IUpdate\").\n\nCRITICAL: DO NOT request the same type names that you have already\nrequested in previous calls.",
1044
+ type: "array",
1045
+ items: {
1046
+ type: "string"
1047
+ },
1048
+ minItems: 1
1049
+ }
1050
+ },
1051
+ required: [
1052
+ "type",
1053
+ "typeNames"
1054
+ ]
1055
+ },
1056
+ "IAutoBeTestScenarioReviewApplication.IComplete": {
1057
+ description: "Request to review and refine test scenarios.\n\nExecutes comprehensive scenario review to validate implementability,\ndependency correctness, authentication flows, and business logic coverage,\nproducing refined scenarios ready for test implementation.",
1058
+ type: "object",
1059
+ properties: {
1060
+ type: {
1061
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"complete\" indicates this is the final task\nexecution request.",
1062
+ "const": "complete"
1063
+ },
1064
+ review: {
1065
+ description: "Comprehensive review analysis of all test scenarios.\n\nContains detailed findings from holistic review including:\n\n- Executive summary of overall scenario quality\n- Critical issues requiring immediate fixes (non-existent dependencies,\n unimplementable scenarios)\n- Key improvement recommendations (authentication flows, edge case\n coverage)\n- Database schema compliance validation\n- Modified scenarios identification by functionName\n\nThe review provides actionable feedback for creating implementable,\ncomprehensive test scenarios that accurately reflect business\nrequirements.",
1066
+ type: "string"
1067
+ },
1068
+ plan: {
1069
+ description: "Strategic test improvement plan.\n\nContains structured action plan with priority-based improvements:\n\n- Critical fixes: Non-existent endpoints, impossible dependencies\n- High priority enhancements: Missing authentication, incomplete edge cases\n- Implementation guidance: Correct dependency patterns, proper test flows\n- Success criteria: Complete API coverage, implementable scenarios only\n- Specific scenario action items by functionName\n\nThis plan serves as the blueprint for validating and improving test\nscenarios.",
1070
+ type: "string"
1071
+ },
1072
+ pass: {
1073
+ description: "If the scenario groups pass the review, Set to true.",
1074
+ type: "boolean"
1075
+ },
1076
+ scenarioGroups: {
1077
+ description: "The reviewed and improved scenario groups with all quality fixes applied.\n\nThis is the primary output containing:\n\n- All critical issues resolved\n- Authentication flows corrected\n- Database dependencies validated\n- Quality enhancements implemented\n- Only implementable scenarios retained",
1078
+ type: "array",
1079
+ items: {
1080
+ $ref: "#/$defs/IAutoBeTestScenarioApplication.IScenarioGroup"
1081
+ }
1082
+ }
1083
+ },
1084
+ required: [
1085
+ "type",
1086
+ "review",
1087
+ "plan",
1088
+ "pass",
1089
+ "scenarioGroups"
1090
+ ]
1091
+ },
1092
+ "IAutoBeTestScenarioApplication.IScenarioGroup": {
1093
+ type: "object",
1094
+ properties: {
1095
+ endpoint: {
1096
+ description: "Target API endpoint to test.\n\nThis must be **unique** across all scenario groups. An endpoint is\nidentified by its `path` and `method` combination.\n\nMultiple test scenarios may exist for a single endpoint.",
1097
+ $ref: "#/$defs/AutoBeOpenApi.IEndpoint"
1098
+ },
1099
+ scenarios: {
1100
+ description: "An array of test scenarios associated with the given endpoint.\n\nEach scenario represents a specific test case for the same `path` and\n`method`.\n\nIMPORTANT: Each scenario must be actually implementable. A scenario's\nimplementability is determined by the existence of ALL APIs (endpoints)\nrequired to test it. This includes not only the primary endpoint being\ntested, but also ALL dependency endpoints needed for setup,\nauthentication, and data preparation. If even one required dependency API\nis missing from the available operations, the scenario cannot be\nimplemented and should not be generated.\n\nExample: A \"test banned user login\" scenario requires both a login API\nAND a ban user API. If the ban API doesn't exist, this scenario is not\nimplementable regardless of database schema fields.",
1101
+ type: "array",
1102
+ items: {
1103
+ $ref: "#/$defs/IAutoBeTestScenarioApplication.IScenario"
1104
+ },
1105
+ minItems: 1
1106
+ }
1107
+ },
1108
+ required: [
1109
+ "endpoint",
1110
+ "scenarios"
1111
+ ]
1112
+ },
672
1113
  "IAutoBeTestScenarioApplication.IScenario": {
673
1114
  description: "Represents a test scenario for a single API operation.\n\nThis interface defines a structured, user-centric test draft that includes\na descriptive function name, a detailed scenario draft, and logical\ndependencies on other endpoints required for context or setup.\n\nCRITICAL: All referenced endpoints MUST exist in the provided API\noperations. Do NOT create scenarios for non-existent APIs, even if database\nschema fields suggest their existence. Test scenarios must be implementable\nwith available APIs only.",
674
1115
  type: "object",
@@ -714,7 +1155,111 @@ const collection = {
714
1155
  }
715
1156
  }
716
1157
  },
717
- validate: (() => { const _io0 = input => "string" === typeof input.review && "string" === typeof input.plan && "boolean" === typeof input.pass && (Array.isArray(input.scenarioGroups) && input.scenarioGroups.every(elem => "object" === typeof elem && null !== elem && _io1(elem))); const _io1 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io2(input.endpoint) && (Array.isArray(input.scenarios) && (1 <= input.scenarios.length && input.scenarios.every(elem => "object" === typeof elem && null !== elem && _io3(elem)))); const _io2 = input => "string" === typeof input.path && RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) && ("get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method); const _io3 = input => "string" === typeof input.draft && "string" === typeof input.functionName && (Array.isArray(input.dependencies) && input.dependencies.every(elem => "object" === typeof elem && null !== elem && _io4(elem))); const _io4 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io2(input.endpoint) && "string" === typeof input.purpose; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.review || _report(_exceptionable, {
1158
+ description: "Process test scenario review task or preliminary data requests.\n\nReviews generated test scenarios to validate implementability, dependency\ncorrectness, and business logic coverage, producing necessary improvements\nvia RAG-based context retrieval.",
1159
+ validate: (() => { const _io0 = input => "string" === typeof input.thinking && ("object" === typeof input.request && null !== input.request && _iu0(input.request)); const _io1 = input => "getAnalysisFiles" === input.type && (Array.isArray(input.fileNames) && (1 <= input.fileNames.length && input.fileNames.every(elem => "string" === typeof elem))); const _io2 = input => "getInterfaceOperations" === input.type && (Array.isArray(input.endpoints) && (1 <= input.endpoints.length && input.endpoints.every(elem => "object" === typeof elem && null !== elem && _io3(elem)))); const _io3 = input => "string" === typeof input.path && RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) && ("get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method); const _io4 = input => "getInterfaceSchemas" === input.type && (Array.isArray(input.typeNames) && (1 <= input.typeNames.length && input.typeNames.every(elem => "string" === typeof elem))); const _io5 = input => "complete" === input.type && "string" === typeof input.review && "string" === typeof input.plan && "boolean" === typeof input.pass && (Array.isArray(input.scenarioGroups) && input.scenarioGroups.every(elem => "object" === typeof elem && null !== elem && _io6(elem))); const _io6 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io3(input.endpoint) && (Array.isArray(input.scenarios) && (1 <= input.scenarios.length && input.scenarios.every(elem => "object" === typeof elem && null !== elem && _io7(elem)))); const _io7 = input => "string" === typeof input.draft && "string" === typeof input.functionName && (Array.isArray(input.dependencies) && input.dependencies.every(elem => "object" === typeof elem && null !== elem && _io8(elem))); const _io8 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io3(input.endpoint) && "string" === typeof input.purpose; const _iu0 = input => (() => {
1160
+ if ("getAnalysisFiles" === input.type)
1161
+ return _io1(input);
1162
+ else if ("getInterfaceOperations" === input.type)
1163
+ return _io2(input);
1164
+ else if ("getInterfaceSchemas" === input.type)
1165
+ return _io4(input);
1166
+ else if ("complete" === input.type)
1167
+ return _io5(input);
1168
+ else
1169
+ return false;
1170
+ })(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
1171
+ path: _path + ".thinking",
1172
+ expected: "string",
1173
+ value: input.thinking
1174
+ }), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
1175
+ path: _path + ".request",
1176
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetInterfaceOperations | IAutoBePreliminaryGetInterfaceSchemas | IAutoBeTestScenarioReviewApplication.IComplete)",
1177
+ value: input.request
1178
+ })) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
1179
+ path: _path + ".request",
1180
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetInterfaceOperations | IAutoBePreliminaryGetInterfaceSchemas | IAutoBeTestScenarioReviewApplication.IComplete)",
1181
+ value: input.request
1182
+ })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getAnalysisFiles" === input.type || _report(_exceptionable, {
1183
+ path: _path + ".type",
1184
+ expected: "\"getAnalysisFiles\"",
1185
+ value: input.type
1186
+ }), (Array.isArray(input.fileNames) || _report(_exceptionable, {
1187
+ path: _path + ".fileNames",
1188
+ expected: "(Array<string> & MinItems<1>)",
1189
+ value: input.fileNames
1190
+ })) && ((1 <= input.fileNames.length || _report(_exceptionable, {
1191
+ path: _path + ".fileNames",
1192
+ expected: "Array<> & MinItems<1>",
1193
+ value: input.fileNames
1194
+ })) && input.fileNames.map((elem, _index7) => "string" === typeof elem || _report(_exceptionable, {
1195
+ path: _path + ".fileNames[" + _index7 + "]",
1196
+ expected: "string",
1197
+ value: elem
1198
+ })).every(flag => flag)) || _report(_exceptionable, {
1199
+ path: _path + ".fileNames",
1200
+ expected: "(Array<string> & MinItems<1>)",
1201
+ value: input.fileNames
1202
+ })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["getInterfaceOperations" === input.type || _report(_exceptionable, {
1203
+ path: _path + ".type",
1204
+ expected: "\"getInterfaceOperations\"",
1205
+ value: input.type
1206
+ }), (Array.isArray(input.endpoints) || _report(_exceptionable, {
1207
+ path: _path + ".endpoints",
1208
+ expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
1209
+ value: input.endpoints
1210
+ })) && ((1 <= input.endpoints.length || _report(_exceptionable, {
1211
+ path: _path + ".endpoints",
1212
+ expected: "Array<> & MinItems<1>",
1213
+ value: input.endpoints
1214
+ })) && input.endpoints.map((elem, _index8) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1215
+ path: _path + ".endpoints[" + _index8 + "]",
1216
+ expected: "AutoBeOpenApi.IEndpoint",
1217
+ value: elem
1218
+ })) && _vo3(elem, _path + ".endpoints[" + _index8 + "]", true && _exceptionable) || _report(_exceptionable, {
1219
+ path: _path + ".endpoints[" + _index8 + "]",
1220
+ expected: "AutoBeOpenApi.IEndpoint",
1221
+ value: elem
1222
+ })).every(flag => flag)) || _report(_exceptionable, {
1223
+ path: _path + ".endpoints",
1224
+ expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
1225
+ value: input.endpoints
1226
+ })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
1227
+ path: _path + ".path",
1228
+ expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
1229
+ value: input.path
1230
+ })) || _report(_exceptionable, {
1231
+ path: _path + ".path",
1232
+ expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
1233
+ value: input.path
1234
+ }), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
1235
+ path: _path + ".method",
1236
+ expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
1237
+ value: input.method
1238
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["getInterfaceSchemas" === input.type || _report(_exceptionable, {
1239
+ path: _path + ".type",
1240
+ expected: "\"getInterfaceSchemas\"",
1241
+ value: input.type
1242
+ }), (Array.isArray(input.typeNames) || _report(_exceptionable, {
1243
+ path: _path + ".typeNames",
1244
+ expected: "(Array<string> & MinItems<1>)",
1245
+ value: input.typeNames
1246
+ })) && ((1 <= input.typeNames.length || _report(_exceptionable, {
1247
+ path: _path + ".typeNames",
1248
+ expected: "Array<> & MinItems<1>",
1249
+ value: input.typeNames
1250
+ })) && input.typeNames.map((elem, _index9) => "string" === typeof elem || _report(_exceptionable, {
1251
+ path: _path + ".typeNames[" + _index9 + "]",
1252
+ expected: "string",
1253
+ value: elem
1254
+ })).every(flag => flag)) || _report(_exceptionable, {
1255
+ path: _path + ".typeNames",
1256
+ expected: "(Array<string> & MinItems<1>)",
1257
+ value: input.typeNames
1258
+ })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
1259
+ path: _path + ".type",
1260
+ expected: "\"complete\"",
1261
+ value: input.type
1262
+ }), "string" === typeof input.review || _report(_exceptionable, {
718
1263
  path: _path + ".review",
719
1264
  expected: "string",
720
1265
  value: input.review
@@ -730,23 +1275,23 @@ const collection = {
730
1275
  path: _path + ".scenarioGroups",
731
1276
  expected: "Array<IAutoBeTestScenarioApplication.IScenarioGroup>",
732
1277
  value: input.scenarioGroups
733
- })) && input.scenarioGroups.map((elem, _index4) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
734
- path: _path + ".scenarioGroups[" + _index4 + "]",
1278
+ })) && input.scenarioGroups.map((elem, _index10) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1279
+ path: _path + ".scenarioGroups[" + _index10 + "]",
735
1280
  expected: "IAutoBeTestScenarioApplication.IScenarioGroup",
736
1281
  value: elem
737
- })) && _vo1(elem, _path + ".scenarioGroups[" + _index4 + "]", true && _exceptionable) || _report(_exceptionable, {
738
- path: _path + ".scenarioGroups[" + _index4 + "]",
1282
+ })) && _vo6(elem, _path + ".scenarioGroups[" + _index10 + "]", true && _exceptionable) || _report(_exceptionable, {
1283
+ path: _path + ".scenarioGroups[" + _index10 + "]",
739
1284
  expected: "IAutoBeTestScenarioApplication.IScenarioGroup",
740
1285
  value: elem
741
1286
  })).every(flag => flag) || _report(_exceptionable, {
742
1287
  path: _path + ".scenarioGroups",
743
1288
  expected: "Array<IAutoBeTestScenarioApplication.IScenarioGroup>",
744
1289
  value: input.scenarioGroups
745
- })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
1290
+ })].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
746
1291
  path: _path + ".endpoint",
747
1292
  expected: "AutoBeOpenApi.IEndpoint",
748
1293
  value: input.endpoint
749
- })) && _vo2(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
1294
+ })) && _vo3(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
750
1295
  path: _path + ".endpoint",
751
1296
  expected: "AutoBeOpenApi.IEndpoint",
752
1297
  value: input.endpoint
@@ -758,31 +1303,19 @@ const collection = {
758
1303
  path: _path + ".scenarios",
759
1304
  expected: "Array<> & MinItems<1>",
760
1305
  value: input.scenarios
761
- })) && input.scenarios.map((elem, _index5) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
762
- path: _path + ".scenarios[" + _index5 + "]",
1306
+ })) && input.scenarios.map((elem, _index11) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1307
+ path: _path + ".scenarios[" + _index11 + "]",
763
1308
  expected: "IAutoBeTestScenarioApplication.IScenario",
764
1309
  value: elem
765
- })) && _vo3(elem, _path + ".scenarios[" + _index5 + "]", true && _exceptionable) || _report(_exceptionable, {
766
- path: _path + ".scenarios[" + _index5 + "]",
1310
+ })) && _vo7(elem, _path + ".scenarios[" + _index11 + "]", true && _exceptionable) || _report(_exceptionable, {
1311
+ path: _path + ".scenarios[" + _index11 + "]",
767
1312
  expected: "IAutoBeTestScenarioApplication.IScenario",
768
1313
  value: elem
769
1314
  })).every(flag => flag)) || _report(_exceptionable, {
770
1315
  path: _path + ".scenarios",
771
1316
  expected: "(Array<IAutoBeTestScenarioApplication.IScenario> & MinItems<1>)",
772
1317
  value: input.scenarios
773
- })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
774
- path: _path + ".path",
775
- expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
776
- value: input.path
777
- })) || _report(_exceptionable, {
778
- path: _path + ".path",
779
- expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
780
- value: input.path
781
- }), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
782
- path: _path + ".method",
783
- expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
784
- value: input.method
785
- })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["string" === typeof input.draft || _report(_exceptionable, {
1318
+ })].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => ["string" === typeof input.draft || _report(_exceptionable, {
786
1319
  path: _path + ".draft",
787
1320
  expected: "string",
788
1321
  value: input.draft
@@ -794,23 +1327,23 @@ const collection = {
794
1327
  path: _path + ".dependencies",
795
1328
  expected: "Array<IAutoBeTestScenarioApplication.IDependencies>",
796
1329
  value: input.dependencies
797
- })) && input.dependencies.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
798
- path: _path + ".dependencies[" + _index6 + "]",
1330
+ })) && input.dependencies.map((elem, _index12) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1331
+ path: _path + ".dependencies[" + _index12 + "]",
799
1332
  expected: "IAutoBeTestScenarioApplication.IDependencies",
800
1333
  value: elem
801
- })) && _vo4(elem, _path + ".dependencies[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
802
- path: _path + ".dependencies[" + _index6 + "]",
1334
+ })) && _vo8(elem, _path + ".dependencies[" + _index12 + "]", true && _exceptionable) || _report(_exceptionable, {
1335
+ path: _path + ".dependencies[" + _index12 + "]",
803
1336
  expected: "IAutoBeTestScenarioApplication.IDependencies",
804
1337
  value: elem
805
1338
  })).every(flag => flag) || _report(_exceptionable, {
806
1339
  path: _path + ".dependencies",
807
1340
  expected: "Array<IAutoBeTestScenarioApplication.IDependencies>",
808
1341
  value: input.dependencies
809
- })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
1342
+ })].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
810
1343
  path: _path + ".endpoint",
811
1344
  expected: "AutoBeOpenApi.IEndpoint",
812
1345
  value: input.endpoint
813
- })) && _vo2(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
1346
+ })) && _vo3(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
814
1347
  path: _path + ".endpoint",
815
1348
  expected: "AutoBeOpenApi.IEndpoint",
816
1349
  value: input.endpoint
@@ -818,7 +1351,22 @@ const collection = {
818
1351
  path: _path + ".purpose",
819
1352
  expected: "string",
820
1353
  value: input.purpose
821
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1354
+ })].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
1355
+ if ("getAnalysisFiles" === input.type)
1356
+ return _vo1(input, _path, true && _exceptionable);
1357
+ else if ("getInterfaceOperations" === input.type)
1358
+ return _vo2(input, _path, true && _exceptionable);
1359
+ else if ("getInterfaceSchemas" === input.type)
1360
+ return _vo4(input, _path, true && _exceptionable);
1361
+ else if ("complete" === input.type)
1362
+ return _vo5(input, _path, true && _exceptionable);
1363
+ else
1364
+ return _report(_exceptionable, {
1365
+ path: _path,
1366
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetInterfaceOperations | IAutoBePreliminaryGetInterfaceSchemas | IAutoBeTestScenarioReviewApplication.IComplete)",
1367
+ value: input
1368
+ });
1369
+ })(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
822
1370
  if (false === __is(input)) {
823
1371
  errors = [];
824
1372
  _report = __typia_transform__validateReport._validateReport(errors);
@@ -851,7 +1399,7 @@ const collection = {
851
1399
  };
852
1400
  __typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
853
1401
  validate: {
854
- review: validate,
1402
+ process: validate,
855
1403
  },
856
1404
  }), { equals: false }));
857
1405
  return application;
@@ -865,58 +1413,96 @@ const collection = {
865
1413
  },
866
1414
  functions: [
867
1415
  {
868
- name: "review",
1416
+ name: "process",
869
1417
  parameters: {
870
- description: "Current Type: {@link IAutoBeTestScenarioReviewApplication.IProps}",
1418
+ description: " Request containing either preliminary data request or complete\ntask\n\n------------------------------\n\nCurrent Type: {@link IAutoBeTestScenarioReviewApplication.IProps}",
871
1419
  type: "object",
872
1420
  properties: {
873
- review: {
874
- description: "Concise review summary focusing on critical findings and key\nimprovements.\n\nShould include:\n\n- Executive summary of overall quality\n- Critical issues requiring immediate fixes\n- Key improvement recommendations\n- Database schema compliance status\n- Modified scenarios identification by functionName",
1421
+ thinking: {
1422
+ description: "Think before you act.\n\nBefore requesting preliminary data or completing your task, reflect on your\ncurrent state and explain your reasoning:\n\nFor preliminary requests (getAnalysisFiles, getPrismaSchemas, etc.):\n- What critical information is missing that you don't already have?\n- Why do you need it specifically right now?\n- Be brief - state the gap, don't list everything you have.\n\nFor completion (complete):\n- What key assets did you acquire?\n- What did you accomplish?\n- Why is it sufficient to complete?\n- Summarize - don't enumerate every single item.\n\nThis reflection helps you avoid duplicate requests and premature completion.",
875
1423
  type: "string"
876
1424
  },
877
- plan: {
878
- description: "Structured action plan with priority-based improvements.\n\nShould contain:\n\n- Critical fixes required immediately\n- High priority enhancements\n- Implementation guidance\n- Success criteria\n- Specific scenario action items by functionName",
879
- type: "string"
880
- },
881
- pass: {
882
- description: "If the scenario groups pass the review, Set to true.",
883
- type: "boolean"
884
- },
885
- scenarioGroups: {
886
- description: "The reviewed and improved scenario groups with all quality fixes applied.\n\nThis is the primary output containing:\n\n- All critical issues resolved\n- Authentication flows corrected\n- Database dependencies validated\n- Quality enhancements implemented\n- Only implementable scenarios retained",
887
- type: "array",
888
- items: {
889
- $ref: "#/$defs/IAutoBeTestScenarioApplication.IScenarioGroup"
1425
+ request: {
1426
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getAnalysisFiles, getInterfaceOperations, getInterfaceSchemas) or\nfinal test scenario review (complete). When preliminary returns empty\narray, that type is removed from the union, physically preventing\nrepeated calls.",
1427
+ anyOf: [
1428
+ {
1429
+ $ref: "#/$defs/IAutoBePreliminaryGetAnalysisFiles"
1430
+ },
1431
+ {
1432
+ $ref: "#/$defs/IAutoBePreliminaryGetInterfaceOperations"
1433
+ },
1434
+ {
1435
+ $ref: "#/$defs/IAutoBePreliminaryGetInterfaceSchemas"
1436
+ },
1437
+ {
1438
+ $ref: "#/$defs/IAutoBeTestScenarioReviewApplication.IComplete"
1439
+ }
1440
+ ],
1441
+ "x-discriminator": {
1442
+ propertyName: "type",
1443
+ mapping: {
1444
+ getAnalysisFiles: "#/$defs/IAutoBePreliminaryGetAnalysisFiles",
1445
+ getInterfaceOperations: "#/$defs/IAutoBePreliminaryGetInterfaceOperations",
1446
+ getInterfaceSchemas: "#/$defs/IAutoBePreliminaryGetInterfaceSchemas",
1447
+ complete: "#/$defs/IAutoBeTestScenarioReviewApplication.IComplete"
1448
+ }
890
1449
  }
891
1450
  }
892
1451
  },
893
1452
  required: [
894
- "review",
895
- "plan",
896
- "pass",
897
- "scenarioGroups"
1453
+ "thinking",
1454
+ "request"
898
1455
  ],
899
1456
  additionalProperties: false,
900
1457
  $defs: {
901
- "IAutoBeTestScenarioApplication.IScenarioGroup": {
1458
+ IAutoBePreliminaryGetAnalysisFiles: {
1459
+ description: "Request to retrieve requirements analysis files for context.\n\nThis type is used in the preliminary phase to request specific analysis files\nthat provide business requirements and domain context.",
902
1460
  type: "object",
903
1461
  properties: {
904
- endpoint: {
905
- description: "Target API endpoint to test.\n\nThis must be **unique** across all scenario groups. An endpoint is\nidentified by its `path` and `method` combination.\n\nMultiple test scenarios may exist for a single endpoint.",
906
- $ref: "#/$defs/AutoBeOpenApi.IEndpoint"
1462
+ type: {
1463
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getAnalysisFiles\" indicates this is a preliminary\ndata request for analysis files.",
1464
+ type: "string",
1465
+ "enum": [
1466
+ "getAnalysisFiles"
1467
+ ]
907
1468
  },
908
- scenarios: {
909
- description: "An array of test scenarios associated with the given endpoint.\n\nEach scenario represents a specific test case for the same `path` and\n`method`.\n\nIMPORTANT: Each scenario must be actually implementable. A scenario's\nimplementability is determined by the existence of ALL APIs (endpoints)\nrequired to test it. This includes not only the primary endpoint being\ntested, but also ALL dependency endpoints needed for setup,\nauthentication, and data preparation. If even one required dependency API\nis missing from the available operations, the scenario cannot be\nimplemented and should not be generated.\n\nExample: A \"test banned user login\" scenario requires both a login API\nAND a ban user API. If the ban API doesn't exist, this scenario is not\nimplementable regardless of database schema fields.",
1469
+ fileNames: {
1470
+ description: "List of analysis file names to retrieve.\n\nFile names from the analyze phase containing requirements, use cases, and\nbusiness logic documentation.\n\nCRITICAL: DO NOT request the same file names that you have already\nrequested in previous calls.",
910
1471
  type: "array",
911
1472
  items: {
912
- $ref: "#/$defs/IAutoBeTestScenarioApplication.IScenario"
1473
+ type: "string"
913
1474
  },
914
1475
  minItems: 1
915
1476
  }
916
1477
  },
917
1478
  required: [
918
- "endpoint",
919
- "scenarios"
1479
+ "type",
1480
+ "fileNames"
1481
+ ]
1482
+ },
1483
+ IAutoBePreliminaryGetInterfaceOperations: {
1484
+ description: "Request to retrieve existing interface operations for context.\n\nThis type is used in the preliminary phase to request already-generated API\noperations for review, validation, or complementary generation tasks.",
1485
+ type: "object",
1486
+ properties: {
1487
+ type: {
1488
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getInterfaceOperations\" indicates this is a\npreliminary data request for interface operations.",
1489
+ type: "string",
1490
+ "enum": [
1491
+ "getInterfaceOperations"
1492
+ ]
1493
+ },
1494
+ endpoints: {
1495
+ description: "List of existing API operation endpoints to retrieve.\n\nOperations that have been generated in previous phases, containing paths,\nmethods, parameters, and request/response bodies.\n\nCRITICAL: DO NOT request the same endpoints that you have already requested\nin previous calls.",
1496
+ type: "array",
1497
+ items: {
1498
+ $ref: "#/$defs/AutoBeOpenApi.IEndpoint"
1499
+ },
1500
+ minItems: 1
1501
+ }
1502
+ },
1503
+ required: [
1504
+ "type",
1505
+ "endpoints"
920
1506
  ]
921
1507
  },
922
1508
  "AutoBeOpenApi.IEndpoint": {
@@ -945,6 +1531,91 @@ const collection = {
945
1531
  "method"
946
1532
  ]
947
1533
  },
1534
+ IAutoBePreliminaryGetInterfaceSchemas: {
1535
+ description: "Request to retrieve OpenAPI schema type definitions for context.\n\nThis type is used in the preliminary phase to request specific schema\ndefinitions from components.schemas for review or complementary generation.",
1536
+ type: "object",
1537
+ properties: {
1538
+ type: {
1539
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getInterfaceSchemas\" indicates this is a preliminary\ndata request for interface schemas.",
1540
+ type: "string",
1541
+ "enum": [
1542
+ "getInterfaceSchemas"
1543
+ ]
1544
+ },
1545
+ typeNames: {
1546
+ description: "List of schema type names to retrieve.\n\nSchema names from the OpenAPI components.schemas section (e.g., \"IUser\",\n\"IUser.ICreate\", \"IPost.IUpdate\").\n\nCRITICAL: DO NOT request the same type names that you have already\nrequested in previous calls.",
1547
+ type: "array",
1548
+ items: {
1549
+ type: "string"
1550
+ },
1551
+ minItems: 1
1552
+ }
1553
+ },
1554
+ required: [
1555
+ "type",
1556
+ "typeNames"
1557
+ ]
1558
+ },
1559
+ "IAutoBeTestScenarioReviewApplication.IComplete": {
1560
+ description: "Request to review and refine test scenarios.\n\nExecutes comprehensive scenario review to validate implementability,\ndependency correctness, authentication flows, and business logic coverage,\nproducing refined scenarios ready for test implementation.",
1561
+ type: "object",
1562
+ properties: {
1563
+ type: {
1564
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"complete\" indicates this is the final task\nexecution request.",
1565
+ type: "string",
1566
+ "enum": [
1567
+ "complete"
1568
+ ]
1569
+ },
1570
+ review: {
1571
+ description: "Comprehensive review analysis of all test scenarios.\n\nContains detailed findings from holistic review including:\n\n- Executive summary of overall scenario quality\n- Critical issues requiring immediate fixes (non-existent dependencies,\n unimplementable scenarios)\n- Key improvement recommendations (authentication flows, edge case\n coverage)\n- Database schema compliance validation\n- Modified scenarios identification by functionName\n\nThe review provides actionable feedback for creating implementable,\ncomprehensive test scenarios that accurately reflect business\nrequirements.",
1572
+ type: "string"
1573
+ },
1574
+ plan: {
1575
+ description: "Strategic test improvement plan.\n\nContains structured action plan with priority-based improvements:\n\n- Critical fixes: Non-existent endpoints, impossible dependencies\n- High priority enhancements: Missing authentication, incomplete edge cases\n- Implementation guidance: Correct dependency patterns, proper test flows\n- Success criteria: Complete API coverage, implementable scenarios only\n- Specific scenario action items by functionName\n\nThis plan serves as the blueprint for validating and improving test\nscenarios.",
1576
+ type: "string"
1577
+ },
1578
+ pass: {
1579
+ description: "If the scenario groups pass the review, Set to true.",
1580
+ type: "boolean"
1581
+ },
1582
+ scenarioGroups: {
1583
+ description: "The reviewed and improved scenario groups with all quality fixes applied.\n\nThis is the primary output containing:\n\n- All critical issues resolved\n- Authentication flows corrected\n- Database dependencies validated\n- Quality enhancements implemented\n- Only implementable scenarios retained",
1584
+ type: "array",
1585
+ items: {
1586
+ $ref: "#/$defs/IAutoBeTestScenarioApplication.IScenarioGroup"
1587
+ }
1588
+ }
1589
+ },
1590
+ required: [
1591
+ "type",
1592
+ "review",
1593
+ "plan",
1594
+ "pass",
1595
+ "scenarioGroups"
1596
+ ]
1597
+ },
1598
+ "IAutoBeTestScenarioApplication.IScenarioGroup": {
1599
+ type: "object",
1600
+ properties: {
1601
+ endpoint: {
1602
+ description: "Target API endpoint to test.\n\nThis must be **unique** across all scenario groups. An endpoint is\nidentified by its `path` and `method` combination.\n\nMultiple test scenarios may exist for a single endpoint.",
1603
+ $ref: "#/$defs/AutoBeOpenApi.IEndpoint"
1604
+ },
1605
+ scenarios: {
1606
+ description: "An array of test scenarios associated with the given endpoint.\n\nEach scenario represents a specific test case for the same `path` and\n`method`.\n\nIMPORTANT: Each scenario must be actually implementable. A scenario's\nimplementability is determined by the existence of ALL APIs (endpoints)\nrequired to test it. This includes not only the primary endpoint being\ntested, but also ALL dependency endpoints needed for setup,\nauthentication, and data preparation. If even one required dependency API\nis missing from the available operations, the scenario cannot be\nimplemented and should not be generated.\n\nExample: A \"test banned user login\" scenario requires both a login API\nAND a ban user API. If the ban API doesn't exist, this scenario is not\nimplementable regardless of database schema fields.",
1607
+ type: "array",
1608
+ items: {
1609
+ $ref: "#/$defs/IAutoBeTestScenarioApplication.IScenario"
1610
+ },
1611
+ minItems: 1
1612
+ }
1613
+ },
1614
+ required: [
1615
+ "endpoint",
1616
+ "scenarios"
1617
+ ]
1618
+ },
948
1619
  "IAutoBeTestScenarioApplication.IScenario": {
949
1620
  description: "Represents a test scenario for a single API operation.\n\nThis interface defines a structured, user-centric test draft that includes\na descriptive function name, a detailed scenario draft, and logical\ndependencies on other endpoints required for context or setup.\n\nCRITICAL: All referenced endpoints MUST exist in the provided API\noperations. Do NOT create scenarios for non-existent APIs, even if database\nschema fields suggest their existence. Test scenarios must be implementable\nwith available APIs only.",
950
1621
  type: "object",
@@ -990,7 +1661,111 @@ const collection = {
990
1661
  }
991
1662
  }
992
1663
  },
993
- validate: (() => { const _io0 = input => "string" === typeof input.review && "string" === typeof input.plan && "boolean" === typeof input.pass && (Array.isArray(input.scenarioGroups) && input.scenarioGroups.every(elem => "object" === typeof elem && null !== elem && _io1(elem))); const _io1 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io2(input.endpoint) && (Array.isArray(input.scenarios) && (1 <= input.scenarios.length && input.scenarios.every(elem => "object" === typeof elem && null !== elem && _io3(elem)))); const _io2 = input => "string" === typeof input.path && RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) && ("get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method); const _io3 = input => "string" === typeof input.draft && "string" === typeof input.functionName && (Array.isArray(input.dependencies) && input.dependencies.every(elem => "object" === typeof elem && null !== elem && _io4(elem))); const _io4 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io2(input.endpoint) && "string" === typeof input.purpose; const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.review || _report(_exceptionable, {
1664
+ description: "Process test scenario review task or preliminary data requests.\n\nReviews generated test scenarios to validate implementability, dependency\ncorrectness, and business logic coverage, producing necessary improvements\nvia RAG-based context retrieval.",
1665
+ validate: (() => { const _io0 = input => "string" === typeof input.thinking && ("object" === typeof input.request && null !== input.request && _iu0(input.request)); const _io1 = input => "getAnalysisFiles" === input.type && (Array.isArray(input.fileNames) && (1 <= input.fileNames.length && input.fileNames.every(elem => "string" === typeof elem))); const _io2 = input => "getInterfaceOperations" === input.type && (Array.isArray(input.endpoints) && (1 <= input.endpoints.length && input.endpoints.every(elem => "object" === typeof elem && null !== elem && _io3(elem)))); const _io3 = input => "string" === typeof input.path && RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) && ("get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method); const _io4 = input => "getInterfaceSchemas" === input.type && (Array.isArray(input.typeNames) && (1 <= input.typeNames.length && input.typeNames.every(elem => "string" === typeof elem))); const _io5 = input => "complete" === input.type && "string" === typeof input.review && "string" === typeof input.plan && "boolean" === typeof input.pass && (Array.isArray(input.scenarioGroups) && input.scenarioGroups.every(elem => "object" === typeof elem && null !== elem && _io6(elem))); const _io6 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io3(input.endpoint) && (Array.isArray(input.scenarios) && (1 <= input.scenarios.length && input.scenarios.every(elem => "object" === typeof elem && null !== elem && _io7(elem)))); const _io7 = input => "string" === typeof input.draft && "string" === typeof input.functionName && (Array.isArray(input.dependencies) && input.dependencies.every(elem => "object" === typeof elem && null !== elem && _io8(elem))); const _io8 = input => "object" === typeof input.endpoint && null !== input.endpoint && _io3(input.endpoint) && "string" === typeof input.purpose; const _iu0 = input => (() => {
1666
+ if ("getAnalysisFiles" === input.type)
1667
+ return _io1(input);
1668
+ else if ("getInterfaceOperations" === input.type)
1669
+ return _io2(input);
1670
+ else if ("getInterfaceSchemas" === input.type)
1671
+ return _io4(input);
1672
+ else if ("complete" === input.type)
1673
+ return _io5(input);
1674
+ else
1675
+ return false;
1676
+ })(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
1677
+ path: _path + ".thinking",
1678
+ expected: "string",
1679
+ value: input.thinking
1680
+ }), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
1681
+ path: _path + ".request",
1682
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetInterfaceOperations | IAutoBePreliminaryGetInterfaceSchemas | IAutoBeTestScenarioReviewApplication.IComplete)",
1683
+ value: input.request
1684
+ })) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
1685
+ path: _path + ".request",
1686
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetInterfaceOperations | IAutoBePreliminaryGetInterfaceSchemas | IAutoBeTestScenarioReviewApplication.IComplete)",
1687
+ value: input.request
1688
+ })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getAnalysisFiles" === input.type || _report(_exceptionable, {
1689
+ path: _path + ".type",
1690
+ expected: "\"getAnalysisFiles\"",
1691
+ value: input.type
1692
+ }), (Array.isArray(input.fileNames) || _report(_exceptionable, {
1693
+ path: _path + ".fileNames",
1694
+ expected: "(Array<string> & MinItems<1>)",
1695
+ value: input.fileNames
1696
+ })) && ((1 <= input.fileNames.length || _report(_exceptionable, {
1697
+ path: _path + ".fileNames",
1698
+ expected: "Array<> & MinItems<1>",
1699
+ value: input.fileNames
1700
+ })) && input.fileNames.map((elem, _index7) => "string" === typeof elem || _report(_exceptionable, {
1701
+ path: _path + ".fileNames[" + _index7 + "]",
1702
+ expected: "string",
1703
+ value: elem
1704
+ })).every(flag => flag)) || _report(_exceptionable, {
1705
+ path: _path + ".fileNames",
1706
+ expected: "(Array<string> & MinItems<1>)",
1707
+ value: input.fileNames
1708
+ })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["getInterfaceOperations" === input.type || _report(_exceptionable, {
1709
+ path: _path + ".type",
1710
+ expected: "\"getInterfaceOperations\"",
1711
+ value: input.type
1712
+ }), (Array.isArray(input.endpoints) || _report(_exceptionable, {
1713
+ path: _path + ".endpoints",
1714
+ expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
1715
+ value: input.endpoints
1716
+ })) && ((1 <= input.endpoints.length || _report(_exceptionable, {
1717
+ path: _path + ".endpoints",
1718
+ expected: "Array<> & MinItems<1>",
1719
+ value: input.endpoints
1720
+ })) && input.endpoints.map((elem, _index8) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1721
+ path: _path + ".endpoints[" + _index8 + "]",
1722
+ expected: "AutoBeOpenApi.IEndpoint",
1723
+ value: elem
1724
+ })) && _vo3(elem, _path + ".endpoints[" + _index8 + "]", true && _exceptionable) || _report(_exceptionable, {
1725
+ path: _path + ".endpoints[" + _index8 + "]",
1726
+ expected: "AutoBeOpenApi.IEndpoint",
1727
+ value: elem
1728
+ })).every(flag => flag)) || _report(_exceptionable, {
1729
+ path: _path + ".endpoints",
1730
+ expected: "(Array<AutoBeOpenApi.IEndpoint> & MinItems<1>)",
1731
+ value: input.endpoints
1732
+ })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
1733
+ path: _path + ".path",
1734
+ expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
1735
+ value: input.path
1736
+ })) || _report(_exceptionable, {
1737
+ path: _path + ".path",
1738
+ expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
1739
+ value: input.path
1740
+ }), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
1741
+ path: _path + ".method",
1742
+ expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
1743
+ value: input.method
1744
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["getInterfaceSchemas" === input.type || _report(_exceptionable, {
1745
+ path: _path + ".type",
1746
+ expected: "\"getInterfaceSchemas\"",
1747
+ value: input.type
1748
+ }), (Array.isArray(input.typeNames) || _report(_exceptionable, {
1749
+ path: _path + ".typeNames",
1750
+ expected: "(Array<string> & MinItems<1>)",
1751
+ value: input.typeNames
1752
+ })) && ((1 <= input.typeNames.length || _report(_exceptionable, {
1753
+ path: _path + ".typeNames",
1754
+ expected: "Array<> & MinItems<1>",
1755
+ value: input.typeNames
1756
+ })) && input.typeNames.map((elem, _index9) => "string" === typeof elem || _report(_exceptionable, {
1757
+ path: _path + ".typeNames[" + _index9 + "]",
1758
+ expected: "string",
1759
+ value: elem
1760
+ })).every(flag => flag)) || _report(_exceptionable, {
1761
+ path: _path + ".typeNames",
1762
+ expected: "(Array<string> & MinItems<1>)",
1763
+ value: input.typeNames
1764
+ })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
1765
+ path: _path + ".type",
1766
+ expected: "\"complete\"",
1767
+ value: input.type
1768
+ }), "string" === typeof input.review || _report(_exceptionable, {
994
1769
  path: _path + ".review",
995
1770
  expected: "string",
996
1771
  value: input.review
@@ -1006,23 +1781,23 @@ const collection = {
1006
1781
  path: _path + ".scenarioGroups",
1007
1782
  expected: "Array<IAutoBeTestScenarioApplication.IScenarioGroup>",
1008
1783
  value: input.scenarioGroups
1009
- })) && input.scenarioGroups.map((elem, _index4) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1010
- path: _path + ".scenarioGroups[" + _index4 + "]",
1784
+ })) && input.scenarioGroups.map((elem, _index10) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1785
+ path: _path + ".scenarioGroups[" + _index10 + "]",
1011
1786
  expected: "IAutoBeTestScenarioApplication.IScenarioGroup",
1012
1787
  value: elem
1013
- })) && _vo1(elem, _path + ".scenarioGroups[" + _index4 + "]", true && _exceptionable) || _report(_exceptionable, {
1014
- path: _path + ".scenarioGroups[" + _index4 + "]",
1788
+ })) && _vo6(elem, _path + ".scenarioGroups[" + _index10 + "]", true && _exceptionable) || _report(_exceptionable, {
1789
+ path: _path + ".scenarioGroups[" + _index10 + "]",
1015
1790
  expected: "IAutoBeTestScenarioApplication.IScenarioGroup",
1016
1791
  value: elem
1017
1792
  })).every(flag => flag) || _report(_exceptionable, {
1018
1793
  path: _path + ".scenarioGroups",
1019
1794
  expected: "Array<IAutoBeTestScenarioApplication.IScenarioGroup>",
1020
1795
  value: input.scenarioGroups
1021
- })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
1796
+ })].every(flag => flag); const _vo6 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
1022
1797
  path: _path + ".endpoint",
1023
1798
  expected: "AutoBeOpenApi.IEndpoint",
1024
1799
  value: input.endpoint
1025
- })) && _vo2(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
1800
+ })) && _vo3(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
1026
1801
  path: _path + ".endpoint",
1027
1802
  expected: "AutoBeOpenApi.IEndpoint",
1028
1803
  value: input.endpoint
@@ -1034,31 +1809,19 @@ const collection = {
1034
1809
  path: _path + ".scenarios",
1035
1810
  expected: "Array<> & MinItems<1>",
1036
1811
  value: input.scenarios
1037
- })) && input.scenarios.map((elem, _index5) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1038
- path: _path + ".scenarios[" + _index5 + "]",
1812
+ })) && input.scenarios.map((elem, _index11) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1813
+ path: _path + ".scenarios[" + _index11 + "]",
1039
1814
  expected: "IAutoBeTestScenarioApplication.IScenario",
1040
1815
  value: elem
1041
- })) && _vo3(elem, _path + ".scenarios[" + _index5 + "]", true && _exceptionable) || _report(_exceptionable, {
1042
- path: _path + ".scenarios[" + _index5 + "]",
1816
+ })) && _vo7(elem, _path + ".scenarios[" + _index11 + "]", true && _exceptionable) || _report(_exceptionable, {
1817
+ path: _path + ".scenarios[" + _index11 + "]",
1043
1818
  expected: "IAutoBeTestScenarioApplication.IScenario",
1044
1819
  value: elem
1045
1820
  })).every(flag => flag)) || _report(_exceptionable, {
1046
1821
  path: _path + ".scenarios",
1047
1822
  expected: "(Array<IAutoBeTestScenarioApplication.IScenario> & MinItems<1>)",
1048
1823
  value: input.scenarios
1049
- })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
1050
- path: _path + ".path",
1051
- expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
1052
- value: input.path
1053
- })) || _report(_exceptionable, {
1054
- path: _path + ".path",
1055
- expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
1056
- value: input.path
1057
- }), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
1058
- path: _path + ".method",
1059
- expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
1060
- value: input.method
1061
- })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["string" === typeof input.draft || _report(_exceptionable, {
1824
+ })].every(flag => flag); const _vo7 = (input, _path, _exceptionable = true) => ["string" === typeof input.draft || _report(_exceptionable, {
1062
1825
  path: _path + ".draft",
1063
1826
  expected: "string",
1064
1827
  value: input.draft
@@ -1070,23 +1833,23 @@ const collection = {
1070
1833
  path: _path + ".dependencies",
1071
1834
  expected: "Array<IAutoBeTestScenarioApplication.IDependencies>",
1072
1835
  value: input.dependencies
1073
- })) && input.dependencies.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1074
- path: _path + ".dependencies[" + _index6 + "]",
1836
+ })) && input.dependencies.map((elem, _index12) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1837
+ path: _path + ".dependencies[" + _index12 + "]",
1075
1838
  expected: "IAutoBeTestScenarioApplication.IDependencies",
1076
1839
  value: elem
1077
- })) && _vo4(elem, _path + ".dependencies[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
1078
- path: _path + ".dependencies[" + _index6 + "]",
1840
+ })) && _vo8(elem, _path + ".dependencies[" + _index12 + "]", true && _exceptionable) || _report(_exceptionable, {
1841
+ path: _path + ".dependencies[" + _index12 + "]",
1079
1842
  expected: "IAutoBeTestScenarioApplication.IDependencies",
1080
1843
  value: elem
1081
1844
  })).every(flag => flag) || _report(_exceptionable, {
1082
1845
  path: _path + ".dependencies",
1083
1846
  expected: "Array<IAutoBeTestScenarioApplication.IDependencies>",
1084
1847
  value: input.dependencies
1085
- })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
1848
+ })].every(flag => flag); const _vo8 = (input, _path, _exceptionable = true) => [("object" === typeof input.endpoint && null !== input.endpoint || _report(_exceptionable, {
1086
1849
  path: _path + ".endpoint",
1087
1850
  expected: "AutoBeOpenApi.IEndpoint",
1088
1851
  value: input.endpoint
1089
- })) && _vo2(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
1852
+ })) && _vo3(input.endpoint, _path + ".endpoint", true && _exceptionable) || _report(_exceptionable, {
1090
1853
  path: _path + ".endpoint",
1091
1854
  expected: "AutoBeOpenApi.IEndpoint",
1092
1855
  value: input.endpoint
@@ -1094,7 +1857,22 @@ const collection = {
1094
1857
  path: _path + ".purpose",
1095
1858
  expected: "string",
1096
1859
  value: input.purpose
1097
- })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1860
+ })].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
1861
+ if ("getAnalysisFiles" === input.type)
1862
+ return _vo1(input, _path, true && _exceptionable);
1863
+ else if ("getInterfaceOperations" === input.type)
1864
+ return _vo2(input, _path, true && _exceptionable);
1865
+ else if ("getInterfaceSchemas" === input.type)
1866
+ return _vo4(input, _path, true && _exceptionable);
1867
+ else if ("complete" === input.type)
1868
+ return _vo5(input, _path, true && _exceptionable);
1869
+ else
1870
+ return _report(_exceptionable, {
1871
+ path: _path,
1872
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetInterfaceOperations | IAutoBePreliminaryGetInterfaceSchemas | IAutoBeTestScenarioReviewApplication.IComplete)",
1873
+ value: input
1874
+ });
1875
+ })(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1098
1876
  if (false === __is(input)) {
1099
1877
  errors = [];
1100
1878
  _report = __typia_transform__validateReport._validateReport(errors);
@@ -1127,10 +1905,11 @@ const collection = {
1127
1905
  };
1128
1906
  __typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
1129
1907
  validate: {
1130
- review: validate,
1908
+ process: validate,
1131
1909
  },
1132
1910
  }), { equals: false }));
1133
1911
  return application;
1134
1912
  })(),
1135
1913
  };
1914
+ const SOURCE = "testScenarioReview";
1136
1915
  //# sourceMappingURL=orchestrateTestScenarioReview.js.map