@autobe/agent 0.28.0 → 0.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (531) hide show
  1. package/lib/AutoBeAgent.js +1 -0
  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 +5 -3
  10. package/lib/factory/createAutoBeContext.js.map +1 -1
  11. package/lib/index.mjs +37005 -17000
  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 +15 -22
  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} +1395 -241
  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 +2843 -556
  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} +1299 -232
  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} +1447 -264
  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} +2586 -570
  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 +2875 -588
  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 +19 -22
  192. package/lib/orchestrate/prisma/orchestratePrismaComponent.js.map +1 -1
  193. package/lib/orchestrate/prisma/orchestratePrismaCorrect.js +2864 -1535
  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 -1557
  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 -569
  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 +1381 -325
  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 +1072 -291
  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 +10 -8
  284. package/src/AutoBeAgent.ts +1 -0
  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 +5 -2
  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/orchestrate/common/histories/transformCommonCorrectCastingHistories.d.ts +0 -8
  401. package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistories.js +0 -16
  402. package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistories.js.map +0 -1
  403. package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistories.js.map +0 -1
  404. package/lib/orchestrate/interface/histories/transformInterfaceAssetHistories.d.ts +0 -3
  405. package/lib/orchestrate/interface/histories/transformInterfaceAssetHistories.js +0 -62
  406. package/lib/orchestrate/interface/histories/transformInterfaceAssetHistories.js.map +0 -1
  407. package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.d.ts +0 -8
  408. package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.js +0 -68
  409. package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.js.map +0 -1
  410. package/lib/orchestrate/interface/histories/transformInterfaceCommonHistories.d.ts +0 -3
  411. package/lib/orchestrate/interface/histories/transformInterfaceCommonHistories.js.map +0 -1
  412. package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.d.ts +0 -9
  413. package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.js +0 -74
  414. package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.js.map +0 -1
  415. package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.d.ts +0 -10
  416. package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.js +0 -61
  417. package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.js.map +0 -1
  418. package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.d.ts +0 -4
  419. package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.js +0 -34
  420. package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.js.map +0 -1
  421. package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.d.ts +0 -6
  422. package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.js +0 -52
  423. package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.js.map +0 -1
  424. package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.d.ts +0 -8
  425. package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.js +0 -71
  426. package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.js.map +0 -1
  427. package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.d.ts +0 -5
  428. package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.js +0 -36
  429. package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.js.map +0 -1
  430. package/lib/orchestrate/interface/histories/transformInterfacePrerequisitesHistories.d.ts +0 -3
  431. package/lib/orchestrate/interface/histories/transformInterfacePrerequisitesHistories.js +0 -102
  432. package/lib/orchestrate/interface/histories/transformInterfacePrerequisitesHistories.js.map +0 -1
  433. package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.d.ts +0 -9
  434. package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.js +0 -74
  435. package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.js.map +0 -1
  436. package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.d.ts +0 -5
  437. package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.js +0 -51
  438. package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.js.map +0 -1
  439. package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.d.ts +0 -11
  440. package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.js +0 -81
  441. package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.js.map +0 -1
  442. package/lib/orchestrate/interface/orchestrateInterfaceAuthorizations.d.ts +0 -4
  443. package/lib/orchestrate/interface/orchestrateInterfaceAuthorizations.js.map +0 -1
  444. package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js +0 -506
  445. package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js.map +0 -1
  446. package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.d.ts +0 -4
  447. package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.js +0 -487
  448. package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.js.map +0 -1
  449. package/lib/orchestrate/interface/orchestrateInterfaceGroups.js +0 -455
  450. package/lib/orchestrate/interface/orchestrateInterfaceGroups.js.map +0 -1
  451. package/lib/orchestrate/interface/orchestrateInterfaceOperations.js.map +0 -1
  452. package/lib/orchestrate/interface/orchestrateInterfaceOperationsReview.d.ts +0 -4
  453. package/lib/orchestrate/interface/orchestrateInterfaceOperationsReview.js.map +0 -1
  454. package/lib/orchestrate/interface/orchestrateInterfacePrerequisites.js +0 -916
  455. package/lib/orchestrate/interface/orchestrateInterfacePrerequisites.js.map +0 -1
  456. package/lib/orchestrate/interface/orchestrateInterfaceSchemas.js.map +0 -1
  457. package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointsReviewApplication.d.ts +0 -60
  458. package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointsReviewApplication.js.map +0 -1
  459. package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationsReviewApplication.js.map +0 -1
  460. package/lib/orchestrate/interface/structures/IAutoBeInterfacePrerequisitesApplication.d.ts +0 -52
  461. package/lib/orchestrate/interface/structures/IAutoBeInterfacePrerequisitesApplication.js.map +0 -1
  462. package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistories.d.ts +0 -6
  463. package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistories.js +0 -95
  464. package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistories.js.map +0 -1
  465. package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistories.d.ts +0 -3
  466. package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistories.js +0 -41
  467. package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistories.js.map +0 -1
  468. package/lib/orchestrate/prisma/histories/transformPrismaReviewHistories.d.ts +0 -8
  469. package/lib/orchestrate/prisma/histories/transformPrismaReviewHistories.js +0 -62
  470. package/lib/orchestrate/prisma/histories/transformPrismaReviewHistories.js.map +0 -1
  471. package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistories.d.ts +0 -8
  472. package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistories.js +0 -78
  473. package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistories.js.map +0 -1
  474. package/lib/orchestrate/prisma/orchestratePrismaSchemas.js +0 -1678
  475. package/lib/orchestrate/prisma/orchestratePrismaSchemas.js.map +0 -1
  476. package/lib/orchestrate/realize/histories/transformRealizeAuthorization.d.ts +0 -5
  477. package/lib/orchestrate/realize/histories/transformRealizeAuthorization.js +0 -44
  478. package/lib/orchestrate/realize/histories/transformRealizeAuthorization.js.map +0 -1
  479. package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.d.ts +0 -5
  480. package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.js +0 -82
  481. package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.js.map +0 -1
  482. package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.d.ts +0 -5
  483. package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.js.map +0 -1
  484. package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.d.ts +0 -13
  485. package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.js +0 -29
  486. package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.js.map +0 -1
  487. package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.d.ts +0 -3
  488. package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.js +0 -23
  489. package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.js.map +0 -1
  490. package/lib/orchestrate/realize/orchestrateRealizeAuthorization.js +0 -707
  491. package/lib/orchestrate/realize/orchestrateRealizeAuthorization.js.map +0 -1
  492. package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationApplication.js.map +0 -1
  493. package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.d.ts +0 -4
  494. package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.js +0 -33
  495. package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.js.map +0 -1
  496. package/lib/orchestrate/test/histories/transformTestScenarioHistories.d.ts +0 -10
  497. package/lib/orchestrate/test/histories/transformTestScenarioHistories.js +0 -101
  498. package/lib/orchestrate/test/histories/transformTestScenarioHistories.js.map +0 -1
  499. package/lib/orchestrate/test/histories/transformTestScenarioReviewHistories.d.ts +0 -8
  500. package/lib/orchestrate/test/histories/transformTestScenarioReviewHistories.js +0 -72
  501. package/lib/orchestrate/test/histories/transformTestScenarioReviewHistories.js.map +0 -1
  502. package/lib/orchestrate/test/histories/transformTestWriteHistories.js.map +0 -1
  503. package/src/orchestrate/common/histories/transformCommonCorrectCastingHistories.ts +0 -25
  504. package/src/orchestrate/interface/histories/transformInterfaceAssetHistories.ts +0 -72
  505. package/src/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.ts +0 -75
  506. package/src/orchestrate/interface/histories/transformInterfaceComplementHistories.ts +0 -82
  507. package/src/orchestrate/interface/histories/transformInterfaceEndpointHistories.ts +0 -72
  508. package/src/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.ts +0 -40
  509. package/src/orchestrate/interface/histories/transformInterfaceOperationHistories.ts +0 -78
  510. package/src/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.ts +0 -44
  511. package/src/orchestrate/interface/histories/transformInterfacePrerequisitesHistories.ts +0 -118
  512. package/src/orchestrate/interface/histories/transformInterfaceSchemaHistories.ts +0 -80
  513. package/src/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.ts +0 -55
  514. package/src/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.ts +0 -90
  515. package/src/orchestrate/interface/orchestrateInterfaceEndpoints.ts +0 -152
  516. package/src/orchestrate/interface/orchestrateInterfaceEndpointsReview.ts +0 -98
  517. package/src/orchestrate/interface/orchestrateInterfaceGroups.ts +0 -91
  518. package/src/orchestrate/interface/orchestrateInterfaceOperationsReview.ts +0 -157
  519. package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointsReviewApplication.ts +0 -65
  520. package/src/orchestrate/interface/structures/IAutoBeInterfacePrerequisitesApplication.ts +0 -58
  521. package/src/orchestrate/prisma/histories/transformPrismaComponentsHistories.ts +0 -104
  522. package/src/orchestrate/prisma/histories/transformPrismaReviewHistories.ts +0 -69
  523. package/src/orchestrate/realize/histories/transformRealizeAuthorization.ts +0 -52
  524. package/src/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.ts +0 -95
  525. package/src/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.ts +0 -30
  526. package/src/orchestrate/realize/histories/transformRealizeCorrectHistories.ts +0 -46
  527. package/src/orchestrate/realize/orchestrateRealizeAuthorization.ts +0 -185
  528. package/src/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.ts +0 -39
  529. package/src/orchestrate/test/histories/transformTestScenarioHistories.ts +0 -125
  530. package/src/orchestrate/test/histories/transformTestScenarioReviewHistories.ts +0 -89
  531. package/src/orchestrate/test/histories/transformTestWriteHistories.ts +0 -172
@@ -0,0 +1,1410 @@
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.orchestrateRealizeAuthorizationWrite = orchestrateRealizeAuthorizationWrite;
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 executeCachedBatch_1 = require("../../utils/executeCachedBatch");
55
+ const AutoBePreliminaryController_1 = require("../common/AutoBePreliminaryController");
56
+ const transformRealizeAuthorizationWriteHistory_1 = require("./histories/transformRealizeAuthorizationWriteHistory");
57
+ const orchestrateRealizeAuthorizationCorrect_1 = require("./orchestrateRealizeAuthorizationCorrect");
58
+ const AuthorizationFileSystem_1 = require("./utils/AuthorizationFileSystem");
59
+ const InternalFileSystem_1 = require("./utils/InternalFileSystem");
60
+ /**
61
+ * 1. Create decorator and its parameters. and design the Authorization Provider.
62
+ * 2. According to Authorization Provider design, create the Provider.
63
+ *
64
+ * @param ctx
65
+ */
66
+ function orchestrateRealizeAuthorizationWrite(ctx) {
67
+ return __awaiter(this, void 0, void 0, function* () {
68
+ var _a, _b, _c, _d, _e, _f;
69
+ ctx.dispatch({
70
+ type: "realizeAuthorizationStart",
71
+ id: (0, uuid_1.v7)(),
72
+ step: (_b = (_a = ctx.state().test) === null || _a === void 0 ? void 0 : _a.step) !== null && _b !== void 0 ? _b : 0,
73
+ created_at: new Date().toISOString(),
74
+ });
75
+ const actors = (_d = (_c = ctx.state().analyze) === null || _c === void 0 ? void 0 : _c.actors) !== null && _d !== void 0 ? _d : [];
76
+ const progress = {
77
+ total: actors.length,
78
+ completed: 0,
79
+ };
80
+ const templates = yield (yield ctx.compiler()).realize.getTemplate({
81
+ dbms: "sqlite",
82
+ });
83
+ const authorizations = yield (0, executeCachedBatch_1.executeCachedBatch)(ctx, actors.map((a) => (promptCacheKey) => process(ctx, {
84
+ actor: a,
85
+ templates: InternalFileSystem_1.InternalFileSystem.DEFAULT.map((el) => ({
86
+ [el]: templates[el],
87
+ })).reduce((acc, cur) => Object.assign(acc, cur), {}),
88
+ progress,
89
+ promptCacheKey,
90
+ })));
91
+ ctx.dispatch({
92
+ type: "realizeAuthorizationComplete",
93
+ id: (0, uuid_1.v7)(),
94
+ created_at: new Date().toISOString(),
95
+ step: (_f = (_e = ctx.state().test) === null || _e === void 0 ? void 0 : _e.step) !== null && _f !== void 0 ? _f : 0,
96
+ });
97
+ return authorizations;
98
+ });
99
+ }
100
+ function process(ctx, props) {
101
+ return __awaiter(this, void 0, void 0, function* () {
102
+ const preliminary = new AutoBePreliminaryController_1.AutoBePreliminaryController({
103
+ source: SOURCE,
104
+ application: {
105
+ version: "3.1",
106
+ components: {
107
+ schemas: {
108
+ "IAutoBeRealizeAuthorizationWriteApplication.IProps": {
109
+ type: "object",
110
+ properties: {
111
+ thinking: {
112
+ type: "string",
113
+ 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."
114
+ },
115
+ request: {
116
+ oneOf: [
117
+ {
118
+ $ref: "#/components/schemas/IAutoBePreliminaryGetPrismaSchemas"
119
+ },
120
+ {
121
+ $ref: "#/components/schemas/IAutoBeRealizeAuthorizationWriteApplication.IComplete"
122
+ }
123
+ ],
124
+ discriminator: {
125
+ propertyName: "type",
126
+ mapping: {
127
+ getPrismaSchemas: "#/components/schemas/IAutoBePreliminaryGetPrismaSchemas",
128
+ complete: "#/components/schemas/IAutoBeRealizeAuthorizationWriteApplication.IComplete"
129
+ }
130
+ },
131
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getPrismaSchemas) or final authentication generation (complete). When\npreliminary returns empty array, that type is removed from the union,\nphysically preventing repeated calls."
132
+ }
133
+ },
134
+ required: [
135
+ "thinking",
136
+ "request"
137
+ ]
138
+ },
139
+ IAutoBePreliminaryGetPrismaSchemas: {
140
+ type: "object",
141
+ properties: {
142
+ type: {
143
+ "const": "getPrismaSchemas",
144
+ 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."
145
+ },
146
+ schemaNames: {
147
+ type: "array",
148
+ items: {
149
+ type: "string"
150
+ },
151
+ minItems: 1,
152
+ 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."
153
+ }
154
+ },
155
+ required: [
156
+ "type",
157
+ "schemaNames"
158
+ ],
159
+ 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."
160
+ },
161
+ "IAutoBeRealizeAuthorizationWriteApplication.IComplete": {
162
+ type: "object",
163
+ properties: {
164
+ type: {
165
+ "const": "complete",
166
+ 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."
167
+ },
168
+ provider: {
169
+ $ref: "#/components/schemas/IAutoBeRealizeAuthorizationWriteApplication.IProvider",
170
+ description: "Authentication Provider function configuration containing the function\nname and implementation code. The Provider handles JWT token\nverification, role validation, and database queries to authenticate\nusers."
171
+ },
172
+ decorator: {
173
+ $ref: "#/components/schemas/IAutoBeRealizeAuthorizationWriteApplication.IDecorator",
174
+ description: "Authentication Decorator configuration containing the decorator name and\nimplementation code. The Decorator integrates with NestJS parameter\ndecorators to automatically inject authenticated user data into\nController methods."
175
+ },
176
+ payload: {
177
+ $ref: "#/components/schemas/IAutoBeRealizeAuthorizationWriteApplication.IPayloadType",
178
+ description: "Authentication Payload Type configuration containing the payload type\nname and implementation code. The Payload Type is used to define the\nstructure of the authenticated user data that will be injected into\nController methods when using the decorator. It serves as the TypeScript\ntype for the parameter in Controller method signatures."
179
+ }
180
+ },
181
+ required: [
182
+ "type",
183
+ "provider",
184
+ "decorator",
185
+ "payload"
186
+ ],
187
+ description: "Request to generate authentication components.\n\nExecutes authentication generation to create provider function, decorator,\nand payload type for the specified role. All components work together to\nprovide JWT-based authentication and authorization."
188
+ },
189
+ "IAutoBeRealizeAuthorizationWriteApplication.IProvider": {
190
+ type: "object",
191
+ properties: {
192
+ name: {
193
+ type: "string",
194
+ pattern: "^[a-z][a-zA-Z0-9]*$",
195
+ description: "The name of the authentication Provider function in {role}Authorize\nformat (e.g., adminAuthorize, userAuthorize). This function will be\ncalled by the decorator to verify JWT tokens and return authenticated\nuser information for the specified role.\n\nDO: Use camelCase naming convention."
196
+ },
197
+ content: {
198
+ type: "string",
199
+ description: "Complete TypeScript code for the authentication Provider function. Must\ninclude: JWT token verification using jwtAuthorize function, role type\nchecking against payload.type, database query using\nMyGlobal.prisma.{tableName} pattern to verify user existence, and proper\nerror handling with ForbiddenException and UnauthorizedException. The\nfunction should return the authenticated user payload data."
200
+ }
201
+ },
202
+ required: [
203
+ "name",
204
+ "content"
205
+ ]
206
+ },
207
+ "IAutoBeRealizeAuthorizationWriteApplication.IDecorator": {
208
+ type: "object",
209
+ properties: {
210
+ name: {
211
+ type: "string",
212
+ pattern: "^[A-Z][a-zA-Z0-9]*$",
213
+ description: "The name of the Decorator to be generated in {Actor}Auth format (e.g.,\nAdminAuth, UserAuth). This decorator will be used as a parameter\ndecorator in Controller methods to automatically authenticate and\nauthorize users for the specific role, injecting the authenticated user\npayload as a method parameter.\n\nDO: Use PascalCase naming convention."
214
+ },
215
+ content: {
216
+ type: "string",
217
+ description: "Complete TypeScript code for the authentication Decorator implementation.\nMust include: SwaggerCustomizer integration to add bearer token security\nschema to API documentation, createParamDecorator implementation that\ncalls the corresponding Provider function for authentication, Singleton\npattern using tstl library for efficient decorator instance management,\nand proper TypeScript typing for the ParameterDecorator interface."
218
+ }
219
+ },
220
+ required: [
221
+ "name",
222
+ "content"
223
+ ]
224
+ },
225
+ "IAutoBeRealizeAuthorizationWriteApplication.IPayloadType": {
226
+ type: "object",
227
+ properties: {
228
+ name: {
229
+ type: "string",
230
+ pattern: "^[A-Z][a-zA-Z0-9]*$",
231
+ description: "The name of the Payload type to be generated in {Actor}Payload format\n(e.g., AdminPayload, UserPayload). This type defines the structure of the\nauthenticated user data that will be injected into Controller methods\nwhen using the decorator.\n\nDO: Use PascalCase naming convention."
232
+ },
233
+ content: {
234
+ type: "string",
235
+ description: "Complete TypeScript code for the Payload type interface in {Actor}Payload\nformat (e.g., AdminPayload, UserPayload). Must include: id field with\nUUID format validation, type field as role discriminator, and proper\ntypia tags for validation. This interface defines the structure of the\nauthenticated user data that will be injected into Controller methods\nwhen using the decorator and serves as the TypeScript type for the\nparameter in Controller method signatures."
236
+ }
237
+ },
238
+ required: [
239
+ "name",
240
+ "content"
241
+ ]
242
+ }
243
+ }
244
+ },
245
+ functions: [
246
+ {
247
+ name: "process",
248
+ async: false,
249
+ parameters: [
250
+ {
251
+ name: "next",
252
+ description: " Request containing either preliminary data request or complete\ntask",
253
+ required: true,
254
+ schema: {
255
+ $ref: "#/components/schemas/IAutoBeRealizeAuthorizationWriteApplication.IProps"
256
+ }
257
+ }
258
+ ],
259
+ description: "Process authentication component generation task or preliminary data\nrequests.\n\nGenerates JWT-based authentication infrastructure (provider, decorator,\npayload) for role-based authorization. Integrates with NestJS patterns and\njwtAuthorize utility."
260
+ }
261
+ ]
262
+ },
263
+ kinds: ["prismaSchemas"],
264
+ state: ctx.state(),
265
+ });
266
+ return yield preliminary.orchestrate(ctx, (out) => __awaiter(this, void 0, void 0, function* () {
267
+ var _a, _b, _c;
268
+ const pointer = {
269
+ value: null,
270
+ };
271
+ const result = yield ctx.conversate(Object.assign({ source: "realizeAuthorizationWrite", controller: createController({
272
+ model: ctx.model,
273
+ build: (next) => {
274
+ pointer.value = next;
275
+ },
276
+ preliminary,
277
+ }), enforceFunctionCall: true, promptCacheKey: props.promptCacheKey }, (0, transformRealizeAuthorizationWriteHistory_1.transformRealizeAuthorizationWriteHistory)({
278
+ actor: props.actor,
279
+ preliminary,
280
+ })));
281
+ if (pointer.value === null)
282
+ return out(result)(null);
283
+ const compiler = yield ctx.compiler();
284
+ const authorization = {
285
+ actor: props.actor,
286
+ decorator: {
287
+ location: AuthorizationFileSystem_1.AuthorizationFileSystem.decoratorPath(pointer.value.decorator.name),
288
+ name: pointer.value.decorator.name,
289
+ content: pointer.value.decorator.content,
290
+ },
291
+ payload: {
292
+ location: AuthorizationFileSystem_1.AuthorizationFileSystem.payloadPath(pointer.value.payload.name),
293
+ name: pointer.value.payload.name,
294
+ content: yield compiler.typescript.beautify(pointer.value.payload.content),
295
+ },
296
+ provider: {
297
+ location: AuthorizationFileSystem_1.AuthorizationFileSystem.providerPath(pointer.value.provider.name),
298
+ name: pointer.value.provider.name,
299
+ content: pointer.value.provider.content,
300
+ },
301
+ };
302
+ ctx.dispatch({
303
+ type: "realizeAuthorizationWrite",
304
+ id: (0, uuid_1.v7)(),
305
+ created_at: new Date().toISOString(),
306
+ authorization: authorization,
307
+ metric: result.metric,
308
+ tokenUsage: result.tokenUsage,
309
+ completed: ++props.progress.completed,
310
+ total: props.progress.total,
311
+ step: (_b = (_a = ctx.state().test) === null || _a === void 0 ? void 0 : _a.step) !== null && _b !== void 0 ? _b : 0,
312
+ });
313
+ const prismaCompiled = (_c = ctx.state().prisma) === null || _c === void 0 ? void 0 : _c.compiled;
314
+ const prismaClient = (prismaCompiled === null || prismaCompiled === void 0 ? void 0 : prismaCompiled.type) === "success" ? prismaCompiled.nodeModules : {};
315
+ return out(result)(yield (0, orchestrateRealizeAuthorizationCorrect_1.orchestrateRealizeAuthorizationCorrect)(ctx, {
316
+ template: props.templates,
317
+ authorization,
318
+ prismaClient,
319
+ }));
320
+ }));
321
+ });
322
+ }
323
+ function createController(props) {
324
+ (0, assertSchemaModel_1.assertSchemaModel)(props.model);
325
+ const validate = (input) => {
326
+ const result = (() => { const _io0 = input => "string" === typeof input.thinking && ("object" === typeof input.request && null !== input.request && _iu0(input.request)); const _io1 = input => "getPrismaSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io2 = input => "complete" === input.type && ("object" === typeof input.provider && null !== input.provider && _io3(input.provider)) && ("object" === typeof input.decorator && null !== input.decorator && _io4(input.decorator)) && ("object" === typeof input.payload && null !== input.payload && _io5(input.payload)); const _io3 = input => "string" === typeof input.name && RegExp("^[a-z][a-zA-Z0-9]*$").test(input.name) && "string" === typeof input.content; const _io4 = input => "string" === typeof input.name && RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) && "string" === typeof input.content; const _io5 = input => "string" === typeof input.name && RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) && "string" === typeof input.content; const _iu0 = input => (() => {
327
+ if ("getPrismaSchemas" === input.type)
328
+ return _io1(input);
329
+ else if ("complete" === input.type)
330
+ return _io2(input);
331
+ else
332
+ return false;
333
+ })(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
334
+ path: _path + ".thinking",
335
+ expected: "string",
336
+ value: input.thinking
337
+ }), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
338
+ path: _path + ".request",
339
+ expected: "(IAutoBePreliminaryGetPrismaSchemas | IAutoBeRealizeAuthorizationWriteApplication.IComplete)",
340
+ value: input.request
341
+ })) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
342
+ path: _path + ".request",
343
+ expected: "(IAutoBePreliminaryGetPrismaSchemas | IAutoBeRealizeAuthorizationWriteApplication.IComplete)",
344
+ value: input.request
345
+ })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getPrismaSchemas" === input.type || _report(_exceptionable, {
346
+ path: _path + ".type",
347
+ expected: "\"getPrismaSchemas\"",
348
+ value: input.type
349
+ }), (Array.isArray(input.schemaNames) || _report(_exceptionable, {
350
+ path: _path + ".schemaNames",
351
+ expected: "(Array<string> & MinItems<1>)",
352
+ value: input.schemaNames
353
+ })) && ((1 <= input.schemaNames.length || _report(_exceptionable, {
354
+ path: _path + ".schemaNames",
355
+ expected: "Array<> & MinItems<1>",
356
+ value: input.schemaNames
357
+ })) && input.schemaNames.map((elem, _index2) => "string" === typeof elem || _report(_exceptionable, {
358
+ path: _path + ".schemaNames[" + _index2 + "]",
359
+ expected: "string",
360
+ value: elem
361
+ })).every(flag => flag)) || _report(_exceptionable, {
362
+ path: _path + ".schemaNames",
363
+ expected: "(Array<string> & MinItems<1>)",
364
+ value: input.schemaNames
365
+ })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
366
+ path: _path + ".type",
367
+ expected: "\"complete\"",
368
+ value: input.type
369
+ }), ("object" === typeof input.provider && null !== input.provider || _report(_exceptionable, {
370
+ path: _path + ".provider",
371
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProvider",
372
+ value: input.provider
373
+ })) && _vo3(input.provider, _path + ".provider", true && _exceptionable) || _report(_exceptionable, {
374
+ path: _path + ".provider",
375
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProvider",
376
+ value: input.provider
377
+ }), ("object" === typeof input.decorator && null !== input.decorator || _report(_exceptionable, {
378
+ path: _path + ".decorator",
379
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IDecorator",
380
+ value: input.decorator
381
+ })) && _vo4(input.decorator, _path + ".decorator", true && _exceptionable) || _report(_exceptionable, {
382
+ path: _path + ".decorator",
383
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IDecorator",
384
+ value: input.decorator
385
+ }), ("object" === typeof input.payload && null !== input.payload || _report(_exceptionable, {
386
+ path: _path + ".payload",
387
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IPayloadType",
388
+ value: input.payload
389
+ })) && _vo5(input.payload, _path + ".payload", true && _exceptionable) || _report(_exceptionable, {
390
+ path: _path + ".payload",
391
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IPayloadType",
392
+ value: input.payload
393
+ })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["string" === typeof input.name && (RegExp("^[a-z][a-zA-Z0-9]*$").test(input.name) || _report(_exceptionable, {
394
+ path: _path + ".name",
395
+ expected: "string & CamelCasePattern",
396
+ value: input.name
397
+ })) || _report(_exceptionable, {
398
+ path: _path + ".name",
399
+ expected: "(string & CamelCasePattern)",
400
+ value: input.name
401
+ }), "string" === typeof input.content || _report(_exceptionable, {
402
+ path: _path + ".content",
403
+ expected: "string",
404
+ value: input.content
405
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.name && (RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) || _report(_exceptionable, {
406
+ path: _path + ".name",
407
+ expected: "string & PascalCasePattern",
408
+ value: input.name
409
+ })) || _report(_exceptionable, {
410
+ path: _path + ".name",
411
+ expected: "(string & PascalCasePattern)",
412
+ value: input.name
413
+ }), "string" === typeof input.content || _report(_exceptionable, {
414
+ path: _path + ".content",
415
+ expected: "string",
416
+ value: input.content
417
+ })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => ["string" === typeof input.name && (RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) || _report(_exceptionable, {
418
+ path: _path + ".name",
419
+ expected: "string & PascalCasePattern",
420
+ value: input.name
421
+ })) || _report(_exceptionable, {
422
+ path: _path + ".name",
423
+ expected: "(string & PascalCasePattern)",
424
+ value: input.name
425
+ }), "string" === typeof input.content || _report(_exceptionable, {
426
+ path: _path + ".content",
427
+ expected: "string",
428
+ value: input.content
429
+ })].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
430
+ if ("getPrismaSchemas" === input.type)
431
+ return _vo1(input, _path, true && _exceptionable);
432
+ else if ("complete" === input.type)
433
+ return _vo2(input, _path, true && _exceptionable);
434
+ else
435
+ return _report(_exceptionable, {
436
+ path: _path,
437
+ expected: "(IAutoBePreliminaryGetPrismaSchemas | IAutoBeRealizeAuthorizationWriteApplication.IComplete)",
438
+ value: input
439
+ });
440
+ })(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
441
+ if (false === __is(input)) {
442
+ errors = [];
443
+ _report = __typia_transform__validateReport._validateReport(errors);
444
+ ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
445
+ path: _path + "",
446
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProps",
447
+ value: input
448
+ })) && _vo0(input, _path + "", true) || _report(true, {
449
+ path: _path + "",
450
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProps",
451
+ value: input
452
+ }))(input, "$input", true);
453
+ const success = 0 === errors.length;
454
+ return success ? {
455
+ success,
456
+ data: input
457
+ } : {
458
+ success,
459
+ errors,
460
+ data: input
461
+ };
462
+ }
463
+ return {
464
+ success: true,
465
+ data: input
466
+ };
467
+ }; })()(input);
468
+ if (result.success === false || result.data.request.type === "complete")
469
+ return result;
470
+ return props.preliminary.validate({
471
+ thinking: result.data.thinking,
472
+ request: result.data.request,
473
+ });
474
+ };
475
+ const application = collection[props.model === "chatgpt"
476
+ ? "chatgpt"
477
+ : props.model === "gemini"
478
+ ? "gemini"
479
+ : "claude"](validate);
480
+ return {
481
+ protocol: "class",
482
+ name: SOURCE,
483
+ application,
484
+ execute: {
485
+ process: (next) => {
486
+ if (next.request.type === "complete")
487
+ props.build(next.request);
488
+ },
489
+ },
490
+ };
491
+ }
492
+ const collection = {
493
+ chatgpt: (validate) => (() => {
494
+ const application = {
495
+ model: "chatgpt",
496
+ options: {
497
+ reference: true,
498
+ strict: false,
499
+ separate: null
500
+ },
501
+ functions: [
502
+ {
503
+ name: "process",
504
+ parameters: {
505
+ description: " Request containing either preliminary data request or complete\ntask\n\n------------------------------\n\nCurrent Type: {@link IAutoBeRealizeAuthorizationWriteApplication.IProps}",
506
+ type: "object",
507
+ properties: {
508
+ thinking: {
509
+ 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.",
510
+ type: "string"
511
+ },
512
+ request: {
513
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getPrismaSchemas) or final authentication generation (complete). When\npreliminary returns empty array, that type is removed from the union,\nphysically preventing repeated calls.",
514
+ anyOf: [
515
+ {
516
+ $ref: "#/$defs/IAutoBePreliminaryGetPrismaSchemas"
517
+ },
518
+ {
519
+ $ref: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IComplete"
520
+ }
521
+ ],
522
+ "x-discriminator": {
523
+ propertyName: "type",
524
+ mapping: {
525
+ getPrismaSchemas: "#/$defs/IAutoBePreliminaryGetPrismaSchemas",
526
+ complete: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IComplete"
527
+ }
528
+ }
529
+ }
530
+ },
531
+ required: [
532
+ "thinking",
533
+ "request"
534
+ ],
535
+ additionalProperties: false,
536
+ $defs: {
537
+ IAutoBePreliminaryGetPrismaSchemas: {
538
+ 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.",
539
+ type: "object",
540
+ properties: {
541
+ type: {
542
+ 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.",
543
+ type: "string",
544
+ "enum": [
545
+ "getPrismaSchemas"
546
+ ]
547
+ },
548
+ schemaNames: {
549
+ 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",
550
+ type: "array",
551
+ items: {
552
+ type: "string"
553
+ }
554
+ }
555
+ },
556
+ required: [
557
+ "type",
558
+ "schemaNames"
559
+ ]
560
+ },
561
+ "IAutoBeRealizeAuthorizationWriteApplication.IComplete": {
562
+ description: "Request to generate authentication components.\n\nExecutes authentication generation to create provider function, decorator,\nand payload type for the specified role. All components work together to\nprovide JWT-based authentication and authorization.",
563
+ type: "object",
564
+ properties: {
565
+ type: {
566
+ 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.",
567
+ type: "string",
568
+ "enum": [
569
+ "complete"
570
+ ]
571
+ },
572
+ provider: {
573
+ description: "Authentication Provider function configuration containing the function\nname and implementation code. The Provider handles JWT token\nverification, role validation, and database queries to authenticate\nusers.",
574
+ $ref: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IProvider"
575
+ },
576
+ decorator: {
577
+ description: "Authentication Decorator configuration containing the decorator name and\nimplementation code. The Decorator integrates with NestJS parameter\ndecorators to automatically inject authenticated user data into\nController methods.",
578
+ $ref: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IDecorator"
579
+ },
580
+ payload: {
581
+ description: "Authentication Payload Type configuration containing the payload type\nname and implementation code. The Payload Type is used to define the\nstructure of the authenticated user data that will be injected into\nController methods when using the decorator. It serves as the TypeScript\ntype for the parameter in Controller method signatures.",
582
+ $ref: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IPayloadType"
583
+ }
584
+ },
585
+ required: [
586
+ "type",
587
+ "provider",
588
+ "decorator",
589
+ "payload"
590
+ ]
591
+ },
592
+ "IAutoBeRealizeAuthorizationWriteApplication.IProvider": {
593
+ type: "object",
594
+ properties: {
595
+ name: {
596
+ description: "The name of the authentication Provider function in {role}Authorize\nformat (e.g., adminAuthorize, userAuthorize). This function will be\ncalled by the decorator to verify JWT tokens and return authenticated\nuser information for the specified role.\n\nDO: Use camelCase naming convention.\n\n\n@pattern ^[a-z][a-zA-Z0-9]*$",
597
+ type: "string"
598
+ },
599
+ content: {
600
+ description: "Complete TypeScript code for the authentication Provider function. Must\ninclude: JWT token verification using jwtAuthorize function, role type\nchecking against payload.type, database query using\nMyGlobal.prisma.{tableName} pattern to verify user existence, and proper\nerror handling with ForbiddenException and UnauthorizedException. The\nfunction should return the authenticated user payload data.",
601
+ type: "string"
602
+ }
603
+ },
604
+ required: [
605
+ "name",
606
+ "content"
607
+ ]
608
+ },
609
+ "IAutoBeRealizeAuthorizationWriteApplication.IDecorator": {
610
+ type: "object",
611
+ properties: {
612
+ name: {
613
+ description: "The name of the Decorator to be generated in {Actor}Auth format (e.g.,\nAdminAuth, UserAuth). This decorator will be used as a parameter\ndecorator in Controller methods to automatically authenticate and\nauthorize users for the specific role, injecting the authenticated user\npayload as a method parameter.\n\nDO: Use PascalCase naming convention.\n\n\n@pattern ^[A-Z][a-zA-Z0-9]*$",
614
+ type: "string"
615
+ },
616
+ content: {
617
+ description: "Complete TypeScript code for the authentication Decorator implementation.\nMust include: SwaggerCustomizer integration to add bearer token security\nschema to API documentation, createParamDecorator implementation that\ncalls the corresponding Provider function for authentication, Singleton\npattern using tstl library for efficient decorator instance management,\nand proper TypeScript typing for the ParameterDecorator interface.",
618
+ type: "string"
619
+ }
620
+ },
621
+ required: [
622
+ "name",
623
+ "content"
624
+ ]
625
+ },
626
+ "IAutoBeRealizeAuthorizationWriteApplication.IPayloadType": {
627
+ type: "object",
628
+ properties: {
629
+ name: {
630
+ description: "The name of the Payload type to be generated in {Actor}Payload format\n(e.g., AdminPayload, UserPayload). This type defines the structure of the\nauthenticated user data that will be injected into Controller methods\nwhen using the decorator.\n\nDO: Use PascalCase naming convention.\n\n\n@pattern ^[A-Z][a-zA-Z0-9]*$",
631
+ type: "string"
632
+ },
633
+ content: {
634
+ description: "Complete TypeScript code for the Payload type interface in {Actor}Payload\nformat (e.g., AdminPayload, UserPayload). Must include: id field with\nUUID format validation, type field as role discriminator, and proper\ntypia tags for validation. This interface defines the structure of the\nauthenticated user data that will be injected into Controller methods\nwhen using the decorator and serves as the TypeScript type for the\nparameter in Controller method signatures.",
635
+ type: "string"
636
+ }
637
+ },
638
+ required: [
639
+ "name",
640
+ "content"
641
+ ]
642
+ }
643
+ }
644
+ },
645
+ description: "Process authentication component generation task or preliminary data\nrequests.\n\nGenerates JWT-based authentication infrastructure (provider, decorator,\npayload) for role-based authorization. Integrates with NestJS patterns and\njwtAuthorize utility.",
646
+ validate: (() => { const _io0 = input => "string" === typeof input.thinking && ("object" === typeof input.request && null !== input.request && _iu0(input.request)); const _io1 = input => "getPrismaSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io2 = input => "complete" === input.type && ("object" === typeof input.provider && null !== input.provider && _io3(input.provider)) && ("object" === typeof input.decorator && null !== input.decorator && _io4(input.decorator)) && ("object" === typeof input.payload && null !== input.payload && _io5(input.payload)); const _io3 = input => "string" === typeof input.name && RegExp("^[a-z][a-zA-Z0-9]*$").test(input.name) && "string" === typeof input.content; const _io4 = input => "string" === typeof input.name && RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) && "string" === typeof input.content; const _io5 = input => "string" === typeof input.name && RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) && "string" === typeof input.content; const _iu0 = input => (() => {
647
+ if ("getPrismaSchemas" === input.type)
648
+ return _io1(input);
649
+ else if ("complete" === input.type)
650
+ return _io2(input);
651
+ else
652
+ return false;
653
+ })(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
654
+ path: _path + ".thinking",
655
+ expected: "string",
656
+ value: input.thinking
657
+ }), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
658
+ path: _path + ".request",
659
+ expected: "(IAutoBePreliminaryGetPrismaSchemas | IAutoBeRealizeAuthorizationWriteApplication.IComplete)",
660
+ value: input.request
661
+ })) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
662
+ path: _path + ".request",
663
+ expected: "(IAutoBePreliminaryGetPrismaSchemas | IAutoBeRealizeAuthorizationWriteApplication.IComplete)",
664
+ value: input.request
665
+ })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getPrismaSchemas" === input.type || _report(_exceptionable, {
666
+ path: _path + ".type",
667
+ expected: "\"getPrismaSchemas\"",
668
+ value: input.type
669
+ }), (Array.isArray(input.schemaNames) || _report(_exceptionable, {
670
+ path: _path + ".schemaNames",
671
+ expected: "(Array<string> & MinItems<1>)",
672
+ value: input.schemaNames
673
+ })) && ((1 <= input.schemaNames.length || _report(_exceptionable, {
674
+ path: _path + ".schemaNames",
675
+ expected: "Array<> & MinItems<1>",
676
+ value: input.schemaNames
677
+ })) && input.schemaNames.map((elem, _index2) => "string" === typeof elem || _report(_exceptionable, {
678
+ path: _path + ".schemaNames[" + _index2 + "]",
679
+ expected: "string",
680
+ value: elem
681
+ })).every(flag => flag)) || _report(_exceptionable, {
682
+ path: _path + ".schemaNames",
683
+ expected: "(Array<string> & MinItems<1>)",
684
+ value: input.schemaNames
685
+ })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
686
+ path: _path + ".type",
687
+ expected: "\"complete\"",
688
+ value: input.type
689
+ }), ("object" === typeof input.provider && null !== input.provider || _report(_exceptionable, {
690
+ path: _path + ".provider",
691
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProvider",
692
+ value: input.provider
693
+ })) && _vo3(input.provider, _path + ".provider", true && _exceptionable) || _report(_exceptionable, {
694
+ path: _path + ".provider",
695
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProvider",
696
+ value: input.provider
697
+ }), ("object" === typeof input.decorator && null !== input.decorator || _report(_exceptionable, {
698
+ path: _path + ".decorator",
699
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IDecorator",
700
+ value: input.decorator
701
+ })) && _vo4(input.decorator, _path + ".decorator", true && _exceptionable) || _report(_exceptionable, {
702
+ path: _path + ".decorator",
703
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IDecorator",
704
+ value: input.decorator
705
+ }), ("object" === typeof input.payload && null !== input.payload || _report(_exceptionable, {
706
+ path: _path + ".payload",
707
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IPayloadType",
708
+ value: input.payload
709
+ })) && _vo5(input.payload, _path + ".payload", true && _exceptionable) || _report(_exceptionable, {
710
+ path: _path + ".payload",
711
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IPayloadType",
712
+ value: input.payload
713
+ })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["string" === typeof input.name && (RegExp("^[a-z][a-zA-Z0-9]*$").test(input.name) || _report(_exceptionable, {
714
+ path: _path + ".name",
715
+ expected: "string & CamelCasePattern",
716
+ value: input.name
717
+ })) || _report(_exceptionable, {
718
+ path: _path + ".name",
719
+ expected: "(string & CamelCasePattern)",
720
+ value: input.name
721
+ }), "string" === typeof input.content || _report(_exceptionable, {
722
+ path: _path + ".content",
723
+ expected: "string",
724
+ value: input.content
725
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.name && (RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) || _report(_exceptionable, {
726
+ path: _path + ".name",
727
+ expected: "string & PascalCasePattern",
728
+ value: input.name
729
+ })) || _report(_exceptionable, {
730
+ path: _path + ".name",
731
+ expected: "(string & PascalCasePattern)",
732
+ value: input.name
733
+ }), "string" === typeof input.content || _report(_exceptionable, {
734
+ path: _path + ".content",
735
+ expected: "string",
736
+ value: input.content
737
+ })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => ["string" === typeof input.name && (RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) || _report(_exceptionable, {
738
+ path: _path + ".name",
739
+ expected: "string & PascalCasePattern",
740
+ value: input.name
741
+ })) || _report(_exceptionable, {
742
+ path: _path + ".name",
743
+ expected: "(string & PascalCasePattern)",
744
+ value: input.name
745
+ }), "string" === typeof input.content || _report(_exceptionable, {
746
+ path: _path + ".content",
747
+ expected: "string",
748
+ value: input.content
749
+ })].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
750
+ if ("getPrismaSchemas" === input.type)
751
+ return _vo1(input, _path, true && _exceptionable);
752
+ else if ("complete" === input.type)
753
+ return _vo2(input, _path, true && _exceptionable);
754
+ else
755
+ return _report(_exceptionable, {
756
+ path: _path,
757
+ expected: "(IAutoBePreliminaryGetPrismaSchemas | IAutoBeRealizeAuthorizationWriteApplication.IComplete)",
758
+ value: input
759
+ });
760
+ })(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
761
+ if (false === __is(input)) {
762
+ errors = [];
763
+ _report = __typia_transform__validateReport._validateReport(errors);
764
+ ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
765
+ path: _path + "",
766
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProps",
767
+ value: input
768
+ })) && _vo0(input, _path + "", true) || _report(true, {
769
+ path: _path + "",
770
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProps",
771
+ value: input
772
+ }))(input, "$input", true);
773
+ const success = 0 === errors.length;
774
+ return success ? {
775
+ success,
776
+ data: input
777
+ } : {
778
+ success,
779
+ errors,
780
+ data: input
781
+ };
782
+ }
783
+ return {
784
+ success: true,
785
+ data: input
786
+ };
787
+ }; })()
788
+ }
789
+ ]
790
+ };
791
+ __typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
792
+ validate: {
793
+ process: validate,
794
+ },
795
+ }), { equals: false }));
796
+ return application;
797
+ })(),
798
+ claude: (validate) => (() => {
799
+ const application = {
800
+ model: "claude",
801
+ options: {
802
+ reference: true,
803
+ separate: null
804
+ },
805
+ functions: [
806
+ {
807
+ name: "process",
808
+ parameters: {
809
+ description: " Request containing either preliminary data request or complete\ntask\n\n------------------------------\n\nCurrent Type: {@link IAutoBeRealizeAuthorizationWriteApplication.IProps}",
810
+ type: "object",
811
+ properties: {
812
+ thinking: {
813
+ 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.",
814
+ type: "string"
815
+ },
816
+ request: {
817
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getPrismaSchemas) or final authentication generation (complete). When\npreliminary returns empty array, that type is removed from the union,\nphysically preventing repeated calls.",
818
+ oneOf: [
819
+ {
820
+ $ref: "#/$defs/IAutoBePreliminaryGetPrismaSchemas"
821
+ },
822
+ {
823
+ $ref: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IComplete"
824
+ }
825
+ ],
826
+ discriminator: {
827
+ propertyName: "type",
828
+ mapping: {
829
+ getPrismaSchemas: "#/$defs/IAutoBePreliminaryGetPrismaSchemas",
830
+ complete: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IComplete"
831
+ }
832
+ }
833
+ }
834
+ },
835
+ required: [
836
+ "thinking",
837
+ "request"
838
+ ],
839
+ additionalProperties: false,
840
+ $defs: {
841
+ IAutoBePreliminaryGetPrismaSchemas: {
842
+ 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.",
843
+ type: "object",
844
+ properties: {
845
+ type: {
846
+ 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.",
847
+ "const": "getPrismaSchemas"
848
+ },
849
+ schemaNames: {
850
+ 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.",
851
+ type: "array",
852
+ items: {
853
+ type: "string"
854
+ },
855
+ minItems: 1
856
+ }
857
+ },
858
+ required: [
859
+ "type",
860
+ "schemaNames"
861
+ ]
862
+ },
863
+ "IAutoBeRealizeAuthorizationWriteApplication.IComplete": {
864
+ description: "Request to generate authentication components.\n\nExecutes authentication generation to create provider function, decorator,\nand payload type for the specified role. All components work together to\nprovide JWT-based authentication and authorization.",
865
+ type: "object",
866
+ properties: {
867
+ type: {
868
+ 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.",
869
+ "const": "complete"
870
+ },
871
+ provider: {
872
+ description: "Authentication Provider function configuration containing the function\nname and implementation code. The Provider handles JWT token\nverification, role validation, and database queries to authenticate\nusers.",
873
+ $ref: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IProvider"
874
+ },
875
+ decorator: {
876
+ description: "Authentication Decorator configuration containing the decorator name and\nimplementation code. The Decorator integrates with NestJS parameter\ndecorators to automatically inject authenticated user data into\nController methods.",
877
+ $ref: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IDecorator"
878
+ },
879
+ payload: {
880
+ description: "Authentication Payload Type configuration containing the payload type\nname and implementation code. The Payload Type is used to define the\nstructure of the authenticated user data that will be injected into\nController methods when using the decorator. It serves as the TypeScript\ntype for the parameter in Controller method signatures.",
881
+ $ref: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IPayloadType"
882
+ }
883
+ },
884
+ required: [
885
+ "type",
886
+ "provider",
887
+ "decorator",
888
+ "payload"
889
+ ]
890
+ },
891
+ "IAutoBeRealizeAuthorizationWriteApplication.IProvider": {
892
+ type: "object",
893
+ properties: {
894
+ name: {
895
+ description: "The name of the authentication Provider function in {role}Authorize\nformat (e.g., adminAuthorize, userAuthorize). This function will be\ncalled by the decorator to verify JWT tokens and return authenticated\nuser information for the specified role.\n\nDO: Use camelCase naming convention.",
896
+ type: "string",
897
+ pattern: "^[a-z][a-zA-Z0-9]*$"
898
+ },
899
+ content: {
900
+ description: "Complete TypeScript code for the authentication Provider function. Must\ninclude: JWT token verification using jwtAuthorize function, role type\nchecking against payload.type, database query using\nMyGlobal.prisma.{tableName} pattern to verify user existence, and proper\nerror handling with ForbiddenException and UnauthorizedException. The\nfunction should return the authenticated user payload data.",
901
+ type: "string"
902
+ }
903
+ },
904
+ required: [
905
+ "name",
906
+ "content"
907
+ ]
908
+ },
909
+ "IAutoBeRealizeAuthorizationWriteApplication.IDecorator": {
910
+ type: "object",
911
+ properties: {
912
+ name: {
913
+ description: "The name of the Decorator to be generated in {Actor}Auth format (e.g.,\nAdminAuth, UserAuth). This decorator will be used as a parameter\ndecorator in Controller methods to automatically authenticate and\nauthorize users for the specific role, injecting the authenticated user\npayload as a method parameter.\n\nDO: Use PascalCase naming convention.",
914
+ type: "string",
915
+ pattern: "^[A-Z][a-zA-Z0-9]*$"
916
+ },
917
+ content: {
918
+ description: "Complete TypeScript code for the authentication Decorator implementation.\nMust include: SwaggerCustomizer integration to add bearer token security\nschema to API documentation, createParamDecorator implementation that\ncalls the corresponding Provider function for authentication, Singleton\npattern using tstl library for efficient decorator instance management,\nand proper TypeScript typing for the ParameterDecorator interface.",
919
+ type: "string"
920
+ }
921
+ },
922
+ required: [
923
+ "name",
924
+ "content"
925
+ ]
926
+ },
927
+ "IAutoBeRealizeAuthorizationWriteApplication.IPayloadType": {
928
+ type: "object",
929
+ properties: {
930
+ name: {
931
+ description: "The name of the Payload type to be generated in {Actor}Payload format\n(e.g., AdminPayload, UserPayload). This type defines the structure of the\nauthenticated user data that will be injected into Controller methods\nwhen using the decorator.\n\nDO: Use PascalCase naming convention.",
932
+ type: "string",
933
+ pattern: "^[A-Z][a-zA-Z0-9]*$"
934
+ },
935
+ content: {
936
+ description: "Complete TypeScript code for the Payload type interface in {Actor}Payload\nformat (e.g., AdminPayload, UserPayload). Must include: id field with\nUUID format validation, type field as role discriminator, and proper\ntypia tags for validation. This interface defines the structure of the\nauthenticated user data that will be injected into Controller methods\nwhen using the decorator and serves as the TypeScript type for the\nparameter in Controller method signatures.",
937
+ type: "string"
938
+ }
939
+ },
940
+ required: [
941
+ "name",
942
+ "content"
943
+ ]
944
+ }
945
+ }
946
+ },
947
+ description: "Process authentication component generation task or preliminary data\nrequests.\n\nGenerates JWT-based authentication infrastructure (provider, decorator,\npayload) for role-based authorization. Integrates with NestJS patterns and\njwtAuthorize utility.",
948
+ validate: (() => { const _io0 = input => "string" === typeof input.thinking && ("object" === typeof input.request && null !== input.request && _iu0(input.request)); const _io1 = input => "getPrismaSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io2 = input => "complete" === input.type && ("object" === typeof input.provider && null !== input.provider && _io3(input.provider)) && ("object" === typeof input.decorator && null !== input.decorator && _io4(input.decorator)) && ("object" === typeof input.payload && null !== input.payload && _io5(input.payload)); const _io3 = input => "string" === typeof input.name && RegExp("^[a-z][a-zA-Z0-9]*$").test(input.name) && "string" === typeof input.content; const _io4 = input => "string" === typeof input.name && RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) && "string" === typeof input.content; const _io5 = input => "string" === typeof input.name && RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) && "string" === typeof input.content; const _iu0 = input => (() => {
949
+ if ("getPrismaSchemas" === input.type)
950
+ return _io1(input);
951
+ else if ("complete" === input.type)
952
+ return _io2(input);
953
+ else
954
+ return false;
955
+ })(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
956
+ path: _path + ".thinking",
957
+ expected: "string",
958
+ value: input.thinking
959
+ }), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
960
+ path: _path + ".request",
961
+ expected: "(IAutoBePreliminaryGetPrismaSchemas | IAutoBeRealizeAuthorizationWriteApplication.IComplete)",
962
+ value: input.request
963
+ })) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
964
+ path: _path + ".request",
965
+ expected: "(IAutoBePreliminaryGetPrismaSchemas | IAutoBeRealizeAuthorizationWriteApplication.IComplete)",
966
+ value: input.request
967
+ })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getPrismaSchemas" === input.type || _report(_exceptionable, {
968
+ path: _path + ".type",
969
+ expected: "\"getPrismaSchemas\"",
970
+ value: input.type
971
+ }), (Array.isArray(input.schemaNames) || _report(_exceptionable, {
972
+ path: _path + ".schemaNames",
973
+ expected: "(Array<string> & MinItems<1>)",
974
+ value: input.schemaNames
975
+ })) && ((1 <= input.schemaNames.length || _report(_exceptionable, {
976
+ path: _path + ".schemaNames",
977
+ expected: "Array<> & MinItems<1>",
978
+ value: input.schemaNames
979
+ })) && input.schemaNames.map((elem, _index2) => "string" === typeof elem || _report(_exceptionable, {
980
+ path: _path + ".schemaNames[" + _index2 + "]",
981
+ expected: "string",
982
+ value: elem
983
+ })).every(flag => flag)) || _report(_exceptionable, {
984
+ path: _path + ".schemaNames",
985
+ expected: "(Array<string> & MinItems<1>)",
986
+ value: input.schemaNames
987
+ })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
988
+ path: _path + ".type",
989
+ expected: "\"complete\"",
990
+ value: input.type
991
+ }), ("object" === typeof input.provider && null !== input.provider || _report(_exceptionable, {
992
+ path: _path + ".provider",
993
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProvider",
994
+ value: input.provider
995
+ })) && _vo3(input.provider, _path + ".provider", true && _exceptionable) || _report(_exceptionable, {
996
+ path: _path + ".provider",
997
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProvider",
998
+ value: input.provider
999
+ }), ("object" === typeof input.decorator && null !== input.decorator || _report(_exceptionable, {
1000
+ path: _path + ".decorator",
1001
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IDecorator",
1002
+ value: input.decorator
1003
+ })) && _vo4(input.decorator, _path + ".decorator", true && _exceptionable) || _report(_exceptionable, {
1004
+ path: _path + ".decorator",
1005
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IDecorator",
1006
+ value: input.decorator
1007
+ }), ("object" === typeof input.payload && null !== input.payload || _report(_exceptionable, {
1008
+ path: _path + ".payload",
1009
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IPayloadType",
1010
+ value: input.payload
1011
+ })) && _vo5(input.payload, _path + ".payload", true && _exceptionable) || _report(_exceptionable, {
1012
+ path: _path + ".payload",
1013
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IPayloadType",
1014
+ value: input.payload
1015
+ })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["string" === typeof input.name && (RegExp("^[a-z][a-zA-Z0-9]*$").test(input.name) || _report(_exceptionable, {
1016
+ path: _path + ".name",
1017
+ expected: "string & CamelCasePattern",
1018
+ value: input.name
1019
+ })) || _report(_exceptionable, {
1020
+ path: _path + ".name",
1021
+ expected: "(string & CamelCasePattern)",
1022
+ value: input.name
1023
+ }), "string" === typeof input.content || _report(_exceptionable, {
1024
+ path: _path + ".content",
1025
+ expected: "string",
1026
+ value: input.content
1027
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.name && (RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) || _report(_exceptionable, {
1028
+ path: _path + ".name",
1029
+ expected: "string & PascalCasePattern",
1030
+ value: input.name
1031
+ })) || _report(_exceptionable, {
1032
+ path: _path + ".name",
1033
+ expected: "(string & PascalCasePattern)",
1034
+ value: input.name
1035
+ }), "string" === typeof input.content || _report(_exceptionable, {
1036
+ path: _path + ".content",
1037
+ expected: "string",
1038
+ value: input.content
1039
+ })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => ["string" === typeof input.name && (RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) || _report(_exceptionable, {
1040
+ path: _path + ".name",
1041
+ expected: "string & PascalCasePattern",
1042
+ value: input.name
1043
+ })) || _report(_exceptionable, {
1044
+ path: _path + ".name",
1045
+ expected: "(string & PascalCasePattern)",
1046
+ value: input.name
1047
+ }), "string" === typeof input.content || _report(_exceptionable, {
1048
+ path: _path + ".content",
1049
+ expected: "string",
1050
+ value: input.content
1051
+ })].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
1052
+ if ("getPrismaSchemas" === input.type)
1053
+ return _vo1(input, _path, true && _exceptionable);
1054
+ else if ("complete" === input.type)
1055
+ return _vo2(input, _path, true && _exceptionable);
1056
+ else
1057
+ return _report(_exceptionable, {
1058
+ path: _path,
1059
+ expected: "(IAutoBePreliminaryGetPrismaSchemas | IAutoBeRealizeAuthorizationWriteApplication.IComplete)",
1060
+ value: input
1061
+ });
1062
+ })(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1063
+ if (false === __is(input)) {
1064
+ errors = [];
1065
+ _report = __typia_transform__validateReport._validateReport(errors);
1066
+ ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1067
+ path: _path + "",
1068
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProps",
1069
+ value: input
1070
+ })) && _vo0(input, _path + "", true) || _report(true, {
1071
+ path: _path + "",
1072
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProps",
1073
+ value: input
1074
+ }))(input, "$input", true);
1075
+ const success = 0 === errors.length;
1076
+ return success ? {
1077
+ success,
1078
+ data: input
1079
+ } : {
1080
+ success,
1081
+ errors,
1082
+ data: input
1083
+ };
1084
+ }
1085
+ return {
1086
+ success: true,
1087
+ data: input
1088
+ };
1089
+ }; })()
1090
+ }
1091
+ ]
1092
+ };
1093
+ __typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
1094
+ validate: {
1095
+ process: validate,
1096
+ },
1097
+ }), { equals: false }));
1098
+ return application;
1099
+ })(),
1100
+ gemini: (validate) => (() => {
1101
+ const application = {
1102
+ model: "gemini",
1103
+ options: {
1104
+ reference: true,
1105
+ separate: null
1106
+ },
1107
+ functions: [
1108
+ {
1109
+ name: "process",
1110
+ parameters: {
1111
+ description: " Request containing either preliminary data request or complete\ntask\n\n------------------------------\n\nCurrent Type: {@link IAutoBeRealizeAuthorizationWriteApplication.IProps}",
1112
+ type: "object",
1113
+ properties: {
1114
+ thinking: {
1115
+ 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.",
1116
+ type: "string"
1117
+ },
1118
+ request: {
1119
+ description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval\n(getPrismaSchemas) or final authentication generation (complete). When\npreliminary returns empty array, that type is removed from the union,\nphysically preventing repeated calls.",
1120
+ anyOf: [
1121
+ {
1122
+ $ref: "#/$defs/IAutoBePreliminaryGetPrismaSchemas"
1123
+ },
1124
+ {
1125
+ $ref: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IComplete"
1126
+ }
1127
+ ],
1128
+ "x-discriminator": {
1129
+ propertyName: "type",
1130
+ mapping: {
1131
+ getPrismaSchemas: "#/$defs/IAutoBePreliminaryGetPrismaSchemas",
1132
+ complete: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IComplete"
1133
+ }
1134
+ }
1135
+ }
1136
+ },
1137
+ required: [
1138
+ "thinking",
1139
+ "request"
1140
+ ],
1141
+ additionalProperties: false,
1142
+ $defs: {
1143
+ IAutoBePreliminaryGetPrismaSchemas: {
1144
+ 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.",
1145
+ type: "object",
1146
+ properties: {
1147
+ type: {
1148
+ 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.",
1149
+ type: "string",
1150
+ "enum": [
1151
+ "getPrismaSchemas"
1152
+ ]
1153
+ },
1154
+ schemaNames: {
1155
+ 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.",
1156
+ type: "array",
1157
+ items: {
1158
+ type: "string"
1159
+ },
1160
+ minItems: 1
1161
+ }
1162
+ },
1163
+ required: [
1164
+ "type",
1165
+ "schemaNames"
1166
+ ]
1167
+ },
1168
+ "IAutoBeRealizeAuthorizationWriteApplication.IComplete": {
1169
+ description: "Request to generate authentication components.\n\nExecutes authentication generation to create provider function, decorator,\nand payload type for the specified role. All components work together to\nprovide JWT-based authentication and authorization.",
1170
+ type: "object",
1171
+ properties: {
1172
+ type: {
1173
+ 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.",
1174
+ type: "string",
1175
+ "enum": [
1176
+ "complete"
1177
+ ]
1178
+ },
1179
+ provider: {
1180
+ description: "Authentication Provider function configuration containing the function\nname and implementation code. The Provider handles JWT token\nverification, role validation, and database queries to authenticate\nusers.",
1181
+ $ref: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IProvider"
1182
+ },
1183
+ decorator: {
1184
+ description: "Authentication Decorator configuration containing the decorator name and\nimplementation code. The Decorator integrates with NestJS parameter\ndecorators to automatically inject authenticated user data into\nController methods.",
1185
+ $ref: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IDecorator"
1186
+ },
1187
+ payload: {
1188
+ description: "Authentication Payload Type configuration containing the payload type\nname and implementation code. The Payload Type is used to define the\nstructure of the authenticated user data that will be injected into\nController methods when using the decorator. It serves as the TypeScript\ntype for the parameter in Controller method signatures.",
1189
+ $ref: "#/$defs/IAutoBeRealizeAuthorizationWriteApplication.IPayloadType"
1190
+ }
1191
+ },
1192
+ required: [
1193
+ "type",
1194
+ "provider",
1195
+ "decorator",
1196
+ "payload"
1197
+ ]
1198
+ },
1199
+ "IAutoBeRealizeAuthorizationWriteApplication.IProvider": {
1200
+ type: "object",
1201
+ properties: {
1202
+ name: {
1203
+ description: "The name of the authentication Provider function in {role}Authorize\nformat (e.g., adminAuthorize, userAuthorize). This function will be\ncalled by the decorator to verify JWT tokens and return authenticated\nuser information for the specified role.\n\nDO: Use camelCase naming convention.",
1204
+ type: "string",
1205
+ pattern: "^[a-z][a-zA-Z0-9]*$"
1206
+ },
1207
+ content: {
1208
+ description: "Complete TypeScript code for the authentication Provider function. Must\ninclude: JWT token verification using jwtAuthorize function, role type\nchecking against payload.type, database query using\nMyGlobal.prisma.{tableName} pattern to verify user existence, and proper\nerror handling with ForbiddenException and UnauthorizedException. The\nfunction should return the authenticated user payload data.",
1209
+ type: "string"
1210
+ }
1211
+ },
1212
+ required: [
1213
+ "name",
1214
+ "content"
1215
+ ]
1216
+ },
1217
+ "IAutoBeRealizeAuthorizationWriteApplication.IDecorator": {
1218
+ type: "object",
1219
+ properties: {
1220
+ name: {
1221
+ description: "The name of the Decorator to be generated in {Actor}Auth format (e.g.,\nAdminAuth, UserAuth). This decorator will be used as a parameter\ndecorator in Controller methods to automatically authenticate and\nauthorize users for the specific role, injecting the authenticated user\npayload as a method parameter.\n\nDO: Use PascalCase naming convention.",
1222
+ type: "string",
1223
+ pattern: "^[A-Z][a-zA-Z0-9]*$"
1224
+ },
1225
+ content: {
1226
+ description: "Complete TypeScript code for the authentication Decorator implementation.\nMust include: SwaggerCustomizer integration to add bearer token security\nschema to API documentation, createParamDecorator implementation that\ncalls the corresponding Provider function for authentication, Singleton\npattern using tstl library for efficient decorator instance management,\nand proper TypeScript typing for the ParameterDecorator interface.",
1227
+ type: "string"
1228
+ }
1229
+ },
1230
+ required: [
1231
+ "name",
1232
+ "content"
1233
+ ]
1234
+ },
1235
+ "IAutoBeRealizeAuthorizationWriteApplication.IPayloadType": {
1236
+ type: "object",
1237
+ properties: {
1238
+ name: {
1239
+ description: "The name of the Payload type to be generated in {Actor}Payload format\n(e.g., AdminPayload, UserPayload). This type defines the structure of the\nauthenticated user data that will be injected into Controller methods\nwhen using the decorator.\n\nDO: Use PascalCase naming convention.",
1240
+ type: "string",
1241
+ pattern: "^[A-Z][a-zA-Z0-9]*$"
1242
+ },
1243
+ content: {
1244
+ description: "Complete TypeScript code for the Payload type interface in {Actor}Payload\nformat (e.g., AdminPayload, UserPayload). Must include: id field with\nUUID format validation, type field as role discriminator, and proper\ntypia tags for validation. This interface defines the structure of the\nauthenticated user data that will be injected into Controller methods\nwhen using the decorator and serves as the TypeScript type for the\nparameter in Controller method signatures.",
1245
+ type: "string"
1246
+ }
1247
+ },
1248
+ required: [
1249
+ "name",
1250
+ "content"
1251
+ ]
1252
+ }
1253
+ }
1254
+ },
1255
+ description: "Process authentication component generation task or preliminary data\nrequests.\n\nGenerates JWT-based authentication infrastructure (provider, decorator,\npayload) for role-based authorization. Integrates with NestJS patterns and\njwtAuthorize utility.",
1256
+ validate: (() => { const _io0 = input => "string" === typeof input.thinking && ("object" === typeof input.request && null !== input.request && _iu0(input.request)); const _io1 = input => "getPrismaSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io2 = input => "complete" === input.type && ("object" === typeof input.provider && null !== input.provider && _io3(input.provider)) && ("object" === typeof input.decorator && null !== input.decorator && _io4(input.decorator)) && ("object" === typeof input.payload && null !== input.payload && _io5(input.payload)); const _io3 = input => "string" === typeof input.name && RegExp("^[a-z][a-zA-Z0-9]*$").test(input.name) && "string" === typeof input.content; const _io4 = input => "string" === typeof input.name && RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) && "string" === typeof input.content; const _io5 = input => "string" === typeof input.name && RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) && "string" === typeof input.content; const _iu0 = input => (() => {
1257
+ if ("getPrismaSchemas" === input.type)
1258
+ return _io1(input);
1259
+ else if ("complete" === input.type)
1260
+ return _io2(input);
1261
+ else
1262
+ return false;
1263
+ })(); const _vo0 = (input, _path, _exceptionable = true) => ["string" === typeof input.thinking || _report(_exceptionable, {
1264
+ path: _path + ".thinking",
1265
+ expected: "string",
1266
+ value: input.thinking
1267
+ }), ("object" === typeof input.request && null !== input.request || _report(_exceptionable, {
1268
+ path: _path + ".request",
1269
+ expected: "(IAutoBePreliminaryGetPrismaSchemas | IAutoBeRealizeAuthorizationWriteApplication.IComplete)",
1270
+ value: input.request
1271
+ })) && _vu0(input.request, _path + ".request", true && _exceptionable) || _report(_exceptionable, {
1272
+ path: _path + ".request",
1273
+ expected: "(IAutoBePreliminaryGetPrismaSchemas | IAutoBeRealizeAuthorizationWriteApplication.IComplete)",
1274
+ value: input.request
1275
+ })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["getPrismaSchemas" === input.type || _report(_exceptionable, {
1276
+ path: _path + ".type",
1277
+ expected: "\"getPrismaSchemas\"",
1278
+ value: input.type
1279
+ }), (Array.isArray(input.schemaNames) || _report(_exceptionable, {
1280
+ path: _path + ".schemaNames",
1281
+ expected: "(Array<string> & MinItems<1>)",
1282
+ value: input.schemaNames
1283
+ })) && ((1 <= input.schemaNames.length || _report(_exceptionable, {
1284
+ path: _path + ".schemaNames",
1285
+ expected: "Array<> & MinItems<1>",
1286
+ value: input.schemaNames
1287
+ })) && input.schemaNames.map((elem, _index2) => "string" === typeof elem || _report(_exceptionable, {
1288
+ path: _path + ".schemaNames[" + _index2 + "]",
1289
+ expected: "string",
1290
+ value: elem
1291
+ })).every(flag => flag)) || _report(_exceptionable, {
1292
+ path: _path + ".schemaNames",
1293
+ expected: "(Array<string> & MinItems<1>)",
1294
+ value: input.schemaNames
1295
+ })].every(flag => flag); const _vo2 = (input, _path, _exceptionable = true) => ["complete" === input.type || _report(_exceptionable, {
1296
+ path: _path + ".type",
1297
+ expected: "\"complete\"",
1298
+ value: input.type
1299
+ }), ("object" === typeof input.provider && null !== input.provider || _report(_exceptionable, {
1300
+ path: _path + ".provider",
1301
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProvider",
1302
+ value: input.provider
1303
+ })) && _vo3(input.provider, _path + ".provider", true && _exceptionable) || _report(_exceptionable, {
1304
+ path: _path + ".provider",
1305
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProvider",
1306
+ value: input.provider
1307
+ }), ("object" === typeof input.decorator && null !== input.decorator || _report(_exceptionable, {
1308
+ path: _path + ".decorator",
1309
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IDecorator",
1310
+ value: input.decorator
1311
+ })) && _vo4(input.decorator, _path + ".decorator", true && _exceptionable) || _report(_exceptionable, {
1312
+ path: _path + ".decorator",
1313
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IDecorator",
1314
+ value: input.decorator
1315
+ }), ("object" === typeof input.payload && null !== input.payload || _report(_exceptionable, {
1316
+ path: _path + ".payload",
1317
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IPayloadType",
1318
+ value: input.payload
1319
+ })) && _vo5(input.payload, _path + ".payload", true && _exceptionable) || _report(_exceptionable, {
1320
+ path: _path + ".payload",
1321
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IPayloadType",
1322
+ value: input.payload
1323
+ })].every(flag => flag); const _vo3 = (input, _path, _exceptionable = true) => ["string" === typeof input.name && (RegExp("^[a-z][a-zA-Z0-9]*$").test(input.name) || _report(_exceptionable, {
1324
+ path: _path + ".name",
1325
+ expected: "string & CamelCasePattern",
1326
+ value: input.name
1327
+ })) || _report(_exceptionable, {
1328
+ path: _path + ".name",
1329
+ expected: "(string & CamelCasePattern)",
1330
+ value: input.name
1331
+ }), "string" === typeof input.content || _report(_exceptionable, {
1332
+ path: _path + ".content",
1333
+ expected: "string",
1334
+ value: input.content
1335
+ })].every(flag => flag); const _vo4 = (input, _path, _exceptionable = true) => ["string" === typeof input.name && (RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) || _report(_exceptionable, {
1336
+ path: _path + ".name",
1337
+ expected: "string & PascalCasePattern",
1338
+ value: input.name
1339
+ })) || _report(_exceptionable, {
1340
+ path: _path + ".name",
1341
+ expected: "(string & PascalCasePattern)",
1342
+ value: input.name
1343
+ }), "string" === typeof input.content || _report(_exceptionable, {
1344
+ path: _path + ".content",
1345
+ expected: "string",
1346
+ value: input.content
1347
+ })].every(flag => flag); const _vo5 = (input, _path, _exceptionable = true) => ["string" === typeof input.name && (RegExp("^[A-Z][a-zA-Z0-9]*$").test(input.name) || _report(_exceptionable, {
1348
+ path: _path + ".name",
1349
+ expected: "string & PascalCasePattern",
1350
+ value: input.name
1351
+ })) || _report(_exceptionable, {
1352
+ path: _path + ".name",
1353
+ expected: "(string & PascalCasePattern)",
1354
+ value: input.name
1355
+ }), "string" === typeof input.content || _report(_exceptionable, {
1356
+ path: _path + ".content",
1357
+ expected: "string",
1358
+ value: input.content
1359
+ })].every(flag => flag); const _vu0 = (input, _path, _exceptionable = true) => (() => {
1360
+ if ("getPrismaSchemas" === input.type)
1361
+ return _vo1(input, _path, true && _exceptionable);
1362
+ else if ("complete" === input.type)
1363
+ return _vo2(input, _path, true && _exceptionable);
1364
+ else
1365
+ return _report(_exceptionable, {
1366
+ path: _path,
1367
+ expected: "(IAutoBePreliminaryGetPrismaSchemas | IAutoBeRealizeAuthorizationWriteApplication.IComplete)",
1368
+ value: input
1369
+ });
1370
+ })(); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
1371
+ if (false === __is(input)) {
1372
+ errors = [];
1373
+ _report = __typia_transform__validateReport._validateReport(errors);
1374
+ ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
1375
+ path: _path + "",
1376
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProps",
1377
+ value: input
1378
+ })) && _vo0(input, _path + "", true) || _report(true, {
1379
+ path: _path + "",
1380
+ expected: "IAutoBeRealizeAuthorizationWriteApplication.IProps",
1381
+ value: input
1382
+ }))(input, "$input", true);
1383
+ const success = 0 === errors.length;
1384
+ return success ? {
1385
+ success,
1386
+ data: input
1387
+ } : {
1388
+ success,
1389
+ errors,
1390
+ data: input
1391
+ };
1392
+ }
1393
+ return {
1394
+ success: true,
1395
+ data: input
1396
+ };
1397
+ }; })()
1398
+ }
1399
+ ]
1400
+ };
1401
+ __typia_transform__llmApplicationFinalize._llmApplicationFinalize(application, Object.assign(Object.assign({}, {
1402
+ validate: {
1403
+ process: validate,
1404
+ },
1405
+ }), { equals: false }));
1406
+ return application;
1407
+ })(),
1408
+ };
1409
+ const SOURCE = "realizeAuthorizationWrite";
1410
+ //# sourceMappingURL=orchestrateRealizeAuthorizationWrite.js.map