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