@autobe/agent 0.25.7 → 0.27.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.
- package/lib/AutoBeAgent.d.ts +2 -1
- package/lib/AutoBeAgent.js +30 -7
- package/lib/AutoBeAgent.js.map +1 -1
- package/lib/AutoBeMockAgent.js +13 -12
- package/lib/AutoBeMockAgent.js.map +1 -1
- package/lib/constants/AutoBeSystemPromptConstant.d.ts +27 -20
- package/lib/constants/AutoBeSystemPromptConstant.js.map +1 -1
- package/lib/context/AutoBeContext.d.ts +4 -1
- package/lib/context/AutoBeTokenUsage.d.ts +1 -1
- package/lib/context/AutoBeTokenUsage.js.map +1 -1
- package/lib/factory/AutoBeFunctionCallingMetricFactory.d.ts +7 -0
- package/lib/factory/AutoBeFunctionCallingMetricFactory.js +35 -0
- package/lib/factory/AutoBeFunctionCallingMetricFactory.js.map +1 -0
- package/lib/factory/AutoBeProcessAggregateFactory.d.ts +13 -0
- package/lib/factory/AutoBeProcessAggregateFactory.js +100 -0
- package/lib/factory/AutoBeProcessAggregateFactory.js.map +1 -0
- package/lib/factory/consentFunctionCall.js +3 -0
- package/lib/factory/consentFunctionCall.js.map +1 -1
- package/lib/factory/createAutoBeContext.d.ts +2 -1
- package/lib/factory/createAutoBeContext.js +82 -28
- package/lib/factory/createAutoBeContext.js.map +1 -1
- package/lib/factory/getCommonPrompt.d.ts +2 -0
- package/lib/factory/getCommonPrompt.js +20 -0
- package/lib/factory/getCommonPrompt.js.map +1 -0
- package/lib/index.mjs +20929 -19874
- package/lib/index.mjs.map +1 -1
- package/lib/orchestrate/analyze/histories/transformAnalyzeReviewHistories.js +1 -1
- package/lib/orchestrate/analyze/histories/transformAnalyzeReviewHistories.js.map +1 -1
- package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.js +2 -2
- package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.js.map +1 -1
- package/lib/orchestrate/analyze/histories/transformAnalyzeWriteHistories.js +6 -6
- package/lib/orchestrate/analyze/histories/transformAnalyzeWriteHistories.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyze.js +2 -1
- package/lib/orchestrate/analyze/orchestrateAnalyze.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeReview.js +2 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeReview.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js +75 -74
- package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeWrite.js +5 -4
- package/lib/orchestrate/analyze/orchestrateAnalyzeWrite.js.map +1 -1
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioApplication.d.ts +9 -9
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeWriteApplication.d.ts +1 -1
- package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistories.js +2 -17
- package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistories.js.map +1 -1
- package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistories.d.ts +6 -0
- package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistories.js +58 -0
- package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistories.js.map +1 -0
- package/lib/orchestrate/common/orchestrateCommonCorrectCasting.d.ts +2 -1
- package/lib/orchestrate/common/orchestrateCommonCorrectCasting.js +3 -2
- package/lib/orchestrate/common/orchestrateCommonCorrectCasting.js.map +1 -1
- package/lib/{factory/createAutoBeApplication.d.ts → orchestrate/facade/createAutoBeFacadeController.d.ts} +2 -2
- package/lib/{factory/createAutoBeApplication.js → orchestrate/facade/createAutoBeFacadeController.js} +53 -57
- package/lib/orchestrate/facade/createAutoBeFacadeController.js.map +1 -0
- package/lib/orchestrate/facade/histories/IAutoBeFacadeApplication.js.map +1 -0
- package/lib/orchestrate/facade/histories/IAutoBeFacadeApplicationProps.js.map +1 -0
- package/lib/orchestrate/facade/histories/IAutoBeFacadeApplicationResult.js.map +1 -0
- package/lib/orchestrate/facade/{transformFacadeStateMessage.d.ts → structures/transformFacadeStateMessage.d.ts} +1 -1
- package/lib/orchestrate/facade/structures/transformFacadeStateMessage.js +46 -0
- package/lib/orchestrate/facade/structures/transformFacadeStateMessage.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.d.ts +2 -2
- package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.js +8 -8
- package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.js +3 -3
- package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.js +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.js +3 -2
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.js +2 -2
- package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.js +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.js +2 -2
- package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.d.ts +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.js +46 -20
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.d.ts +5 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.js +51 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.d.ts +11 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.js +81 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.js.map +1 -0
- package/lib/orchestrate/interface/orchestrateInterface.d.ts +1 -1
- package/lib/orchestrate/interface/orchestrateInterface.js +33 -6
- package/lib/orchestrate/interface/orchestrateInterface.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceAuthorizations.js +185 -97
- package/lib/orchestrate/interface/orchestrateInterfaceAuthorizations.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceComplement.js +234 -59
- package/lib/orchestrate/interface/orchestrateInterfaceComplement.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js +5 -4
- package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.d.ts +0 -6
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.js +4 -4
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceGroups.d.ts +2 -2
- package/lib/orchestrate/interface/orchestrateInterfaceGroups.js +4 -3
- package/lib/orchestrate/interface/orchestrateInterfaceGroups.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceOperations.js +178 -90
- package/lib/orchestrate/interface/orchestrateInterfaceOperations.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceOperationsReview.js +176 -88
- package/lib/orchestrate/interface/orchestrateInterfaceOperationsReview.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfacePrerequisites.js +6 -5
- package/lib/orchestrate/interface/orchestrateInterfacePrerequisites.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaRename.d.ts +7 -0
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaRename.js +445 -0
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaRename.js.map +1 -0
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.d.ts +14 -0
- package/lib/orchestrate/interface/{orchestrateInterfaceSchemasReview.js → orchestrateInterfaceSchemaReview.js} +302 -121
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.js.map +1 -0
- package/lib/orchestrate/interface/orchestrateInterfaceSchemas.js +243 -65
- package/lib/orchestrate/interface/orchestrateInterfaceSchemas.js.map +1 -1
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.d.ts +22 -22
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationsReviewApplication.d.ts +7 -7
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaContentReviewApplication.d.ts +101 -0
- package/lib/orchestrate/interface/structures/{IAutobeInterfaceSchemasReviewApplication.js → IAutoBeInterfaceSchemaContentReviewApplication.js} +1 -1
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaContentReviewApplication.js.map +1 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRelationReviewApplication.d.ts +97 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRelationReviewApplication.js +3 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRelationReviewApplication.js.map +1 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRenameApplication.d.ts +44 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRenameApplication.js +3 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRenameApplication.js.map +1 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaSecurityReviewApplication.d.ts +92 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaSecurityReviewApplication.js +3 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaSecurityReviewApplication.js.map +1 -0
- package/lib/orchestrate/interface/utils/JsonSchemaFactory.js +65 -24
- package/lib/orchestrate/interface/utils/JsonSchemaFactory.js.map +1 -1
- package/lib/orchestrate/interface/utils/JsonSchemaValidator.js +94 -0
- package/lib/orchestrate/interface/utils/JsonSchemaValidator.js.map +1 -1
- package/lib/orchestrate/interface/utils/OperationValidator.d.ts +1 -1
- package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistories.js +13 -13
- package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistories.js.map +1 -1
- package/lib/orchestrate/prisma/histories/transformPrismaReviewHistories.js +1 -1
- package/lib/orchestrate/prisma/histories/transformPrismaReviewHistories.js.map +1 -1
- package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistories.js +1 -1
- package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistories.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrisma.d.ts +1 -1
- package/lib/orchestrate/prisma/orchestratePrisma.js +1 -0
- package/lib/orchestrate/prisma/orchestratePrisma.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaComponent.d.ts +2 -2
- package/lib/orchestrate/prisma/orchestratePrismaComponent.js +4 -3
- package/lib/orchestrate/prisma/orchestratePrismaComponent.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaCorrect.js +2 -1
- package/lib/orchestrate/prisma/orchestratePrismaCorrect.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaReview.js +2 -1
- package/lib/orchestrate/prisma/orchestratePrismaReview.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaSchemas.d.ts +2 -2
- package/lib/orchestrate/prisma/orchestratePrismaSchemas.js +4 -3
- package/lib/orchestrate/prisma/orchestratePrismaSchemas.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeAuthorization.d.ts +2 -2
- package/lib/orchestrate/realize/histories/transformRealizeAuthorization.js +8 -7
- package/lib/orchestrate/realize/histories/transformRealizeAuthorization.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.js +4 -4
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.d.ts +4 -7
- package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.js +8 -18
- package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.d.ts +0 -1
- package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.js +8 -28
- package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.d.ts +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.js +16 -280
- package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeWriteHistories.js +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeWriteHistories.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealize.d.ts +1 -1
- package/lib/orchestrate/realize/orchestrateRealize.js +4 -3
- package/lib/orchestrate/realize/orchestrateRealize.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeAuthorization.js +14 -13
- package/lib/orchestrate/realize/orchestrateRealizeAuthorization.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js +12 -11
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeCorrect.d.ts +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeCorrect.js +46 -24
- package/lib/orchestrate/realize/orchestrateRealizeCorrect.js.map +1 -1
- package/lib/orchestrate/realize/{orchestRateRealizeCorrectCasting.js → orchestrateRealizeCorrectCasting.js} +64 -51
- package/lib/orchestrate/realize/orchestrateRealizeCorrectCasting.js.map +1 -0
- package/lib/orchestrate/realize/orchestrateRealizeWrite.js +2 -1
- package/lib/orchestrate/realize/orchestrateRealizeWrite.js.map +1 -1
- package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationApplication.d.ts +3 -3
- package/lib/orchestrate/realize/utils/AutoBeRealizeAuthorizationReplaceImport.d.ts +2 -2
- package/lib/orchestrate/realize/utils/AutoBeRealizeAuthorizationReplaceImport.js +6 -6
- package/lib/orchestrate/realize/utils/AutoBeRealizeAuthorizationReplaceImport.js.map +1 -1
- package/lib/orchestrate/realize/utils/generateRealizeScenario.js +1 -1
- package/lib/orchestrate/realize/utils/generateRealizeScenario.js.map +1 -1
- package/lib/orchestrate/realize/utils/getRealizeWriteCodeTemplate.js +2 -2
- package/lib/orchestrate/realize/utils/getRealizeWriteCodeTemplate.js.map +1 -1
- package/lib/orchestrate/realize/utils/getRealizeWriteDto.js +1 -1
- package/lib/orchestrate/realize/utils/getRealizeWriteDto.js.map +1 -1
- package/lib/orchestrate/realize/utils/getRealizeWriteInputType.js +2 -2
- package/lib/orchestrate/realize/utils/getRealizeWriteInputType.js.map +1 -1
- package/lib/orchestrate/realize/utils/printErrorHints.js +1 -1
- package/lib/orchestrate/realize/utils/printErrorHints.js.map +1 -1
- package/lib/orchestrate/realize/utils/replaceImportStatements.js +0 -85
- package/lib/orchestrate/realize/utils/replaceImportStatements.js.map +1 -1
- package/lib/orchestrate/test/compile/getTestScenarioArtifacts.js +1 -1
- package/lib/orchestrate/test/compile/getTestScenarioArtifacts.js.map +1 -1
- package/lib/orchestrate/test/histories/transformTestCorrectHistories.js +5 -22
- package/lib/orchestrate/test/histories/transformTestCorrectHistories.js.map +1 -1
- package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.js +10 -10
- package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.js.map +1 -1
- package/lib/orchestrate/test/histories/transformTestScenarioHistories.js +5 -5
- package/lib/orchestrate/test/histories/transformTestScenarioHistories.js.map +1 -1
- package/lib/orchestrate/test/histories/transformTestScenarioReviewHistories.js +2 -2
- package/lib/orchestrate/test/histories/transformTestScenarioReviewHistories.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTest.d.ts +1 -1
- package/lib/orchestrate/test/orchestrateTest.js +2 -1
- package/lib/orchestrate/test/orchestrateTest.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestCorrect.js +5 -1
- package/lib/orchestrate/test/orchestrateTestCorrect.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestCorrectInvalidRequest.js +4 -2
- package/lib/orchestrate/test/orchestrateTestCorrectInvalidRequest.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestScenario.js +28 -27
- package/lib/orchestrate/test/orchestrateTestScenario.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestScenarioReview.js +4 -3
- package/lib/orchestrate/test/orchestrateTestScenarioReview.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestWrite.js +2 -1
- package/lib/orchestrate/test/orchestrateTestWrite.js.map +1 -1
- package/lib/orchestrate/test/structures/{IAutoBeTestScenarioAuthorizationRole.d.ts → IAutoBeTestScenarioAuthorizationActor.d.ts} +1 -1
- package/lib/orchestrate/test/structures/{IAutoBeTestScenarioAuthorizationRole.js → IAutoBeTestScenarioAuthorizationActor.js} +1 -1
- package/lib/orchestrate/test/structures/IAutoBeTestScenarioAuthorizationActor.js.map +1 -0
- package/lib/utils/TokenUsageComputer.d.ts +5 -0
- package/lib/utils/TokenUsageComputer.js +29 -0
- package/lib/utils/TokenUsageComputer.js.map +1 -0
- package/package.json +7 -7
- package/src/AutoBeAgent.ts +43 -6
- package/src/AutoBeMockAgent.ts +13 -12
- package/src/constants/AutoBeSystemPromptConstant.ts +27 -20
- package/src/context/AutoBeContext.ts +8 -0
- package/src/context/AutoBeTokenUsage.ts +1 -1
- package/src/factory/AutoBeFunctionCallingMetricFactory.ts +44 -0
- package/src/factory/AutoBeProcessAggregateFactory.ts +141 -0
- package/src/factory/consentFunctionCall.ts +4 -0
- package/src/factory/createAutoBeContext.ts +101 -37
- package/src/factory/getCommonPrompt.ts +25 -0
- package/src/orchestrate/analyze/histories/transformAnalyzeWriteHistories.ts +5 -5
- package/src/orchestrate/analyze/orchestrateAnalyze.ts +2 -1
- package/src/orchestrate/analyze/orchestrateAnalyzeReview.ts +2 -1
- package/src/orchestrate/analyze/orchestrateAnalyzeScenario.ts +5 -4
- package/src/orchestrate/analyze/orchestrateAnalyzeWrite.ts +3 -2
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioApplication.ts +9 -9
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeWriteApplication.ts +1 -1
- package/src/orchestrate/common/histories/transformCommonCorrectCastingHistories.ts +2 -20
- package/src/orchestrate/common/histories/transformPreviousAndLatestCorrectHistories.ts +65 -0
- package/src/orchestrate/common/orchestrateCommonCorrectCasting.ts +5 -2
- package/src/orchestrate/facade/createAutoBeFacadeController.ts +135 -0
- package/src/orchestrate/facade/{transformFacadeStateMessage.ts → structures/transformFacadeStateMessage.ts} +2 -2
- package/src/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.ts +9 -9
- package/src/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.ts +1 -0
- package/src/orchestrate/interface/histories/transformInterfaceSchemaHistories.ts +45 -20
- package/src/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.ts +55 -0
- package/src/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.ts +90 -0
- package/src/orchestrate/interface/orchestrateInterface.ts +47 -16
- package/src/orchestrate/interface/orchestrateInterfaceAuthorizations.ts +20 -19
- package/src/orchestrate/interface/orchestrateInterfaceComplement.ts +2 -1
- package/src/orchestrate/interface/orchestrateInterfaceEndpoints.ts +7 -6
- package/src/orchestrate/interface/orchestrateInterfaceEndpointsReview.ts +5 -6
- package/src/orchestrate/interface/orchestrateInterfaceGroups.ts +7 -6
- package/src/orchestrate/interface/orchestrateInterfaceOperations.ts +25 -24
- package/src/orchestrate/interface/orchestrateInterfaceOperationsReview.ts +6 -5
- package/src/orchestrate/interface/orchestrateInterfacePrerequisites.ts +4 -3
- package/src/orchestrate/interface/orchestrateInterfaceSchemaRename.ts +270 -0
- package/src/orchestrate/interface/{orchestrateInterfaceSchemasReview.ts → orchestrateInterfaceSchemaReview.ts} +89 -76
- package/src/orchestrate/interface/orchestrateInterfaceSchemas.ts +18 -9
- package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.ts +26 -22
- package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationsReviewApplication.ts +7 -7
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaContentReviewApplication.ts +108 -0
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaRelationReviewApplication.ts +104 -0
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaRenameApplication.ts +45 -0
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaSecurityReviewApplication.ts +99 -0
- package/src/orchestrate/interface/utils/JsonSchemaFactory.ts +45 -3
- package/src/orchestrate/interface/utils/JsonSchemaValidator.ts +110 -0
- package/src/orchestrate/interface/utils/OperationValidator.ts +1 -1
- package/src/orchestrate/prisma/histories/transformPrismaComponentsHistories.ts +12 -12
- package/src/orchestrate/prisma/orchestratePrisma.ts +6 -5
- package/src/orchestrate/prisma/orchestratePrismaComponent.ts +6 -5
- package/src/orchestrate/prisma/orchestratePrismaCorrect.ts +2 -1
- package/src/orchestrate/prisma/orchestratePrismaReview.ts +2 -1
- package/src/orchestrate/prisma/orchestratePrismaSchemas.ts +9 -8
- package/src/orchestrate/realize/histories/transformRealizeAuthorization.ts +8 -7
- package/src/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.ts +4 -4
- package/src/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.ts +14 -28
- package/src/orchestrate/realize/histories/transformRealizeCorrectHistories.ts +13 -30
- package/src/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.ts +20 -285
- package/src/orchestrate/realize/orchestrateRealize.ts +4 -3
- package/src/orchestrate/realize/orchestrateRealizeAuthorization.ts +11 -10
- package/src/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.ts +5 -4
- package/src/orchestrate/realize/orchestrateRealizeCorrect.ts +77 -62
- package/src/orchestrate/realize/{orchestRateRealizeCorrectCasting.ts → orchestrateRealizeCorrectCasting.ts} +92 -90
- package/src/orchestrate/realize/orchestrateRealizeWrite.ts +2 -1
- package/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationApplication.ts +3 -3
- package/src/orchestrate/realize/utils/AutoBeRealizeAuthorizationReplaceImport.ts +10 -7
- package/src/orchestrate/realize/utils/generateRealizeScenario.ts +1 -1
- package/src/orchestrate/realize/utils/getRealizeWriteCodeTemplate.ts +2 -2
- package/src/orchestrate/realize/utils/getRealizeWriteDto.ts +1 -1
- package/src/orchestrate/realize/utils/getRealizeWriteInputType.ts +2 -2
- package/src/orchestrate/realize/utils/printErrorHints.ts +1 -1
- package/src/orchestrate/realize/utils/replaceImportStatements.ts +0 -90
- package/src/orchestrate/test/compile/getTestScenarioArtifacts.ts +1 -1
- package/src/orchestrate/test/histories/transformTestCorrectHistories.ts +6 -24
- package/src/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.ts +10 -10
- package/src/orchestrate/test/histories/transformTestScenarioHistories.ts +12 -10
- package/src/orchestrate/test/orchestrateTest.ts +3 -2
- package/src/orchestrate/test/orchestrateTestCorrect.ts +5 -1
- package/src/orchestrate/test/orchestrateTestCorrectInvalidRequest.ts +4 -2
- package/src/orchestrate/test/orchestrateTestScenario.ts +32 -31
- package/src/orchestrate/test/orchestrateTestScenarioReview.ts +4 -3
- package/src/orchestrate/test/orchestrateTestWrite.ts +2 -1
- package/src/orchestrate/test/structures/{IAutoBeTestScenarioAuthorizationRole.ts → IAutoBeTestScenarioAuthorizationActor.ts} +1 -1
- package/src/utils/TokenUsageComputer.ts +35 -0
- package/lib/context/IAutoBeFacadeApplication.js.map +0 -1
- package/lib/context/IAutoBeFacadeApplicationProps.js.map +0 -1
- package/lib/context/IAutoBeFacadeApplicationResult.js.map +0 -1
- package/lib/factory/createAutoBeApplication.js.map +0 -1
- package/lib/orchestrate/facade/transformFacadeStateMessage.js +0 -46
- package/lib/orchestrate/facade/transformFacadeStateMessage.js.map +0 -1
- package/lib/orchestrate/interface/histories/transformInterfaceSchemasReviewHistories.d.ts +0 -4
- package/lib/orchestrate/interface/histories/transformInterfaceSchemasReviewHistories.js +0 -60
- package/lib/orchestrate/interface/histories/transformInterfaceSchemasReviewHistories.js.map +0 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemasReview.d.ts +0 -9
- package/lib/orchestrate/interface/orchestrateInterfaceSchemasReview.js.map +0 -1
- package/lib/orchestrate/interface/structures/IAutobeInterfaceSchemasReviewApplication.d.ts +0 -91
- package/lib/orchestrate/interface/structures/IAutobeInterfaceSchemasReviewApplication.js.map +0 -1
- package/lib/orchestrate/realize/orchestRateRealizeCorrectCasting.js.map +0 -1
- package/lib/orchestrate/test/structures/IAutoBeTestScenarioAuthorizationRole.js.map +0 -1
- package/src/factory/createAutoBeApplication.ts +0 -123
- package/src/orchestrate/interface/histories/transformInterfaceSchemasReviewHistories.ts +0 -67
- package/src/orchestrate/interface/structures/IAutobeInterfaceSchemasReviewApplication.ts +0 -96
- /package/lib/{context → orchestrate/facade/histories}/IAutoBeFacadeApplication.d.ts +0 -0
- /package/lib/{context → orchestrate/facade/histories}/IAutoBeFacadeApplication.js +0 -0
- /package/lib/{context → orchestrate/facade/histories}/IAutoBeFacadeApplicationProps.d.ts +0 -0
- /package/lib/{context → orchestrate/facade/histories}/IAutoBeFacadeApplicationProps.js +0 -0
- /package/lib/{context → orchestrate/facade/histories}/IAutoBeFacadeApplicationResult.d.ts +0 -0
- /package/lib/{context → orchestrate/facade/histories}/IAutoBeFacadeApplicationResult.js +0 -0
- /package/lib/orchestrate/realize/{orchestRateRealizeCorrectCasting.d.ts → orchestrateRealizeCorrectCasting.d.ts} +0 -0
- /package/src/{context → orchestrate/facade/histories}/IAutoBeFacadeApplication.ts +0 -0
- /package/src/{context → orchestrate/facade/histories}/IAutoBeFacadeApplicationProps.ts +0 -0
- /package/src/{context → orchestrate/facade/histories}/IAutoBeFacadeApplicationResult.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrateInterfaceOperationsReview.js","sourceRoot":"","sources":["../../../src/orchestrate/interface/orchestrateInterfaceOperationsReview.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiBA,
|
|
1
|
+
{"version":3,"file":"orchestrateInterfaceOperationsReview.js","sourceRoot":"","sources":["../../../src/orchestrate/interface/orchestrateInterfaceOperationsReview.ts"],"names":[],"mappings":"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"}
|
|
@@ -112,8 +112,8 @@ function divideAndConquer(ctx, props) {
|
|
|
112
112
|
value: null,
|
|
113
113
|
};
|
|
114
114
|
try {
|
|
115
|
-
const { tokenUsage } = yield ctx.conversate({
|
|
116
|
-
source: "
|
|
115
|
+
const { metric, tokenUsage } = yield ctx.conversate({
|
|
116
|
+
source: "interfacePrerequisite",
|
|
117
117
|
controller: createController({
|
|
118
118
|
model: ctx.model,
|
|
119
119
|
document: props.document,
|
|
@@ -133,9 +133,10 @@ function divideAndConquer(ctx, props) {
|
|
|
133
133
|
return [];
|
|
134
134
|
props.progress.completed += pointer.value.length;
|
|
135
135
|
ctx.dispatch({
|
|
136
|
-
type: "
|
|
136
|
+
type: "interfacePrerequisite",
|
|
137
137
|
id: (0, uuid_1.v7)(),
|
|
138
138
|
created_at: new Date().toISOString(),
|
|
139
|
+
metric,
|
|
139
140
|
tokenUsage,
|
|
140
141
|
operations: pointer.value,
|
|
141
142
|
total: props.progress.total,
|
|
@@ -382,7 +383,7 @@ const collection = {
|
|
|
382
383
|
]
|
|
383
384
|
},
|
|
384
385
|
"AutoBeOpenApi.IPrerequisite": {
|
|
385
|
-
description: "Prerequisite API operation dependency.\n\n`IPrerequisite` defines a dependency relationship between API operations,\nspecifying that certain endpoints must be successfully called before the\ncurrent operation can proceed. This ensures proper resource validation,\nstate checking, and data availability in complex API workflows.\n\n## CRITICAL WARNING: Authentication is NOT a Prerequisite\n\n**NEVER use prerequisites for authentication or authorization checks!**\n\nPrerequisites are ONLY for business logic dependencies such as:\n\n- Checking if a resource exists\n- Verifying resource state\n- Loading required data\n\nDo NOT create prerequisites for:\n\n- Login/authentication endpoints\n- Token validation\n- Permission checks\n- User authorization verification\n\nAuthentication is handled separately via the `
|
|
386
|
+
description: "Prerequisite API operation dependency.\n\n`IPrerequisite` defines a dependency relationship between API operations,\nspecifying that certain endpoints must be successfully called before the\ncurrent operation can proceed. This ensures proper resource validation,\nstate checking, and data availability in complex API workflows.\n\n## CRITICAL WARNING: Authentication is NOT a Prerequisite\n\n**NEVER use prerequisites for authentication or authorization checks!**\n\nPrerequisites are ONLY for business logic dependencies such as:\n\n- Checking if a resource exists\n- Verifying resource state\n- Loading required data\n\nDo NOT create prerequisites for:\n\n- Login/authentication endpoints\n- Token validation\n- Permission checks\n- User authorization verification\n\nAuthentication is handled separately via the `authorizationActor` field on\nthe operation itself. Mixing authentication with business prerequisites\ncreates confusion and incorrect test scenarios.\n\n## Core Concept\n\nPrerequisites create an execution dependency graph for API operations. They\nexplicitly declare which APIs must succeed before attempting the current\noperation, preventing invalid states and ensuring data consistency.\n\n## Structure\n\nEach prerequisite consists of:\n\n1. **endpoint**: The API endpoint that must be called first\n2. **description**: Clear explanation of why this prerequisite is required\n\n## Common Use Cases\n\n### 1. Resource Existence Validation\n\n```typescript\n{\n \"endpoint\": { \"path\": \"/users/{userId}\", \"method\": \"get\" },\n \"description\": \"User must exist before updating their profile\"\n}\n```\n\n### 2. Parent-Child Relationships\n\n```typescript\n{\n \"endpoint\": { \"path\": \"/posts/{postId}\", \"method\": \"get\" },\n \"description\": \"Post must exist before adding comments\"\n}\n```\n\n### 3. State Prerequisites\n\n```typescript\n{\n \"endpoint\": { \"path\": \"/orders/{orderId}/status\", \"method\": \"get\" },\n \"description\": \"Order must be in 'confirmed' state before shipping\"\n}\n```\n\n### 4. Business Logic Dependencies\n\n```typescript\n{\n \"endpoint\": {\n \"path\": \"/inventory/{productId}/stock\",\n \"method\": \"get\"\n },\n \"description\": \"Product must have sufficient stock before creating order\"\n}\n```\n\n## Implementation Guidelines\n\n1. **Clear Descriptions**: Always explain WHY the prerequisite is needed\n2. **Minimal Dependencies**: Only include truly necessary prerequisites\n3. **Logical Order**: If multiple prerequisites exist, order them logically\n4. **Error Context**: Description should help understand failure scenarios\n5. **No Authentication**: Prerequisites must NEVER be authentication checks\n\n## Test Generation Usage\n\nThe Test Agent utilizes prerequisites to:\n\n- Set up test data in the correct sequence\n- Generate realistic test scenarios\n- Create both positive and negative test cases\n- Ensure proper cleanup in reverse dependency order\n\n## Best Practices\n\n- Keep prerequisite chains as short as possible for performance\n- Consider caching prerequisite results when safe to do so\n- Ensure prerequisite descriptions are specific, not generic\n- Validate that circular dependencies don't exist\n- Document any side effects of prerequisite calls\n- NEVER use for authentication/authorization validation\n\n### Description of {@link endpoint} property:\n\n> The API endpoint that must be called before the main operation.\n> \n> This specifies the exact HTTP method and path of the prerequisite API.\n> The endpoint must be a valid operation defined elsewhere in the API\n> specification. Path parameters in the prerequisite endpoint can reference\n> the same parameters available in the main operation.",
|
|
386
387
|
type: "object",
|
|
387
388
|
properties: {
|
|
388
389
|
endpoint: {
|
|
@@ -587,7 +588,7 @@ const collection = {
|
|
|
587
588
|
]
|
|
588
589
|
},
|
|
589
590
|
"AutoBeOpenApi.IPrerequisite": {
|
|
590
|
-
description: "Prerequisite API operation dependency.\n\n`IPrerequisite` defines a dependency relationship between API operations,\nspecifying that certain endpoints must be successfully called before the\ncurrent operation can proceed. This ensures proper resource validation,\nstate checking, and data availability in complex API workflows.\n\n## CRITICAL WARNING: Authentication is NOT a Prerequisite\n\n**NEVER use prerequisites for authentication or authorization checks!**\n\nPrerequisites are ONLY for business logic dependencies such as:\n\n- Checking if a resource exists\n- Verifying resource state\n- Loading required data\n\nDo NOT create prerequisites for:\n\n- Login/authentication endpoints\n- Token validation\n- Permission checks\n- User authorization verification\n\nAuthentication is handled separately via the `
|
|
591
|
+
description: "Prerequisite API operation dependency.\n\n`IPrerequisite` defines a dependency relationship between API operations,\nspecifying that certain endpoints must be successfully called before the\ncurrent operation can proceed. This ensures proper resource validation,\nstate checking, and data availability in complex API workflows.\n\n## CRITICAL WARNING: Authentication is NOT a Prerequisite\n\n**NEVER use prerequisites for authentication or authorization checks!**\n\nPrerequisites are ONLY for business logic dependencies such as:\n\n- Checking if a resource exists\n- Verifying resource state\n- Loading required data\n\nDo NOT create prerequisites for:\n\n- Login/authentication endpoints\n- Token validation\n- Permission checks\n- User authorization verification\n\nAuthentication is handled separately via the `authorizationActor` field on\nthe operation itself. Mixing authentication with business prerequisites\ncreates confusion and incorrect test scenarios.\n\n## Core Concept\n\nPrerequisites create an execution dependency graph for API operations. They\nexplicitly declare which APIs must succeed before attempting the current\noperation, preventing invalid states and ensuring data consistency.\n\n## Structure\n\nEach prerequisite consists of:\n\n1. **endpoint**: The API endpoint that must be called first\n2. **description**: Clear explanation of why this prerequisite is required\n\n## Common Use Cases\n\n### 1. Resource Existence Validation\n\n```typescript\n{\n \"endpoint\": { \"path\": \"/users/{userId}\", \"method\": \"get\" },\n \"description\": \"User must exist before updating their profile\"\n}\n```\n\n### 2. Parent-Child Relationships\n\n```typescript\n{\n \"endpoint\": { \"path\": \"/posts/{postId}\", \"method\": \"get\" },\n \"description\": \"Post must exist before adding comments\"\n}\n```\n\n### 3. State Prerequisites\n\n```typescript\n{\n \"endpoint\": { \"path\": \"/orders/{orderId}/status\", \"method\": \"get\" },\n \"description\": \"Order must be in 'confirmed' state before shipping\"\n}\n```\n\n### 4. Business Logic Dependencies\n\n```typescript\n{\n \"endpoint\": {\n \"path\": \"/inventory/{productId}/stock\",\n \"method\": \"get\"\n },\n \"description\": \"Product must have sufficient stock before creating order\"\n}\n```\n\n## Implementation Guidelines\n\n1. **Clear Descriptions**: Always explain WHY the prerequisite is needed\n2. **Minimal Dependencies**: Only include truly necessary prerequisites\n3. **Logical Order**: If multiple prerequisites exist, order them logically\n4. **Error Context**: Description should help understand failure scenarios\n5. **No Authentication**: Prerequisites must NEVER be authentication checks\n\n## Test Generation Usage\n\nThe Test Agent utilizes prerequisites to:\n\n- Set up test data in the correct sequence\n- Generate realistic test scenarios\n- Create both positive and negative test cases\n- Ensure proper cleanup in reverse dependency order\n\n## Best Practices\n\n- Keep prerequisite chains as short as possible for performance\n- Consider caching prerequisite results when safe to do so\n- Ensure prerequisite descriptions are specific, not generic\n- Validate that circular dependencies don't exist\n- Document any side effects of prerequisite calls\n- NEVER use for authentication/authorization validation",
|
|
591
592
|
type: "object",
|
|
592
593
|
properties: {
|
|
593
594
|
endpoint: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrateInterfacePrerequisites.js","sourceRoot":"","sources":["../../../src/orchestrate/interface/orchestrateInterfacePrerequisites.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"orchestrateInterfacePrerequisites.js","sourceRoot":"","sources":["../../../src/orchestrate/interface/orchestrateInterfacePrerequisites.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { AutoBeInterfaceSchemaRefactor, AutoBeOpenApi } from "@autobe/interface";
|
|
2
|
+
import { ILlmSchema } from "@samchon/openapi";
|
|
3
|
+
import { AutoBeContext } from "../../context/AutoBeContext";
|
|
4
|
+
export declare function orchestrateInterfaceSchemaRename<Mode extends ILlmSchema.Model>(ctx: AutoBeContext<Mode>, document: AutoBeOpenApi.IDocument, capacity?: number): Promise<void>;
|
|
5
|
+
export declare namespace orchestrateInterfaceSchemaRename {
|
|
6
|
+
const rename: (document: AutoBeOpenApi.IDocument, refactors: AutoBeInterfaceSchemaRefactor[]) => void;
|
|
7
|
+
}
|
|
@@ -0,0 +1,445 @@
|
|
|
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.orchestrateInterfaceSchemaRename = orchestrateInterfaceSchemaRename;
|
|
49
|
+
const __typia_transform__validateReport = __importStar(require("typia/lib/internal/_validateReport.js"));
|
|
50
|
+
const openapi_1 = require("@samchon/openapi");
|
|
51
|
+
const typia_1 = __importDefault(require("typia"));
|
|
52
|
+
const uuid_1 = require("uuid");
|
|
53
|
+
const assertSchemaModel_1 = require("../../context/assertSchemaModel");
|
|
54
|
+
const divideArray_1 = require("../../utils/divideArray");
|
|
55
|
+
const executeCachedBatch_1 = require("../../utils/executeCachedBatch");
|
|
56
|
+
const transformInterfaceSchemaRenameHistories_1 = require("./histories/transformInterfaceSchemaRenameHistories");
|
|
57
|
+
function orchestrateInterfaceSchemaRename(ctx_1, document_1) {
|
|
58
|
+
return __awaiter(this, arguments, void 0, function* (ctx, document, capacity = 2 /* AutoBeConfigConstant.INTERFACE_CAPACITY */ * 10) {
|
|
59
|
+
const tableNames = ctx
|
|
60
|
+
.state()
|
|
61
|
+
.prisma.result.data.files.map((f) => f.models)
|
|
62
|
+
.flat()
|
|
63
|
+
.map((m) => m.name)
|
|
64
|
+
.filter((m) => m.startsWith("mv_") === false);
|
|
65
|
+
const entireTypeNames = new Set();
|
|
66
|
+
for (let name of Object.keys(document.components.schemas)) {
|
|
67
|
+
if (name.startsWith("IPage"))
|
|
68
|
+
name = name.replace("IPage", "");
|
|
69
|
+
name = name.split(".")[0];
|
|
70
|
+
entireTypeNames.add(name);
|
|
71
|
+
}
|
|
72
|
+
const matrix = (0, divideArray_1.divideArray)({
|
|
73
|
+
array: Array.from(entireTypeNames),
|
|
74
|
+
capacity,
|
|
75
|
+
});
|
|
76
|
+
const progress = {
|
|
77
|
+
total: entireTypeNames.size,
|
|
78
|
+
completed: 0,
|
|
79
|
+
};
|
|
80
|
+
const refactors = uniqueRefactors((yield (0, executeCachedBatch_1.executeCachedBatch)(matrix.map((typeNames) => (promptCacheKey) => divideAndConquer(ctx, {
|
|
81
|
+
tableNames,
|
|
82
|
+
typeNames,
|
|
83
|
+
promptCacheKey,
|
|
84
|
+
progress,
|
|
85
|
+
})))).flat());
|
|
86
|
+
orchestrateInterfaceSchemaRename.rename(document, refactors);
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
(function (orchestrateInterfaceSchemaRename) {
|
|
90
|
+
orchestrateInterfaceSchemaRename.rename = (document, refactors) => {
|
|
91
|
+
var _a, _b;
|
|
92
|
+
// REPLACE RULE
|
|
93
|
+
const replace = (typeName) => {
|
|
94
|
+
// exact match
|
|
95
|
+
const exact = refactors.find((r) => r.from === typeName);
|
|
96
|
+
if (exact !== undefined)
|
|
97
|
+
return exact.to;
|
|
98
|
+
// T.X match
|
|
99
|
+
const prefix = refactors.find((r) => typeName.startsWith(`${r.from}.`));
|
|
100
|
+
if (prefix !== undefined)
|
|
101
|
+
return typeName.replace(`${prefix.from}.`, `${prefix.to}.`);
|
|
102
|
+
// IPageT exact match
|
|
103
|
+
const pageExact = refactors.find((r) => typeName === `IPage${r.from}`);
|
|
104
|
+
if (pageExact !== undefined)
|
|
105
|
+
return `IPage${pageExact.to}`;
|
|
106
|
+
// IPageT.X match
|
|
107
|
+
const pagePrefix = refactors.find((r) => typeName.startsWith(`IPage${r.from}.`));
|
|
108
|
+
if (pagePrefix !== undefined)
|
|
109
|
+
return typeName.replace(`IPage${pagePrefix.from}.`, `IPage${pagePrefix.to}.`);
|
|
110
|
+
return null;
|
|
111
|
+
};
|
|
112
|
+
// JSON SCHEMA REFERENCES
|
|
113
|
+
const $refChangers = new Map();
|
|
114
|
+
for (const value of Object.values(document.components.schemas))
|
|
115
|
+
openapi_1.OpenApiTypeChecker.visit({
|
|
116
|
+
components: document.components,
|
|
117
|
+
schema: value,
|
|
118
|
+
closure: (schema) => {
|
|
119
|
+
if (openapi_1.OpenApiTypeChecker.isReference(schema) === false)
|
|
120
|
+
return;
|
|
121
|
+
const x = schema.$ref.split("/").pop();
|
|
122
|
+
const y = replace(x);
|
|
123
|
+
if (y !== null)
|
|
124
|
+
$refChangers.set(schema, () => {
|
|
125
|
+
schema.$ref = `#/components/schemas/${y}`;
|
|
126
|
+
});
|
|
127
|
+
},
|
|
128
|
+
});
|
|
129
|
+
for (const fn of $refChangers.values())
|
|
130
|
+
fn();
|
|
131
|
+
// COMPONENT SCHEMAS
|
|
132
|
+
for (const x of Object.keys(document.components.schemas)) {
|
|
133
|
+
const y = replace(x);
|
|
134
|
+
if (y !== null) {
|
|
135
|
+
document.components.schemas[y] = document.components.schemas[x];
|
|
136
|
+
delete document.components.schemas[x];
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
// OPERATIONS
|
|
140
|
+
for (const op of document.operations) {
|
|
141
|
+
if (op.requestBody)
|
|
142
|
+
op.requestBody.typeName =
|
|
143
|
+
(_a = replace(op.requestBody.typeName)) !== null && _a !== void 0 ? _a : op.requestBody.typeName;
|
|
144
|
+
if (op.responseBody)
|
|
145
|
+
op.responseBody.typeName =
|
|
146
|
+
(_b = replace(op.responseBody.typeName)) !== null && _b !== void 0 ? _b : op.responseBody.typeName;
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
})(orchestrateInterfaceSchemaRename || (exports.orchestrateInterfaceSchemaRename = orchestrateInterfaceSchemaRename = {}));
|
|
150
|
+
const divideAndConquer = (ctx, props) => __awaiter(void 0, void 0, void 0, function* () {
|
|
151
|
+
try {
|
|
152
|
+
const pointer = {
|
|
153
|
+
value: null,
|
|
154
|
+
};
|
|
155
|
+
const { metric, tokenUsage } = yield ctx.conversate({
|
|
156
|
+
source: "interfaceSchemaRename",
|
|
157
|
+
controller: createController(ctx.model, (value) => (pointer.value = value)),
|
|
158
|
+
histories: (0, transformInterfaceSchemaRenameHistories_1.transformInterfaceSchemaRenameHistories)(props),
|
|
159
|
+
enforceFunctionCall: true,
|
|
160
|
+
promptCacheKey: props.promptCacheKey,
|
|
161
|
+
message: "Rename DTO type names for consistency and clarity.",
|
|
162
|
+
});
|
|
163
|
+
if (pointer.value === null) {
|
|
164
|
+
props.progress.completed += props.typeNames.length;
|
|
165
|
+
return [];
|
|
166
|
+
}
|
|
167
|
+
pointer.value.refactors = uniqueRefactors(pointer.value.refactors);
|
|
168
|
+
ctx.dispatch({
|
|
169
|
+
type: "interfaceSchemaRename",
|
|
170
|
+
id: (0, uuid_1.v7)(),
|
|
171
|
+
refactors: pointer.value.refactors,
|
|
172
|
+
total: props.progress.total,
|
|
173
|
+
completed: (props.progress.completed += props.typeNames.length),
|
|
174
|
+
metric,
|
|
175
|
+
tokenUsage,
|
|
176
|
+
created_at: new Date().toISOString(),
|
|
177
|
+
});
|
|
178
|
+
return pointer.value.refactors;
|
|
179
|
+
}
|
|
180
|
+
catch (_a) {
|
|
181
|
+
props.progress.completed += props.typeNames.length;
|
|
182
|
+
return [];
|
|
183
|
+
}
|
|
184
|
+
});
|
|
185
|
+
const uniqueRefactors = (refactors) => {
|
|
186
|
+
// Remove self-references (A->A)
|
|
187
|
+
refactors = refactors.filter((r) => r.from !== r.to);
|
|
188
|
+
// Remove duplicates (keep the first occurrence)
|
|
189
|
+
refactors = Array.from(new Map(refactors.map((r) => [r.from, r])).values());
|
|
190
|
+
// Build adjacency map: from -> to
|
|
191
|
+
const renameMap = new Map();
|
|
192
|
+
for (const r of refactors) {
|
|
193
|
+
renameMap.set(r.from, r.to);
|
|
194
|
+
}
|
|
195
|
+
// Resolve transitive chains: A->B, B->C becomes A->C
|
|
196
|
+
const resolveChain = (from) => {
|
|
197
|
+
const visited = new Set();
|
|
198
|
+
let current = from;
|
|
199
|
+
while (renameMap.has(current)) {
|
|
200
|
+
// Cycle detection: A->B, B->C, C->A
|
|
201
|
+
if (visited.has(current)) {
|
|
202
|
+
// Cycle detected, keep the last valid mapping before cycle
|
|
203
|
+
return current;
|
|
204
|
+
}
|
|
205
|
+
visited.add(current);
|
|
206
|
+
current = renameMap.get(current);
|
|
207
|
+
}
|
|
208
|
+
return current;
|
|
209
|
+
};
|
|
210
|
+
// Build final refactor list with resolved chains
|
|
211
|
+
const resolved = new Map();
|
|
212
|
+
for (const from of renameMap.keys()) {
|
|
213
|
+
const finalTo = resolveChain(from);
|
|
214
|
+
// Only include if actually changes
|
|
215
|
+
if (from !== finalTo) {
|
|
216
|
+
resolved.set(from, {
|
|
217
|
+
from,
|
|
218
|
+
to: finalTo,
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
return Array.from(resolved.values());
|
|
223
|
+
};
|
|
224
|
+
const createController = (model, build) => {
|
|
225
|
+
(0, assertSchemaModel_1.assertSchemaModel)(model);
|
|
226
|
+
const application = collection[model === "chatgpt" ? "chatgpt" : "claude"];
|
|
227
|
+
return {
|
|
228
|
+
protocol: "class",
|
|
229
|
+
name: "SchemaRenamer",
|
|
230
|
+
application,
|
|
231
|
+
execute: {
|
|
232
|
+
rename: (props) => {
|
|
233
|
+
build(props);
|
|
234
|
+
},
|
|
235
|
+
},
|
|
236
|
+
};
|
|
237
|
+
};
|
|
238
|
+
const collection = {
|
|
239
|
+
chatgpt: {
|
|
240
|
+
model: "chatgpt",
|
|
241
|
+
options: {
|
|
242
|
+
reference: true,
|
|
243
|
+
strict: false,
|
|
244
|
+
separate: null
|
|
245
|
+
},
|
|
246
|
+
functions: [
|
|
247
|
+
{
|
|
248
|
+
name: "rename",
|
|
249
|
+
parameters: {
|
|
250
|
+
description: " Properties containing refactoring operations to fix naming\nviolations.\n\n------------------------------\n\nCurrent Type: {@link IAutoBeInterfaceSchemaRenameApplication.IProps}",
|
|
251
|
+
type: "object",
|
|
252
|
+
properties: {
|
|
253
|
+
refactors: {
|
|
254
|
+
description: "List of refactoring operations to rename incorrectly named DTO types.\n\nEach refactor specifies:\n\n- `from`: The current INCORRECT type name (e.g., \"ISale\", \"IBbsComment\")\n- `to`: The CORRECT type name with all components preserved (e.g.,\n \"IShoppingSale\", \"IBbsArticleComment\")\n\nIMPORTANT: Only include type names that violate the naming rules. If a\ntype name correctly preserves all components from the table name, do NOT\ninclude it in the refactors list.\n\nThe orchestrator will automatically handle:\n\n- Renaming the base type (e.g., ISale \u2192 IShoppingSale)\n- Renaming all variants (e.g., ISale.ICreate \u2192 IShoppingSale.ICreate)\n- Renaming page types (e.g., IPageISale \u2192 IPageIShoppingSale)\n- Updating all $ref references throughout the OpenAPI document",
|
|
255
|
+
type: "array",
|
|
256
|
+
items: {
|
|
257
|
+
$ref: "#/$defs/AutoBeInterfaceSchemaRefactor"
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
},
|
|
261
|
+
required: [
|
|
262
|
+
"refactors"
|
|
263
|
+
],
|
|
264
|
+
additionalProperties: false,
|
|
265
|
+
$defs: {
|
|
266
|
+
AutoBeInterfaceSchemaRefactor: {
|
|
267
|
+
description: "Represents a DTO type name refactoring operation.\n\nThis interface defines a single rename operation to fix DTO type names that\nviolate the critical naming convention: ALL words from the Prisma table name\nMUST be preserved in the DTO type name.\n\nCommon violations detected:\n- Service prefix omission: `shopping_sales` \u2192 `ISale` (should be `IShoppingSale`)\n- Intermediate word omission: `bbs_article_comments` \u2192 `IBbsComment` (should be `IBbsArticleComment`)\n- Multiple words omitted: `shopping_order_good_refunds` \u2192 `IShoppingRefund` (should be `IShoppingOrderGoodRefund`)\n\nThe orchestrator automatically handles renaming all related variants:\n- Base type: `ISale` \u2192 `IShoppingSale`\n- Create variant: `ISale.ICreate` \u2192 `IShoppingSale.ICreate`\n- Update variant: `ISale.IUpdate` \u2192 `IShoppingSale.IUpdate`\n- Summary variant: `ISale.ISummary` \u2192 `IShoppingSale.ISummary`\n- Page type: `IPageISale` \u2192 `IPageIShoppingSale`",
|
|
268
|
+
type: "object",
|
|
269
|
+
properties: {
|
|
270
|
+
from: {
|
|
271
|
+
description: "Current INCORRECT type name that violates naming rules.\n\nThis is the base type name (without variant suffixes or IPage prefix)\nthat omits service prefixes or intermediate components from the\nPrisma table name.",
|
|
272
|
+
type: "string"
|
|
273
|
+
},
|
|
274
|
+
to: {
|
|
275
|
+
description: "CORRECT type name with all components preserved.\n\nThis is the proper base type name that preserves ALL words from the\nPrisma table name, converted from snake_case to PascalCase with \"I\" prefix.",
|
|
276
|
+
type: "string"
|
|
277
|
+
}
|
|
278
|
+
},
|
|
279
|
+
required: [
|
|
280
|
+
"from",
|
|
281
|
+
"to"
|
|
282
|
+
]
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
},
|
|
286
|
+
description: "Analyze DTO type names and identify naming violations.\n\nThis method examines existing DTO type names to detect violations of the\nCRITICAL naming rule: ALL words from the Prisma table name MUST be\npreserved in the DTO type name. Omitting intermediate words breaks\ntype-to-table traceability and causes system failures.\n\nThe method receives a list of Prisma table names and current DTO type\nnames, then identifies which type names incorrectly omit service prefixes\nor intermediate components from their corresponding table names.",
|
|
287
|
+
validate: (() => { const _io0 = input => Array.isArray(input.refactors) && input.refactors.every(elem => "object" === typeof elem && null !== elem && _io1(elem)); const _io1 = input => "string" === typeof input.from && "string" === typeof input.to; const _vo0 = (input, _path, _exceptionable = true) => [(Array.isArray(input.refactors) || _report(_exceptionable, {
|
|
288
|
+
path: _path + ".refactors",
|
|
289
|
+
expected: "Array<AutoBeInterfaceSchemaRefactor>",
|
|
290
|
+
value: input.refactors
|
|
291
|
+
})) && input.refactors.map((elem, _index2) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
292
|
+
path: _path + ".refactors[" + _index2 + "]",
|
|
293
|
+
expected: "AutoBeInterfaceSchemaRefactor",
|
|
294
|
+
value: elem
|
|
295
|
+
})) && _vo1(elem, _path + ".refactors[" + _index2 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
296
|
+
path: _path + ".refactors[" + _index2 + "]",
|
|
297
|
+
expected: "AutoBeInterfaceSchemaRefactor",
|
|
298
|
+
value: elem
|
|
299
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
300
|
+
path: _path + ".refactors",
|
|
301
|
+
expected: "Array<AutoBeInterfaceSchemaRefactor>",
|
|
302
|
+
value: input.refactors
|
|
303
|
+
})].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["string" === typeof input.from || _report(_exceptionable, {
|
|
304
|
+
path: _path + ".from",
|
|
305
|
+
expected: "string",
|
|
306
|
+
value: input.from
|
|
307
|
+
}), "string" === typeof input.to || _report(_exceptionable, {
|
|
308
|
+
path: _path + ".to",
|
|
309
|
+
expected: "string",
|
|
310
|
+
value: input.to
|
|
311
|
+
})].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
|
|
312
|
+
if (false === __is(input)) {
|
|
313
|
+
errors = [];
|
|
314
|
+
_report = __typia_transform__validateReport._validateReport(errors);
|
|
315
|
+
((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
|
|
316
|
+
path: _path + "",
|
|
317
|
+
expected: "IAutoBeInterfaceSchemaRenameApplication.IProps",
|
|
318
|
+
value: input
|
|
319
|
+
})) && _vo0(input, _path + "", true) || _report(true, {
|
|
320
|
+
path: _path + "",
|
|
321
|
+
expected: "IAutoBeInterfaceSchemaRenameApplication.IProps",
|
|
322
|
+
value: input
|
|
323
|
+
}))(input, "$input", true);
|
|
324
|
+
const success = 0 === errors.length;
|
|
325
|
+
return success ? {
|
|
326
|
+
success,
|
|
327
|
+
data: input
|
|
328
|
+
} : {
|
|
329
|
+
success,
|
|
330
|
+
errors,
|
|
331
|
+
data: input
|
|
332
|
+
};
|
|
333
|
+
}
|
|
334
|
+
return {
|
|
335
|
+
success: true,
|
|
336
|
+
data: input
|
|
337
|
+
};
|
|
338
|
+
}; })()
|
|
339
|
+
}
|
|
340
|
+
]
|
|
341
|
+
},
|
|
342
|
+
claude: {
|
|
343
|
+
model: "claude",
|
|
344
|
+
options: {
|
|
345
|
+
reference: true,
|
|
346
|
+
separate: null
|
|
347
|
+
},
|
|
348
|
+
functions: [
|
|
349
|
+
{
|
|
350
|
+
name: "rename",
|
|
351
|
+
parameters: {
|
|
352
|
+
description: " Properties containing refactoring operations to fix naming\nviolations.\n\n------------------------------\n\nCurrent Type: {@link IAutoBeInterfaceSchemaRenameApplication.IProps}",
|
|
353
|
+
type: "object",
|
|
354
|
+
properties: {
|
|
355
|
+
refactors: {
|
|
356
|
+
description: "List of refactoring operations to rename incorrectly named DTO types.\n\nEach refactor specifies:\n\n- `from`: The current INCORRECT type name (e.g., \"ISale\", \"IBbsComment\")\n- `to`: The CORRECT type name with all components preserved (e.g.,\n \"IShoppingSale\", \"IBbsArticleComment\")\n\nIMPORTANT: Only include type names that violate the naming rules. If a\ntype name correctly preserves all components from the table name, do NOT\ninclude it in the refactors list.\n\nThe orchestrator will automatically handle:\n\n- Renaming the base type (e.g., ISale \u2192 IShoppingSale)\n- Renaming all variants (e.g., ISale.ICreate \u2192 IShoppingSale.ICreate)\n- Renaming page types (e.g., IPageISale \u2192 IPageIShoppingSale)\n- Updating all $ref references throughout the OpenAPI document",
|
|
357
|
+
type: "array",
|
|
358
|
+
items: {
|
|
359
|
+
$ref: "#/$defs/AutoBeInterfaceSchemaRefactor"
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
},
|
|
363
|
+
required: [
|
|
364
|
+
"refactors"
|
|
365
|
+
],
|
|
366
|
+
additionalProperties: false,
|
|
367
|
+
$defs: {
|
|
368
|
+
AutoBeInterfaceSchemaRefactor: {
|
|
369
|
+
description: "Represents a DTO type name refactoring operation.\n\nThis interface defines a single rename operation to fix DTO type names that\nviolate the critical naming convention: ALL words from the Prisma table name\nMUST be preserved in the DTO type name.\n\nCommon violations detected:\n- Service prefix omission: `shopping_sales` \u2192 `ISale` (should be `IShoppingSale`)\n- Intermediate word omission: `bbs_article_comments` \u2192 `IBbsComment` (should be `IBbsArticleComment`)\n- Multiple words omitted: `shopping_order_good_refunds` \u2192 `IShoppingRefund` (should be `IShoppingOrderGoodRefund`)\n\nThe orchestrator automatically handles renaming all related variants:\n- Base type: `ISale` \u2192 `IShoppingSale`\n- Create variant: `ISale.ICreate` \u2192 `IShoppingSale.ICreate`\n- Update variant: `ISale.IUpdate` \u2192 `IShoppingSale.IUpdate`\n- Summary variant: `ISale.ISummary` \u2192 `IShoppingSale.ISummary`\n- Page type: `IPageISale` \u2192 `IPageIShoppingSale`",
|
|
370
|
+
type: "object",
|
|
371
|
+
properties: {
|
|
372
|
+
from: {
|
|
373
|
+
description: "Current INCORRECT type name that violates naming rules.\n\nThis is the base type name (without variant suffixes or IPage prefix)\nthat omits service prefixes or intermediate components from the\nPrisma table name.",
|
|
374
|
+
type: "string"
|
|
375
|
+
},
|
|
376
|
+
to: {
|
|
377
|
+
description: "CORRECT type name with all components preserved.\n\nThis is the proper base type name that preserves ALL words from the\nPrisma table name, converted from snake_case to PascalCase with \"I\" prefix.",
|
|
378
|
+
type: "string"
|
|
379
|
+
}
|
|
380
|
+
},
|
|
381
|
+
required: [
|
|
382
|
+
"from",
|
|
383
|
+
"to"
|
|
384
|
+
]
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
},
|
|
388
|
+
description: "Analyze DTO type names and identify naming violations.\n\nThis method examines existing DTO type names to detect violations of the\nCRITICAL naming rule: ALL words from the Prisma table name MUST be\npreserved in the DTO type name. Omitting intermediate words breaks\ntype-to-table traceability and causes system failures.\n\nThe method receives a list of Prisma table names and current DTO type\nnames, then identifies which type names incorrectly omit service prefixes\nor intermediate components from their corresponding table names.",
|
|
389
|
+
validate: (() => { const _io0 = input => Array.isArray(input.refactors) && input.refactors.every(elem => "object" === typeof elem && null !== elem && _io1(elem)); const _io1 = input => "string" === typeof input.from && "string" === typeof input.to; const _vo0 = (input, _path, _exceptionable = true) => [(Array.isArray(input.refactors) || _report(_exceptionable, {
|
|
390
|
+
path: _path + ".refactors",
|
|
391
|
+
expected: "Array<AutoBeInterfaceSchemaRefactor>",
|
|
392
|
+
value: input.refactors
|
|
393
|
+
})) && input.refactors.map((elem, _index2) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
|
|
394
|
+
path: _path + ".refactors[" + _index2 + "]",
|
|
395
|
+
expected: "AutoBeInterfaceSchemaRefactor",
|
|
396
|
+
value: elem
|
|
397
|
+
})) && _vo1(elem, _path + ".refactors[" + _index2 + "]", true && _exceptionable) || _report(_exceptionable, {
|
|
398
|
+
path: _path + ".refactors[" + _index2 + "]",
|
|
399
|
+
expected: "AutoBeInterfaceSchemaRefactor",
|
|
400
|
+
value: elem
|
|
401
|
+
})).every(flag => flag) || _report(_exceptionable, {
|
|
402
|
+
path: _path + ".refactors",
|
|
403
|
+
expected: "Array<AutoBeInterfaceSchemaRefactor>",
|
|
404
|
+
value: input.refactors
|
|
405
|
+
})].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["string" === typeof input.from || _report(_exceptionable, {
|
|
406
|
+
path: _path + ".from",
|
|
407
|
+
expected: "string",
|
|
408
|
+
value: input.from
|
|
409
|
+
}), "string" === typeof input.to || _report(_exceptionable, {
|
|
410
|
+
path: _path + ".to",
|
|
411
|
+
expected: "string",
|
|
412
|
+
value: input.to
|
|
413
|
+
})].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
|
|
414
|
+
if (false === __is(input)) {
|
|
415
|
+
errors = [];
|
|
416
|
+
_report = __typia_transform__validateReport._validateReport(errors);
|
|
417
|
+
((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _report(true, {
|
|
418
|
+
path: _path + "",
|
|
419
|
+
expected: "IAutoBeInterfaceSchemaRenameApplication.IProps",
|
|
420
|
+
value: input
|
|
421
|
+
})) && _vo0(input, _path + "", true) || _report(true, {
|
|
422
|
+
path: _path + "",
|
|
423
|
+
expected: "IAutoBeInterfaceSchemaRenameApplication.IProps",
|
|
424
|
+
value: input
|
|
425
|
+
}))(input, "$input", true);
|
|
426
|
+
const success = 0 === errors.length;
|
|
427
|
+
return success ? {
|
|
428
|
+
success,
|
|
429
|
+
data: input
|
|
430
|
+
} : {
|
|
431
|
+
success,
|
|
432
|
+
errors,
|
|
433
|
+
data: input
|
|
434
|
+
};
|
|
435
|
+
}
|
|
436
|
+
return {
|
|
437
|
+
success: true,
|
|
438
|
+
data: input
|
|
439
|
+
};
|
|
440
|
+
}; })()
|
|
441
|
+
}
|
|
442
|
+
]
|
|
443
|
+
},
|
|
444
|
+
};
|
|
445
|
+
//# sourceMappingURL=orchestrateInterfaceSchemaRename.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrateInterfaceSchemaRename.js","sourceRoot":"","sources":["../../../src/orchestrate/interface/orchestrateInterfaceSchemaRename.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { AutoBeOpenApi, AutoBeProgressEventBase } from "@autobe/interface";
|
|
2
|
+
import { AutoBeInterfaceSchemaReviewEvent } from "@autobe/interface/src/events/AutoBeInterfaceSchemaReviewEvent";
|
|
3
|
+
import { ILlmSchema } from "@samchon/openapi";
|
|
4
|
+
import { AutoBeContext } from "../../context/AutoBeContext";
|
|
5
|
+
interface IConfig {
|
|
6
|
+
kind: AutoBeInterfaceSchemaReviewEvent["kind"];
|
|
7
|
+
systemPrompt: string;
|
|
8
|
+
}
|
|
9
|
+
export declare function orchestrateInterfaceSchemaReview<Model extends ILlmSchema.Model>(ctx: AutoBeContext<Model>, config: IConfig, props: {
|
|
10
|
+
document: AutoBeOpenApi.IDocument;
|
|
11
|
+
instruction: string;
|
|
12
|
+
progress: AutoBeProgressEventBase;
|
|
13
|
+
}): Promise<Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>>;
|
|
14
|
+
export {};
|