@autobe/agent 0.25.7 → 0.26.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 +3 -0
- package/lib/AutoBeAgent.js.map +1 -1
- package/lib/AutoBeMockAgent.js +15 -12
- package/lib/AutoBeMockAgent.js.map +1 -1
- package/lib/constants/AutoBeSystemPromptConstant.d.ts +26 -19
- package/lib/constants/AutoBeSystemPromptConstant.js.map +1 -1
- package/lib/factory/consentFunctionCall.js +3 -0
- package/lib/factory/consentFunctionCall.js.map +1 -1
- package/lib/factory/createAutoBeContext.js +4 -1
- package/lib/factory/createAutoBeContext.js.map +1 -1
- package/lib/factory/getCommonPrompt.d.ts +2 -0
- package/lib/factory/getCommonPrompt.js +20 -0
- package/lib/factory/getCommonPrompt.js.map +1 -0
- package/lib/index.mjs +2636 -2258
- package/lib/index.mjs.map +1 -1
- package/lib/orchestrate/analyze/histories/transformAnalyzeReviewHistories.js +1 -1
- package/lib/orchestrate/analyze/histories/transformAnalyzeReviewHistories.js.map +1 -1
- package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.js +2 -2
- package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioHistories.js.map +1 -1
- package/lib/orchestrate/analyze/histories/transformAnalyzeWriteHistories.js +6 -6
- package/lib/orchestrate/analyze/histories/transformAnalyzeWriteHistories.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyze.js +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyze.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js +73 -73
- package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeWrite.js +2 -2
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioApplication.d.ts +9 -9
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeWriteApplication.d.ts +1 -1
- package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistories.js +2 -17
- package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistories.js.map +1 -1
- package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistories.d.ts +6 -0
- package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistories.js +58 -0
- package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistories.js.map +1 -0
- package/lib/orchestrate/facade/transformFacadeStateMessage.js +1 -1
- package/lib/orchestrate/facade/transformFacadeStateMessage.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.d.ts +2 -2
- package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.js +8 -8
- package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.js +3 -3
- package/lib/orchestrate/interface/histories/transformInterfaceComplementHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.js +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.js +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointsReviewHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.js +2 -2
- package/lib/orchestrate/interface/histories/transformInterfaceGroupHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.js +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceOperationHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.js +2 -2
- package/lib/orchestrate/interface/histories/transformInterfaceOperationsReviewHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.d.ts +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.js +46 -20
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaHistories.js.map +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.d.ts +5 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.js +51 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.js.map +1 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.d.ts +11 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.js +81 -0
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.js.map +1 -0
- package/lib/orchestrate/interface/orchestrateInterface.js +24 -4
- package/lib/orchestrate/interface/orchestrateInterface.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceAuthorizations.js +52 -52
- package/lib/orchestrate/interface/orchestrateInterfaceAuthorizations.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js +2 -2
- package/lib/orchestrate/interface/orchestrateInterfaceEndpoints.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.js +2 -2
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointsReview.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceGroups.d.ts +2 -2
- package/lib/orchestrate/interface/orchestrateInterfaceGroups.js +2 -2
- package/lib/orchestrate/interface/orchestrateInterfaceGroups.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceOperations.js +57 -57
- package/lib/orchestrate/interface/orchestrateInterfaceOperations.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceOperationsReview.js +43 -43
- package/lib/orchestrate/interface/orchestrateInterfaceOperationsReview.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfacePrerequisites.js +4 -4
- package/lib/orchestrate/interface/orchestrateInterfacePrerequisites.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaRename.d.ts +7 -0
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaRename.js +444 -0
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaRename.js.map +1 -0
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.d.ts +12 -0
- package/lib/orchestrate/interface/{orchestrateInterfaceSchemasReview.js → orchestrateInterfaceSchemaReview.js} +66 -57
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.js.map +1 -0
- package/lib/orchestrate/interface/orchestrateInterfaceSchemas.js +9 -6
- package/lib/orchestrate/interface/orchestrateInterfaceSchemas.js.map +1 -1
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.d.ts +22 -22
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationsReviewApplication.d.ts +7 -7
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaContentReviewApplication.d.ts +101 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaContentReviewApplication.js +3 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaContentReviewApplication.js.map +1 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRelationReviewApplication.d.ts +97 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRelationReviewApplication.js +3 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRelationReviewApplication.js.map +1 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRenameApplication.d.ts +44 -0
- package/lib/orchestrate/interface/structures/{IAutobeInterfaceSchemasReviewApplication.js → IAutoBeInterfaceSchemaRenameApplication.js} +1 -1
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRenameApplication.js.map +1 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaSecurityReviewApplication.d.ts +92 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaSecurityReviewApplication.js +3 -0
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaSecurityReviewApplication.js.map +1 -0
- package/lib/orchestrate/interface/utils/JsonSchemaFactory.js +42 -1
- package/lib/orchestrate/interface/utils/JsonSchemaFactory.js.map +1 -1
- package/lib/orchestrate/interface/utils/JsonSchemaValidator.js +94 -0
- package/lib/orchestrate/interface/utils/JsonSchemaValidator.js.map +1 -1
- package/lib/orchestrate/interface/utils/OperationValidator.d.ts +1 -1
- package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistories.js +13 -13
- package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistories.js.map +1 -1
- package/lib/orchestrate/prisma/histories/transformPrismaReviewHistories.js +1 -1
- package/lib/orchestrate/prisma/histories/transformPrismaReviewHistories.js.map +1 -1
- package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistories.js +1 -1
- package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistories.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaComponent.d.ts +2 -2
- package/lib/orchestrate/prisma/orchestratePrismaComponent.js +2 -2
- package/lib/orchestrate/prisma/orchestratePrismaComponent.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaSchemas.d.ts +2 -2
- package/lib/orchestrate/prisma/orchestratePrismaSchemas.js +2 -2
- package/lib/orchestrate/prisma/orchestratePrismaSchemas.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeAuthorization.d.ts +2 -2
- package/lib/orchestrate/realize/histories/transformRealizeAuthorization.js +8 -7
- package/lib/orchestrate/realize/histories/transformRealizeAuthorization.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.js +4 -4
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.d.ts +4 -7
- package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.js +8 -18
- package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.d.ts +0 -1
- package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.js +8 -28
- package/lib/orchestrate/realize/histories/transformRealizeCorrectHistories.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.d.ts +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.js +16 -280
- package/lib/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeWriteHistories.js +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeWriteHistories.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealize.js +2 -2
- package/lib/orchestrate/realize/orchestrateRealize.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeAuthorization.js +12 -12
- package/lib/orchestrate/realize/orchestrateRealizeAuthorization.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js +9 -9
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeCorrect.d.ts +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeCorrect.js +43 -22
- package/lib/orchestrate/realize/orchestrateRealizeCorrect.js.map +1 -1
- package/lib/orchestrate/realize/{orchestRateRealizeCorrectCasting.js → orchestrateRealizeCorrectCasting.js} +58 -46
- package/lib/orchestrate/realize/orchestrateRealizeCorrectCasting.js.map +1 -0
- package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationApplication.d.ts +3 -3
- package/lib/orchestrate/realize/utils/AutoBeRealizeAuthorizationReplaceImport.d.ts +2 -2
- package/lib/orchestrate/realize/utils/AutoBeRealizeAuthorizationReplaceImport.js +6 -6
- package/lib/orchestrate/realize/utils/AutoBeRealizeAuthorizationReplaceImport.js.map +1 -1
- package/lib/orchestrate/realize/utils/generateRealizeScenario.js +1 -1
- package/lib/orchestrate/realize/utils/generateRealizeScenario.js.map +1 -1
- package/lib/orchestrate/realize/utils/getRealizeWriteCodeTemplate.js +2 -2
- package/lib/orchestrate/realize/utils/getRealizeWriteCodeTemplate.js.map +1 -1
- package/lib/orchestrate/realize/utils/getRealizeWriteDto.js +1 -1
- package/lib/orchestrate/realize/utils/getRealizeWriteDto.js.map +1 -1
- package/lib/orchestrate/realize/utils/getRealizeWriteInputType.js +2 -2
- package/lib/orchestrate/realize/utils/getRealizeWriteInputType.js.map +1 -1
- package/lib/orchestrate/realize/utils/printErrorHints.js +1 -1
- package/lib/orchestrate/realize/utils/printErrorHints.js.map +1 -1
- package/lib/orchestrate/test/compile/getTestScenarioArtifacts.js +1 -1
- package/lib/orchestrate/test/compile/getTestScenarioArtifacts.js.map +1 -1
- package/lib/orchestrate/test/histories/transformTestCorrectHistories.js +5 -22
- package/lib/orchestrate/test/histories/transformTestCorrectHistories.js.map +1 -1
- package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.js +10 -10
- package/lib/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.js.map +1 -1
- package/lib/orchestrate/test/histories/transformTestScenarioHistories.js +5 -5
- package/lib/orchestrate/test/histories/transformTestScenarioHistories.js.map +1 -1
- package/lib/orchestrate/test/histories/transformTestScenarioReviewHistories.js +2 -2
- package/lib/orchestrate/test/histories/transformTestScenarioReviewHistories.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestCorrect.js +2 -0
- package/lib/orchestrate/test/orchestrateTestCorrect.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestCorrectInvalidRequest.js +1 -0
- package/lib/orchestrate/test/orchestrateTestCorrectInvalidRequest.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestScenario.js +26 -26
- package/lib/orchestrate/test/orchestrateTestScenario.js.map +1 -1
- package/lib/orchestrate/test/orchestrateTestScenarioReview.js +2 -2
- package/lib/orchestrate/test/orchestrateTestScenarioReview.js.map +1 -1
- package/lib/orchestrate/test/structures/{IAutoBeTestScenarioAuthorizationRole.d.ts → IAutoBeTestScenarioAuthorizationActor.d.ts} +1 -1
- package/lib/orchestrate/test/structures/{IAutoBeTestScenarioAuthorizationRole.js → IAutoBeTestScenarioAuthorizationActor.js} +1 -1
- package/lib/orchestrate/test/structures/IAutoBeTestScenarioAuthorizationActor.js.map +1 -0
- package/package.json +5 -5
- package/src/AutoBeAgent.ts +3 -0
- package/src/AutoBeMockAgent.ts +15 -12
- package/src/constants/AutoBeSystemPromptConstant.ts +26 -19
- package/src/factory/consentFunctionCall.ts +4 -0
- package/src/factory/createAutoBeContext.ts +5 -1
- package/src/factory/getCommonPrompt.ts +25 -0
- package/src/orchestrate/analyze/histories/transformAnalyzeWriteHistories.ts +5 -5
- package/src/orchestrate/analyze/orchestrateAnalyze.ts +1 -1
- package/src/orchestrate/analyze/orchestrateAnalyzeScenario.ts +3 -3
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioApplication.ts +9 -9
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeWriteApplication.ts +1 -1
- package/src/orchestrate/common/histories/transformCommonCorrectCastingHistories.ts +2 -20
- package/src/orchestrate/common/histories/transformPreviousAndLatestCorrectHistories.ts +65 -0
- package/src/orchestrate/interface/histories/transformInterfaceAuthorizationsHistories.ts +9 -9
- package/src/orchestrate/interface/histories/transformInterfaceSchemaHistories.ts +45 -20
- package/src/orchestrate/interface/histories/transformInterfaceSchemaRenameHistories.ts +55 -0
- package/src/orchestrate/interface/histories/transformInterfaceSchemaReviewHistories.ts +90 -0
- package/src/orchestrate/interface/orchestrateInterface.ts +34 -14
- package/src/orchestrate/interface/orchestrateInterfaceAuthorizations.ts +18 -18
- package/src/orchestrate/interface/orchestrateInterfaceEndpoints.ts +4 -4
- package/src/orchestrate/interface/orchestrateInterfaceEndpointsReview.ts +2 -2
- package/src/orchestrate/interface/orchestrateInterfaceGroups.ts +5 -5
- package/src/orchestrate/interface/orchestrateInterfaceOperations.ts +23 -23
- package/src/orchestrate/interface/orchestrateInterfaceOperationsReview.ts +4 -4
- package/src/orchestrate/interface/orchestrateInterfacePrerequisites.ts +2 -2
- package/src/orchestrate/interface/orchestrateInterfaceSchemaRename.ts +269 -0
- package/src/orchestrate/interface/{orchestrateInterfaceSchemasReview.ts → orchestrateInterfaceSchemaReview.ts} +88 -70
- package/src/orchestrate/interface/orchestrateInterfaceSchemas.ts +16 -8
- package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.ts +26 -22
- package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationsReviewApplication.ts +7 -7
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaContentReviewApplication.ts +108 -0
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaRelationReviewApplication.ts +104 -0
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaRenameApplication.ts +45 -0
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaSecurityReviewApplication.ts +99 -0
- package/src/orchestrate/interface/utils/JsonSchemaFactory.ts +45 -3
- package/src/orchestrate/interface/utils/JsonSchemaValidator.ts +110 -0
- package/src/orchestrate/interface/utils/OperationValidator.ts +1 -1
- package/src/orchestrate/prisma/histories/transformPrismaComponentsHistories.ts +12 -12
- package/src/orchestrate/prisma/orchestratePrisma.ts +4 -4
- package/src/orchestrate/prisma/orchestratePrismaComponent.ts +4 -4
- package/src/orchestrate/prisma/orchestratePrismaSchemas.ts +7 -7
- package/src/orchestrate/realize/histories/transformRealizeAuthorization.ts +8 -7
- package/src/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistories.ts +4 -4
- package/src/orchestrate/realize/histories/transformRealizeCorrectCastingHistories.ts +14 -28
- package/src/orchestrate/realize/histories/transformRealizeCorrectHistories.ts +13 -30
- package/src/orchestrate/realize/histories/transformRealizeWriteAuthorizationsHistories.ts +20 -285
- package/src/orchestrate/realize/orchestrateRealize.ts +1 -1
- package/src/orchestrate/realize/orchestrateRealizeAuthorization.ts +9 -9
- package/src/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.ts +3 -3
- package/src/orchestrate/realize/orchestrateRealizeCorrect.ts +74 -60
- package/src/orchestrate/realize/{orchestRateRealizeCorrectCasting.ts → orchestrateRealizeCorrectCasting.ts} +86 -85
- package/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationApplication.ts +3 -3
- package/src/orchestrate/realize/utils/AutoBeRealizeAuthorizationReplaceImport.ts +10 -7
- package/src/orchestrate/realize/utils/generateRealizeScenario.ts +1 -1
- package/src/orchestrate/realize/utils/getRealizeWriteCodeTemplate.ts +2 -2
- package/src/orchestrate/realize/utils/getRealizeWriteDto.ts +1 -1
- package/src/orchestrate/realize/utils/getRealizeWriteInputType.ts +2 -2
- package/src/orchestrate/realize/utils/printErrorHints.ts +1 -1
- package/src/orchestrate/test/compile/getTestScenarioArtifacts.ts +1 -1
- package/src/orchestrate/test/histories/transformTestCorrectHistories.ts +6 -24
- package/src/orchestrate/test/histories/transformTestCorrectInvalidRequestHistories.ts +10 -10
- package/src/orchestrate/test/histories/transformTestScenarioHistories.ts +12 -10
- package/src/orchestrate/test/orchestrateTestCorrect.ts +2 -0
- package/src/orchestrate/test/orchestrateTestCorrectInvalidRequest.ts +1 -0
- package/src/orchestrate/test/orchestrateTestScenario.ts +30 -30
- package/src/orchestrate/test/orchestrateTestScenarioReview.ts +2 -2
- package/src/orchestrate/test/structures/{IAutoBeTestScenarioAuthorizationRole.ts → IAutoBeTestScenarioAuthorizationActor.ts} +1 -1
- package/lib/orchestrate/interface/histories/transformInterfaceSchemasReviewHistories.d.ts +0 -4
- package/lib/orchestrate/interface/histories/transformInterfaceSchemasReviewHistories.js +0 -60
- package/lib/orchestrate/interface/histories/transformInterfaceSchemasReviewHistories.js.map +0 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemasReview.d.ts +0 -9
- package/lib/orchestrate/interface/orchestrateInterfaceSchemasReview.js.map +0 -1
- package/lib/orchestrate/interface/structures/IAutobeInterfaceSchemasReviewApplication.d.ts +0 -91
- package/lib/orchestrate/interface/structures/IAutobeInterfaceSchemasReviewApplication.js.map +0 -1
- package/lib/orchestrate/realize/orchestRateRealizeCorrectCasting.js.map +0 -1
- package/lib/orchestrate/test/structures/IAutoBeTestScenarioAuthorizationRole.js.map +0 -1
- package/src/orchestrate/interface/histories/transformInterfaceSchemasReviewHistories.ts +0 -67
- package/src/orchestrate/interface/structures/IAutobeInterfaceSchemasReviewApplication.ts +0 -96
- /package/lib/orchestrate/realize/{orchestRateRealizeCorrectCasting.d.ts → orchestrateRealizeCorrectCasting.d.ts} +0 -0
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
import { IAgenticaController } from "@agentica/core";
|
|
2
|
-
import {
|
|
3
|
-
AutoBeInterfaceSchemasReviewEvent,
|
|
4
|
-
AutoBeOpenApi,
|
|
5
|
-
AutoBeProgressEventBase,
|
|
6
|
-
} from "@autobe/interface";
|
|
2
|
+
import { AutoBeOpenApi, AutoBeProgressEventBase } from "@autobe/interface";
|
|
7
3
|
import { ILlmApplication, ILlmSchema, IValidation } from "@samchon/openapi";
|
|
8
4
|
import { OpenApiV3_1Emender } from "@samchon/openapi/lib/converters/OpenApiV3_1Emender";
|
|
9
5
|
import { IPointer } from "tstl";
|
|
@@ -15,31 +11,38 @@ import { AutoBeContext } from "../../context/AutoBeContext";
|
|
|
15
11
|
import { assertSchemaModel } from "../../context/assertSchemaModel";
|
|
16
12
|
import { divideArray } from "../../utils/divideArray";
|
|
17
13
|
import { executeCachedBatch } from "../../utils/executeCachedBatch";
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
14
|
+
import { transformInterfaceSchemaReviewHistories } from "./histories/transformInterfaceSchemaReviewHistories";
|
|
15
|
+
import { IAutoBeInterfaceSchemaContentReviewApplication } from "./structures/IAutoBeInterfaceSchemaContentReviewApplication";
|
|
20
16
|
import { JsonSchemaFactory } from "./utils/JsonSchemaFactory";
|
|
21
17
|
import { JsonSchemaNamingConvention } from "./utils/JsonSchemaNamingConvention";
|
|
22
18
|
import { JsonSchemaValidator } from "./utils/JsonSchemaValidator";
|
|
23
19
|
import { fulfillJsonSchemaErrorMessages } from "./utils/fulfillJsonSchemaErrorMessages";
|
|
24
20
|
|
|
25
|
-
|
|
21
|
+
interface IConfig {
|
|
22
|
+
type:
|
|
23
|
+
| "interfaceSchemaContentReview"
|
|
24
|
+
| "interfaceSchemaSecurityReview"
|
|
25
|
+
| "interfaceSchemaRelationReview";
|
|
26
|
+
systemPrompt: string;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export async function orchestrateInterfaceSchemaReview<
|
|
26
30
|
Model extends ILlmSchema.Model,
|
|
27
31
|
>(
|
|
28
32
|
ctx: AutoBeContext<Model>,
|
|
29
|
-
|
|
30
|
-
|
|
33
|
+
config: IConfig,
|
|
34
|
+
props: {
|
|
35
|
+
document: AutoBeOpenApi.IDocument;
|
|
36
|
+
instruction: string;
|
|
37
|
+
},
|
|
31
38
|
capacity: number = AutoBeConfigConstant.INTERFACE_CAPACITY,
|
|
32
39
|
): Promise<Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>> {
|
|
33
|
-
const
|
|
34
|
-
|
|
40
|
+
const typeNames: string[] = Object.keys(props.document.components.schemas);
|
|
41
|
+
const matrix: string[][] = divideArray({
|
|
42
|
+
array: typeNames,
|
|
43
|
+
capacity,
|
|
35
44
|
});
|
|
36
|
-
|
|
37
|
-
const matrix: Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>[][] =
|
|
38
|
-
divideArray({
|
|
39
|
-
array: a,
|
|
40
|
-
capacity,
|
|
41
|
-
});
|
|
42
|
-
const progress: IProgress = {
|
|
45
|
+
const progress: AutoBeProgressEventBase = {
|
|
43
46
|
total: matrix.length,
|
|
44
47
|
completed: 0,
|
|
45
48
|
};
|
|
@@ -47,12 +50,31 @@ export async function orchestrateInterfaceSchemasReview<
|
|
|
47
50
|
const x: Record<string, AutoBeOpenApi.IJsonSchemaDescriptive> = {};
|
|
48
51
|
for (const y of await executeCachedBatch(
|
|
49
52
|
matrix.map((it) => async (promptCacheKey) => {
|
|
53
|
+
const operations: AutoBeOpenApi.IOperation[] =
|
|
54
|
+
props.document.operations.filter(
|
|
55
|
+
(op) =>
|
|
56
|
+
(op.requestBody && it.includes(op.requestBody.typeName)) ||
|
|
57
|
+
(op.responseBody && it.includes(op.responseBody.typeName)),
|
|
58
|
+
);
|
|
50
59
|
const row: Record<string, AutoBeOpenApi.IJsonSchemaDescriptive> =
|
|
51
|
-
await divideAndConquer(ctx,
|
|
60
|
+
await divideAndConquer(ctx, config, {
|
|
61
|
+
instruction: props.instruction,
|
|
62
|
+
operations,
|
|
63
|
+
everySchemas: props.document.components.schemas,
|
|
64
|
+
reviewSchemas: it.reduce(
|
|
65
|
+
(acc, cur) => {
|
|
66
|
+
acc[cur] = props.document.components.schemas[cur];
|
|
67
|
+
return acc;
|
|
68
|
+
},
|
|
69
|
+
{} as Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>,
|
|
70
|
+
),
|
|
71
|
+
progress,
|
|
72
|
+
promptCacheKey,
|
|
73
|
+
});
|
|
52
74
|
return row;
|
|
53
75
|
}),
|
|
54
76
|
)) {
|
|
55
|
-
JsonSchemaNamingConvention.schemas(operations, x, y);
|
|
77
|
+
JsonSchemaNamingConvention.schemas(props.document.operations, x, y);
|
|
56
78
|
Object.assign(x, y);
|
|
57
79
|
}
|
|
58
80
|
return x;
|
|
@@ -60,46 +82,41 @@ export async function orchestrateInterfaceSchemasReview<
|
|
|
60
82
|
|
|
61
83
|
async function divideAndConquer<Model extends ILlmSchema.Model>(
|
|
62
84
|
ctx: AutoBeContext<Model>,
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
export async function step<Model extends ILlmSchema.Model>(
|
|
73
|
-
ctx: AutoBeContext<Model>,
|
|
74
|
-
operations: AutoBeOpenApi.IOperation[],
|
|
75
|
-
schemas: Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>,
|
|
76
|
-
progress: AutoBeProgressEventBase,
|
|
77
|
-
promptCacheKey: string,
|
|
85
|
+
config: IConfig,
|
|
86
|
+
props: {
|
|
87
|
+
instruction: string;
|
|
88
|
+
operations: AutoBeOpenApi.IOperation[];
|
|
89
|
+
everySchemas: Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>;
|
|
90
|
+
reviewSchemas: Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>;
|
|
91
|
+
progress: AutoBeProgressEventBase;
|
|
92
|
+
promptCacheKey: string;
|
|
93
|
+
},
|
|
78
94
|
): Promise<Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>> {
|
|
79
95
|
try {
|
|
80
|
-
const pointer: IPointer<
|
|
96
|
+
const pointer: IPointer<IAutoBeInterfaceSchemaContentReviewApplication.IProps | null> =
|
|
81
97
|
{
|
|
82
98
|
value: null,
|
|
83
99
|
};
|
|
84
100
|
const { tokenUsage } = await ctx.conversate({
|
|
85
|
-
source: "
|
|
101
|
+
source: "interfaceSchemaContentReview",
|
|
86
102
|
controller: createController({
|
|
87
103
|
model: ctx.model,
|
|
88
104
|
pointer,
|
|
89
|
-
operations,
|
|
90
|
-
schemas,
|
|
91
105
|
}),
|
|
92
|
-
histories:
|
|
93
|
-
ctx.state(),
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
106
|
+
histories: transformInterfaceSchemaReviewHistories({
|
|
107
|
+
state: ctx.state(),
|
|
108
|
+
systemPrompt: config.systemPrompt,
|
|
109
|
+
instruction: props.instruction,
|
|
110
|
+
operations: props.operations,
|
|
111
|
+
everySchemas: props.everySchemas,
|
|
112
|
+
reviewSchemas: props.reviewSchemas,
|
|
113
|
+
}),
|
|
97
114
|
enforceFunctionCall: true,
|
|
98
|
-
promptCacheKey,
|
|
99
|
-
message: "Review
|
|
115
|
+
promptCacheKey: props.promptCacheKey,
|
|
116
|
+
message: "Review DTO content completeness and consistency.",
|
|
100
117
|
});
|
|
101
118
|
if (pointer.value === null) {
|
|
102
|
-
++progress.completed;
|
|
119
|
+
++props.progress.completed;
|
|
103
120
|
return {};
|
|
104
121
|
}
|
|
105
122
|
|
|
@@ -110,40 +127,40 @@ export async function step<Model extends ILlmSchema.Model>(
|
|
|
110
127
|
).schemas ?? {}) as Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>;
|
|
111
128
|
|
|
112
129
|
ctx.dispatch({
|
|
113
|
-
type:
|
|
130
|
+
type: config.type,
|
|
114
131
|
id: v7(),
|
|
115
|
-
schemas:
|
|
132
|
+
schemas: props.reviewSchemas,
|
|
116
133
|
review: pointer.value.think.review,
|
|
117
134
|
plan: pointer.value.think.plan,
|
|
118
135
|
content,
|
|
119
136
|
tokenUsage,
|
|
120
137
|
step: ctx.state().analyze?.step ?? 0,
|
|
121
|
-
total: progress.total,
|
|
122
|
-
completed: ++progress.completed,
|
|
138
|
+
total: props.progress.total,
|
|
139
|
+
completed: ++props.progress.completed,
|
|
123
140
|
created_at: new Date().toISOString(),
|
|
124
|
-
}
|
|
141
|
+
});
|
|
125
142
|
return content;
|
|
126
143
|
} catch {
|
|
127
|
-
++progress.completed;
|
|
144
|
+
++props.progress.completed;
|
|
128
145
|
return {};
|
|
129
146
|
}
|
|
130
147
|
}
|
|
131
148
|
|
|
132
149
|
function createController<Model extends ILlmSchema.Model>(props: {
|
|
133
150
|
model: Model;
|
|
134
|
-
pointer: IPointer<
|
|
135
|
-
operations: AutoBeOpenApi.IOperation[];
|
|
136
|
-
schemas: Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>;
|
|
151
|
+
pointer: IPointer<IAutoBeInterfaceSchemaContentReviewApplication.IProps | null>;
|
|
137
152
|
}): IAgenticaController.IClass<Model> {
|
|
138
153
|
assertSchemaModel(props.model);
|
|
139
154
|
|
|
140
155
|
const validate = (
|
|
141
156
|
next: unknown,
|
|
142
|
-
): IValidation<
|
|
157
|
+
): IValidation<IAutoBeInterfaceSchemaContentReviewApplication.IProps> => {
|
|
143
158
|
JsonSchemaFactory.fixPage("content", next);
|
|
144
159
|
|
|
145
|
-
const result: IValidation<
|
|
146
|
-
typia.validate<
|
|
160
|
+
const result: IValidation<IAutoBeInterfaceSchemaContentReviewApplication.IProps> =
|
|
161
|
+
typia.validate<IAutoBeInterfaceSchemaContentReviewApplication.IProps>(
|
|
162
|
+
next,
|
|
163
|
+
);
|
|
147
164
|
if (result.success === false) {
|
|
148
165
|
fulfillJsonSchemaErrorMessages(result.errors);
|
|
149
166
|
return result;
|
|
@@ -171,25 +188,31 @@ function createController<Model extends ILlmSchema.Model>(props: {
|
|
|
171
188
|
) satisfies ILlmApplication<any> as unknown as ILlmApplication<Model>;
|
|
172
189
|
return {
|
|
173
190
|
protocol: "class",
|
|
174
|
-
name: "
|
|
191
|
+
name: "ContentReviewer",
|
|
175
192
|
application,
|
|
176
193
|
execute: {
|
|
177
194
|
review: (input) => {
|
|
178
195
|
props.pointer.value = input;
|
|
179
196
|
},
|
|
180
|
-
} satisfies
|
|
197
|
+
} satisfies IAutoBeInterfaceSchemaContentReviewApplication,
|
|
181
198
|
};
|
|
182
199
|
}
|
|
183
200
|
|
|
184
201
|
const collection = {
|
|
185
202
|
chatgpt: (validate: Validator) =>
|
|
186
|
-
typia.llm.application<
|
|
203
|
+
typia.llm.application<
|
|
204
|
+
IAutoBeInterfaceSchemaContentReviewApplication,
|
|
205
|
+
"chatgpt"
|
|
206
|
+
>({
|
|
187
207
|
validate: {
|
|
188
208
|
review: validate,
|
|
189
209
|
},
|
|
190
210
|
}),
|
|
191
211
|
claude: (validate: Validator) =>
|
|
192
|
-
typia.llm.application<
|
|
212
|
+
typia.llm.application<
|
|
213
|
+
IAutoBeInterfaceSchemaContentReviewApplication,
|
|
214
|
+
"claude"
|
|
215
|
+
>({
|
|
193
216
|
validate: {
|
|
194
217
|
review: validate,
|
|
195
218
|
},
|
|
@@ -198,9 +221,4 @@ const collection = {
|
|
|
198
221
|
|
|
199
222
|
type Validator = (
|
|
200
223
|
input: unknown,
|
|
201
|
-
) => IValidation<
|
|
202
|
-
|
|
203
|
-
export interface IProgress {
|
|
204
|
-
total: number;
|
|
205
|
-
completed: number;
|
|
206
|
-
}
|
|
224
|
+
) => IValidation<IAutoBeInterfaceSchemaContentReviewApplication.IProps>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IAgenticaController } from "@agentica/core";
|
|
2
2
|
import {
|
|
3
|
-
|
|
3
|
+
AutoBeInterfaceSchemaEvent,
|
|
4
4
|
AutoBeOpenApi,
|
|
5
5
|
AutoBeProgressEventBase,
|
|
6
6
|
} from "@autobe/interface";
|
|
@@ -59,13 +59,18 @@ export async function orchestrateInterfaceSchemas<
|
|
|
59
59
|
};
|
|
60
60
|
for (const y of await executeCachedBatch(
|
|
61
61
|
matrix.map((it) => async (promptCacheKey) => {
|
|
62
|
+
const operations: AutoBeOpenApi.IOperation[] = props.operations.filter(
|
|
63
|
+
(op) =>
|
|
64
|
+
(op.requestBody && it.includes(op.requestBody.typeName)) ||
|
|
65
|
+
(op.responseBody && it.includes(op.responseBody.typeName)),
|
|
66
|
+
);
|
|
62
67
|
const row: Record<string, AutoBeOpenApi.IJsonSchemaDescriptive> =
|
|
63
68
|
await divideAndConquer(ctx, {
|
|
64
|
-
|
|
65
|
-
operations: props.operations,
|
|
66
|
-
typeNames: it,
|
|
69
|
+
operations,
|
|
67
70
|
progress,
|
|
68
71
|
promptCacheKey,
|
|
72
|
+
typeNames: it,
|
|
73
|
+
instruction: props.instruction,
|
|
69
74
|
});
|
|
70
75
|
return row;
|
|
71
76
|
}),
|
|
@@ -129,9 +134,12 @@ async function process<Model extends ILlmSchema.Model>(
|
|
|
129
134
|
value: null,
|
|
130
135
|
};
|
|
131
136
|
const { tokenUsage } = await ctx.conversate({
|
|
132
|
-
source: "
|
|
137
|
+
source: "interfaceSchema",
|
|
133
138
|
histories: transformInterfaceSchemaHistories({
|
|
134
139
|
state: ctx.state(),
|
|
140
|
+
typeNames: Array.from(
|
|
141
|
+
new Set([...props.remained, ...Object.keys(props.oldbie)]),
|
|
142
|
+
),
|
|
135
143
|
operations: props.operations,
|
|
136
144
|
instruction: props.instruction,
|
|
137
145
|
}),
|
|
@@ -154,7 +162,7 @@ async function process<Model extends ILlmSchema.Model>(
|
|
|
154
162
|
too.
|
|
155
163
|
|
|
156
164
|
${Array.from(props.remained)
|
|
157
|
-
.map((k) =>
|
|
165
|
+
.map((k) => `- \`${k}\``)
|
|
158
166
|
.join("\n")}${
|
|
159
167
|
already.length !== 0
|
|
160
168
|
? StringUtil.trim`
|
|
@@ -176,7 +184,7 @@ async function process<Model extends ILlmSchema.Model>(
|
|
|
176
184
|
}) as AutoBeOpenApi.IComponents
|
|
177
185
|
).schemas ?? {}) as Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>;
|
|
178
186
|
ctx.dispatch({
|
|
179
|
-
type: "
|
|
187
|
+
type: "interfaceSchema",
|
|
180
188
|
id: v7(),
|
|
181
189
|
schemas,
|
|
182
190
|
tokenUsage,
|
|
@@ -186,7 +194,7 @@ async function process<Model extends ILlmSchema.Model>(
|
|
|
186
194
|
).length),
|
|
187
195
|
step: ctx.state().prisma?.step ?? 0,
|
|
188
196
|
created_at: new Date().toISOString(),
|
|
189
|
-
} satisfies
|
|
197
|
+
} satisfies AutoBeInterfaceSchemaEvent);
|
|
190
198
|
return schemas;
|
|
191
199
|
}
|
|
192
200
|
|
|
@@ -86,7 +86,11 @@ export namespace IAutoBeInterfaceOperationApplication {
|
|
|
86
86
|
* }
|
|
87
87
|
* ```
|
|
88
88
|
*/
|
|
89
|
-
export interface IOperation
|
|
89
|
+
export interface IOperation
|
|
90
|
+
extends Omit<
|
|
91
|
+
AutoBeOpenApi.IEndpoint,
|
|
92
|
+
"authorizationActor" | "prerequisites"
|
|
93
|
+
> {
|
|
90
94
|
/**
|
|
91
95
|
* Specification of the API operation.
|
|
92
96
|
*
|
|
@@ -341,58 +345,58 @@ export namespace IAutoBeInterfaceOperationApplication {
|
|
|
341
345
|
name: string & CamelCasePattern;
|
|
342
346
|
|
|
343
347
|
/**
|
|
344
|
-
* Authorization
|
|
348
|
+
* Authorization actors required to access this API operation.
|
|
345
349
|
*
|
|
346
|
-
* This field specifies which user
|
|
347
|
-
* endpoint. Multiple
|
|
350
|
+
* This field specifies which user actors are allowed to access this
|
|
351
|
+
* endpoint. Multiple actors can be specified to allow different types of
|
|
348
352
|
* users to access the same endpoint.
|
|
349
353
|
*
|
|
350
|
-
* ## ⚠️ CRITICAL:
|
|
354
|
+
* ## ⚠️ CRITICAL: Actor Multiplication Effect
|
|
351
355
|
*
|
|
352
|
-
* **EACH
|
|
356
|
+
* **EACH ACTOR IN THIS ARRAY GENERATES A SEPARATE ENDPOINT**
|
|
353
357
|
*
|
|
354
358
|
* - If you specify `["admin", "moderator", "member"]`, this creates 3
|
|
355
359
|
* separate endpoints
|
|
356
|
-
* - Total generated endpoints = operations × average
|
|
357
|
-
* - Example: 100 operations with 3
|
|
360
|
+
* - Total generated endpoints = operations × average actors.length
|
|
361
|
+
* - Example: 100 operations with 3 actors each = 300 actual endpoints
|
|
358
362
|
*
|
|
359
363
|
* ## 🔴 AVOID OVER-GENERATION
|
|
360
364
|
*
|
|
361
|
-
* **DO NOT create
|
|
365
|
+
* **DO NOT create actor-specific endpoints when a public endpoint would
|
|
362
366
|
* suffice:**
|
|
363
367
|
*
|
|
364
368
|
* - ❌ BAD: Separate GET endpoints for admin, member, moderator to view the
|
|
365
369
|
* same public data
|
|
366
|
-
* - ✅ GOOD: Single public endpoint `[]` with
|
|
370
|
+
* - ✅ GOOD: Single public endpoint `[]` with actor-based filtering in business
|
|
367
371
|
* logic
|
|
368
372
|
*
|
|
369
|
-
* **DO NOT enumerate all possible
|
|
373
|
+
* **DO NOT enumerate all possible actors when the Prisma schema uses a
|
|
370
374
|
* single User table:**
|
|
371
375
|
*
|
|
372
376
|
* - If Prisma has a User table with role/permission fields, you likely only
|
|
373
377
|
* need `["user"]`
|
|
374
378
|
* - Avoid listing `["admin", "seller", "buyer", "moderator", ...]`
|
|
375
379
|
* unnecessarily
|
|
376
|
-
* - The actual
|
|
380
|
+
* - The actual actor checking happens in business logic, not at the endpoint
|
|
377
381
|
* level
|
|
378
382
|
*
|
|
379
383
|
* ## Naming Convention
|
|
380
384
|
*
|
|
381
|
-
* DO: Use camelCase for all
|
|
385
|
+
* DO: Use camelCase for all actor names.
|
|
382
386
|
*
|
|
383
387
|
* ## Important Guidelines
|
|
384
388
|
*
|
|
385
389
|
* - Set to empty array `[]` for public endpoints that require no
|
|
386
390
|
* authentication
|
|
387
|
-
* - Set to array with
|
|
388
|
-
* - **MINIMIZE the number of
|
|
389
|
-
* - Consider if the endpoint can be public with
|
|
390
|
-
* - The
|
|
391
|
+
* - Set to array with actor strings for actor-restricted endpoints
|
|
392
|
+
* - **MINIMIZE the number of actors per endpoint to prevent explosion**
|
|
393
|
+
* - Consider if the endpoint can be public with actor-based filtering instead
|
|
394
|
+
* - The actor names match exactly with the user type/actor defined in the
|
|
391
395
|
* database
|
|
392
396
|
* - This will be used by the Realize Agent to generate appropriate decorator
|
|
393
397
|
* and authorization logic in the provider functions
|
|
394
398
|
* - The controller will apply the corresponding authentication decorator
|
|
395
|
-
* based on these
|
|
399
|
+
* based on these actors
|
|
396
400
|
*
|
|
397
401
|
* ## Examples
|
|
398
402
|
*
|
|
@@ -410,17 +414,17 @@ export namespace IAutoBeInterfaceOperationApplication {
|
|
|
410
414
|
*
|
|
411
415
|
* 1. **Start with public `[]` for all read operations** unless sensitive data
|
|
412
416
|
* is involved
|
|
413
|
-
* 2. **Use single
|
|
417
|
+
* 2. **Use single actor `["user"]` for authenticated operations** and handle
|
|
414
418
|
* permissions in business logic
|
|
415
|
-
* 3. **Only use multiple
|
|
419
|
+
* 3. **Only use multiple actors when absolutely necessary** for different
|
|
416
420
|
* business logic paths
|
|
417
|
-
* 4. **Remember: Fewer
|
|
421
|
+
* 4. **Remember: Fewer actors = Fewer endpoints = Better performance and
|
|
418
422
|
* maintainability**
|
|
419
423
|
*
|
|
420
424
|
* Note: The actual authentication/authorization implementation will be
|
|
421
425
|
* handled by decorators at the controller level, and the provider function
|
|
422
426
|
* will receive the authenticated user object with the appropriate type.
|
|
423
427
|
*/
|
|
424
|
-
|
|
428
|
+
authorizationActors: Array<string & CamelCasePattern & tags.MinLength<1>>;
|
|
425
429
|
}
|
|
426
430
|
}
|
|
@@ -18,8 +18,8 @@ export interface IAutoBeInterfaceOperationsReviewApplication {
|
|
|
18
18
|
* process containing review findings and improvement plans, plus the final
|
|
19
19
|
* production-ready operations with all critical issues resolved.
|
|
20
20
|
*
|
|
21
|
-
* @param input Properties containing the thinking process (review & plan)
|
|
22
|
-
*
|
|
21
|
+
* @param input Properties containing the thinking process (review & plan) and
|
|
22
|
+
* the enhanced operations content
|
|
23
23
|
*/
|
|
24
24
|
reviewOperations(
|
|
25
25
|
input: IAutoBeInterfaceOperationsReviewApplication.IProps,
|
|
@@ -32,7 +32,7 @@ export namespace IAutoBeInterfaceOperationsReviewApplication {
|
|
|
32
32
|
*
|
|
33
33
|
* Contains both the input operations to be reviewed and the outputs generated
|
|
34
34
|
* by the Interface Operations Review Agent, which will be published as part
|
|
35
|
-
* of the
|
|
35
|
+
* of the AutoBeInterfaceOperationReviewEvent.
|
|
36
36
|
*/
|
|
37
37
|
export interface IProps {
|
|
38
38
|
/**
|
|
@@ -70,10 +70,10 @@ export namespace IAutoBeInterfaceOperationsReviewApplication {
|
|
|
70
70
|
/**
|
|
71
71
|
* Structured thinking process for comprehensive API operation review.
|
|
72
72
|
*
|
|
73
|
-
* Combines analytical review findings with actionable improvement planning
|
|
74
|
-
*
|
|
75
|
-
*
|
|
76
|
-
*
|
|
73
|
+
* Combines analytical review findings with actionable improvement planning to
|
|
74
|
+
* guide the systematic enhancement of API operations. This thinking structure
|
|
75
|
+
* ensures all aspects of API quality are evaluated and addressed before
|
|
76
|
+
* producing the final operations.
|
|
77
77
|
*/
|
|
78
78
|
export interface IThink {
|
|
79
79
|
/**
|
package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaContentReviewApplication.ts
ADDED
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { AutoBeOpenApi } from "@autobe/interface";
|
|
2
|
+
|
|
3
|
+
export interface IAutoBeInterfaceSchemaContentReviewApplication {
|
|
4
|
+
/**
|
|
5
|
+
* Reviews and validates DTO content completeness and consistency in OpenAPI
|
|
6
|
+
* schemas.
|
|
7
|
+
*
|
|
8
|
+
* This specialized content review function focuses exclusively on ensuring
|
|
9
|
+
* DTOs accurately and completely represent their business entities. It
|
|
10
|
+
* validates field completeness, type accuracy, required field settings, and
|
|
11
|
+
* documentation quality.
|
|
12
|
+
*
|
|
13
|
+
* The review process validates and corrects:
|
|
14
|
+
*
|
|
15
|
+
* - Field completeness against Prisma schema
|
|
16
|
+
* - Data type accuracy (Prisma to OpenAPI type mappings)
|
|
17
|
+
* - Required field arrays matching Prisma nullability
|
|
18
|
+
* - Description quality and comprehensiveness
|
|
19
|
+
* - Consistency across DTO variants (IEntity, ICreate, IUpdate, ISummary)
|
|
20
|
+
* - Missing variant detection and creation
|
|
21
|
+
*
|
|
22
|
+
* @param props Content review results including completeness issues found,
|
|
23
|
+
* fixes applied, and modified schemas
|
|
24
|
+
*/
|
|
25
|
+
review: (
|
|
26
|
+
props: IAutoBeInterfaceSchemaContentReviewApplication.IProps,
|
|
27
|
+
) => void;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export namespace IAutoBeInterfaceSchemaContentReviewApplication {
|
|
31
|
+
/**
|
|
32
|
+
* Output structure for the content review function.
|
|
33
|
+
*
|
|
34
|
+
* Contains the content analysis, completeness fixes, and schemas modified for
|
|
35
|
+
* content quality during the validation process.
|
|
36
|
+
*/
|
|
37
|
+
export interface IProps {
|
|
38
|
+
/** Content analysis and completeness planning information. */
|
|
39
|
+
think: IThink;
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Modified schemas resulting from content and completeness fixes.
|
|
43
|
+
*
|
|
44
|
+
* Contains ONLY the schemas that were modified for content reasons during
|
|
45
|
+
* review. This includes both modified existing schemas and newly created
|
|
46
|
+
* variant schemas.
|
|
47
|
+
*
|
|
48
|
+
* Content modifications include:
|
|
49
|
+
*
|
|
50
|
+
* - Adding missing fields from Prisma schema
|
|
51
|
+
* - Correcting data type mappings
|
|
52
|
+
* - Fixing required field arrays
|
|
53
|
+
* - Enhancing or adding descriptions
|
|
54
|
+
* - Creating missing variant types (ISummary, IUpdate, etc.)
|
|
55
|
+
* - Ensuring cross-variant consistency
|
|
56
|
+
*
|
|
57
|
+
* Return empty object {} when all content is already complete and accurate,
|
|
58
|
+
* requiring no modifications.
|
|
59
|
+
*/
|
|
60
|
+
content: Record<string, AutoBeOpenApi.IJsonSchemaDescriptive>;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export interface IThink {
|
|
64
|
+
/**
|
|
65
|
+
* Content completeness and quality findings from the review process.
|
|
66
|
+
*
|
|
67
|
+
* Documents all content issues discovered during validation, categorized by
|
|
68
|
+
* type: field completeness, type accuracy, required fields, descriptions,
|
|
69
|
+
* variant consistency, and missing variants. Each issue includes the
|
|
70
|
+
* affected schema and specific problem identified.
|
|
71
|
+
*
|
|
72
|
+
* Common issues documented:
|
|
73
|
+
*
|
|
74
|
+
* - Field Completeness: Missing fields that exist in Prisma schema
|
|
75
|
+
* - Type Accuracy: Incorrect type mappings (e.g., Decimal as string)
|
|
76
|
+
* - Required Fields: Misaligned with Prisma nullable settings
|
|
77
|
+
* - Description Quality: Missing or inadequate descriptions
|
|
78
|
+
* - Variant Consistency: Same field with different types across variants
|
|
79
|
+
* - Missing Variants: Required DTO variants not present
|
|
80
|
+
*
|
|
81
|
+
* Should state "No content or completeness issues found." when all schemas
|
|
82
|
+
* have complete and accurate content.
|
|
83
|
+
*/
|
|
84
|
+
review: string;
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Content corrections and completeness fixes applied during review.
|
|
88
|
+
*
|
|
89
|
+
* Lists all content modifications implemented, organized by fix type:
|
|
90
|
+
* fields added, types corrected, required arrays fixed, descriptions
|
|
91
|
+
* enhanced, consistency fixes, and variants created. Documents both field-
|
|
92
|
+
* level changes and schema-level additions.
|
|
93
|
+
*
|
|
94
|
+
* Typical fixes documented:
|
|
95
|
+
*
|
|
96
|
+
* - Fields added to match Prisma schema
|
|
97
|
+
* - Type mappings corrected (Int→integer, Decimal→number)
|
|
98
|
+
* - Required arrays aligned with nullability
|
|
99
|
+
* - Descriptions added or enhanced for clarity
|
|
100
|
+
* - Variant consistency issues resolved
|
|
101
|
+
* - Missing variants created with appropriate fields
|
|
102
|
+
*
|
|
103
|
+
* Should state "No content issues require fixes. All DTOs are complete and
|
|
104
|
+
* consistent." when no content modifications were necessary.
|
|
105
|
+
*/
|
|
106
|
+
plan: string;
|
|
107
|
+
}
|
|
108
|
+
}
|