@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
@@ -0,0 +1,1337 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
36
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
+ return new (P || (P = Promise))(function (resolve, reject) {
38
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
39
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
40
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
41
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
42
+ });
43
+ };
44
+ var __importDefault = (this && this.__importDefault) || function (mod) {
45
+ return (mod && mod.__esModule) ? mod : { "default": mod };
46
+ };
47
+ Object.defineProperty(exports, "__esModule", { value: true });
48
+ exports.orchestrateInterfaceEndpointReview = orchestrateInterfaceEndpointReview;
49
+ const __typia_transform__validateReport = __importStar(require("typia/lib/internal/_validateReport.js"));
50
+ const __typia_transform__llmApplicationFinalize = __importStar(require("typia/lib/internal/_llmApplicationFinalize.js"));
51
+ const typia_1 = __importDefault(require("typia"));
52
+ const uuid_1 = require("uuid");
53
+ const assertSchemaModel_1 = require("../../context/assertSchemaModel");
54
+ const AutoBePreliminaryController_1 = require("../common/AutoBePreliminaryController");
55
+ const transformInterfaceEndpointReviewHistory_1 = require("./histories/transformInterfaceEndpointReviewHistory");
56
+ function orchestrateInterfaceEndpointReview(ctx, endpoints) {
57
+ return __awaiter(this, void 0, void 0, function* () {
58
+ const preliminary = new AutoBePreliminaryController_1.AutoBePreliminaryController({
59
+ application: {
60
+ version: "3.1",
61
+ components: {
62
+ schemas: {
63
+ "IAutoBeInterfaceEndpointReviewApplication.IProps": {
64
+ type: "object",
65
+ properties: {
66
+ thinking: {
67
+ type: "string",
68
+ 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."
69
+ },
70
+ request: {
71
+ oneOf: [
72
+ {
73
+ $ref: "#/components/schemas/IAutoBePreliminaryGetAnalysisFiles"
74
+ },
75
+ {
76
+ $ref: "#/components/schemas/IAutoBePreliminaryGetPrismaSchemas"
77
+ },
78
+ {
79
+ $ref: "#/components/schemas/IAutoBeInterfaceEndpointReviewApplication.IComplete"
80
+ }
81
+ ],
82
+ discriminator: {
83
+ propertyName: "type",
84
+ mapping: {
85
+ getAnalysisFiles: "#/components/schemas/IAutoBePreliminaryGetAnalysisFiles",
86
+ getPrismaSchemas: "#/components/schemas/IAutoBePreliminaryGetPrismaSchemas",
87
+ complete: "#/components/schemas/IAutoBeInterfaceEndpointReviewApplication.IComplete"
88
+ }
89
+ },
90
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getAnalysisFiles, getPrismaSchemas) or final endpoint review (complete).\nWhen preliminary returns empty array, that type is removed from the\nunion, physically preventing repeated calls."
91
+ }
92
+ },
93
+ required: [
94
+ "thinking",
95
+ "request"
96
+ ]
97
+ },
98
+ IAutoBePreliminaryGetAnalysisFiles: {
99
+ type: "object",
100
+ properties: {
101
+ type: {
102
+ "const": "getAnalysisFiles",
103
+ 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."
104
+ },
105
+ fileNames: {
106
+ type: "array",
107
+ items: {
108
+ type: "string"
109
+ },
110
+ minItems: 1,
111
+ 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."
112
+ }
113
+ },
114
+ required: [
115
+ "type",
116
+ "fileNames"
117
+ ],
118
+ 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."
119
+ },
120
+ IAutoBePreliminaryGetPrismaSchemas: {
121
+ type: "object",
122
+ properties: {
123
+ type: {
124
+ "const": "getPrismaSchemas",
125
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getPrismaSchemas\" indicates this is a preliminary\ndata request for Prisma schemas."
126
+ },
127
+ schemaNames: {
128
+ type: "array",
129
+ items: {
130
+ type: "string"
131
+ },
132
+ minItems: 1,
133
+ description: "List of Prisma table names to retrieve.\n\nTable names from the Prisma schema file representing database entities\n(e.g., \"user\", \"post\", \"comment\").\n\nCRITICAL: DO NOT request the same schema names that you have already\nrequested in previous calls."
134
+ }
135
+ },
136
+ required: [
137
+ "type",
138
+ "schemaNames"
139
+ ],
140
+ description: "Request to retrieve Prisma database schema definitions for context.\n\nThis type is used in the preliminary phase to request specific Prisma table\nschemas needed for generating type-safe API operations."
141
+ },
142
+ "IAutoBeInterfaceEndpointReviewApplication.IComplete": {
143
+ type: "object",
144
+ properties: {
145
+ type: {
146
+ "const": "complete",
147
+ 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."
148
+ },
149
+ review: {
150
+ type: "string",
151
+ description: "Comprehensive review analysis of all collected endpoints.\n\nContains detailed findings from the holistic review including:\n\n- Identified inconsistencies in naming conventions\n- Duplicate endpoints that serve the same purpose\n- Over-engineered solutions that add unnecessary complexity\n- Violations of REST API design principles\n- Recommendations for improvement and standardization\n\nThe review provides actionable feedback for creating a clean, consistent,\nand maintainable API structure."
152
+ },
153
+ endpoints: {
154
+ type: "array",
155
+ items: {
156
+ $ref: "#/components/schemas/AutoBeOpenApi.IEndpoint"
157
+ },
158
+ description: "Refined collection of API endpoints after review and cleanup.\n\nThe final optimized set of endpoints after:\n\n- Removing duplicates and redundant endpoints\n- Standardizing naming conventions across all paths\n- Simplifying over-engineered solutions\n- Ensuring consistent REST patterns\n- Aligning HTTP methods with their semantic meanings\n\nThis collection represents the production-ready API structure that\nbalances functionality with simplicity and maintainability."
159
+ }
160
+ },
161
+ required: [
162
+ "type",
163
+ "review",
164
+ "endpoints"
165
+ ],
166
+ description: "Request to review and refine API endpoints.\n\nExecutes comprehensive endpoint review to consolidate independently\ngenerated endpoints, ensure consistency, eliminate redundancy, and create a\nclean, maintainable API structure following REST best practices."
167
+ },
168
+ "AutoBeOpenApi.IEndpoint": {
169
+ type: "object",
170
+ properties: {
171
+ path: {
172
+ type: "string",
173
+ pattern: "^\\/[a-zA-Z0-9\\/_{}.-]*$",
174
+ description: "HTTP path of the API operation.\n\nThe URL path for accessing this API operation, using path parameters\nenclosed in curly braces (e.g., `/shoppings/customers/sales/{saleId}`).\n\nIt must be corresponded to the {@link parameters path parameters}.\n\nThe path structure should clearly indicate which database entity this\noperation is manipulating, helping to ensure all entities have\nappropriate API coverage.\n\nPath validation rules:\n\n- Must start with a forward slash (/)\n- Can contain only: letters (a-z, A-Z), numbers (0-9), forward slashes (/),\n curly braces for parameters ({paramName}), hyphens (-), and underscores\n (_)\n- Parameters must be enclosed in curly braces: {paramName}\n- Resource names should be in camelCase\n- No quotes, spaces, or invalid special characters allowed\n- No domain or role-based prefixes\n\nValid examples:\n\n- \"/users\"\n- \"/users/{userId}\"\n- \"/articles/{articleId}/comments\"\n- \"/attachmentFiles\"\n- \"/orders/{orderId}/items/{itemId}\"\n\nInvalid examples:\n\n- \"'/users'\" (contains quotes)\n- \"/user profile\" (contains space)\n- \"/users/[userId]\" (wrong bracket format)\n- \"/admin/users\" (role prefix)\n- \"/api/v1/users\" (API prefix)"
175
+ },
176
+ method: {
177
+ oneOf: [
178
+ {
179
+ "const": "get"
180
+ },
181
+ {
182
+ "const": "post"
183
+ },
184
+ {
185
+ "const": "put"
186
+ },
187
+ {
188
+ "const": "delete"
189
+ },
190
+ {
191
+ "const": "patch"
192
+ }
193
+ ],
194
+ description: "HTTP method of the API operation.\n\n**IMPORTANT**: Methods must be written in lowercase only (e.g., \"get\",\nnot \"GET\").\n\nNote that, if the API operation has {@link requestBody}, method must not\nbe `get`.\n\nAlso, even though the API operation has been designed to only get\ninformation, but it needs complicated request information, it must be\ndefined as `patch` method with {@link requestBody} data specification.\n\n- `get`: get information\n- `patch`: get information with complicated request data\n ({@link requestBody})\n- `post`: create new record\n- `put`: update existing record\n- `delete`: remove record"
195
+ }
196
+ },
197
+ required: [
198
+ "path",
199
+ "method"
200
+ ],
201
+ description: "API endpoint information."
202
+ }
203
+ }
204
+ },
205
+ functions: [
206
+ {
207
+ name: "process",
208
+ async: false,
209
+ parameters: [
210
+ {
211
+ name: "props",
212
+ description: " Request containing either preliminary data request or complete\ntask",
213
+ required: true,
214
+ schema: {
215
+ $ref: "#/components/schemas/IAutoBeInterfaceEndpointReviewApplication.IProps"
216
+ }
217
+ }
218
+ ],
219
+ description: "Process endpoint review task or preliminary data requests.\n\nConsolidates all endpoints generated independently and performs holistic\nreview to ensure consistency, remove duplicates, eliminate\nover-engineering, and verify REST API design principles."
220
+ }
221
+ ]
222
+ },
223
+ source: SOURCE,
224
+ kinds: ["analysisFiles", "prismaSchemas"],
225
+ state: ctx.state(),
226
+ });
227
+ return yield preliminary.orchestrate(ctx, () => __awaiter(this, void 0, void 0, function* () {
228
+ var _a, _b, _c, _d, _e;
229
+ const pointer = {
230
+ value: null,
231
+ };
232
+ const result = yield ctx.conversate(Object.assign({ source: SOURCE, controller: createController({
233
+ preliminary,
234
+ model: ctx.model,
235
+ build: (props) => {
236
+ pointer.value = props;
237
+ },
238
+ }), enforceFunctionCall: true }, (0, transformInterfaceEndpointReviewHistory_1.transformInterfaceEndpointReviewHistory)({
239
+ preliminary,
240
+ endpoints,
241
+ })));
242
+ const out = (value) => (Object.assign(Object.assign({}, result), { value }));
243
+ if (pointer.value !== null) {
244
+ const response = (_b = (_a = pointer.value) === null || _a === void 0 ? void 0 : _a.endpoints) !== null && _b !== void 0 ? _b : [];
245
+ ctx.dispatch({
246
+ id: (0, uuid_1.v7)(),
247
+ type: SOURCE,
248
+ endpoints,
249
+ content: response,
250
+ created_at: new Date().toISOString(),
251
+ review: (_c = pointer.value) === null || _c === void 0 ? void 0 : _c.review,
252
+ step: (_e = (_d = ctx.state().analyze) === null || _d === void 0 ? void 0 : _d.step) !== null && _e !== void 0 ? _e : 0,
253
+ metric: result.metric,
254
+ tokenUsage: result.tokenUsage,
255
+ });
256
+ return out(response);
257
+ }
258
+ return out(null);
259
+ }));
260
+ });
261
+ }
262
+ function createController(props) {
263
+ (0, assertSchemaModel_1.assertSchemaModel)(props.model);
264
+ const validate = (input) => {
265
+ 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 => "getPrismaSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io3 = input => "complete" === input.type && "string" === typeof input.review && (Array.isArray(input.endpoints) && input.endpoints.every(elem => "object" === typeof elem && null !== elem && _io4(elem))); const _io4 = 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 _iu0 = input => (() => {
266
+ if ("getAnalysisFiles" === input.type)
267
+ return _io1(input);
268
+ else if ("getPrismaSchemas" === input.type)
269
+ return _io2(input);
270
+ else if ("complete" === input.type)
271
+ return _io3(input);
272
+ else
273
+ return false;
274
+ })(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
275
+ path: _path + ".thinking",
276
+ expected: "string",
277
+ value: input.thinking
278
+ }), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
279
+ path: _path + ".request",
280
+ expected: "(IAutoBeInterfaceEndpointReviewApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
281
+ value: input.request
282
+ })) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
283
+ path: _path + ".request",
284
+ expected: "(IAutoBeInterfaceEndpointReviewApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
285
+ value: input.request
286
+ })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getAnalysisFiles" === input.type || _report(_exceptionable, {
287
+ path: _path + ".type",
288
+ expected: "\"getAnalysisFiles\"",
289
+ value: input.type
290
+ }), (Array.isArray(input.fileNames) || _report(_exceptionable, {
291
+ path: _path + ".fileNames",
292
+ expected: "(Array<string> & MinItems<1>)",
293
+ value: input.fileNames
294
+ })) && ((1 <= input.fileNames.length || _report(_exceptionable, {
295
+ path: _path + ".fileNames",
296
+ expected: "Array<> & MinItems<1>",
297
+ value: input.fileNames
298
+ })) && input.fileNames.map((elem, _index4) => "string" === typeof elem || _report(_exceptionable, {
299
+ path: _path + ".fileNames[" + _index4 + "]",
300
+ expected: "string",
301
+ value: elem
302
+ })).every(flag => flag)) || _report(_exceptionable, {
303
+ path: _path + ".fileNames",
304
+ expected: "(Array<string> & MinItems<1>)",
305
+ value: input.fileNames
306
+ })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["getPrismaSchemas" === input.type || _report(_exceptionable, {
307
+ path: _path + ".type",
308
+ expected: "\"getPrismaSchemas\"",
309
+ value: input.type
310
+ }), (Array.isArray(input.schemaNames) || _report(_exceptionable, {
311
+ path: _path + ".schemaNames",
312
+ expected: "(Array<string> & MinItems<1>)",
313
+ value: input.schemaNames
314
+ })) && ((1 <= input.schemaNames.length || _report(_exceptionable, {
315
+ path: _path + ".schemaNames",
316
+ expected: "Array<> & MinItems<1>",
317
+ value: input.schemaNames
318
+ })) && input.schemaNames.map((elem, _index5) => "string" === typeof elem || _report(_exceptionable, {
319
+ path: _path + ".schemaNames[" + _index5 + "]",
320
+ expected: "string",
321
+ value: elem
322
+ })).every(flag => flag)) || _report(_exceptionable, {
323
+ path: _path + ".schemaNames",
324
+ expected: "(Array<string> & MinItems<1>)",
325
+ value: input.schemaNames
326
+ })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
327
+ path: _path + ".type",
328
+ expected: "\"complete\"",
329
+ value: input.type
330
+ }), "string" === typeof input.review || _report(_exceptionable, {
331
+ path: _path + ".review",
332
+ expected: "string",
333
+ value: input.review
334
+ }), (Array.isArray(input.endpoints) || _report(_exceptionable, {
335
+ path: _path + ".endpoints",
336
+ expected: "Array<AutoBeOpenApi.IEndpoint>",
337
+ value: input.endpoints
338
+ })) && input.endpoints.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
339
+ path: _path + ".endpoints[" + _index6 + "]",
340
+ expected: "AutoBeOpenApi.IEndpoint",
341
+ value: elem
342
+ })) && _vo4(elem, _path + ".endpoints[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
343
+ path: _path + ".endpoints[" + _index6 + "]",
344
+ expected: "AutoBeOpenApi.IEndpoint",
345
+ value: elem
346
+ })).every(flag => flag) || _report(_exceptionable, {
347
+ path: _path + ".endpoints",
348
+ expected: "Array<AutoBeOpenApi.IEndpoint>",
349
+ value: input.endpoints
350
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
351
+ path: _path + ".path",
352
+ expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
353
+ value: input.path
354
+ })) || _report(_exceptionable, {
355
+ path: _path + ".path",
356
+ expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
357
+ value: input.path
358
+ }), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
359
+ path: _path + ".method",
360
+ expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
361
+ value: input.method
362
+ })].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
363
+ if ("getAnalysisFiles" === input.type)
364
+ return _vo1(input, _path, true && _exceptionable);
365
+ else if ("getPrismaSchemas" === input.type)
366
+ return _vo2(input, _path, true && _exceptionable);
367
+ else if ("complete" === input.type)
368
+ return _vo3(input, _path, true && _exceptionable);
369
+ else
370
+ return _report(_exceptionable, {
371
+ path: _path,
372
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas | IAutoBeInterfaceEndpointReviewApplication.IComplete)",
373
+ value: input
374
+ });
375
+ })(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
376
+ if (false === __is(input)) {
377
+ errors = [];
378
+ _report = __typia_transform__validateReport._validateReport(errors);
379
+ ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
380
+ path: _path + "",
381
+ expected: "IAutoBeInterfaceEndpointReviewApplication.IProps",
382
+ value: input
383
+ })) && _vo0(input, _path + "", true) || _report(true, {
384
+ path: _path + "",
385
+ expected: "IAutoBeInterfaceEndpointReviewApplication.IProps",
386
+ value: input
387
+ }))(input, "$input", true);
388
+ const success = 0 === errors.length;
389
+ return success ? {
390
+ success,
391
+ data: input
392
+ } : {
393
+ success,
394
+ errors,
395
+ data: input
396
+ };
397
+ }
398
+ return {
399
+ success: true,
400
+ data: input
401
+ };
402
+ }; })()(input);
403
+ if (result.success === false || result.data.request.type === "complete")
404
+ return result;
405
+ return props.preliminary.validate({
406
+ thinking: result.data.thinking,
407
+ request: result.data.request,
408
+ });
409
+ };
410
+ const application = collection[props.model === "chatgpt"
411
+ ? "chatgpt"
412
+ : props.model === "gemini"
413
+ ? "gemini"
414
+ : "claude"](validate);
415
+ return {
416
+ protocol: "class",
417
+ name: SOURCE,
418
+ application,
419
+ execute: {
420
+ process: (next) => {
421
+ if (next.request.type === "complete")
422
+ props.build(next.request);
423
+ },
424
+ },
425
+ };
426
+ }
427
+ const collection = {
428
+ chatgpt: (validate) => (() => {
429
+ const application = {
430
+ model: "chatgpt",
431
+ options: {
432
+ reference: true,
433
+ strict: false,
434
+ separate: null
435
+ },
436
+ functions: [
437
+ {
438
+ name: "process",
439
+ parameters: {
440
+ description: " Request containing either preliminary data request or complete\ntask\n\n------------------------------\n\nCurrent Type: {@link IAutoBeInterfaceEndpointReviewApplication.IProps}",
441
+ type: "object",
442
+ properties: {
443
+ thinking: {
444
+ 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.",
445
+ type: "string"
446
+ },
447
+ request: {
448
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getAnalysisFiles, getPrismaSchemas) or final endpoint review (complete).\nWhen preliminary returns empty array, that type is removed from the\nunion, physically preventing repeated calls.",
449
+ anyOf: [
450
+ {
451
+ $ref: "#/$defs/IAutoBePreliminaryGetAnalysisFiles"
452
+ },
453
+ {
454
+ $ref: "#/$defs/IAutoBePreliminaryGetPrismaSchemas"
455
+ },
456
+ {
457
+ $ref: "#/$defs/IAutoBeInterfaceEndpointReviewApplication.IComplete"
458
+ }
459
+ ],
460
+ "x-discriminator": {
461
+ propertyName: "type",
462
+ mapping: {
463
+ getAnalysisFiles: "#/$defs/IAutoBePreliminaryGetAnalysisFiles",
464
+ getPrismaSchemas: "#/$defs/IAutoBePreliminaryGetPrismaSchemas",
465
+ complete: "#/$defs/IAutoBeInterfaceEndpointReviewApplication.IComplete"
466
+ }
467
+ }
468
+ }
469
+ },
470
+ required: [
471
+ "thinking",
472
+ "request"
473
+ ],
474
+ additionalProperties: false,
475
+ $defs: {
476
+ IAutoBePreliminaryGetAnalysisFiles: {
477
+ 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.",
478
+ type: "object",
479
+ properties: {
480
+ type: {
481
+ 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.",
482
+ type: "string",
483
+ "enum": [
484
+ "getAnalysisFiles"
485
+ ]
486
+ },
487
+ fileNames: {
488
+ 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",
489
+ type: "array",
490
+ items: {
491
+ type: "string"
492
+ }
493
+ }
494
+ },
495
+ required: [
496
+ "type",
497
+ "fileNames"
498
+ ]
499
+ },
500
+ IAutoBePreliminaryGetPrismaSchemas: {
501
+ description: "Request to retrieve Prisma database schema definitions for context.\n\nThis type is used in the preliminary phase to request specific Prisma table\nschemas needed for generating type-safe API operations.",
502
+ type: "object",
503
+ properties: {
504
+ type: {
505
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getPrismaSchemas\" indicates this is a preliminary\ndata request for Prisma schemas.",
506
+ type: "string",
507
+ "enum": [
508
+ "getPrismaSchemas"
509
+ ]
510
+ },
511
+ schemaNames: {
512
+ description: "List of Prisma table names to retrieve.\n\nTable names from the Prisma schema file representing database entities\n(e.g., \"user\", \"post\", \"comment\").\n\nCRITICAL: DO NOT request the same schema names that you have already\nrequested in previous calls.\n\n\n@minItems 1",
513
+ type: "array",
514
+ items: {
515
+ type: "string"
516
+ }
517
+ }
518
+ },
519
+ required: [
520
+ "type",
521
+ "schemaNames"
522
+ ]
523
+ },
524
+ "IAutoBeInterfaceEndpointReviewApplication.IComplete": {
525
+ description: "Request to review and refine API endpoints.\n\nExecutes comprehensive endpoint review to consolidate independently\ngenerated endpoints, ensure consistency, eliminate redundancy, and create a\nclean, maintainable API structure following REST best practices.",
526
+ type: "object",
527
+ properties: {
528
+ type: {
529
+ 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.",
530
+ type: "string",
531
+ "enum": [
532
+ "complete"
533
+ ]
534
+ },
535
+ review: {
536
+ description: "Comprehensive review analysis of all collected endpoints.\n\nContains detailed findings from the holistic review including:\n\n- Identified inconsistencies in naming conventions\n- Duplicate endpoints that serve the same purpose\n- Over-engineered solutions that add unnecessary complexity\n- Violations of REST API design principles\n- Recommendations for improvement and standardization\n\nThe review provides actionable feedback for creating a clean, consistent,\nand maintainable API structure.",
537
+ type: "string"
538
+ },
539
+ endpoints: {
540
+ description: "Refined collection of API endpoints after review and cleanup.\n\nThe final optimized set of endpoints after:\n\n- Removing duplicates and redundant endpoints\n- Standardizing naming conventions across all paths\n- Simplifying over-engineered solutions\n- Ensuring consistent REST patterns\n- Aligning HTTP methods with their semantic meanings\n\nThis collection represents the production-ready API structure that\nbalances functionality with simplicity and maintainability.",
541
+ type: "array",
542
+ items: {
543
+ $ref: "#/$defs/AutoBeOpenApi.IEndpoint"
544
+ }
545
+ }
546
+ },
547
+ required: [
548
+ "type",
549
+ "review",
550
+ "endpoints"
551
+ ]
552
+ },
553
+ "AutoBeOpenApi.IEndpoint": {
554
+ description: "API endpoint information.",
555
+ type: "object",
556
+ properties: {
557
+ path: {
558
+ description: "HTTP path of the API operation.\n\nThe URL path for accessing this API operation, using path parameters\nenclosed in curly braces (e.g., `/shoppings/customers/sales/{saleId}`).\n\nIt must be corresponded to the {@link parameters path parameters}.\n\nThe path structure should clearly indicate which database entity this\noperation is manipulating, helping to ensure all entities have\nappropriate API coverage.\n\nPath validation rules:\n\n- Must start with a forward slash (/)\n- Can contain only: letters (a-z, A-Z), numbers (0-9), forward slashes (/),\n curly braces for parameters ({paramName}), hyphens (-), and underscores\n (_)\n- Parameters must be enclosed in curly braces: {paramName}\n- Resource names should be in camelCase\n- No quotes, spaces, or invalid special characters allowed\n- No domain or role-based prefixes\n\nValid examples:\n\n- \"/users\"\n- \"/users/{userId}\"\n- \"/articles/{articleId}/comments\"\n- \"/attachmentFiles\"\n- \"/orders/{orderId}/items/{itemId}\"\n\nInvalid examples:\n\n- \"'/users'\" (contains quotes)\n- \"/user profile\" (contains space)\n- \"/users/[userId]\" (wrong bracket format)\n- \"/admin/users\" (role prefix)\n- \"/api/v1/users\" (API prefix)\n\n\n@pattern ^\\/[a-zA-Z0-9\\/_{}.-]*$",
559
+ type: "string"
560
+ },
561
+ method: {
562
+ description: "HTTP method of the API operation.\n\n**IMPORTANT**: Methods must be written in lowercase only (e.g., \"get\",\nnot \"GET\").\n\nNote that, if the API operation has {@link requestBody}, method must not\nbe `get`.\n\nAlso, even though the API operation has been designed to only get\ninformation, but it needs complicated request information, it must be\ndefined as `patch` method with {@link requestBody} data specification.\n\n- `get`: get information\n- `patch`: get information with complicated request data\n ({@link requestBody})\n- `post`: create new record\n- `put`: update existing record\n- `delete`: remove record",
563
+ type: "string",
564
+ "enum": [
565
+ "get",
566
+ "post",
567
+ "put",
568
+ "delete",
569
+ "patch"
570
+ ]
571
+ }
572
+ },
573
+ required: [
574
+ "path",
575
+ "method"
576
+ ]
577
+ }
578
+ }
579
+ },
580
+ description: "Process endpoint review task or preliminary data requests.\n\nConsolidates all endpoints generated independently and performs holistic\nreview to ensure consistency, remove duplicates, eliminate\nover-engineering, and verify REST API design principles.",
581
+ 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 => "getPrismaSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io3 = input => "complete" === input.type && "string" === typeof input.review && (Array.isArray(input.endpoints) && input.endpoints.every(elem => "object" === typeof elem && null !== elem && _io4(elem))); const _io4 = 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 _iu0 = input => (() => {
582
+ if ("getAnalysisFiles" === input.type)
583
+ return _io1(input);
584
+ else if ("getPrismaSchemas" === input.type)
585
+ return _io2(input);
586
+ else if ("complete" === input.type)
587
+ return _io3(input);
588
+ else
589
+ return false;
590
+ })(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
591
+ path: _path + ".thinking",
592
+ expected: "string",
593
+ value: input.thinking
594
+ }), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
595
+ path: _path + ".request",
596
+ expected: "(IAutoBeInterfaceEndpointReviewApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
597
+ value: input.request
598
+ })) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
599
+ path: _path + ".request",
600
+ expected: "(IAutoBeInterfaceEndpointReviewApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
601
+ value: input.request
602
+ })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getAnalysisFiles" === input.type || _report(_exceptionable, {
603
+ path: _path + ".type",
604
+ expected: "\"getAnalysisFiles\"",
605
+ value: input.type
606
+ }), (Array.isArray(input.fileNames) || _report(_exceptionable, {
607
+ path: _path + ".fileNames",
608
+ expected: "(Array<string> & MinItems<1>)",
609
+ value: input.fileNames
610
+ })) && ((1 <= input.fileNames.length || _report(_exceptionable, {
611
+ path: _path + ".fileNames",
612
+ expected: "Array<> & MinItems<1>",
613
+ value: input.fileNames
614
+ })) && input.fileNames.map((elem, _index4) => "string" === typeof elem || _report(_exceptionable, {
615
+ path: _path + ".fileNames[" + _index4 + "]",
616
+ expected: "string",
617
+ value: elem
618
+ })).every(flag => flag)) || _report(_exceptionable, {
619
+ path: _path + ".fileNames",
620
+ expected: "(Array<string> & MinItems<1>)",
621
+ value: input.fileNames
622
+ })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["getPrismaSchemas" === input.type || _report(_exceptionable, {
623
+ path: _path + ".type",
624
+ expected: "\"getPrismaSchemas\"",
625
+ value: input.type
626
+ }), (Array.isArray(input.schemaNames) || _report(_exceptionable, {
627
+ path: _path + ".schemaNames",
628
+ expected: "(Array<string> & MinItems<1>)",
629
+ value: input.schemaNames
630
+ })) && ((1 <= input.schemaNames.length || _report(_exceptionable, {
631
+ path: _path + ".schemaNames",
632
+ expected: "Array<> & MinItems<1>",
633
+ value: input.schemaNames
634
+ })) && input.schemaNames.map((elem, _index5) => "string" === typeof elem || _report(_exceptionable, {
635
+ path: _path + ".schemaNames[" + _index5 + "]",
636
+ expected: "string",
637
+ value: elem
638
+ })).every(flag => flag)) || _report(_exceptionable, {
639
+ path: _path + ".schemaNames",
640
+ expected: "(Array<string> & MinItems<1>)",
641
+ value: input.schemaNames
642
+ })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
643
+ path: _path + ".type",
644
+ expected: "\"complete\"",
645
+ value: input.type
646
+ }), "string" === typeof input.review || _report(_exceptionable, {
647
+ path: _path + ".review",
648
+ expected: "string",
649
+ value: input.review
650
+ }), (Array.isArray(input.endpoints) || _report(_exceptionable, {
651
+ path: _path + ".endpoints",
652
+ expected: "Array<AutoBeOpenApi.IEndpoint>",
653
+ value: input.endpoints
654
+ })) && input.endpoints.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
655
+ path: _path + ".endpoints[" + _index6 + "]",
656
+ expected: "AutoBeOpenApi.IEndpoint",
657
+ value: elem
658
+ })) && _vo4(elem, _path + ".endpoints[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
659
+ path: _path + ".endpoints[" + _index6 + "]",
660
+ expected: "AutoBeOpenApi.IEndpoint",
661
+ value: elem
662
+ })).every(flag => flag) || _report(_exceptionable, {
663
+ path: _path + ".endpoints",
664
+ expected: "Array<AutoBeOpenApi.IEndpoint>",
665
+ value: input.endpoints
666
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
667
+ path: _path + ".path",
668
+ expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
669
+ value: input.path
670
+ })) || _report(_exceptionable, {
671
+ path: _path + ".path",
672
+ expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
673
+ value: input.path
674
+ }), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
675
+ path: _path + ".method",
676
+ expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
677
+ value: input.method
678
+ })].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
679
+ if ("getAnalysisFiles" === input.type)
680
+ return _vo1(input, _path, true && _exceptionable);
681
+ else if ("getPrismaSchemas" === input.type)
682
+ return _vo2(input, _path, true && _exceptionable);
683
+ else if ("complete" === input.type)
684
+ return _vo3(input, _path, true && _exceptionable);
685
+ else
686
+ return _report(_exceptionable, {
687
+ path: _path,
688
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas | IAutoBeInterfaceEndpointReviewApplication.IComplete)",
689
+ value: input
690
+ });
691
+ })(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
692
+ if (false === __is(input)) {
693
+ errors = [];
694
+ _report = __typia_transform__validateReport._validateReport(errors);
695
+ ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
696
+ path: _path + "",
697
+ expected: "IAutoBeInterfaceEndpointReviewApplication.IProps",
698
+ value: input
699
+ })) && _vo0(input, _path + "", true) || _report(true, {
700
+ path: _path + "",
701
+ expected: "IAutoBeInterfaceEndpointReviewApplication.IProps",
702
+ value: input
703
+ }))(input, "$input", true);
704
+ const success = 0 === errors.length;
705
+ return success ? {
706
+ success,
707
+ data: input
708
+ } : {
709
+ success,
710
+ errors,
711
+ data: input
712
+ };
713
+ }
714
+ return {
715
+ success: true,
716
+ data: input
717
+ };
718
+ }; })()
719
+ }
720
+ ]
721
+ };
722
+ __typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
723
+ validate: {
724
+ process: validate,
725
+ },
726
+ }), { equals: false }));
727
+ return application;
728
+ })(),
729
+ claude: (validate) => (() => {
730
+ const application = {
731
+ model: "claude",
732
+ options: {
733
+ reference: true,
734
+ separate: null
735
+ },
736
+ functions: [
737
+ {
738
+ name: "process",
739
+ parameters: {
740
+ description: " Request containing either preliminary data request or complete\ntask\n\n------------------------------\n\nCurrent Type: {@link IAutoBeInterfaceEndpointReviewApplication.IProps}",
741
+ type: "object",
742
+ properties: {
743
+ thinking: {
744
+ 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.",
745
+ type: "string"
746
+ },
747
+ request: {
748
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getAnalysisFiles, getPrismaSchemas) or final endpoint review (complete).\nWhen preliminary returns empty array, that type is removed from the\nunion, physically preventing repeated calls.",
749
+ oneOf: [
750
+ {
751
+ $ref: "#/$defs/IAutoBePreliminaryGetAnalysisFiles"
752
+ },
753
+ {
754
+ $ref: "#/$defs/IAutoBePreliminaryGetPrismaSchemas"
755
+ },
756
+ {
757
+ $ref: "#/$defs/IAutoBeInterfaceEndpointReviewApplication.IComplete"
758
+ }
759
+ ],
760
+ discriminator: {
761
+ propertyName: "type",
762
+ mapping: {
763
+ getAnalysisFiles: "#/$defs/IAutoBePreliminaryGetAnalysisFiles",
764
+ getPrismaSchemas: "#/$defs/IAutoBePreliminaryGetPrismaSchemas",
765
+ complete: "#/$defs/IAutoBeInterfaceEndpointReviewApplication.IComplete"
766
+ }
767
+ }
768
+ }
769
+ },
770
+ required: [
771
+ "thinking",
772
+ "request"
773
+ ],
774
+ additionalProperties: false,
775
+ $defs: {
776
+ IAutoBePreliminaryGetAnalysisFiles: {
777
+ 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.",
778
+ type: "object",
779
+ properties: {
780
+ type: {
781
+ 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.",
782
+ "const": "getAnalysisFiles"
783
+ },
784
+ fileNames: {
785
+ 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.",
786
+ type: "array",
787
+ items: {
788
+ type: "string"
789
+ },
790
+ minItems: 1
791
+ }
792
+ },
793
+ required: [
794
+ "type",
795
+ "fileNames"
796
+ ]
797
+ },
798
+ IAutoBePreliminaryGetPrismaSchemas: {
799
+ description: "Request to retrieve Prisma database schema definitions for context.\n\nThis type is used in the preliminary phase to request specific Prisma table\nschemas needed for generating type-safe API operations.",
800
+ type: "object",
801
+ properties: {
802
+ type: {
803
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getPrismaSchemas\" indicates this is a preliminary\ndata request for Prisma schemas.",
804
+ "const": "getPrismaSchemas"
805
+ },
806
+ schemaNames: {
807
+ description: "List of Prisma table names to retrieve.\n\nTable names from the Prisma schema file representing database entities\n(e.g., \"user\", \"post\", \"comment\").\n\nCRITICAL: DO NOT request the same schema names that you have already\nrequested in previous calls.",
808
+ type: "array",
809
+ items: {
810
+ type: "string"
811
+ },
812
+ minItems: 1
813
+ }
814
+ },
815
+ required: [
816
+ "type",
817
+ "schemaNames"
818
+ ]
819
+ },
820
+ "IAutoBeInterfaceEndpointReviewApplication.IComplete": {
821
+ description: "Request to review and refine API endpoints.\n\nExecutes comprehensive endpoint review to consolidate independently\ngenerated endpoints, ensure consistency, eliminate redundancy, and create a\nclean, maintainable API structure following REST best practices.",
822
+ type: "object",
823
+ properties: {
824
+ type: {
825
+ 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.",
826
+ "const": "complete"
827
+ },
828
+ review: {
829
+ description: "Comprehensive review analysis of all collected endpoints.\n\nContains detailed findings from the holistic review including:\n\n- Identified inconsistencies in naming conventions\n- Duplicate endpoints that serve the same purpose\n- Over-engineered solutions that add unnecessary complexity\n- Violations of REST API design principles\n- Recommendations for improvement and standardization\n\nThe review provides actionable feedback for creating a clean, consistent,\nand maintainable API structure.",
830
+ type: "string"
831
+ },
832
+ endpoints: {
833
+ description: "Refined collection of API endpoints after review and cleanup.\n\nThe final optimized set of endpoints after:\n\n- Removing duplicates and redundant endpoints\n- Standardizing naming conventions across all paths\n- Simplifying over-engineered solutions\n- Ensuring consistent REST patterns\n- Aligning HTTP methods with their semantic meanings\n\nThis collection represents the production-ready API structure that\nbalances functionality with simplicity and maintainability.",
834
+ type: "array",
835
+ items: {
836
+ $ref: "#/$defs/AutoBeOpenApi.IEndpoint"
837
+ }
838
+ }
839
+ },
840
+ required: [
841
+ "type",
842
+ "review",
843
+ "endpoints"
844
+ ]
845
+ },
846
+ "AutoBeOpenApi.IEndpoint": {
847
+ description: "API endpoint information.",
848
+ type: "object",
849
+ properties: {
850
+ path: {
851
+ description: "HTTP path of the API operation.\n\nThe URL path for accessing this API operation, using path parameters\nenclosed in curly braces (e.g., `/shoppings/customers/sales/{saleId}`).\n\nIt must be corresponded to the {@link parameters path parameters}.\n\nThe path structure should clearly indicate which database entity this\noperation is manipulating, helping to ensure all entities have\nappropriate API coverage.\n\nPath validation rules:\n\n- Must start with a forward slash (/)\n- Can contain only: letters (a-z, A-Z), numbers (0-9), forward slashes (/),\n curly braces for parameters ({paramName}), hyphens (-), and underscores\n (_)\n- Parameters must be enclosed in curly braces: {paramName}\n- Resource names should be in camelCase\n- No quotes, spaces, or invalid special characters allowed\n- No domain or role-based prefixes\n\nValid examples:\n\n- \"/users\"\n- \"/users/{userId}\"\n- \"/articles/{articleId}/comments\"\n- \"/attachmentFiles\"\n- \"/orders/{orderId}/items/{itemId}\"\n\nInvalid examples:\n\n- \"'/users'\" (contains quotes)\n- \"/user profile\" (contains space)\n- \"/users/[userId]\" (wrong bracket format)\n- \"/admin/users\" (role prefix)\n- \"/api/v1/users\" (API prefix)",
852
+ type: "string",
853
+ pattern: "^\\/[a-zA-Z0-9\\/_{}.-]*$"
854
+ },
855
+ method: {
856
+ description: "HTTP method of the API operation.\n\n**IMPORTANT**: Methods must be written in lowercase only (e.g., \"get\",\nnot \"GET\").\n\nNote that, if the API operation has {@link requestBody}, method must not\nbe `get`.\n\nAlso, even though the API operation has been designed to only get\ninformation, but it needs complicated request information, it must be\ndefined as `patch` method with {@link requestBody} data specification.\n\n- `get`: get information\n- `patch`: get information with complicated request data\n ({@link requestBody})\n- `post`: create new record\n- `put`: update existing record\n- `delete`: remove record",
857
+ oneOf: [
858
+ {
859
+ "const": "get"
860
+ },
861
+ {
862
+ "const": "post"
863
+ },
864
+ {
865
+ "const": "put"
866
+ },
867
+ {
868
+ "const": "delete"
869
+ },
870
+ {
871
+ "const": "patch"
872
+ }
873
+ ]
874
+ }
875
+ },
876
+ required: [
877
+ "path",
878
+ "method"
879
+ ]
880
+ }
881
+ }
882
+ },
883
+ description: "Process endpoint review task or preliminary data requests.\n\nConsolidates all endpoints generated independently and performs holistic\nreview to ensure consistency, remove duplicates, eliminate\nover-engineering, and verify REST API design principles.",
884
+ 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 => "getPrismaSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io3 = input => "complete" === input.type && "string" === typeof input.review && (Array.isArray(input.endpoints) && input.endpoints.every(elem => "object" === typeof elem && null !== elem && _io4(elem))); const _io4 = 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 _iu0 = input => (() => {
885
+ if ("getAnalysisFiles" === input.type)
886
+ return _io1(input);
887
+ else if ("getPrismaSchemas" === input.type)
888
+ return _io2(input);
889
+ else if ("complete" === input.type)
890
+ return _io3(input);
891
+ else
892
+ return false;
893
+ })(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
894
+ path: _path + ".thinking",
895
+ expected: "string",
896
+ value: input.thinking
897
+ }), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
898
+ path: _path + ".request",
899
+ expected: "(IAutoBeInterfaceEndpointReviewApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
900
+ value: input.request
901
+ })) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
902
+ path: _path + ".request",
903
+ expected: "(IAutoBeInterfaceEndpointReviewApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
904
+ value: input.request
905
+ })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getAnalysisFiles" === input.type || _report(_exceptionable, {
906
+ path: _path + ".type",
907
+ expected: "\"getAnalysisFiles\"",
908
+ value: input.type
909
+ }), (Array.isArray(input.fileNames) || _report(_exceptionable, {
910
+ path: _path + ".fileNames",
911
+ expected: "(Array<string> & MinItems<1>)",
912
+ value: input.fileNames
913
+ })) && ((1 <= input.fileNames.length || _report(_exceptionable, {
914
+ path: _path + ".fileNames",
915
+ expected: "Array<> & MinItems<1>",
916
+ value: input.fileNames
917
+ })) && input.fileNames.map((elem, _index4) => "string" === typeof elem || _report(_exceptionable, {
918
+ path: _path + ".fileNames[" + _index4 + "]",
919
+ expected: "string",
920
+ value: elem
921
+ })).every(flag => flag)) || _report(_exceptionable, {
922
+ path: _path + ".fileNames",
923
+ expected: "(Array<string> & MinItems<1>)",
924
+ value: input.fileNames
925
+ })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["getPrismaSchemas" === input.type || _report(_exceptionable, {
926
+ path: _path + ".type",
927
+ expected: "\"getPrismaSchemas\"",
928
+ value: input.type
929
+ }), (Array.isArray(input.schemaNames) || _report(_exceptionable, {
930
+ path: _path + ".schemaNames",
931
+ expected: "(Array<string> & MinItems<1>)",
932
+ value: input.schemaNames
933
+ })) && ((1 <= input.schemaNames.length || _report(_exceptionable, {
934
+ path: _path + ".schemaNames",
935
+ expected: "Array<> & MinItems<1>",
936
+ value: input.schemaNames
937
+ })) && input.schemaNames.map((elem, _index5) => "string" === typeof elem || _report(_exceptionable, {
938
+ path: _path + ".schemaNames[" + _index5 + "]",
939
+ expected: "string",
940
+ value: elem
941
+ })).every(flag => flag)) || _report(_exceptionable, {
942
+ path: _path + ".schemaNames",
943
+ expected: "(Array<string> & MinItems<1>)",
944
+ value: input.schemaNames
945
+ })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
946
+ path: _path + ".type",
947
+ expected: "\"complete\"",
948
+ value: input.type
949
+ }), "string" === typeof input.review || _report(_exceptionable, {
950
+ path: _path + ".review",
951
+ expected: "string",
952
+ value: input.review
953
+ }), (Array.isArray(input.endpoints) || _report(_exceptionable, {
954
+ path: _path + ".endpoints",
955
+ expected: "Array<AutoBeOpenApi.IEndpoint>",
956
+ value: input.endpoints
957
+ })) && input.endpoints.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
958
+ path: _path + ".endpoints[" + _index6 + "]",
959
+ expected: "AutoBeOpenApi.IEndpoint",
960
+ value: elem
961
+ })) && _vo4(elem, _path + ".endpoints[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
962
+ path: _path + ".endpoints[" + _index6 + "]",
963
+ expected: "AutoBeOpenApi.IEndpoint",
964
+ value: elem
965
+ })).every(flag => flag) || _report(_exceptionable, {
966
+ path: _path + ".endpoints",
967
+ expected: "Array<AutoBeOpenApi.IEndpoint>",
968
+ value: input.endpoints
969
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
970
+ path: _path + ".path",
971
+ expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
972
+ value: input.path
973
+ })) || _report(_exceptionable, {
974
+ path: _path + ".path",
975
+ expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
976
+ value: input.path
977
+ }), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
978
+ path: _path + ".method",
979
+ expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
980
+ value: input.method
981
+ })].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
982
+ if ("getAnalysisFiles" === input.type)
983
+ return _vo1(input, _path, true && _exceptionable);
984
+ else if ("getPrismaSchemas" === input.type)
985
+ return _vo2(input, _path, true && _exceptionable);
986
+ else if ("complete" === input.type)
987
+ return _vo3(input, _path, true && _exceptionable);
988
+ else
989
+ return _report(_exceptionable, {
990
+ path: _path,
991
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas | IAutoBeInterfaceEndpointReviewApplication.IComplete)",
992
+ value: input
993
+ });
994
+ })(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
995
+ if (false === __is(input)) {
996
+ errors = [];
997
+ _report = __typia_transform__validateReport._validateReport(errors);
998
+ ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
999
+ path: _path + "",
1000
+ expected: "IAutoBeInterfaceEndpointReviewApplication.IProps",
1001
+ value: input
1002
+ })) && _vo0(input, _path + "", true) || _report(true, {
1003
+ path: _path + "",
1004
+ expected: "IAutoBeInterfaceEndpointReviewApplication.IProps",
1005
+ value: input
1006
+ }))(input, "$input", true);
1007
+ const success = 0 === errors.length;
1008
+ return success ? {
1009
+ success,
1010
+ data: input
1011
+ } : {
1012
+ success,
1013
+ errors,
1014
+ data: input
1015
+ };
1016
+ }
1017
+ return {
1018
+ success: true,
1019
+ data: input
1020
+ };
1021
+ }; })()
1022
+ }
1023
+ ]
1024
+ };
1025
+ __typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
1026
+ validate: {
1027
+ process: validate,
1028
+ },
1029
+ }), { equals: false }));
1030
+ return application;
1031
+ })(),
1032
+ gemini: (validate) => (() => {
1033
+ const application = {
1034
+ model: "gemini",
1035
+ options: {
1036
+ reference: true,
1037
+ separate: null
1038
+ },
1039
+ functions: [
1040
+ {
1041
+ name: "process",
1042
+ parameters: {
1043
+ description: " Request containing either preliminary data request or complete\ntask\n\n------------------------------\n\nCurrent Type: {@link IAutoBeInterfaceEndpointReviewApplication.IProps}",
1044
+ type: "object",
1045
+ properties: {
1046
+ thinking: {
1047
+ 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.",
1048
+ type: "string"
1049
+ },
1050
+ request: {
1051
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getAnalysisFiles, getPrismaSchemas) or final endpoint review (complete).\nWhen preliminary returns empty array, that type is removed from the\nunion, physically preventing repeated calls.",
1052
+ anyOf: [
1053
+ {
1054
+ $ref: "#/$defs/IAutoBePreliminaryGetAnalysisFiles"
1055
+ },
1056
+ {
1057
+ $ref: "#/$defs/IAutoBePreliminaryGetPrismaSchemas"
1058
+ },
1059
+ {
1060
+ $ref: "#/$defs/IAutoBeInterfaceEndpointReviewApplication.IComplete"
1061
+ }
1062
+ ],
1063
+ "x-discriminator": {
1064
+ propertyName: "type",
1065
+ mapping: {
1066
+ getAnalysisFiles: "#/$defs/IAutoBePreliminaryGetAnalysisFiles",
1067
+ getPrismaSchemas: "#/$defs/IAutoBePreliminaryGetPrismaSchemas",
1068
+ complete: "#/$defs/IAutoBeInterfaceEndpointReviewApplication.IComplete"
1069
+ }
1070
+ }
1071
+ }
1072
+ },
1073
+ required: [
1074
+ "thinking",
1075
+ "request"
1076
+ ],
1077
+ additionalProperties: false,
1078
+ $defs: {
1079
+ IAutoBePreliminaryGetAnalysisFiles: {
1080
+ 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.",
1081
+ type: "object",
1082
+ properties: {
1083
+ type: {
1084
+ 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.",
1085
+ type: "string",
1086
+ "enum": [
1087
+ "getAnalysisFiles"
1088
+ ]
1089
+ },
1090
+ fileNames: {
1091
+ 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.",
1092
+ type: "array",
1093
+ items: {
1094
+ type: "string"
1095
+ },
1096
+ minItems: 1
1097
+ }
1098
+ },
1099
+ required: [
1100
+ "type",
1101
+ "fileNames"
1102
+ ]
1103
+ },
1104
+ IAutoBePreliminaryGetPrismaSchemas: {
1105
+ description: "Request to retrieve Prisma database schema definitions for context.\n\nThis type is used in the preliminary phase to request specific Prisma table\nschemas needed for generating type-safe API operations.",
1106
+ type: "object",
1107
+ properties: {
1108
+ type: {
1109
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getPrismaSchemas\" indicates this is a preliminary\ndata request for Prisma schemas.",
1110
+ type: "string",
1111
+ "enum": [
1112
+ "getPrismaSchemas"
1113
+ ]
1114
+ },
1115
+ schemaNames: {
1116
+ description: "List of Prisma table names to retrieve.\n\nTable names from the Prisma schema file representing database entities\n(e.g., \"user\", \"post\", \"comment\").\n\nCRITICAL: DO NOT request the same schema names that you have already\nrequested in previous calls.",
1117
+ type: "array",
1118
+ items: {
1119
+ type: "string"
1120
+ },
1121
+ minItems: 1
1122
+ }
1123
+ },
1124
+ required: [
1125
+ "type",
1126
+ "schemaNames"
1127
+ ]
1128
+ },
1129
+ "IAutoBeInterfaceEndpointReviewApplication.IComplete": {
1130
+ description: "Request to review and refine API endpoints.\n\nExecutes comprehensive endpoint review to consolidate independently\ngenerated endpoints, ensure consistency, eliminate redundancy, and create a\nclean, maintainable API structure following REST best practices.",
1131
+ type: "object",
1132
+ properties: {
1133
+ type: {
1134
+ 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.",
1135
+ type: "string",
1136
+ "enum": [
1137
+ "complete"
1138
+ ]
1139
+ },
1140
+ review: {
1141
+ description: "Comprehensive review analysis of all collected endpoints.\n\nContains detailed findings from the holistic review including:\n\n- Identified inconsistencies in naming conventions\n- Duplicate endpoints that serve the same purpose\n- Over-engineered solutions that add unnecessary complexity\n- Violations of REST API design principles\n- Recommendations for improvement and standardization\n\nThe review provides actionable feedback for creating a clean, consistent,\nand maintainable API structure.",
1142
+ type: "string"
1143
+ },
1144
+ endpoints: {
1145
+ description: "Refined collection of API endpoints after review and cleanup.\n\nThe final optimized set of endpoints after:\n\n- Removing duplicates and redundant endpoints\n- Standardizing naming conventions across all paths\n- Simplifying over-engineered solutions\n- Ensuring consistent REST patterns\n- Aligning HTTP methods with their semantic meanings\n\nThis collection represents the production-ready API structure that\nbalances functionality with simplicity and maintainability.",
1146
+ type: "array",
1147
+ items: {
1148
+ $ref: "#/$defs/AutoBeOpenApi.IEndpoint"
1149
+ }
1150
+ }
1151
+ },
1152
+ required: [
1153
+ "type",
1154
+ "review",
1155
+ "endpoints"
1156
+ ]
1157
+ },
1158
+ "AutoBeOpenApi.IEndpoint": {
1159
+ description: "API endpoint information.",
1160
+ type: "object",
1161
+ properties: {
1162
+ path: {
1163
+ description: "HTTP path of the API operation.\n\nThe URL path for accessing this API operation, using path parameters\nenclosed in curly braces (e.g., `/shoppings/customers/sales/{saleId}`).\n\nIt must be corresponded to the {@link parameters path parameters}.\n\nThe path structure should clearly indicate which database entity this\noperation is manipulating, helping to ensure all entities have\nappropriate API coverage.\n\nPath validation rules:\n\n- Must start with a forward slash (/)\n- Can contain only: letters (a-z, A-Z), numbers (0-9), forward slashes (/),\n curly braces for parameters ({paramName}), hyphens (-), and underscores\n (_)\n- Parameters must be enclosed in curly braces: {paramName}\n- Resource names should be in camelCase\n- No quotes, spaces, or invalid special characters allowed\n- No domain or role-based prefixes\n\nValid examples:\n\n- \"/users\"\n- \"/users/{userId}\"\n- \"/articles/{articleId}/comments\"\n- \"/attachmentFiles\"\n- \"/orders/{orderId}/items/{itemId}\"\n\nInvalid examples:\n\n- \"'/users'\" (contains quotes)\n- \"/user profile\" (contains space)\n- \"/users/[userId]\" (wrong bracket format)\n- \"/admin/users\" (role prefix)\n- \"/api/v1/users\" (API prefix)",
1164
+ type: "string",
1165
+ pattern: "^\\/[a-zA-Z0-9\\/_{}.-]*$"
1166
+ },
1167
+ method: {
1168
+ description: "HTTP method of the API operation.\n\n**IMPORTANT**: Methods must be written in lowercase only (e.g., \"get\",\nnot \"GET\").\n\nNote that, if the API operation has {@link requestBody}, method must not\nbe `get`.\n\nAlso, even though the API operation has been designed to only get\ninformation, but it needs complicated request information, it must be\ndefined as `patch` method with {@link requestBody} data specification.\n\n- `get`: get information\n- `patch`: get information with complicated request data\n ({@link requestBody})\n- `post`: create new record\n- `put`: update existing record\n- `delete`: remove record",
1169
+ type: "string",
1170
+ "enum": [
1171
+ "get",
1172
+ "post",
1173
+ "put",
1174
+ "delete",
1175
+ "patch"
1176
+ ]
1177
+ }
1178
+ },
1179
+ required: [
1180
+ "path",
1181
+ "method"
1182
+ ]
1183
+ }
1184
+ }
1185
+ },
1186
+ description: "Process endpoint review task or preliminary data requests.\n\nConsolidates all endpoints generated independently and performs holistic\nreview to ensure consistency, remove duplicates, eliminate\nover-engineering, and verify REST API design principles.",
1187
+ 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 => "getPrismaSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io3 = input => "complete" === input.type && "string" === typeof input.review && (Array.isArray(input.endpoints) && input.endpoints.every(elem => "object" === typeof elem && null !== elem && _io4(elem))); const _io4 = 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 _iu0 = input => (() => {
1188
+ if ("getAnalysisFiles" === input.type)
1189
+ return _io1(input);
1190
+ else if ("getPrismaSchemas" === input.type)
1191
+ return _io2(input);
1192
+ else if ("complete" === input.type)
1193
+ return _io3(input);
1194
+ else
1195
+ return false;
1196
+ })(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
1197
+ path: _path + ".thinking",
1198
+ expected: "string",
1199
+ value: input.thinking
1200
+ }), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
1201
+ path: _path + ".request",
1202
+ expected: "(IAutoBeInterfaceEndpointReviewApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
1203
+ value: input.request
1204
+ })) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
1205
+ path: _path + ".request",
1206
+ expected: "(IAutoBeInterfaceEndpointReviewApplication.IComplete | IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas)",
1207
+ value: input.request
1208
+ })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getAnalysisFiles" === input.type || _report(_exceptionable, {
1209
+ path: _path + ".type",
1210
+ expected: "\"getAnalysisFiles\"",
1211
+ value: input.type
1212
+ }), (Array.isArray(input.fileNames) || _report(_exceptionable, {
1213
+ path: _path + ".fileNames",
1214
+ expected: "(Array<string> & MinItems<1>)",
1215
+ value: input.fileNames
1216
+ })) && ((1 <= input.fileNames.length || _report(_exceptionable, {
1217
+ path: _path + ".fileNames",
1218
+ expected: "Array<> & MinItems<1>",
1219
+ value: input.fileNames
1220
+ })) && input.fileNames.map((elem, _index4) => "string" === typeof elem || _report(_exceptionable, {
1221
+ path: _path + ".fileNames[" + _index4 + "]",
1222
+ expected: "string",
1223
+ value: elem
1224
+ })).every(flag => flag)) || _report(_exceptionable, {
1225
+ path: _path + ".fileNames",
1226
+ expected: "(Array<string> & MinItems<1>)",
1227
+ value: input.fileNames
1228
+ })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["getPrismaSchemas" === input.type || _report(_exceptionable, {
1229
+ path: _path + ".type",
1230
+ expected: "\"getPrismaSchemas\"",
1231
+ value: input.type
1232
+ }), (Array.isArray(input.schemaNames) || _report(_exceptionable, {
1233
+ path: _path + ".schemaNames",
1234
+ expected: "(Array<string> & MinItems<1>)",
1235
+ value: input.schemaNames
1236
+ })) && ((1 <= input.schemaNames.length || _report(_exceptionable, {
1237
+ path: _path + ".schemaNames",
1238
+ expected: "Array<> & MinItems<1>",
1239
+ value: input.schemaNames
1240
+ })) && input.schemaNames.map((elem, _index5) => "string" === typeof elem || _report(_exceptionable, {
1241
+ path: _path + ".schemaNames[" + _index5 + "]",
1242
+ expected: "string",
1243
+ value: elem
1244
+ })).every(flag => flag)) || _report(_exceptionable, {
1245
+ path: _path + ".schemaNames",
1246
+ expected: "(Array<string> & MinItems<1>)",
1247
+ value: input.schemaNames
1248
+ })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
1249
+ path: _path + ".type",
1250
+ expected: "\"complete\"",
1251
+ value: input.type
1252
+ }), "string" === typeof input.review || _report(_exceptionable, {
1253
+ path: _path + ".review",
1254
+ expected: "string",
1255
+ value: input.review
1256
+ }), (Array.isArray(input.endpoints) || _report(_exceptionable, {
1257
+ path: _path + ".endpoints",
1258
+ expected: "Array<AutoBeOpenApi.IEndpoint>",
1259
+ value: input.endpoints
1260
+ })) && input.endpoints.map((elem, _index6) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
1261
+ path: _path + ".endpoints[" + _index6 + "]",
1262
+ expected: "AutoBeOpenApi.IEndpoint",
1263
+ value: elem
1264
+ })) && _vo4(elem, _path + ".endpoints[" + _index6 + "]", true && _exceptionable) || _report(_exceptionable, {
1265
+ path: _path + ".endpoints[" + _index6 + "]",
1266
+ expected: "AutoBeOpenApi.IEndpoint",
1267
+ value: elem
1268
+ })).every(flag => flag) || _report(_exceptionable, {
1269
+ path: _path + ".endpoints",
1270
+ expected: "Array<AutoBeOpenApi.IEndpoint>",
1271
+ value: input.endpoints
1272
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.path && (RegExp("^\\/[a-zA-Z0-9\\/_{}.-]*$").test(input.path) || _report(_exceptionable, {
1273
+ path: _path + ".path",
1274
+ expected: "string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">",
1275
+ value: input.path
1276
+ })) || _report(_exceptionable, {
1277
+ path: _path + ".path",
1278
+ expected: "(string & Pattern<\"^\\\\/[a-zA-Z0-9\\\\/_{}.-]*$\">)",
1279
+ value: input.path
1280
+ }), "get" === input.method || "post" === input.method || "put" === input.method || "delete" === input.method || "patch" === input.method || _report(_exceptionable, {
1281
+ path: _path + ".method",
1282
+ expected: "(\"delete\" | \"get\" | \"patch\" | \"post\" | \"put\")",
1283
+ value: input.method
1284
+ })].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
1285
+ if ("getAnalysisFiles" === input.type)
1286
+ return _vo1(input, _path, true && _exceptionable);
1287
+ else if ("getPrismaSchemas" === input.type)
1288
+ return _vo2(input, _path, true && _exceptionable);
1289
+ else if ("complete" === input.type)
1290
+ return _vo3(input, _path, true && _exceptionable);
1291
+ else
1292
+ return _report(_exceptionable, {
1293
+ path: _path,
1294
+ expected: "(IAutoBePreliminaryGetAnalysisFiles | IAutoBePreliminaryGetPrismaSchemas | IAutoBeInterfaceEndpointReviewApplication.IComplete)",
1295
+ value: input
1296
+ });
1297
+ })(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1298
+ if (false === __is(input)) {
1299
+ errors = [];
1300
+ _report = __typia_transform__validateReport._validateReport(errors);
1301
+ ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1302
+ path: _path + "",
1303
+ expected: "IAutoBeInterfaceEndpointReviewApplication.IProps",
1304
+ value: input
1305
+ })) && _vo0(input, _path + "", true) || _report(true, {
1306
+ path: _path + "",
1307
+ expected: "IAutoBeInterfaceEndpointReviewApplication.IProps",
1308
+ value: input
1309
+ }))(input, "$input", true);
1310
+ const success = 0 === errors.length;
1311
+ return success ? {
1312
+ success,
1313
+ data: input
1314
+ } : {
1315
+ success,
1316
+ errors,
1317
+ data: input
1318
+ };
1319
+ }
1320
+ return {
1321
+ success: true,
1322
+ data: input
1323
+ };
1324
+ }; })()
1325
+ }
1326
+ ]
1327
+ };
1328
+ __typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
1329
+ validate: {
1330
+ process: validate,
1331
+ },
1332
+ }), { equals: false }));
1333
+ return application;
1334
+ })(),
1335
+ };
1336
+ const SOURCE = "interfaceEndpointReview";
1337
+ //# sourceMappingURL=orchestrateInterfaceEndpointReview.js.map