@autobe/agent 0.30.0-dev.20260315 → 0.30.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (466) hide show
  1. package/LICENSE +661 -661
  2. package/lib/constants/AutoBeTemplateFileConstant.d.ts +1 -1
  3. package/lib/factory/consentFunctionCall.js +4 -4
  4. package/lib/factory/createAutoBeContext.js +24 -24
  5. package/lib/factory/createAutoBeMessageContent.js +6 -6
  6. package/lib/index.mjs +41 -41
  7. package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioHistory.js +18 -18
  8. package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioReviewHistory.js +13 -13
  9. package/lib/orchestrate/analyze/histories/transformAnalyzeSectionCrossFileReviewHistory.js +47 -47
  10. package/lib/orchestrate/analyze/histories/transformAnalyzeSectionReviewHistory.js +66 -66
  11. package/lib/orchestrate/analyze/histories/transformAnalyzeWriteSectionHistory.js +91 -91
  12. package/lib/orchestrate/analyze/histories/transformAnalyzeWriteSectionPatchHistory.js +46 -46
  13. package/lib/orchestrate/analyze/histories/transformAnalyzeWriteUnitHistory.js +72 -72
  14. package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js +1 -1
  15. package/lib/orchestrate/analyze/orchestrateAnalyzeSectionCrossFileReview.js +1 -1
  16. package/lib/orchestrate/analyze/orchestrateAnalyzeSectionReview.js +1 -1
  17. package/lib/orchestrate/analyze/orchestrateAnalyzeWriteSection.js +1 -1
  18. package/lib/orchestrate/analyze/orchestrateAnalyzeWriteSectionPatch.js +1 -1
  19. package/lib/orchestrate/analyze/orchestrateAnalyzeWriteUnit.js +1 -1
  20. package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistory.js +5 -5
  21. package/lib/orchestrate/common/histories/transformPreliminaryHistory.js +44 -44
  22. package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistory.js +44 -44
  23. package/lib/orchestrate/common/internal/fixPrelminaryApplication.js +22 -22
  24. package/lib/orchestrate/common/internal/validatePreliminary.js +116 -116
  25. package/lib/orchestrate/facade/createAutoBeFacadeController.js +3 -3
  26. package/lib/orchestrate/facade/structures/transformFacadeStateMessage.js +20 -20
  27. package/lib/orchestrate/interface/histories/transformInterfaceActionEndpointReviewHistory.js +34 -34
  28. package/lib/orchestrate/interface/histories/transformInterfaceActionEndpointWriteHistory.js +37 -37
  29. package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationHistory.js +56 -56
  30. package/lib/orchestrate/interface/histories/transformInterfaceBaseEndpointReviewHistory.js +26 -26
  31. package/lib/orchestrate/interface/histories/transformInterfaceBaseEndpointWriteHistory.js +28 -28
  32. package/lib/orchestrate/interface/histories/transformInterfaceEndpointAuthorizationSection.js +11 -11
  33. package/lib/orchestrate/interface/histories/transformInterfaceGroupHistory.js +38 -38
  34. package/lib/orchestrate/interface/histories/transformInterfaceOperationHistory.js +29 -29
  35. package/lib/orchestrate/interface/histories/transformInterfaceOperationParameterHistory.js +15 -15
  36. package/lib/orchestrate/interface/histories/transformInterfaceOperationReviewHistory.js +6 -6
  37. package/lib/orchestrate/interface/histories/transformInterfacePrerequisiteHistory.js +25 -25
  38. package/lib/orchestrate/interface/histories/transformInterfaceSchemaCastingHistory.js +67 -67
  39. package/lib/orchestrate/interface/histories/transformInterfaceSchemaComplementHistory.js +60 -60
  40. package/lib/orchestrate/interface/histories/transformInterfaceSchemaRefineHistory.js +83 -83
  41. package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistory.js +29 -29
  42. package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistory.js +74 -74
  43. package/lib/orchestrate/interface/histories/transformInterfaceSchemaWriteHistory.js +46 -46
  44. package/lib/orchestrate/interface/orchestrateInterfaceAuthorization.js +1 -1
  45. package/lib/orchestrate/interface/orchestrateInterfaceEndpointReview.js +1 -1
  46. package/lib/orchestrate/interface/orchestrateInterfaceEndpointWrite.js +1 -1
  47. package/lib/orchestrate/interface/orchestrateInterfaceGroup.js +9 -9
  48. package/lib/orchestrate/interface/orchestrateInterfaceOperation.js +1 -1
  49. package/lib/orchestrate/interface/orchestrateInterfaceOperationReview.js +1 -1
  50. package/lib/orchestrate/interface/orchestrateInterfacePrerequisite.js +4 -4
  51. package/lib/orchestrate/interface/orchestrateInterfaceSchemaCasting.js +1 -1
  52. package/lib/orchestrate/interface/orchestrateInterfaceSchemaComplement.js +5 -5
  53. package/lib/orchestrate/interface/orchestrateInterfaceSchemaRefine.js +1 -1
  54. package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.js +1 -1
  55. package/lib/orchestrate/interface/orchestrateInterfaceSchemaWrite.js +1 -1
  56. package/lib/orchestrate/interface/programmers/AutoBeInterfaceAuthorizationProgrammer.js +90 -90
  57. package/lib/orchestrate/interface/programmers/AutoBeInterfaceEndpointProgrammer.js +6 -6
  58. package/lib/orchestrate/interface/programmers/AutoBeInterfaceEndpointReviewProgrammer.js +25 -25
  59. package/lib/orchestrate/interface/programmers/AutoBeInterfaceOperationProgrammer.js +71 -71
  60. package/lib/orchestrate/interface/programmers/AutoBeInterfacePrerequisiteProgrammer.js +162 -162
  61. package/lib/orchestrate/interface/programmers/AutoBeInterfaceSchemaProgrammer.js +11 -11
  62. package/lib/orchestrate/interface/programmers/AutoBeInterfaceSchemaPropertyReviseProgrammer.js +73 -73
  63. package/lib/orchestrate/interface/programmers/AutoBeInterfaceSchemaRefineProgrammer.js +35 -35
  64. package/lib/orchestrate/interface/programmers/AutoBeInterfaceSchemaReviewProgrammer.js +11 -11
  65. package/lib/orchestrate/interface/utils/AutoBeJsonSchemaFactory.js +4 -4
  66. package/lib/orchestrate/interface/utils/AutoBeJsonSchemaValidator.js +283 -283
  67. package/lib/orchestrate/interface/utils/fulfillJsonSchemaErrorMessages.js +76 -76
  68. package/lib/orchestrate/prisma/histories/transformPrismaAuthorizationHistory.js +76 -76
  69. package/lib/orchestrate/prisma/histories/transformPrismaAuthorizationReviewHistory.js +51 -51
  70. package/lib/orchestrate/prisma/histories/transformPrismaComponentReviewHistory.js +54 -54
  71. package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistory.js +83 -83
  72. package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistory.js +6 -6
  73. package/lib/orchestrate/prisma/histories/transformPrismaGroupHistory.js +22 -22
  74. package/lib/orchestrate/prisma/histories/transformPrismaGroupReviewHistory.js +41 -41
  75. package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistory.js +39 -39
  76. package/lib/orchestrate/prisma/histories/transformPrismaSchemaReviewHistory.js +41 -41
  77. package/lib/orchestrate/prisma/orchestratePrismaAuthorization.js +1 -1
  78. package/lib/orchestrate/prisma/orchestratePrismaAuthorizationReview.js +1 -1
  79. package/lib/orchestrate/prisma/orchestratePrismaComponent.js +1 -1
  80. package/lib/orchestrate/prisma/orchestratePrismaComponentReview.js +1 -1
  81. package/lib/orchestrate/prisma/orchestratePrismaCorrect.js +1 -1
  82. package/lib/orchestrate/prisma/orchestratePrismaGroup.js +1 -1
  83. package/lib/orchestrate/prisma/orchestratePrismaGroupReview.js +1 -1
  84. package/lib/orchestrate/prisma/orchestratePrismaSchema.js +1 -1
  85. package/lib/orchestrate/prisma/orchestratePrismaSchemaReview.js +1 -1
  86. package/lib/orchestrate/prisma/programmers/AutoBeDatabaseAuthorizationProgrammer.js +23 -23
  87. package/lib/orchestrate/prisma/programmers/AutoBeDatabaseAuthorizationReviewProgrammer.js +7 -7
  88. package/lib/orchestrate/prisma/programmers/AutoBeDatabaseComponentProgrammer.js +5 -5
  89. package/lib/orchestrate/prisma/programmers/AutoBeDatabaseComponentReviewProgrammer.js +20 -20
  90. package/lib/orchestrate/prisma/programmers/AutoBeDatabaseGroupProgrammer.js +13 -13
  91. package/lib/orchestrate/prisma/programmers/AutoBeDatabaseGroupReviewProgrammer.js +51 -51
  92. package/lib/orchestrate/prisma/programmers/AutoBeDatabaseSchemaProgrammer.js +25 -25
  93. package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistory.js +28 -28
  94. package/lib/orchestrate/realize/histories/transformRealizeAuthorizationWriteHistory.js +14 -14
  95. package/lib/orchestrate/realize/histories/transformRealizeCollectorCorrectHistory.js +42 -42
  96. package/lib/orchestrate/realize/histories/transformRealizeCollectorPlanHistory.js +27 -27
  97. package/lib/orchestrate/realize/histories/transformRealizeCollectorWriteHistory.js +57 -57
  98. package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistory.js +35 -35
  99. package/lib/orchestrate/realize/histories/transformRealizeOperationCorrectHistory.js +14 -14
  100. package/lib/orchestrate/realize/histories/transformRealizeOperationWriteHistory.js +37 -37
  101. package/lib/orchestrate/realize/histories/transformRealizeOperationWriteHistory.js.map +1 -1
  102. package/lib/orchestrate/realize/histories/transformRealizeTransformerCorrectHistory.js +47 -47
  103. package/lib/orchestrate/realize/histories/transformRealizeTransformerPlanHistory.js +27 -27
  104. package/lib/orchestrate/realize/histories/transformRealizeTransformerWriteHistory.js +51 -51
  105. package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js +1 -1
  106. package/lib/orchestrate/realize/orchestrateRealizeAuthorizationWrite.js +1 -1
  107. package/lib/orchestrate/realize/orchestrateRealizeCollectorCorrectOverall.js +1 -1
  108. package/lib/orchestrate/realize/orchestrateRealizeCollectorPlan.js +11 -11
  109. package/lib/orchestrate/realize/orchestrateRealizeCollectorWrite.js +1 -1
  110. package/lib/orchestrate/realize/orchestrateRealizeOperationCorrectOverall.js +1 -1
  111. package/lib/orchestrate/realize/orchestrateRealizeOperationWrite.js +1 -1
  112. package/lib/orchestrate/realize/orchestrateRealizeTransformerCorrectOverall.js +1 -1
  113. package/lib/orchestrate/realize/orchestrateRealizeTransformerPlan.js +11 -11
  114. package/lib/orchestrate/realize/orchestrateRealizeTransformerWrite.js +1 -1
  115. package/lib/orchestrate/realize/programmers/AutoBeRealizeCollectorProgrammer.js +41 -41
  116. package/lib/orchestrate/realize/programmers/AutoBeRealizeOperationProgrammer.js +21 -21
  117. package/lib/orchestrate/realize/programmers/AutoBeRealizeTransformerProgrammer.js +57 -57
  118. package/lib/orchestrate/realize/utils/getRealizeWriteInputType.js +3 -3
  119. package/lib/orchestrate/realize/utils/printErrorHints.js +5 -5
  120. package/lib/orchestrate/test/compile/getTestImportStatements.js +9 -9
  121. package/lib/orchestrate/test/histories/transformTestAuthorizeWriteHistory.js +38 -38
  122. package/lib/orchestrate/test/histories/transformTestGenerationWriteHistory.js +79 -79
  123. package/lib/orchestrate/test/histories/transformTestOperationWriteHistory.js +162 -162
  124. package/lib/orchestrate/test/histories/transformTestPrepareWriteHistory.js +54 -54
  125. package/lib/orchestrate/test/histories/transformTestScenarioHistory.js +31 -31
  126. package/lib/orchestrate/test/histories/transformTestScenarioReviewHistory.js +27 -27
  127. package/lib/orchestrate/test/orchestrateTestScenario.js +1 -1
  128. package/lib/orchestrate/test/orchestrateTestScenarioReview.js +1 -1
  129. package/lib/orchestrate/test/programmers/AutoBeTestAuthorizeProgrammer.js +31 -31
  130. package/lib/orchestrate/test/programmers/AutoBeTestGenerateProgrammer.js +23 -23
  131. package/lib/orchestrate/test/programmers/AutoBeTestOperationProgrammer.js +6 -6
  132. package/lib/orchestrate/test/programmers/AutoBeTestPrepareProgrammer.js +34 -34
  133. package/lib/orchestrate/test/programmers/AutoBeTestScenarioProgrammer.js +39 -39
  134. package/lib/utils/predicateStateMessage.js +19 -19
  135. package/lib/utils/validateEmptyCode.js +16 -16
  136. package/package.json +5 -5
  137. package/src/AutoBeAgent.ts +374 -374
  138. package/src/AutoBeAgentBase.ts +126 -126
  139. package/src/AutoBeMockAgent.ts +254 -254
  140. package/src/constants/AutoBeConfigConstant.ts +173 -173
  141. package/src/constants/AutoBeTemplateFileConstant.ts +1 -1
  142. package/src/context/AutoBeContext.ts +107 -107
  143. package/src/context/AutoBeState.ts +66 -66
  144. package/src/context/AutoBeTokenUsage.ts +307 -307
  145. package/src/context/AutoBeTokenUsageComponent.ts +227 -227
  146. package/src/describe/describe.ts +47 -47
  147. package/src/describe/image/histories/transformImageDescribeDraftHistories.ts +16 -16
  148. package/src/describe/image/orchestrateImageDescribeDraft.ts +200 -200
  149. package/src/describe/image/structures/IAutoBeImageDescribeDraftApplication.ts +92 -92
  150. package/src/describe/imageDescribe.ts +64 -64
  151. package/src/factory/consentFunctionCall.ts +141 -141
  152. package/src/factory/createAgenticaHistory.ts +71 -71
  153. package/src/factory/createAutoBeContext.ts +584 -584
  154. package/src/factory/createAutoBeMessageContent.ts +36 -36
  155. package/src/factory/createAutoBeState.ts +20 -20
  156. package/src/factory/getAutoBeGenerated.ts +317 -317
  157. package/src/factory/getAutoBeRealizeGenerated.ts +31 -31
  158. package/src/factory/getCriticalCompiler.ts +52 -52
  159. package/src/factory/index.ts +1 -1
  160. package/src/factory/mergeSystemMessages.ts +60 -60
  161. package/src/factory/supportFunctionCallFallback.ts +214 -214
  162. package/src/factory/supportMistral.ts +138 -138
  163. package/src/index.ts +16 -16
  164. package/src/orchestrate/analyze/fillTocDeterministic.ts +280 -280
  165. package/src/orchestrate/analyze/histories/transformAnalyzeScenarioHistory.ts +55 -55
  166. package/src/orchestrate/analyze/histories/transformAnalyzeScenarioReviewHistory.ts +74 -74
  167. package/src/orchestrate/analyze/histories/transformAnalyzeSectionCrossFileReviewHistory.ts +179 -179
  168. package/src/orchestrate/analyze/histories/transformAnalyzeSectionReviewHistory.ts +163 -163
  169. package/src/orchestrate/analyze/histories/transformAnalyzeWriteSectionHistory.ts +191 -191
  170. package/src/orchestrate/analyze/histories/transformAnalyzeWriteSectionPatchHistory.ts +122 -122
  171. package/src/orchestrate/analyze/histories/transformAnalyzeWriteUnitHistory.ts +161 -161
  172. package/src/orchestrate/analyze/index.ts +7 -7
  173. package/src/orchestrate/analyze/orchestrateAnalyze.ts +1693 -1693
  174. package/src/orchestrate/analyze/orchestrateAnalyzeScenario.ts +267 -267
  175. package/src/orchestrate/analyze/orchestrateAnalyzeScenarioReview.ts +122 -122
  176. package/src/orchestrate/analyze/orchestrateAnalyzeSectionCrossFileReview.ts +146 -146
  177. package/src/orchestrate/analyze/orchestrateAnalyzeSectionReview.ts +154 -154
  178. package/src/orchestrate/analyze/orchestrateAnalyzeWriteSection.ts +388 -388
  179. package/src/orchestrate/analyze/orchestrateAnalyzeWriteSectionPatch.ts +407 -407
  180. package/src/orchestrate/analyze/orchestrateAnalyzeWriteUnit.ts +348 -348
  181. package/src/orchestrate/analyze/programmers/AutoBeAnalyzeProgrammer.ts +149 -149
  182. package/src/orchestrate/analyze/structures/FixedAnalyzeTemplate.ts +961 -961
  183. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioApplication.ts +141 -141
  184. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioReviewApplication.ts +96 -96
  185. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeSectionCrossFileReviewApplication.ts +160 -160
  186. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeSectionReviewApplication.ts +192 -192
  187. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeWriteSectionApplication.ts +142 -142
  188. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeWriteUnitApplication.ts +123 -123
  189. package/src/orchestrate/analyze/utils/buildConstraintConsistencyReport.ts +813 -813
  190. package/src/orchestrate/analyze/utils/buildErrorCodeRegistry.ts +324 -324
  191. package/src/orchestrate/analyze/utils/buildHardValidators.ts +88 -88
  192. package/src/orchestrate/analyze/utils/detectInventedEntities.ts +87 -87
  193. package/src/orchestrate/analyze/utils/detectProseConstraintConflicts.ts +319 -319
  194. package/src/orchestrate/analyze/utils/repairSectionReviewUtils.ts +181 -181
  195. package/src/orchestrate/analyze/utils/repairUtils.ts +60 -60
  196. package/src/orchestrate/analyze/utils/validateScenarioBasics.ts +104 -104
  197. package/src/orchestrate/common/AutoBePreliminaryController.ts +400 -400
  198. package/src/orchestrate/common/histories/transformCommonCorrectCastingHistory.ts +32 -32
  199. package/src/orchestrate/common/histories/transformPreliminaryHistory.ts +742 -742
  200. package/src/orchestrate/common/histories/transformPreviousAndLatestCorrectHistory.ts +77 -77
  201. package/src/orchestrate/common/internal/complementPreliminaryCollection.ts +263 -263
  202. package/src/orchestrate/common/internal/convertToSectionEntries.ts +57 -57
  203. package/src/orchestrate/common/internal/createPreliminaryCollection.ts +76 -76
  204. package/src/orchestrate/common/internal/fixPrelminaryApplication.ts +346 -346
  205. package/src/orchestrate/common/internal/validatePreliminary.ts +671 -671
  206. package/src/orchestrate/common/orchestrateCommonCorrectCasting.ts +223 -223
  207. package/src/orchestrate/common/orchestratePreliminary.ts +610 -610
  208. package/src/orchestrate/common/structures/AutoBePreliminaryRequest.ts +42 -42
  209. package/src/orchestrate/common/structures/IAnalysisSectionEntry.ts +35 -35
  210. package/src/orchestrate/common/structures/IAutoBeCommonCorrectCastingApplication.ts +72 -72
  211. package/src/orchestrate/common/structures/IAutoBeOrchestrateResult.ts +28 -28
  212. package/src/orchestrate/common/structures/IAutoBePreliminaryCollection.ts +52 -52
  213. package/src/orchestrate/common/structures/IAutoBePreliminaryGetAnalysisSections.ts +34 -34
  214. package/src/orchestrate/common/structures/IAutoBePreliminaryGetDatabaseSchemas.ts +31 -31
  215. package/src/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceOperations.ts +32 -32
  216. package/src/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceSchemas.ts +31 -31
  217. package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousAnalysisSections.ts +28 -28
  218. package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousDatabaseSchemas.ts +88 -88
  219. package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousInterfaceOperations.ts +102 -102
  220. package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousInterfaceSchemas.ts +105 -105
  221. package/src/orchestrate/common/structures/IAutoBePreliminaryGetRealizeCollectors.ts +32 -32
  222. package/src/orchestrate/common/structures/IAutoBePreliminaryGetRealizeTransformers.ts +32 -32
  223. package/src/orchestrate/facade/createAutoBeFacadeController.ts +118 -118
  224. package/src/orchestrate/facade/histories/IAutoBeFacadeApplication.ts +139 -139
  225. package/src/orchestrate/facade/histories/IAutoBeFacadeApplicationProps.ts +8 -8
  226. package/src/orchestrate/facade/histories/IAutoBeFacadeApplicationResult.ts +9 -9
  227. package/src/orchestrate/facade/structures/transformFacadeStateMessage.ts +59 -59
  228. package/src/orchestrate/index.ts +5 -5
  229. package/src/orchestrate/interface/histories/transformInterfaceActionEndpointReviewHistory.ts +83 -83
  230. package/src/orchestrate/interface/histories/transformInterfaceActionEndpointWriteHistory.ts +78 -78
  231. package/src/orchestrate/interface/histories/transformInterfaceAuthorizationHistory.ts +129 -129
  232. package/src/orchestrate/interface/histories/transformInterfaceBaseEndpointReviewHistory.ts +74 -74
  233. package/src/orchestrate/interface/histories/transformInterfaceBaseEndpointWriteHistory.ts +68 -68
  234. package/src/orchestrate/interface/histories/transformInterfaceCommonHistory.ts +64 -64
  235. package/src/orchestrate/interface/histories/transformInterfaceEndpointAuthorizationSection.ts +42 -42
  236. package/src/orchestrate/interface/histories/transformInterfaceGroupHistory.ts +103 -103
  237. package/src/orchestrate/interface/histories/transformInterfaceOperationHistory.ts +81 -81
  238. package/src/orchestrate/interface/histories/transformInterfaceOperationParameterHistory.ts +53 -53
  239. package/src/orchestrate/interface/histories/transformInterfaceOperationReviewHistory.ts +49 -49
  240. package/src/orchestrate/interface/histories/transformInterfacePrerequisiteHistory.ts +94 -94
  241. package/src/orchestrate/interface/histories/transformInterfaceSchemaCastingHistory.ts +122 -122
  242. package/src/orchestrate/interface/histories/transformInterfaceSchemaComplementHistory.ts +192 -192
  243. package/src/orchestrate/interface/histories/transformInterfaceSchemaRefineHistory.ts +189 -189
  244. package/src/orchestrate/interface/histories/transformInterfaceSchemaRenameHistory.ts +63 -63
  245. package/src/orchestrate/interface/histories/transformInterfaceSchemaReviewHistory.ts +173 -173
  246. package/src/orchestrate/interface/histories/transformInterfaceSchemaWriteHistory.ts +88 -88
  247. package/src/orchestrate/interface/index.ts +6 -6
  248. package/src/orchestrate/interface/orchestrateInterface.ts +118 -118
  249. package/src/orchestrate/interface/orchestrateInterfaceActionEndpoint.ts +58 -58
  250. package/src/orchestrate/interface/orchestrateInterfaceAuthorization.ts +208 -208
  251. package/src/orchestrate/interface/orchestrateInterfaceBaseEndpoint.ts +55 -55
  252. package/src/orchestrate/interface/orchestrateInterfaceEndpoint.ts +67 -67
  253. package/src/orchestrate/interface/orchestrateInterfaceEndpointOverall.ts +80 -80
  254. package/src/orchestrate/interface/orchestrateInterfaceEndpointReview.ts +212 -212
  255. package/src/orchestrate/interface/orchestrateInterfaceEndpointWrite.ts +236 -236
  256. package/src/orchestrate/interface/orchestrateInterfaceGroup.ts +166 -166
  257. package/src/orchestrate/interface/orchestrateInterfaceOperation.ts +322 -322
  258. package/src/orchestrate/interface/orchestrateInterfaceOperationReview.ts +245 -245
  259. package/src/orchestrate/interface/orchestrateInterfacePrerequisite.ts +240 -240
  260. package/src/orchestrate/interface/orchestrateInterfaceSchema.ts +191 -191
  261. package/src/orchestrate/interface/orchestrateInterfaceSchemaCasting.ts +274 -274
  262. package/src/orchestrate/interface/orchestrateInterfaceSchemaComplement.ts +329 -329
  263. package/src/orchestrate/interface/orchestrateInterfaceSchemaRefine.ts +292 -292
  264. package/src/orchestrate/interface/orchestrateInterfaceSchemaRename.ts +266 -266
  265. package/src/orchestrate/interface/orchestrateInterfaceSchemaReview.ts +310 -310
  266. package/src/orchestrate/interface/orchestrateInterfaceSchemaWrite.ts +283 -283
  267. package/src/orchestrate/interface/programmers/AutoBeInterfaceAuthorizationProgrammer.ts +260 -260
  268. package/src/orchestrate/interface/programmers/AutoBeInterfaceEndpointProgrammer.ts +155 -155
  269. package/src/orchestrate/interface/programmers/AutoBeInterfaceEndpointReviewProgrammer.ts +139 -139
  270. package/src/orchestrate/interface/programmers/AutoBeInterfaceOperationProgrammer.ts +277 -277
  271. package/src/orchestrate/interface/programmers/AutoBeInterfacePrerequisiteProgrammer.ts +259 -259
  272. package/src/orchestrate/interface/programmers/AutoBeInterfaceSchemaProgrammer.ts +152 -152
  273. package/src/orchestrate/interface/programmers/AutoBeInterfaceSchemaPropertyReviseProgrammer.ts +347 -347
  274. package/src/orchestrate/interface/programmers/AutoBeInterfaceSchemaRefineProgrammer.ts +183 -183
  275. package/src/orchestrate/interface/programmers/AutoBeInterfaceSchemaReviewProgrammer.ts +263 -263
  276. package/src/orchestrate/interface/structures/IAutoBeInterfaceAuthorizationApplication.ts +135 -135
  277. package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointReviewApplication.ts +128 -128
  278. package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointWriteApplication.ts +133 -133
  279. package/src/orchestrate/interface/structures/IAutoBeInterfaceGroupApplication.ts +122 -122
  280. package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.ts +178 -178
  281. package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationReviewApplication.ts +175 -175
  282. package/src/orchestrate/interface/structures/IAutoBeInterfacePrerequisiteApplication.ts +130 -130
  283. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaApplication.ts +121 -121
  284. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaCastingApplication.ts +153 -153
  285. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaComplementApplication.ts +123 -123
  286. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaRefineApplication.ts +181 -181
  287. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaRenameApplication.ts +45 -45
  288. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaReviewApplication.ts +108 -108
  289. package/src/orchestrate/interface/utils/AutoBeJsonSchemaCollection.ts +42 -42
  290. package/src/orchestrate/interface/utils/AutoBeJsonSchemaFactory.ts +714 -714
  291. package/src/orchestrate/interface/utils/AutoBeJsonSchemaNamingConvention.ts +86 -86
  292. package/src/orchestrate/interface/utils/AutoBeJsonSchemaValidator.ts +725 -725
  293. package/src/orchestrate/interface/utils/fulfillJsonSchemaErrorMessages.ts +219 -219
  294. package/src/orchestrate/prisma/histories/transformPrismaAuthorizationHistory.ts +144 -144
  295. package/src/orchestrate/prisma/histories/transformPrismaAuthorizationReviewHistory.ts +104 -104
  296. package/src/orchestrate/prisma/histories/transformPrismaComponentReviewHistory.ts +97 -97
  297. package/src/orchestrate/prisma/histories/transformPrismaComponentsHistory.ts +136 -136
  298. package/src/orchestrate/prisma/histories/transformPrismaCorrectHistory.ts +41 -41
  299. package/src/orchestrate/prisma/histories/transformPrismaGroupHistory.ts +63 -63
  300. package/src/orchestrate/prisma/histories/transformPrismaGroupReviewHistory.ts +79 -79
  301. package/src/orchestrate/prisma/histories/transformPrismaSchemaHistory.ts +97 -97
  302. package/src/orchestrate/prisma/histories/transformPrismaSchemaReviewHistory.ts +126 -126
  303. package/src/orchestrate/prisma/index.ts +7 -7
  304. package/src/orchestrate/prisma/orchestratePrisma.ts +296 -296
  305. package/src/orchestrate/prisma/orchestratePrismaAuthorization.ts +173 -173
  306. package/src/orchestrate/prisma/orchestratePrismaAuthorizationReview.ts +183 -183
  307. package/src/orchestrate/prisma/orchestratePrismaComponent.ts +205 -205
  308. package/src/orchestrate/prisma/orchestratePrismaComponentReview.ts +205 -205
  309. package/src/orchestrate/prisma/orchestratePrismaCorrect.ts +265 -265
  310. package/src/orchestrate/prisma/orchestratePrismaGroup.ts +121 -121
  311. package/src/orchestrate/prisma/orchestratePrismaGroupReview.ts +141 -141
  312. package/src/orchestrate/prisma/orchestratePrismaSchema.ts +218 -218
  313. package/src/orchestrate/prisma/orchestratePrismaSchemaReview.ts +220 -220
  314. package/src/orchestrate/prisma/programmers/AutoBeDatabaseAuthorizationProgrammer.ts +86 -86
  315. package/src/orchestrate/prisma/programmers/AutoBeDatabaseAuthorizationReviewProgrammer.ts +103 -103
  316. package/src/orchestrate/prisma/programmers/AutoBeDatabaseComponentProgrammer.ts +80 -80
  317. package/src/orchestrate/prisma/programmers/AutoBeDatabaseComponentReviewProgrammer.ts +168 -168
  318. package/src/orchestrate/prisma/programmers/AutoBeDatabaseGroupProgrammer.ts +63 -63
  319. package/src/orchestrate/prisma/programmers/AutoBeDatabaseGroupReviewProgrammer.ts +210 -210
  320. package/src/orchestrate/prisma/programmers/AutoBeDatabaseModelProgrammer.ts +57 -57
  321. package/src/orchestrate/prisma/programmers/AutoBeDatabaseSchemaProgrammer.ts +92 -92
  322. package/src/orchestrate/prisma/structures/IAutoBeDatabaseAuthorizationApplication.ts +147 -147
  323. package/src/orchestrate/prisma/structures/IAutoBeDatabaseAuthorizationReviewApplication.ts +153 -153
  324. package/src/orchestrate/prisma/structures/IAutoBeDatabaseComponentApplication.ts +142 -142
  325. package/src/orchestrate/prisma/structures/IAutoBeDatabaseComponentReviewApplication.ts +151 -151
  326. package/src/orchestrate/prisma/structures/IAutoBeDatabaseCorrectApplication.ts +157 -157
  327. package/src/orchestrate/prisma/structures/IAutoBeDatabaseGroupApplication.ts +117 -117
  328. package/src/orchestrate/prisma/structures/IAutoBeDatabaseGroupReviewApplication.ts +154 -154
  329. package/src/orchestrate/prisma/structures/IAutoBeDatabaseSchemaApplication.ts +144 -144
  330. package/src/orchestrate/prisma/structures/IAutoBeDatabaseSchemaReviewApplication.ts +138 -138
  331. package/src/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistory.ts +89 -89
  332. package/src/orchestrate/realize/histories/transformRealizeAuthorizationWriteHistory.ts +45 -45
  333. package/src/orchestrate/realize/histories/transformRealizeCollectorCorrectHistory.ts +137 -137
  334. package/src/orchestrate/realize/histories/transformRealizeCollectorPlanHistory.ts +64 -64
  335. package/src/orchestrate/realize/histories/transformRealizeCollectorWriteHistory.ts +147 -147
  336. package/src/orchestrate/realize/histories/transformRealizeCorrectCastingHistory.ts +69 -69
  337. package/src/orchestrate/realize/histories/transformRealizeOperationCorrectHistory.ts +94 -94
  338. package/src/orchestrate/realize/histories/transformRealizeOperationWriteHistory.ts +127 -127
  339. package/src/orchestrate/realize/histories/transformRealizeTransformerCorrectHistory.ts +147 -147
  340. package/src/orchestrate/realize/histories/transformRealizeTransformerPlanHistory.ts +61 -61
  341. package/src/orchestrate/realize/histories/transformRealizeTransformerWriteHistory.ts +133 -133
  342. package/src/orchestrate/realize/histories/transformRealizeWriteMembershipHistory.ts +30 -30
  343. package/src/orchestrate/realize/index.ts +3 -3
  344. package/src/orchestrate/realize/internal/orchestrateRealizeCorrectCasting.ts +444 -444
  345. package/src/orchestrate/realize/internal/orchestrateRealizeCorrectOverall.ts +449 -449
  346. package/src/orchestrate/realize/orchestrateRealize.ts +143 -143
  347. package/src/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.ts +207 -207
  348. package/src/orchestrate/realize/orchestrateRealizeAuthorizationWrite.ts +209 -209
  349. package/src/orchestrate/realize/orchestrateRealizeCollector.ts +41 -41
  350. package/src/orchestrate/realize/orchestrateRealizeCollectorCorrectCasting.ts +43 -43
  351. package/src/orchestrate/realize/orchestrateRealizeCollectorCorrectOverall.ts +157 -157
  352. package/src/orchestrate/realize/orchestrateRealizeCollectorPlan.ts +264 -264
  353. package/src/orchestrate/realize/orchestrateRealizeCollectorWrite.ts +225 -225
  354. package/src/orchestrate/realize/orchestrateRealizeOperation.ts +48 -48
  355. package/src/orchestrate/realize/orchestrateRealizeOperationCorrectCasting.ts +69 -69
  356. package/src/orchestrate/realize/orchestrateRealizeOperationCorrectOverall.ts +173 -173
  357. package/src/orchestrate/realize/orchestrateRealizeOperationWrite.ts +262 -262
  358. package/src/orchestrate/realize/orchestrateRealizeTransformer.ts +41 -41
  359. package/src/orchestrate/realize/orchestrateRealizeTransformerCorrectCasting.ts +38 -38
  360. package/src/orchestrate/realize/orchestrateRealizeTransformerCorrectOverall.ts +160 -160
  361. package/src/orchestrate/realize/orchestrateRealizeTransformerPlan.ts +254 -254
  362. package/src/orchestrate/realize/orchestrateRealizeTransformerWrite.ts +226 -226
  363. package/src/orchestrate/realize/programmers/AutoBeRealizeCollectorProgrammer.ts +424 -424
  364. package/src/orchestrate/realize/programmers/AutoBeRealizeOperationProgrammer.ts +409 -409
  365. package/src/orchestrate/realize/programmers/AutoBeRealizeTransformerProgrammer.ts +451 -451
  366. package/src/orchestrate/realize/programmers/compileRealizeFiles.ts +65 -65
  367. package/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationCorrectApplication.ts +119 -119
  368. package/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationWriteApplication.ts +167 -167
  369. package/src/orchestrate/realize/structures/IAutoBeRealizeCollectorCorrectApplication.ts +191 -191
  370. package/src/orchestrate/realize/structures/IAutoBeRealizeCollectorPlanApplication.ts +177 -177
  371. package/src/orchestrate/realize/structures/IAutoBeRealizeCollectorWriteApplication.ts +207 -207
  372. package/src/orchestrate/realize/structures/IAutoBeRealizeFunctionFailure.ts +11 -11
  373. package/src/orchestrate/realize/structures/IAutoBeRealizeOperationCorrectApplication.ts +134 -134
  374. package/src/orchestrate/realize/structures/IAutoBeRealizeOperationWriteApplication.ts +138 -138
  375. package/src/orchestrate/realize/structures/IAutoBeRealizeScenarioResult.ts +32 -32
  376. package/src/orchestrate/realize/structures/IAutoBeRealizeTransformerCorrectApplication.ts +248 -248
  377. package/src/orchestrate/realize/structures/IAutoBeRealizeTransformerPlanApplication.ts +150 -150
  378. package/src/orchestrate/realize/structures/IAutoBeRealizeTransformerWriteApplication.ts +278 -278
  379. package/src/orchestrate/realize/utils/AuthorizationFileSystem.ts +10 -10
  380. package/src/orchestrate/realize/utils/AutoBeRealizeAuthorizationFileSystem.ts +9 -9
  381. package/src/orchestrate/realize/utils/AutoBeRealizeAuthorizationReplaceImport.ts +62 -62
  382. package/src/orchestrate/realize/utils/InternalFileSystem.ts +12 -12
  383. package/src/orchestrate/realize/utils/ProviderFileSystem.ts +4 -4
  384. package/src/orchestrate/realize/utils/filterDiagnostics.ts +25 -25
  385. package/src/orchestrate/realize/utils/generateTS2339Hints.ts +54 -54
  386. package/src/orchestrate/realize/utils/getRealizeWriteImportStatements.ts +42 -42
  387. package/src/orchestrate/realize/utils/getRealizeWriteInputType.ts +88 -88
  388. package/src/orchestrate/realize/utils/printErrorHints.ts +54 -54
  389. package/src/orchestrate/test/compile/getTestArtifacts.ts +124 -124
  390. package/src/orchestrate/test/compile/getTestExternalDeclarations.ts +39 -39
  391. package/src/orchestrate/test/compile/getTestImportStatements.ts +27 -27
  392. package/src/orchestrate/test/experimental/orchestrateTestCorrect.ast +237 -237
  393. package/src/orchestrate/test/experimental/orchestrateTestWrite.ast +322 -322
  394. package/src/orchestrate/test/experimental/transformTestCorrectHistories.ast +52 -52
  395. package/src/orchestrate/test/histories/transformTestAuthorizeWriteHistory.ts +80 -80
  396. package/src/orchestrate/test/histories/transformTestCorrectOverallHistory.ts +116 -116
  397. package/src/orchestrate/test/histories/transformTestGenerationWriteHistory.ts +118 -118
  398. package/src/orchestrate/test/histories/transformTestOperationWriteHistory.ts +287 -287
  399. package/src/orchestrate/test/histories/transformTestPrepareWriteHistory.ts +95 -95
  400. package/src/orchestrate/test/histories/transformTestScenarioHistory.ts +120 -120
  401. package/src/orchestrate/test/histories/transformTestScenarioReviewHistory.ts +99 -99
  402. package/src/orchestrate/test/histories/transformTestValidateEvent.ts +11 -11
  403. package/src/orchestrate/test/index.ts +5 -5
  404. package/src/orchestrate/test/internal/orchestrateTestCorrectCasting.ts +96 -96
  405. package/src/orchestrate/test/internal/orchestrateTestCorrectOverall.ts +219 -219
  406. package/src/orchestrate/test/internal/orchestrateTestCorrectRequest.ts +206 -206
  407. package/src/orchestrate/test/orchestrateTest.ts +161 -161
  408. package/src/orchestrate/test/orchestrateTestAuthorize.ts +125 -125
  409. package/src/orchestrate/test/orchestrateTestAuthorizeWrite.ts +263 -263
  410. package/src/orchestrate/test/orchestrateTestGenerate.ts +121 -121
  411. package/src/orchestrate/test/orchestrateTestGenerateWrite.ts +211 -211
  412. package/src/orchestrate/test/orchestrateTestOperation.ts +133 -133
  413. package/src/orchestrate/test/orchestrateTestOperationWrite.ts +221 -221
  414. package/src/orchestrate/test/orchestrateTestPrepare.ts +117 -117
  415. package/src/orchestrate/test/orchestrateTestPrepareWrite.ts +264 -264
  416. package/src/orchestrate/test/orchestrateTestScenario.ts +290 -290
  417. package/src/orchestrate/test/orchestrateTestScenarioReview.ts +262 -262
  418. package/src/orchestrate/test/programmers/AutoBeTestAuthorizeProgrammer.ts +149 -149
  419. package/src/orchestrate/test/programmers/AutoBeTestFunctionProgrammer.ts +90 -90
  420. package/src/orchestrate/test/programmers/AutoBeTestGenerateProgrammer.ts +170 -170
  421. package/src/orchestrate/test/programmers/AutoBeTestOperationProgrammer.ts +168 -168
  422. package/src/orchestrate/test/programmers/AutoBeTestPrepareProgrammer.ts +261 -261
  423. package/src/orchestrate/test/programmers/AutoBeTestScenarioProgrammer.ts +316 -316
  424. package/src/orchestrate/test/structures/IAutoBeTestArtifacts.ts +8 -8
  425. package/src/orchestrate/test/structures/IAutoBeTestAuthorizationWriteApplication.ts +113 -113
  426. package/src/orchestrate/test/structures/IAutoBeTestAuthorizeWriteResult.ts +10 -10
  427. package/src/orchestrate/test/structures/IAutoBeTestCorrectOverallApplication.ts +134 -134
  428. package/src/orchestrate/test/structures/IAutoBeTestCorrectRequestApplication.ts +152 -152
  429. package/src/orchestrate/test/structures/IAutoBeTestFunction.ts +10 -10
  430. package/src/orchestrate/test/structures/IAutoBeTestFunctionFailure.ts +10 -10
  431. package/src/orchestrate/test/structures/IAutoBeTestGenerateProcedure.ts +15 -15
  432. package/src/orchestrate/test/structures/IAutoBeTestGenerationWriteApplication.ts +145 -145
  433. package/src/orchestrate/test/structures/IAutoBeTestOperationProcedure.ts +17 -17
  434. package/src/orchestrate/test/structures/IAutoBeTestOperationWriteApplication.ts +162 -162
  435. package/src/orchestrate/test/structures/IAutoBeTestPrepareCorrectOverallApplication.ts +194 -194
  436. package/src/orchestrate/test/structures/IAutoBeTestPrepareProcedure.ts +8 -8
  437. package/src/orchestrate/test/structures/IAutoBeTestPrepareWriteApplication.ts +147 -147
  438. package/src/orchestrate/test/structures/IAutoBeTestProcedure.ts +10 -10
  439. package/src/orchestrate/test/structures/IAutoBeTestScenarioApplication.ts +105 -105
  440. package/src/orchestrate/test/structures/IAutoBeTestScenarioArtifacts.ts +8 -8
  441. package/src/orchestrate/test/structures/IAutoBeTestScenarioAuthorizationActor.ts +7 -7
  442. package/src/orchestrate/test/structures/IAutoBeTestScenarioReviewApplication.ts +133 -133
  443. package/src/orchestrate/test/utils/getPrerequisites.ts +51 -51
  444. package/src/orchestrate/test/utils/getReferenceIds.ts +26 -26
  445. package/src/orchestrate/test/utils/insertScriptToTestResult.ts +14 -14
  446. package/src/structures/IAutoBeConfig.ts +110 -110
  447. package/src/structures/IAutoBeOrchestrateHistory.ts +44 -44
  448. package/src/structures/IAutoBeProps.ts +102 -102
  449. package/src/structures/IAutoBeVendor.ts +113 -113
  450. package/src/utils/AutoBePreliminaryExhaustedError.ts +30 -30
  451. package/src/utils/AutoBeTimeoutError.ts +35 -35
  452. package/src/utils/EmbeddingProvider.ts +4 -4
  453. package/src/utils/LocalEmbeddingProvider.ts +145 -145
  454. package/src/utils/RAGRetrieval.ts +411 -411
  455. package/src/utils/TimedConversation.ts +125 -125
  456. package/src/utils/backoffRetry.ts +169 -169
  457. package/src/utils/divideArray.ts +35 -35
  458. package/src/utils/emplaceMap.ts +31 -31
  459. package/src/utils/executeCachedBatch.ts +67 -67
  460. package/src/utils/forceRetry.ts +15 -15
  461. package/src/utils/getEmbedder.ts +16 -16
  462. package/src/utils/parseTextFunctionCall.ts +437 -437
  463. package/src/utils/predicateStateMessage.ts +131 -131
  464. package/src/utils/validateEmptyCode.ts +73 -73
  465. package/src/utils/validateEnglishOnly.ts +224 -224
  466. package/README.md +0 -261
@@ -1,346 +1,346 @@
1
- import {
2
- AutoBeDatabase,
3
- AutoBeOpenApi,
4
- AutoBePreliminaryKind,
5
- } from "@autobe/interface";
6
- import { AutoBeOpenApiEndpointComparator, StringUtil } from "@autobe/utils";
7
- import { LlmTypeChecker } from "@typia/utils";
8
- import typia, { ILlmApplication, ILlmFunction, ILlmSchema } from "typia";
9
-
10
- import { AutoBeState } from "../../../context/AutoBeState";
11
- import { AutoBePreliminaryController } from "../AutoBePreliminaryController";
12
- import { IAutoBePreliminaryRequest } from "../structures/AutoBePreliminaryRequest";
13
- import { IAnalysisSectionEntry } from "../structures/IAnalysisSectionEntry";
14
- import { IAutoBePreliminaryGetAnalysisSections } from "../structures/IAutoBePreliminaryGetAnalysisSections";
15
- import { IAutoBePreliminaryGetDatabaseSchemas } from "../structures/IAutoBePreliminaryGetDatabaseSchemas";
16
- import { IAutoBePreliminaryGetInterfaceOperations } from "../structures/IAutoBePreliminaryGetInterfaceOperations";
17
- import { IAutoBePreliminaryGetInterfaceSchemas } from "../structures/IAutoBePreliminaryGetInterfaceSchemas";
18
- import { IAutoBePreliminaryGetPreviousAnalysisSections } from "../structures/IAutoBePreliminaryGetPreviousAnalysisSections";
19
- import { IAutoBePreliminaryGetPreviousDatabaseSchemas } from "../structures/IAutoBePreliminaryGetPreviousDatabaseSchemas";
20
- import { IAutoBePreliminaryGetPreviousInterfaceOperations } from "../structures/IAutoBePreliminaryGetPreviousInterfaceOperations";
21
- import { IAutoBePreliminaryGetPreviousInterfaceSchemas } from "../structures/IAutoBePreliminaryGetPreviousInterfaceSchemas";
22
- import { IAutoBePreliminaryGetRealizeCollectors } from "../structures/IAutoBePreliminaryGetRealizeCollectors";
23
- import { IAutoBePreliminaryGetRealizeTransformers } from "../structures/IAutoBePreliminaryGetRealizeTransformers";
24
-
25
- export const fixPreliminaryApplication = <
26
- Kind extends AutoBePreliminaryKind,
27
- >(props: {
28
- state: AutoBeState;
29
- preliminary: AutoBePreliminaryController<Kind>;
30
- application: ILlmApplication;
31
- enumerable: boolean;
32
- }): void => {
33
- if (
34
- props.preliminary.getKinds().some((k) => k.includes("previous")) === false
35
- )
36
- return;
37
-
38
- const func: ILlmFunction | undefined = props.application.functions.find(
39
- (f) => f.name === "process",
40
- );
41
- if (func === undefined) return;
42
-
43
- const request: ILlmSchema | undefined = func.parameters.properties.request;
44
- if (request === undefined) return;
45
-
46
- const eraseKind = (kind: AutoBePreliminaryKind) => {
47
- props.preliminary.getKinds().splice(
48
- props.preliminary.getKinds().indexOf(
49
- // biome-ignore lint: intended
50
- kind as any,
51
- ),
52
- 1,
53
- );
54
- // biome-ignore lint: intended
55
- delete (props.preliminary.getAll() as any)[kind];
56
- // biome-ignore lint: intended
57
- delete (props.preliminary.getLocal() as any)[kind];
58
- };
59
- const eraseMetadata = getUnionErasure({
60
- $defs: func.parameters.$defs,
61
- request,
62
- });
63
- if (eraseMetadata === null) return;
64
-
65
- for (const kind of props.preliminary.getKinds().slice())
66
- if (kind === "previousAnalysisSections") {
67
- if (props.state.previousAnalyze === null) {
68
- eraseMetadata("getPreviousAnalysisSections");
69
- eraseKind(kind);
70
- }
71
- } else if (kind === "previousDatabaseSchemas") {
72
- if (props.state.previousDatabase === null) {
73
- eraseMetadata("getPreviousDatabaseSchemas");
74
- eraseKind(kind);
75
- }
76
- } else if (kind === "previousInterfaceOperations") {
77
- if (props.state.previousInterface === null) {
78
- eraseMetadata("getPreviousInterfaceOperations");
79
- eraseKind(kind);
80
- }
81
- } else if (kind === "previousInterfaceSchemas") {
82
- if (props.state.previousInterface === null) {
83
- eraseMetadata("getPreviousInterfaceSchemas");
84
- eraseKind(kind);
85
- }
86
- }
87
-
88
- for (const kind of props.preliminary.getKinds()) {
89
- const accessor: Exclude<AutoBePreliminaryKind, `previous${string}`> = (
90
- kind.startsWith("previous")
91
- ? (() => {
92
- const value = kind.replace("previous", "");
93
- return value[0].toLowerCase() + value.substring(1);
94
- })()
95
- : kind
96
- ) as Exclude<AutoBePreliminaryKind, `previous${string}`>;
97
- if (
98
- props.enumerable === false &&
99
- accessor !== "analysisSections" &&
100
- accessor !== "databaseSchemas"
101
- )
102
- continue;
103
- ApplicationFixer[accessor]({
104
- $defs: func.parameters.$defs,
105
- // biome-ignore lint: intended
106
- controller: props.preliminary as any,
107
- previous: kind.startsWith("previous"),
108
- });
109
- }
110
- };
111
-
112
- const getUnionErasure = (props: {
113
- $defs: Record<string, ILlmSchema>;
114
- request: ILlmSchema;
115
- }) => {
116
- if (LlmTypeChecker.isAnyOf(props.request) === false) return null;
117
- else if (
118
- props.request.anyOf.some((s) => LlmTypeChecker.isReference(s) === false)
119
- )
120
- return null;
121
-
122
- const children: ILlmSchema.IReference[] = props.request
123
- .anyOf as ILlmSchema.IReference[];
124
- const mapping: Record<string, string> =
125
- props.request["x-discriminator"]?.mapping ?? {};
126
-
127
- return (
128
- key: IAutoBePreliminaryRequest<
129
- Extract<AutoBePreliminaryKind, `previous${string}`>
130
- >["request"]["type"],
131
- ): void => {
132
- const type: string = `IAutoBePreliminary${key[0].toUpperCase()}${key.substring(1)}`;
133
- const index: number = children.findIndex((c) =>
134
- c.$ref.endsWith(`/${type}`),
135
- );
136
- if (index !== -1) children.splice(index, 1);
137
- delete props.$defs[key];
138
- delete mapping[key];
139
- };
140
- };
141
-
142
- namespace ApplicationFixer {
143
- export const analysisSections = (props: {
144
- $defs: Record<string, ILlmSchema>;
145
- controller: AutoBePreliminaryController<
146
- "analysisSections" | "previousAnalysisSections"
147
- >;
148
- previous: boolean;
149
- }): void => {
150
- const sections: IAnalysisSectionEntry[] =
151
- props.controller.getAll()[
152
- props.previous ? "previousAnalysisSections" : "analysisSections"
153
- ];
154
- if (sections.length === 0) return;
155
-
156
- const type: ILlmSchema.IObject = props.$defs[
157
- props.previous
158
- ? typia.reflect.name<IAutoBePreliminaryGetPreviousAnalysisSections>()
159
- : typia.reflect.name<IAutoBePreliminaryGetAnalysisSections>()
160
- ] as ILlmSchema.IObject;
161
- if (type === undefined) return;
162
-
163
- const array: ILlmSchema | undefined = type.properties.sectionIds;
164
- if (array === undefined) return;
165
- else if (LlmTypeChecker.isArray(array) === false) return;
166
- // describe(
167
- // array,
168
- // StringUtil.trim`
169
- // Here is the catalog of analysis sections available for retrieval:
170
-
171
- // ID | File | Unit | Section | Keywords
172
- // ---|------|------|---------|----------
173
- // ${sections
174
- // .map(
175
- // (s) =>
176
- // `${s.id} | ${s.filename} | ${s.unitTitle} | ${s.sectionTitle} | ${s.keywords.join(", ")}`,
177
- // )
178
- // .join("\n")}
179
- // `,
180
- // );
181
-
182
- const items: ILlmSchema = array.items;
183
- if (LlmTypeChecker.isInteger(items) === false) return;
184
-
185
- items.minimum = Math.min(...sections.map((s) => s.id));
186
- items.maximum = Math.max(...sections.map((s) => s.id));
187
- };
188
-
189
- export const databaseSchemas = (props: {
190
- $defs: Record<string, ILlmSchema>;
191
- controller: AutoBePreliminaryController<
192
- "databaseSchemas" | "previousDatabaseSchemas"
193
- >;
194
- previous: boolean;
195
- }): void => {
196
- const schemas: AutoBeDatabase.IModel[] =
197
- props.controller.getAll()[
198
- props.previous ? "previousDatabaseSchemas" : "databaseSchemas"
199
- ];
200
- if (schemas.length === 0) return;
201
-
202
- const type: ILlmSchema.IObject = props.$defs[
203
- props.previous
204
- ? typia.reflect.name<IAutoBePreliminaryGetPreviousDatabaseSchemas>()
205
- : typia.reflect.name<IAutoBePreliminaryGetDatabaseSchemas>()
206
- ] as ILlmSchema.IObject;
207
- if (type === undefined) return;
208
- describe(
209
- type.properties.schemaNames,
210
- StringUtil.trim`
211
- Here is the list of database schemas available for retrieval:
212
-
213
- ${schemas
214
- .slice()
215
- .sort((a, b) => a.name.localeCompare(b.name))
216
- .map((s) => `- ${s.name}`)
217
- .join("\n")}
218
- `,
219
- );
220
- };
221
-
222
- export const interfaceOperations = (props: {
223
- $defs: Record<string, ILlmSchema>;
224
- controller: AutoBePreliminaryController<
225
- "interfaceOperations" | "previousInterfaceOperations"
226
- >;
227
- previous: boolean;
228
- }): void => {
229
- const operations: AutoBeOpenApi.IOperation[] =
230
- props.controller.getAll()[
231
- props.previous ? "previousInterfaceOperations" : "interfaceOperations"
232
- ];
233
- if (operations.length === 0) return;
234
-
235
- const type: ILlmSchema.IObject = props.$defs[
236
- props.previous
237
- ? typia.reflect.name<IAutoBePreliminaryGetPreviousInterfaceOperations>()
238
- : typia.reflect.name<IAutoBePreliminaryGetInterfaceOperations>()
239
- ] as ILlmSchema.IObject;
240
- if (type === undefined) return;
241
- describe(
242
- type.properties.endpoints,
243
- StringUtil.trim`
244
- Here is the list of interface operations available for retrieval:
245
-
246
- path | method
247
- ---- | ------
248
- ${operations
249
- .slice()
250
- .sort(AutoBeOpenApiEndpointComparator.compare)
251
- .map((o) => ` ${o.path} | ${o.method}`)
252
- .join("\n")}
253
- `,
254
- );
255
- };
256
-
257
- export const interfaceSchemas = (props: {
258
- $defs: Record<string, ILlmSchema>;
259
- controller: AutoBePreliminaryController<
260
- "interfaceSchemas" | "previousInterfaceSchemas"
261
- >;
262
- previous: boolean;
263
- }): void => {
264
- const dtoTypeNames: string[] = Object.keys(
265
- props.controller.getAll()[
266
- props.previous ? "previousInterfaceSchemas" : "interfaceSchemas"
267
- ] satisfies Record<string, AutoBeOpenApi.IJsonSchema>,
268
- );
269
- if (dtoTypeNames.length === 0) return;
270
-
271
- const type: ILlmSchema.IObject = props.$defs[
272
- props.previous
273
- ? typia.reflect.name<IAutoBePreliminaryGetPreviousInterfaceSchemas>()
274
- : typia.reflect.name<IAutoBePreliminaryGetInterfaceSchemas>()
275
- ] as ILlmSchema.IObject;
276
- if (type === undefined) return;
277
- describe(
278
- type.properties.typeNames,
279
- StringUtil.trim`
280
- Here is the list of interface schemas available for retrieval:
281
-
282
- ${dtoTypeNames
283
- .slice()
284
- .sort((a, b) => a.localeCompare(b))
285
- .map((name) => `- ${name}`)
286
- .join("\n")}
287
- `,
288
- );
289
- };
290
-
291
- export const realizeCollectors = (props: {
292
- $defs: Record<string, ILlmSchema>;
293
- controller: AutoBePreliminaryController<"realizeCollectors">;
294
- }): void => {
295
- if (props.controller.getAll().realizeCollectors.length === 0) return;
296
-
297
- const type: ILlmSchema.IObject = props.$defs[
298
- typia.reflect.name<IAutoBePreliminaryGetRealizeCollectors>()
299
- ] as ILlmSchema.IObject;
300
- if (type === undefined) return;
301
- describe(
302
- type.properties.dtoTypeNames,
303
- StringUtil.trim`
304
- Here is the list of DTO types available for realize collectors:
305
-
306
- ${props.controller
307
- .getAll()
308
- .realizeCollectors.slice()
309
- .sort((a, b) => a.plan.dtoTypeName.localeCompare(b.plan.dtoTypeName))
310
- .map((x) => `- ${x.plan.dtoTypeName}`)
311
- .join("\n")}
312
- `,
313
- );
314
- };
315
-
316
- export const realizeTransformers = (props: {
317
- $defs: Record<string, ILlmSchema>;
318
- controller: AutoBePreliminaryController<"realizeTransformers">;
319
- }): void => {
320
- if (props.controller.getAll().realizeTransformers.length === 0) return;
321
-
322
- const type: ILlmSchema.IObject = props.$defs[
323
- typia.reflect.name<IAutoBePreliminaryGetRealizeTransformers>()
324
- ] as ILlmSchema.IObject;
325
- if (type === undefined) return;
326
- describe(
327
- type.properties.dtoTypeNames,
328
- StringUtil.trim`
329
- Here is the list of DTO types available for realize transformers:
330
-
331
- ${props.controller
332
- .getAll()
333
- .realizeTransformers.slice()
334
- .sort((a, b) => a.plan.dtoTypeName.localeCompare(b.plan.dtoTypeName))
335
- .map((x) => `- ${x.plan.dtoTypeName}`)
336
- .join("\n")}
337
- `,
338
- );
339
- };
340
- }
341
-
342
- const describe = (schema: ILlmSchema, content: string): void => {
343
- schema.description ??= "";
344
- if (schema.description.length > 0) schema.description += "\n\n";
345
- schema.description += content;
346
- };
1
+ import {
2
+ AutoBeDatabase,
3
+ AutoBeOpenApi,
4
+ AutoBePreliminaryKind,
5
+ } from "@autobe/interface";
6
+ import { AutoBeOpenApiEndpointComparator, StringUtil } from "@autobe/utils";
7
+ import { LlmTypeChecker } from "@typia/utils";
8
+ import typia, { ILlmApplication, ILlmFunction, ILlmSchema } from "typia";
9
+
10
+ import { AutoBeState } from "../../../context/AutoBeState";
11
+ import { AutoBePreliminaryController } from "../AutoBePreliminaryController";
12
+ import { IAutoBePreliminaryRequest } from "../structures/AutoBePreliminaryRequest";
13
+ import { IAnalysisSectionEntry } from "../structures/IAnalysisSectionEntry";
14
+ import { IAutoBePreliminaryGetAnalysisSections } from "../structures/IAutoBePreliminaryGetAnalysisSections";
15
+ import { IAutoBePreliminaryGetDatabaseSchemas } from "../structures/IAutoBePreliminaryGetDatabaseSchemas";
16
+ import { IAutoBePreliminaryGetInterfaceOperations } from "../structures/IAutoBePreliminaryGetInterfaceOperations";
17
+ import { IAutoBePreliminaryGetInterfaceSchemas } from "../structures/IAutoBePreliminaryGetInterfaceSchemas";
18
+ import { IAutoBePreliminaryGetPreviousAnalysisSections } from "../structures/IAutoBePreliminaryGetPreviousAnalysisSections";
19
+ import { IAutoBePreliminaryGetPreviousDatabaseSchemas } from "../structures/IAutoBePreliminaryGetPreviousDatabaseSchemas";
20
+ import { IAutoBePreliminaryGetPreviousInterfaceOperations } from "../structures/IAutoBePreliminaryGetPreviousInterfaceOperations";
21
+ import { IAutoBePreliminaryGetPreviousInterfaceSchemas } from "../structures/IAutoBePreliminaryGetPreviousInterfaceSchemas";
22
+ import { IAutoBePreliminaryGetRealizeCollectors } from "../structures/IAutoBePreliminaryGetRealizeCollectors";
23
+ import { IAutoBePreliminaryGetRealizeTransformers } from "../structures/IAutoBePreliminaryGetRealizeTransformers";
24
+
25
+ export const fixPreliminaryApplication = <
26
+ Kind extends AutoBePreliminaryKind,
27
+ >(props: {
28
+ state: AutoBeState;
29
+ preliminary: AutoBePreliminaryController<Kind>;
30
+ application: ILlmApplication;
31
+ enumerable: boolean;
32
+ }): void => {
33
+ if (
34
+ props.preliminary.getKinds().some((k) => k.includes("previous")) === false
35
+ )
36
+ return;
37
+
38
+ const func: ILlmFunction | undefined = props.application.functions.find(
39
+ (f) => f.name === "process",
40
+ );
41
+ if (func === undefined) return;
42
+
43
+ const request: ILlmSchema | undefined = func.parameters.properties.request;
44
+ if (request === undefined) return;
45
+
46
+ const eraseKind = (kind: AutoBePreliminaryKind) => {
47
+ props.preliminary.getKinds().splice(
48
+ props.preliminary.getKinds().indexOf(
49
+ // biome-ignore lint: intended
50
+ kind as any,
51
+ ),
52
+ 1,
53
+ );
54
+ // biome-ignore lint: intended
55
+ delete (props.preliminary.getAll() as any)[kind];
56
+ // biome-ignore lint: intended
57
+ delete (props.preliminary.getLocal() as any)[kind];
58
+ };
59
+ const eraseMetadata = getUnionErasure({
60
+ $defs: func.parameters.$defs,
61
+ request,
62
+ });
63
+ if (eraseMetadata === null) return;
64
+
65
+ for (const kind of props.preliminary.getKinds().slice())
66
+ if (kind === "previousAnalysisSections") {
67
+ if (props.state.previousAnalyze === null) {
68
+ eraseMetadata("getPreviousAnalysisSections");
69
+ eraseKind(kind);
70
+ }
71
+ } else if (kind === "previousDatabaseSchemas") {
72
+ if (props.state.previousDatabase === null) {
73
+ eraseMetadata("getPreviousDatabaseSchemas");
74
+ eraseKind(kind);
75
+ }
76
+ } else if (kind === "previousInterfaceOperations") {
77
+ if (props.state.previousInterface === null) {
78
+ eraseMetadata("getPreviousInterfaceOperations");
79
+ eraseKind(kind);
80
+ }
81
+ } else if (kind === "previousInterfaceSchemas") {
82
+ if (props.state.previousInterface === null) {
83
+ eraseMetadata("getPreviousInterfaceSchemas");
84
+ eraseKind(kind);
85
+ }
86
+ }
87
+
88
+ for (const kind of props.preliminary.getKinds()) {
89
+ const accessor: Exclude<AutoBePreliminaryKind, `previous${string}`> = (
90
+ kind.startsWith("previous")
91
+ ? (() => {
92
+ const value = kind.replace("previous", "");
93
+ return value[0].toLowerCase() + value.substring(1);
94
+ })()
95
+ : kind
96
+ ) as Exclude<AutoBePreliminaryKind, `previous${string}`>;
97
+ if (
98
+ props.enumerable === false &&
99
+ accessor !== "analysisSections" &&
100
+ accessor !== "databaseSchemas"
101
+ )
102
+ continue;
103
+ ApplicationFixer[accessor]({
104
+ $defs: func.parameters.$defs,
105
+ // biome-ignore lint: intended
106
+ controller: props.preliminary as any,
107
+ previous: kind.startsWith("previous"),
108
+ });
109
+ }
110
+ };
111
+
112
+ const getUnionErasure = (props: {
113
+ $defs: Record<string, ILlmSchema>;
114
+ request: ILlmSchema;
115
+ }) => {
116
+ if (LlmTypeChecker.isAnyOf(props.request) === false) return null;
117
+ else if (
118
+ props.request.anyOf.some((s) => LlmTypeChecker.isReference(s) === false)
119
+ )
120
+ return null;
121
+
122
+ const children: ILlmSchema.IReference[] = props.request
123
+ .anyOf as ILlmSchema.IReference[];
124
+ const mapping: Record<string, string> =
125
+ props.request["x-discriminator"]?.mapping ?? {};
126
+
127
+ return (
128
+ key: IAutoBePreliminaryRequest<
129
+ Extract<AutoBePreliminaryKind, `previous${string}`>
130
+ >["request"]["type"],
131
+ ): void => {
132
+ const type: string = `IAutoBePreliminary${key[0].toUpperCase()}${key.substring(1)}`;
133
+ const index: number = children.findIndex((c) =>
134
+ c.$ref.endsWith(`/${type}`),
135
+ );
136
+ if (index !== -1) children.splice(index, 1);
137
+ delete props.$defs[key];
138
+ delete mapping[key];
139
+ };
140
+ };
141
+
142
+ namespace ApplicationFixer {
143
+ export const analysisSections = (props: {
144
+ $defs: Record<string, ILlmSchema>;
145
+ controller: AutoBePreliminaryController<
146
+ "analysisSections" | "previousAnalysisSections"
147
+ >;
148
+ previous: boolean;
149
+ }): void => {
150
+ const sections: IAnalysisSectionEntry[] =
151
+ props.controller.getAll()[
152
+ props.previous ? "previousAnalysisSections" : "analysisSections"
153
+ ];
154
+ if (sections.length === 0) return;
155
+
156
+ const type: ILlmSchema.IObject = props.$defs[
157
+ props.previous
158
+ ? typia.reflect.name<IAutoBePreliminaryGetPreviousAnalysisSections>()
159
+ : typia.reflect.name<IAutoBePreliminaryGetAnalysisSections>()
160
+ ] as ILlmSchema.IObject;
161
+ if (type === undefined) return;
162
+
163
+ const array: ILlmSchema | undefined = type.properties.sectionIds;
164
+ if (array === undefined) return;
165
+ else if (LlmTypeChecker.isArray(array) === false) return;
166
+ // describe(
167
+ // array,
168
+ // StringUtil.trim`
169
+ // Here is the catalog of analysis sections available for retrieval:
170
+
171
+ // ID | File | Unit | Section | Keywords
172
+ // ---|------|------|---------|----------
173
+ // ${sections
174
+ // .map(
175
+ // (s) =>
176
+ // `${s.id} | ${s.filename} | ${s.unitTitle} | ${s.sectionTitle} | ${s.keywords.join(", ")}`,
177
+ // )
178
+ // .join("\n")}
179
+ // `,
180
+ // );
181
+
182
+ const items: ILlmSchema = array.items;
183
+ if (LlmTypeChecker.isInteger(items) === false) return;
184
+
185
+ items.minimum = Math.min(...sections.map((s) => s.id));
186
+ items.maximum = Math.max(...sections.map((s) => s.id));
187
+ };
188
+
189
+ export const databaseSchemas = (props: {
190
+ $defs: Record<string, ILlmSchema>;
191
+ controller: AutoBePreliminaryController<
192
+ "databaseSchemas" | "previousDatabaseSchemas"
193
+ >;
194
+ previous: boolean;
195
+ }): void => {
196
+ const schemas: AutoBeDatabase.IModel[] =
197
+ props.controller.getAll()[
198
+ props.previous ? "previousDatabaseSchemas" : "databaseSchemas"
199
+ ];
200
+ if (schemas.length === 0) return;
201
+
202
+ const type: ILlmSchema.IObject = props.$defs[
203
+ props.previous
204
+ ? typia.reflect.name<IAutoBePreliminaryGetPreviousDatabaseSchemas>()
205
+ : typia.reflect.name<IAutoBePreliminaryGetDatabaseSchemas>()
206
+ ] as ILlmSchema.IObject;
207
+ if (type === undefined) return;
208
+ describe(
209
+ type.properties.schemaNames,
210
+ StringUtil.trim`
211
+ Here is the list of database schemas available for retrieval:
212
+
213
+ ${schemas
214
+ .slice()
215
+ .sort((a, b) => a.name.localeCompare(b.name))
216
+ .map((s) => `- ${s.name}`)
217
+ .join("\n")}
218
+ `,
219
+ );
220
+ };
221
+
222
+ export const interfaceOperations = (props: {
223
+ $defs: Record<string, ILlmSchema>;
224
+ controller: AutoBePreliminaryController<
225
+ "interfaceOperations" | "previousInterfaceOperations"
226
+ >;
227
+ previous: boolean;
228
+ }): void => {
229
+ const operations: AutoBeOpenApi.IOperation[] =
230
+ props.controller.getAll()[
231
+ props.previous ? "previousInterfaceOperations" : "interfaceOperations"
232
+ ];
233
+ if (operations.length === 0) return;
234
+
235
+ const type: ILlmSchema.IObject = props.$defs[
236
+ props.previous
237
+ ? typia.reflect.name<IAutoBePreliminaryGetPreviousInterfaceOperations>()
238
+ : typia.reflect.name<IAutoBePreliminaryGetInterfaceOperations>()
239
+ ] as ILlmSchema.IObject;
240
+ if (type === undefined) return;
241
+ describe(
242
+ type.properties.endpoints,
243
+ StringUtil.trim`
244
+ Here is the list of interface operations available for retrieval:
245
+
246
+ path | method
247
+ ---- | ------
248
+ ${operations
249
+ .slice()
250
+ .sort(AutoBeOpenApiEndpointComparator.compare)
251
+ .map((o) => ` ${o.path} | ${o.method}`)
252
+ .join("\n")}
253
+ `,
254
+ );
255
+ };
256
+
257
+ export const interfaceSchemas = (props: {
258
+ $defs: Record<string, ILlmSchema>;
259
+ controller: AutoBePreliminaryController<
260
+ "interfaceSchemas" | "previousInterfaceSchemas"
261
+ >;
262
+ previous: boolean;
263
+ }): void => {
264
+ const dtoTypeNames: string[] = Object.keys(
265
+ props.controller.getAll()[
266
+ props.previous ? "previousInterfaceSchemas" : "interfaceSchemas"
267
+ ] satisfies Record<string, AutoBeOpenApi.IJsonSchema>,
268
+ );
269
+ if (dtoTypeNames.length === 0) return;
270
+
271
+ const type: ILlmSchema.IObject = props.$defs[
272
+ props.previous
273
+ ? typia.reflect.name<IAutoBePreliminaryGetPreviousInterfaceSchemas>()
274
+ : typia.reflect.name<IAutoBePreliminaryGetInterfaceSchemas>()
275
+ ] as ILlmSchema.IObject;
276
+ if (type === undefined) return;
277
+ describe(
278
+ type.properties.typeNames,
279
+ StringUtil.trim`
280
+ Here is the list of interface schemas available for retrieval:
281
+
282
+ ${dtoTypeNames
283
+ .slice()
284
+ .sort((a, b) => a.localeCompare(b))
285
+ .map((name) => `- ${name}`)
286
+ .join("\n")}
287
+ `,
288
+ );
289
+ };
290
+
291
+ export const realizeCollectors = (props: {
292
+ $defs: Record<string, ILlmSchema>;
293
+ controller: AutoBePreliminaryController<"realizeCollectors">;
294
+ }): void => {
295
+ if (props.controller.getAll().realizeCollectors.length === 0) return;
296
+
297
+ const type: ILlmSchema.IObject = props.$defs[
298
+ typia.reflect.name<IAutoBePreliminaryGetRealizeCollectors>()
299
+ ] as ILlmSchema.IObject;
300
+ if (type === undefined) return;
301
+ describe(
302
+ type.properties.dtoTypeNames,
303
+ StringUtil.trim`
304
+ Here is the list of DTO types available for realize collectors:
305
+
306
+ ${props.controller
307
+ .getAll()
308
+ .realizeCollectors.slice()
309
+ .sort((a, b) => a.plan.dtoTypeName.localeCompare(b.plan.dtoTypeName))
310
+ .map((x) => `- ${x.plan.dtoTypeName}`)
311
+ .join("\n")}
312
+ `,
313
+ );
314
+ };
315
+
316
+ export const realizeTransformers = (props: {
317
+ $defs: Record<string, ILlmSchema>;
318
+ controller: AutoBePreliminaryController<"realizeTransformers">;
319
+ }): void => {
320
+ if (props.controller.getAll().realizeTransformers.length === 0) return;
321
+
322
+ const type: ILlmSchema.IObject = props.$defs[
323
+ typia.reflect.name<IAutoBePreliminaryGetRealizeTransformers>()
324
+ ] as ILlmSchema.IObject;
325
+ if (type === undefined) return;
326
+ describe(
327
+ type.properties.dtoTypeNames,
328
+ StringUtil.trim`
329
+ Here is the list of DTO types available for realize transformers:
330
+
331
+ ${props.controller
332
+ .getAll()
333
+ .realizeTransformers.slice()
334
+ .sort((a, b) => a.plan.dtoTypeName.localeCompare(b.plan.dtoTypeName))
335
+ .map((x) => `- ${x.plan.dtoTypeName}`)
336
+ .join("\n")}
337
+ `,
338
+ );
339
+ };
340
+ }
341
+
342
+ const describe = (schema: ILlmSchema, content: string): void => {
343
+ schema.description ??= "";
344
+ if (schema.description.length > 0) schema.description += "\n\n";
345
+ schema.description += content;
346
+ };