@autobe/agent 0.30.0-dev.20260315 → 0.30.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +661 -661
- package/lib/constants/AutoBeTemplateFileConstant.d.ts +1 -1
- package/lib/factory/consentFunctionCall.js +4 -4
- package/lib/factory/createAutoBeContext.js +24 -24
- package/lib/factory/createAutoBeMessageContent.js +6 -6
- package/lib/index.mjs +41 -41
- package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioHistory.js +18 -18
- package/lib/orchestrate/analyze/histories/transformAnalyzeScenarioReviewHistory.js +13 -13
- package/lib/orchestrate/analyze/histories/transformAnalyzeSectionCrossFileReviewHistory.js +47 -47
- package/lib/orchestrate/analyze/histories/transformAnalyzeSectionReviewHistory.js +66 -66
- package/lib/orchestrate/analyze/histories/transformAnalyzeWriteSectionHistory.js +91 -91
- package/lib/orchestrate/analyze/histories/transformAnalyzeWriteSectionPatchHistory.js +46 -46
- package/lib/orchestrate/analyze/histories/transformAnalyzeWriteUnitHistory.js +72 -72
- package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeSectionCrossFileReview.js +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeSectionReview.js +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeWriteSection.js +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeWriteSectionPatch.js +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeWriteUnit.js +1 -1
- package/lib/orchestrate/common/histories/transformCommonCorrectCastingHistory.js +5 -5
- package/lib/orchestrate/common/histories/transformPreliminaryHistory.js +44 -44
- package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistory.js +44 -44
- package/lib/orchestrate/common/internal/fixPrelminaryApplication.js +22 -22
- package/lib/orchestrate/common/internal/validatePreliminary.js +116 -116
- package/lib/orchestrate/facade/createAutoBeFacadeController.js +3 -3
- package/lib/orchestrate/facade/structures/transformFacadeStateMessage.js +20 -20
- package/lib/orchestrate/interface/histories/transformInterfaceActionEndpointReviewHistory.js +34 -34
- package/lib/orchestrate/interface/histories/transformInterfaceActionEndpointWriteHistory.js +37 -37
- package/lib/orchestrate/interface/histories/transformInterfaceAuthorizationHistory.js +56 -56
- package/lib/orchestrate/interface/histories/transformInterfaceBaseEndpointReviewHistory.js +26 -26
- package/lib/orchestrate/interface/histories/transformInterfaceBaseEndpointWriteHistory.js +28 -28
- package/lib/orchestrate/interface/histories/transformInterfaceEndpointAuthorizationSection.js +11 -11
- package/lib/orchestrate/interface/histories/transformInterfaceGroupHistory.js +38 -38
- package/lib/orchestrate/interface/histories/transformInterfaceOperationHistory.js +29 -29
- package/lib/orchestrate/interface/histories/transformInterfaceOperationParameterHistory.js +15 -15
- package/lib/orchestrate/interface/histories/transformInterfaceOperationReviewHistory.js +6 -6
- package/lib/orchestrate/interface/histories/transformInterfacePrerequisiteHistory.js +25 -25
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaCastingHistory.js +67 -67
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaComplementHistory.js +60 -60
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaRefineHistory.js +83 -83
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaRenameHistory.js +29 -29
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaReviewHistory.js +74 -74
- package/lib/orchestrate/interface/histories/transformInterfaceSchemaWriteHistory.js +46 -46
- package/lib/orchestrate/interface/orchestrateInterfaceAuthorization.js +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointReview.js +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointWrite.js +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceGroup.js +9 -9
- package/lib/orchestrate/interface/orchestrateInterfaceOperation.js +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceOperationReview.js +1 -1
- package/lib/orchestrate/interface/orchestrateInterfacePrerequisite.js +4 -4
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaCasting.js +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaComplement.js +5 -5
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaRefine.js +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.js +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaWrite.js +1 -1
- package/lib/orchestrate/interface/programmers/AutoBeInterfaceAuthorizationProgrammer.js +90 -90
- package/lib/orchestrate/interface/programmers/AutoBeInterfaceEndpointProgrammer.js +6 -6
- package/lib/orchestrate/interface/programmers/AutoBeInterfaceEndpointReviewProgrammer.js +25 -25
- package/lib/orchestrate/interface/programmers/AutoBeInterfaceOperationProgrammer.js +71 -71
- package/lib/orchestrate/interface/programmers/AutoBeInterfacePrerequisiteProgrammer.js +162 -162
- package/lib/orchestrate/interface/programmers/AutoBeInterfaceSchemaProgrammer.js +11 -11
- package/lib/orchestrate/interface/programmers/AutoBeInterfaceSchemaPropertyReviseProgrammer.js +73 -73
- package/lib/orchestrate/interface/programmers/AutoBeInterfaceSchemaRefineProgrammer.js +35 -35
- package/lib/orchestrate/interface/programmers/AutoBeInterfaceSchemaReviewProgrammer.js +11 -11
- package/lib/orchestrate/interface/utils/AutoBeJsonSchemaFactory.js +4 -4
- package/lib/orchestrate/interface/utils/AutoBeJsonSchemaValidator.js +283 -283
- package/lib/orchestrate/interface/utils/fulfillJsonSchemaErrorMessages.js +76 -76
- package/lib/orchestrate/prisma/histories/transformPrismaAuthorizationHistory.js +76 -76
- package/lib/orchestrate/prisma/histories/transformPrismaAuthorizationReviewHistory.js +51 -51
- package/lib/orchestrate/prisma/histories/transformPrismaComponentReviewHistory.js +54 -54
- package/lib/orchestrate/prisma/histories/transformPrismaComponentsHistory.js +83 -83
- package/lib/orchestrate/prisma/histories/transformPrismaCorrectHistory.js +6 -6
- package/lib/orchestrate/prisma/histories/transformPrismaGroupHistory.js +22 -22
- package/lib/orchestrate/prisma/histories/transformPrismaGroupReviewHistory.js +41 -41
- package/lib/orchestrate/prisma/histories/transformPrismaSchemaHistory.js +39 -39
- package/lib/orchestrate/prisma/histories/transformPrismaSchemaReviewHistory.js +41 -41
- package/lib/orchestrate/prisma/orchestratePrismaAuthorization.js +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaAuthorizationReview.js +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaComponent.js +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaComponentReview.js +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaCorrect.js +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaGroup.js +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaGroupReview.js +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaSchema.js +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaSchemaReview.js +1 -1
- package/lib/orchestrate/prisma/programmers/AutoBeDatabaseAuthorizationProgrammer.js +23 -23
- package/lib/orchestrate/prisma/programmers/AutoBeDatabaseAuthorizationReviewProgrammer.js +7 -7
- package/lib/orchestrate/prisma/programmers/AutoBeDatabaseComponentProgrammer.js +5 -5
- package/lib/orchestrate/prisma/programmers/AutoBeDatabaseComponentReviewProgrammer.js +20 -20
- package/lib/orchestrate/prisma/programmers/AutoBeDatabaseGroupProgrammer.js +13 -13
- package/lib/orchestrate/prisma/programmers/AutoBeDatabaseGroupReviewProgrammer.js +51 -51
- package/lib/orchestrate/prisma/programmers/AutoBeDatabaseSchemaProgrammer.js +25 -25
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistory.js +28 -28
- package/lib/orchestrate/realize/histories/transformRealizeAuthorizationWriteHistory.js +14 -14
- package/lib/orchestrate/realize/histories/transformRealizeCollectorCorrectHistory.js +42 -42
- package/lib/orchestrate/realize/histories/transformRealizeCollectorPlanHistory.js +27 -27
- package/lib/orchestrate/realize/histories/transformRealizeCollectorWriteHistory.js +57 -57
- package/lib/orchestrate/realize/histories/transformRealizeCorrectCastingHistory.js +35 -35
- package/lib/orchestrate/realize/histories/transformRealizeOperationCorrectHistory.js +14 -14
- package/lib/orchestrate/realize/histories/transformRealizeOperationWriteHistory.js +37 -37
- package/lib/orchestrate/realize/histories/transformRealizeOperationWriteHistory.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeTransformerCorrectHistory.js +47 -47
- package/lib/orchestrate/realize/histories/transformRealizeTransformerPlanHistory.js +27 -27
- package/lib/orchestrate/realize/histories/transformRealizeTransformerWriteHistory.js +51 -51
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationWrite.js +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeCollectorCorrectOverall.js +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeCollectorPlan.js +11 -11
- package/lib/orchestrate/realize/orchestrateRealizeCollectorWrite.js +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeOperationCorrectOverall.js +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeOperationWrite.js +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeTransformerCorrectOverall.js +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeTransformerPlan.js +11 -11
- package/lib/orchestrate/realize/orchestrateRealizeTransformerWrite.js +1 -1
- package/lib/orchestrate/realize/programmers/AutoBeRealizeCollectorProgrammer.js +41 -41
- package/lib/orchestrate/realize/programmers/AutoBeRealizeOperationProgrammer.js +21 -21
- package/lib/orchestrate/realize/programmers/AutoBeRealizeTransformerProgrammer.js +57 -57
- package/lib/orchestrate/realize/utils/getRealizeWriteInputType.js +3 -3
- package/lib/orchestrate/realize/utils/printErrorHints.js +5 -5
- package/lib/orchestrate/test/compile/getTestImportStatements.js +9 -9
- package/lib/orchestrate/test/histories/transformTestAuthorizeWriteHistory.js +38 -38
- package/lib/orchestrate/test/histories/transformTestGenerationWriteHistory.js +79 -79
- package/lib/orchestrate/test/histories/transformTestOperationWriteHistory.js +162 -162
- package/lib/orchestrate/test/histories/transformTestPrepareWriteHistory.js +54 -54
- package/lib/orchestrate/test/histories/transformTestScenarioHistory.js +31 -31
- package/lib/orchestrate/test/histories/transformTestScenarioReviewHistory.js +27 -27
- package/lib/orchestrate/test/orchestrateTestScenario.js +1 -1
- package/lib/orchestrate/test/orchestrateTestScenarioReview.js +1 -1
- package/lib/orchestrate/test/programmers/AutoBeTestAuthorizeProgrammer.js +31 -31
- package/lib/orchestrate/test/programmers/AutoBeTestGenerateProgrammer.js +23 -23
- package/lib/orchestrate/test/programmers/AutoBeTestOperationProgrammer.js +6 -6
- package/lib/orchestrate/test/programmers/AutoBeTestPrepareProgrammer.js +34 -34
- package/lib/orchestrate/test/programmers/AutoBeTestScenarioProgrammer.js +39 -39
- package/lib/utils/predicateStateMessage.js +19 -19
- package/lib/utils/validateEmptyCode.js +16 -16
- package/package.json +5 -5
- package/src/AutoBeAgent.ts +374 -374
- package/src/AutoBeAgentBase.ts +126 -126
- package/src/AutoBeMockAgent.ts +254 -254
- package/src/constants/AutoBeConfigConstant.ts +173 -173
- package/src/constants/AutoBeTemplateFileConstant.ts +1 -1
- package/src/context/AutoBeContext.ts +107 -107
- package/src/context/AutoBeState.ts +66 -66
- package/src/context/AutoBeTokenUsage.ts +307 -307
- package/src/context/AutoBeTokenUsageComponent.ts +227 -227
- package/src/describe/describe.ts +47 -47
- package/src/describe/image/histories/transformImageDescribeDraftHistories.ts +16 -16
- package/src/describe/image/orchestrateImageDescribeDraft.ts +200 -200
- package/src/describe/image/structures/IAutoBeImageDescribeDraftApplication.ts +92 -92
- package/src/describe/imageDescribe.ts +64 -64
- package/src/factory/consentFunctionCall.ts +141 -141
- package/src/factory/createAgenticaHistory.ts +71 -71
- package/src/factory/createAutoBeContext.ts +584 -584
- package/src/factory/createAutoBeMessageContent.ts +36 -36
- package/src/factory/createAutoBeState.ts +20 -20
- package/src/factory/getAutoBeGenerated.ts +317 -317
- package/src/factory/getAutoBeRealizeGenerated.ts +31 -31
- package/src/factory/getCriticalCompiler.ts +52 -52
- package/src/factory/index.ts +1 -1
- package/src/factory/mergeSystemMessages.ts +60 -60
- package/src/factory/supportFunctionCallFallback.ts +214 -214
- package/src/factory/supportMistral.ts +138 -138
- package/src/index.ts +16 -16
- package/src/orchestrate/analyze/fillTocDeterministic.ts +280 -280
- package/src/orchestrate/analyze/histories/transformAnalyzeScenarioHistory.ts +55 -55
- package/src/orchestrate/analyze/histories/transformAnalyzeScenarioReviewHistory.ts +74 -74
- package/src/orchestrate/analyze/histories/transformAnalyzeSectionCrossFileReviewHistory.ts +179 -179
- package/src/orchestrate/analyze/histories/transformAnalyzeSectionReviewHistory.ts +163 -163
- package/src/orchestrate/analyze/histories/transformAnalyzeWriteSectionHistory.ts +191 -191
- package/src/orchestrate/analyze/histories/transformAnalyzeWriteSectionPatchHistory.ts +122 -122
- package/src/orchestrate/analyze/histories/transformAnalyzeWriteUnitHistory.ts +161 -161
- package/src/orchestrate/analyze/index.ts +7 -7
- package/src/orchestrate/analyze/orchestrateAnalyze.ts +1693 -1693
- package/src/orchestrate/analyze/orchestrateAnalyzeScenario.ts +267 -267
- package/src/orchestrate/analyze/orchestrateAnalyzeScenarioReview.ts +122 -122
- package/src/orchestrate/analyze/orchestrateAnalyzeSectionCrossFileReview.ts +146 -146
- package/src/orchestrate/analyze/orchestrateAnalyzeSectionReview.ts +154 -154
- package/src/orchestrate/analyze/orchestrateAnalyzeWriteSection.ts +388 -388
- package/src/orchestrate/analyze/orchestrateAnalyzeWriteSectionPatch.ts +407 -407
- package/src/orchestrate/analyze/orchestrateAnalyzeWriteUnit.ts +348 -348
- package/src/orchestrate/analyze/programmers/AutoBeAnalyzeProgrammer.ts +149 -149
- package/src/orchestrate/analyze/structures/FixedAnalyzeTemplate.ts +961 -961
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioApplication.ts +141 -141
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioReviewApplication.ts +96 -96
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeSectionCrossFileReviewApplication.ts +160 -160
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeSectionReviewApplication.ts +192 -192
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeWriteSectionApplication.ts +142 -142
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeWriteUnitApplication.ts +123 -123
- package/src/orchestrate/analyze/utils/buildConstraintConsistencyReport.ts +813 -813
- package/src/orchestrate/analyze/utils/buildErrorCodeRegistry.ts +324 -324
- package/src/orchestrate/analyze/utils/buildHardValidators.ts +88 -88
- package/src/orchestrate/analyze/utils/detectInventedEntities.ts +87 -87
- package/src/orchestrate/analyze/utils/detectProseConstraintConflicts.ts +319 -319
- package/src/orchestrate/analyze/utils/repairSectionReviewUtils.ts +181 -181
- package/src/orchestrate/analyze/utils/repairUtils.ts +60 -60
- package/src/orchestrate/analyze/utils/validateScenarioBasics.ts +104 -104
- package/src/orchestrate/common/AutoBePreliminaryController.ts +400 -400
- package/src/orchestrate/common/histories/transformCommonCorrectCastingHistory.ts +32 -32
- package/src/orchestrate/common/histories/transformPreliminaryHistory.ts +742 -742
- package/src/orchestrate/common/histories/transformPreviousAndLatestCorrectHistory.ts +77 -77
- package/src/orchestrate/common/internal/complementPreliminaryCollection.ts +263 -263
- package/src/orchestrate/common/internal/convertToSectionEntries.ts +57 -57
- package/src/orchestrate/common/internal/createPreliminaryCollection.ts +76 -76
- package/src/orchestrate/common/internal/fixPrelminaryApplication.ts +346 -346
- package/src/orchestrate/common/internal/validatePreliminary.ts +671 -671
- package/src/orchestrate/common/orchestrateCommonCorrectCasting.ts +223 -223
- package/src/orchestrate/common/orchestratePreliminary.ts +610 -610
- package/src/orchestrate/common/structures/AutoBePreliminaryRequest.ts +42 -42
- package/src/orchestrate/common/structures/IAnalysisSectionEntry.ts +35 -35
- package/src/orchestrate/common/structures/IAutoBeCommonCorrectCastingApplication.ts +72 -72
- package/src/orchestrate/common/structures/IAutoBeOrchestrateResult.ts +28 -28
- package/src/orchestrate/common/structures/IAutoBePreliminaryCollection.ts +52 -52
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetAnalysisSections.ts +34 -34
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetDatabaseSchemas.ts +31 -31
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceOperations.ts +32 -32
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceSchemas.ts +31 -31
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousAnalysisSections.ts +28 -28
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousDatabaseSchemas.ts +88 -88
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousInterfaceOperations.ts +102 -102
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousInterfaceSchemas.ts +105 -105
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetRealizeCollectors.ts +32 -32
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetRealizeTransformers.ts +32 -32
- package/src/orchestrate/facade/createAutoBeFacadeController.ts +118 -118
- package/src/orchestrate/facade/histories/IAutoBeFacadeApplication.ts +139 -139
- package/src/orchestrate/facade/histories/IAutoBeFacadeApplicationProps.ts +8 -8
- package/src/orchestrate/facade/histories/IAutoBeFacadeApplicationResult.ts +9 -9
- package/src/orchestrate/facade/structures/transformFacadeStateMessage.ts +59 -59
- package/src/orchestrate/index.ts +5 -5
- package/src/orchestrate/interface/histories/transformInterfaceActionEndpointReviewHistory.ts +83 -83
- package/src/orchestrate/interface/histories/transformInterfaceActionEndpointWriteHistory.ts +78 -78
- package/src/orchestrate/interface/histories/transformInterfaceAuthorizationHistory.ts +129 -129
- package/src/orchestrate/interface/histories/transformInterfaceBaseEndpointReviewHistory.ts +74 -74
- package/src/orchestrate/interface/histories/transformInterfaceBaseEndpointWriteHistory.ts +68 -68
- package/src/orchestrate/interface/histories/transformInterfaceCommonHistory.ts +64 -64
- package/src/orchestrate/interface/histories/transformInterfaceEndpointAuthorizationSection.ts +42 -42
- package/src/orchestrate/interface/histories/transformInterfaceGroupHistory.ts +103 -103
- package/src/orchestrate/interface/histories/transformInterfaceOperationHistory.ts +81 -81
- package/src/orchestrate/interface/histories/transformInterfaceOperationParameterHistory.ts +53 -53
- package/src/orchestrate/interface/histories/transformInterfaceOperationReviewHistory.ts +49 -49
- package/src/orchestrate/interface/histories/transformInterfacePrerequisiteHistory.ts +94 -94
- package/src/orchestrate/interface/histories/transformInterfaceSchemaCastingHistory.ts +122 -122
- package/src/orchestrate/interface/histories/transformInterfaceSchemaComplementHistory.ts +192 -192
- package/src/orchestrate/interface/histories/transformInterfaceSchemaRefineHistory.ts +189 -189
- package/src/orchestrate/interface/histories/transformInterfaceSchemaRenameHistory.ts +63 -63
- package/src/orchestrate/interface/histories/transformInterfaceSchemaReviewHistory.ts +173 -173
- package/src/orchestrate/interface/histories/transformInterfaceSchemaWriteHistory.ts +88 -88
- package/src/orchestrate/interface/index.ts +6 -6
- package/src/orchestrate/interface/orchestrateInterface.ts +118 -118
- package/src/orchestrate/interface/orchestrateInterfaceActionEndpoint.ts +58 -58
- package/src/orchestrate/interface/orchestrateInterfaceAuthorization.ts +208 -208
- package/src/orchestrate/interface/orchestrateInterfaceBaseEndpoint.ts +55 -55
- package/src/orchestrate/interface/orchestrateInterfaceEndpoint.ts +67 -67
- package/src/orchestrate/interface/orchestrateInterfaceEndpointOverall.ts +80 -80
- package/src/orchestrate/interface/orchestrateInterfaceEndpointReview.ts +212 -212
- package/src/orchestrate/interface/orchestrateInterfaceEndpointWrite.ts +236 -236
- package/src/orchestrate/interface/orchestrateInterfaceGroup.ts +166 -166
- package/src/orchestrate/interface/orchestrateInterfaceOperation.ts +322 -322
- package/src/orchestrate/interface/orchestrateInterfaceOperationReview.ts +245 -245
- package/src/orchestrate/interface/orchestrateInterfacePrerequisite.ts +240 -240
- package/src/orchestrate/interface/orchestrateInterfaceSchema.ts +191 -191
- package/src/orchestrate/interface/orchestrateInterfaceSchemaCasting.ts +274 -274
- package/src/orchestrate/interface/orchestrateInterfaceSchemaComplement.ts +329 -329
- package/src/orchestrate/interface/orchestrateInterfaceSchemaRefine.ts +292 -292
- package/src/orchestrate/interface/orchestrateInterfaceSchemaRename.ts +266 -266
- package/src/orchestrate/interface/orchestrateInterfaceSchemaReview.ts +310 -310
- package/src/orchestrate/interface/orchestrateInterfaceSchemaWrite.ts +283 -283
- package/src/orchestrate/interface/programmers/AutoBeInterfaceAuthorizationProgrammer.ts +260 -260
- package/src/orchestrate/interface/programmers/AutoBeInterfaceEndpointProgrammer.ts +155 -155
- package/src/orchestrate/interface/programmers/AutoBeInterfaceEndpointReviewProgrammer.ts +139 -139
- package/src/orchestrate/interface/programmers/AutoBeInterfaceOperationProgrammer.ts +277 -277
- package/src/orchestrate/interface/programmers/AutoBeInterfacePrerequisiteProgrammer.ts +259 -259
- package/src/orchestrate/interface/programmers/AutoBeInterfaceSchemaProgrammer.ts +152 -152
- package/src/orchestrate/interface/programmers/AutoBeInterfaceSchemaPropertyReviseProgrammer.ts +347 -347
- package/src/orchestrate/interface/programmers/AutoBeInterfaceSchemaRefineProgrammer.ts +183 -183
- package/src/orchestrate/interface/programmers/AutoBeInterfaceSchemaReviewProgrammer.ts +263 -263
- package/src/orchestrate/interface/structures/IAutoBeInterfaceAuthorizationApplication.ts +135 -135
- package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointReviewApplication.ts +128 -128
- package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointWriteApplication.ts +133 -133
- package/src/orchestrate/interface/structures/IAutoBeInterfaceGroupApplication.ts +122 -122
- package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.ts +178 -178
- package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationReviewApplication.ts +175 -175
- package/src/orchestrate/interface/structures/IAutoBeInterfacePrerequisiteApplication.ts +130 -130
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaApplication.ts +121 -121
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaCastingApplication.ts +153 -153
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaComplementApplication.ts +123 -123
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaRefineApplication.ts +181 -181
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaRenameApplication.ts +45 -45
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaReviewApplication.ts +108 -108
- package/src/orchestrate/interface/utils/AutoBeJsonSchemaCollection.ts +42 -42
- package/src/orchestrate/interface/utils/AutoBeJsonSchemaFactory.ts +714 -714
- package/src/orchestrate/interface/utils/AutoBeJsonSchemaNamingConvention.ts +86 -86
- package/src/orchestrate/interface/utils/AutoBeJsonSchemaValidator.ts +725 -725
- package/src/orchestrate/interface/utils/fulfillJsonSchemaErrorMessages.ts +219 -219
- package/src/orchestrate/prisma/histories/transformPrismaAuthorizationHistory.ts +144 -144
- package/src/orchestrate/prisma/histories/transformPrismaAuthorizationReviewHistory.ts +104 -104
- package/src/orchestrate/prisma/histories/transformPrismaComponentReviewHistory.ts +97 -97
- package/src/orchestrate/prisma/histories/transformPrismaComponentsHistory.ts +136 -136
- package/src/orchestrate/prisma/histories/transformPrismaCorrectHistory.ts +41 -41
- package/src/orchestrate/prisma/histories/transformPrismaGroupHistory.ts +63 -63
- package/src/orchestrate/prisma/histories/transformPrismaGroupReviewHistory.ts +79 -79
- package/src/orchestrate/prisma/histories/transformPrismaSchemaHistory.ts +97 -97
- package/src/orchestrate/prisma/histories/transformPrismaSchemaReviewHistory.ts +126 -126
- package/src/orchestrate/prisma/index.ts +7 -7
- package/src/orchestrate/prisma/orchestratePrisma.ts +296 -296
- package/src/orchestrate/prisma/orchestratePrismaAuthorization.ts +173 -173
- package/src/orchestrate/prisma/orchestratePrismaAuthorizationReview.ts +183 -183
- package/src/orchestrate/prisma/orchestratePrismaComponent.ts +205 -205
- package/src/orchestrate/prisma/orchestratePrismaComponentReview.ts +205 -205
- package/src/orchestrate/prisma/orchestratePrismaCorrect.ts +265 -265
- package/src/orchestrate/prisma/orchestratePrismaGroup.ts +121 -121
- package/src/orchestrate/prisma/orchestratePrismaGroupReview.ts +141 -141
- package/src/orchestrate/prisma/orchestratePrismaSchema.ts +218 -218
- package/src/orchestrate/prisma/orchestratePrismaSchemaReview.ts +220 -220
- package/src/orchestrate/prisma/programmers/AutoBeDatabaseAuthorizationProgrammer.ts +86 -86
- package/src/orchestrate/prisma/programmers/AutoBeDatabaseAuthorizationReviewProgrammer.ts +103 -103
- package/src/orchestrate/prisma/programmers/AutoBeDatabaseComponentProgrammer.ts +80 -80
- package/src/orchestrate/prisma/programmers/AutoBeDatabaseComponentReviewProgrammer.ts +168 -168
- package/src/orchestrate/prisma/programmers/AutoBeDatabaseGroupProgrammer.ts +63 -63
- package/src/orchestrate/prisma/programmers/AutoBeDatabaseGroupReviewProgrammer.ts +210 -210
- package/src/orchestrate/prisma/programmers/AutoBeDatabaseModelProgrammer.ts +57 -57
- package/src/orchestrate/prisma/programmers/AutoBeDatabaseSchemaProgrammer.ts +92 -92
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseAuthorizationApplication.ts +147 -147
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseAuthorizationReviewApplication.ts +153 -153
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseComponentApplication.ts +142 -142
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseComponentReviewApplication.ts +151 -151
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseCorrectApplication.ts +157 -157
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseGroupApplication.ts +117 -117
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseGroupReviewApplication.ts +154 -154
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseSchemaApplication.ts +144 -144
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseSchemaReviewApplication.ts +138 -138
- package/src/orchestrate/realize/histories/transformRealizeAuthorizationCorrectHistory.ts +89 -89
- package/src/orchestrate/realize/histories/transformRealizeAuthorizationWriteHistory.ts +45 -45
- package/src/orchestrate/realize/histories/transformRealizeCollectorCorrectHistory.ts +137 -137
- package/src/orchestrate/realize/histories/transformRealizeCollectorPlanHistory.ts +64 -64
- package/src/orchestrate/realize/histories/transformRealizeCollectorWriteHistory.ts +147 -147
- package/src/orchestrate/realize/histories/transformRealizeCorrectCastingHistory.ts +69 -69
- package/src/orchestrate/realize/histories/transformRealizeOperationCorrectHistory.ts +94 -94
- package/src/orchestrate/realize/histories/transformRealizeOperationWriteHistory.ts +127 -127
- package/src/orchestrate/realize/histories/transformRealizeTransformerCorrectHistory.ts +147 -147
- package/src/orchestrate/realize/histories/transformRealizeTransformerPlanHistory.ts +61 -61
- package/src/orchestrate/realize/histories/transformRealizeTransformerWriteHistory.ts +133 -133
- package/src/orchestrate/realize/histories/transformRealizeWriteMembershipHistory.ts +30 -30
- package/src/orchestrate/realize/index.ts +3 -3
- package/src/orchestrate/realize/internal/orchestrateRealizeCorrectCasting.ts +444 -444
- package/src/orchestrate/realize/internal/orchestrateRealizeCorrectOverall.ts +449 -449
- package/src/orchestrate/realize/orchestrateRealize.ts +143 -143
- package/src/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.ts +207 -207
- package/src/orchestrate/realize/orchestrateRealizeAuthorizationWrite.ts +209 -209
- package/src/orchestrate/realize/orchestrateRealizeCollector.ts +41 -41
- package/src/orchestrate/realize/orchestrateRealizeCollectorCorrectCasting.ts +43 -43
- package/src/orchestrate/realize/orchestrateRealizeCollectorCorrectOverall.ts +157 -157
- package/src/orchestrate/realize/orchestrateRealizeCollectorPlan.ts +264 -264
- package/src/orchestrate/realize/orchestrateRealizeCollectorWrite.ts +225 -225
- package/src/orchestrate/realize/orchestrateRealizeOperation.ts +48 -48
- package/src/orchestrate/realize/orchestrateRealizeOperationCorrectCasting.ts +69 -69
- package/src/orchestrate/realize/orchestrateRealizeOperationCorrectOverall.ts +173 -173
- package/src/orchestrate/realize/orchestrateRealizeOperationWrite.ts +262 -262
- package/src/orchestrate/realize/orchestrateRealizeTransformer.ts +41 -41
- package/src/orchestrate/realize/orchestrateRealizeTransformerCorrectCasting.ts +38 -38
- package/src/orchestrate/realize/orchestrateRealizeTransformerCorrectOverall.ts +160 -160
- package/src/orchestrate/realize/orchestrateRealizeTransformerPlan.ts +254 -254
- package/src/orchestrate/realize/orchestrateRealizeTransformerWrite.ts +226 -226
- package/src/orchestrate/realize/programmers/AutoBeRealizeCollectorProgrammer.ts +424 -424
- package/src/orchestrate/realize/programmers/AutoBeRealizeOperationProgrammer.ts +409 -409
- package/src/orchestrate/realize/programmers/AutoBeRealizeTransformerProgrammer.ts +451 -451
- package/src/orchestrate/realize/programmers/compileRealizeFiles.ts +65 -65
- package/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationCorrectApplication.ts +119 -119
- package/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationWriteApplication.ts +167 -167
- package/src/orchestrate/realize/structures/IAutoBeRealizeCollectorCorrectApplication.ts +191 -191
- package/src/orchestrate/realize/structures/IAutoBeRealizeCollectorPlanApplication.ts +177 -177
- package/src/orchestrate/realize/structures/IAutoBeRealizeCollectorWriteApplication.ts +207 -207
- package/src/orchestrate/realize/structures/IAutoBeRealizeFunctionFailure.ts +11 -11
- package/src/orchestrate/realize/structures/IAutoBeRealizeOperationCorrectApplication.ts +134 -134
- package/src/orchestrate/realize/structures/IAutoBeRealizeOperationWriteApplication.ts +138 -138
- package/src/orchestrate/realize/structures/IAutoBeRealizeScenarioResult.ts +32 -32
- package/src/orchestrate/realize/structures/IAutoBeRealizeTransformerCorrectApplication.ts +248 -248
- package/src/orchestrate/realize/structures/IAutoBeRealizeTransformerPlanApplication.ts +150 -150
- package/src/orchestrate/realize/structures/IAutoBeRealizeTransformerWriteApplication.ts +278 -278
- package/src/orchestrate/realize/utils/AuthorizationFileSystem.ts +10 -10
- package/src/orchestrate/realize/utils/AutoBeRealizeAuthorizationFileSystem.ts +9 -9
- package/src/orchestrate/realize/utils/AutoBeRealizeAuthorizationReplaceImport.ts +62 -62
- package/src/orchestrate/realize/utils/InternalFileSystem.ts +12 -12
- package/src/orchestrate/realize/utils/ProviderFileSystem.ts +4 -4
- package/src/orchestrate/realize/utils/filterDiagnostics.ts +25 -25
- package/src/orchestrate/realize/utils/generateTS2339Hints.ts +54 -54
- package/src/orchestrate/realize/utils/getRealizeWriteImportStatements.ts +42 -42
- package/src/orchestrate/realize/utils/getRealizeWriteInputType.ts +88 -88
- package/src/orchestrate/realize/utils/printErrorHints.ts +54 -54
- package/src/orchestrate/test/compile/getTestArtifacts.ts +124 -124
- package/src/orchestrate/test/compile/getTestExternalDeclarations.ts +39 -39
- package/src/orchestrate/test/compile/getTestImportStatements.ts +27 -27
- package/src/orchestrate/test/experimental/orchestrateTestCorrect.ast +237 -237
- package/src/orchestrate/test/experimental/orchestrateTestWrite.ast +322 -322
- package/src/orchestrate/test/experimental/transformTestCorrectHistories.ast +52 -52
- package/src/orchestrate/test/histories/transformTestAuthorizeWriteHistory.ts +80 -80
- package/src/orchestrate/test/histories/transformTestCorrectOverallHistory.ts +116 -116
- package/src/orchestrate/test/histories/transformTestGenerationWriteHistory.ts +118 -118
- package/src/orchestrate/test/histories/transformTestOperationWriteHistory.ts +287 -287
- package/src/orchestrate/test/histories/transformTestPrepareWriteHistory.ts +95 -95
- package/src/orchestrate/test/histories/transformTestScenarioHistory.ts +120 -120
- package/src/orchestrate/test/histories/transformTestScenarioReviewHistory.ts +99 -99
- package/src/orchestrate/test/histories/transformTestValidateEvent.ts +11 -11
- package/src/orchestrate/test/index.ts +5 -5
- package/src/orchestrate/test/internal/orchestrateTestCorrectCasting.ts +96 -96
- package/src/orchestrate/test/internal/orchestrateTestCorrectOverall.ts +219 -219
- package/src/orchestrate/test/internal/orchestrateTestCorrectRequest.ts +206 -206
- package/src/orchestrate/test/orchestrateTest.ts +161 -161
- package/src/orchestrate/test/orchestrateTestAuthorize.ts +125 -125
- package/src/orchestrate/test/orchestrateTestAuthorizeWrite.ts +263 -263
- package/src/orchestrate/test/orchestrateTestGenerate.ts +121 -121
- package/src/orchestrate/test/orchestrateTestGenerateWrite.ts +211 -211
- package/src/orchestrate/test/orchestrateTestOperation.ts +133 -133
- package/src/orchestrate/test/orchestrateTestOperationWrite.ts +221 -221
- package/src/orchestrate/test/orchestrateTestPrepare.ts +117 -117
- package/src/orchestrate/test/orchestrateTestPrepareWrite.ts +264 -264
- package/src/orchestrate/test/orchestrateTestScenario.ts +290 -290
- package/src/orchestrate/test/orchestrateTestScenarioReview.ts +262 -262
- package/src/orchestrate/test/programmers/AutoBeTestAuthorizeProgrammer.ts +149 -149
- package/src/orchestrate/test/programmers/AutoBeTestFunctionProgrammer.ts +90 -90
- package/src/orchestrate/test/programmers/AutoBeTestGenerateProgrammer.ts +170 -170
- package/src/orchestrate/test/programmers/AutoBeTestOperationProgrammer.ts +168 -168
- package/src/orchestrate/test/programmers/AutoBeTestPrepareProgrammer.ts +261 -261
- package/src/orchestrate/test/programmers/AutoBeTestScenarioProgrammer.ts +316 -316
- package/src/orchestrate/test/structures/IAutoBeTestArtifacts.ts +8 -8
- package/src/orchestrate/test/structures/IAutoBeTestAuthorizationWriteApplication.ts +113 -113
- package/src/orchestrate/test/structures/IAutoBeTestAuthorizeWriteResult.ts +10 -10
- package/src/orchestrate/test/structures/IAutoBeTestCorrectOverallApplication.ts +134 -134
- package/src/orchestrate/test/structures/IAutoBeTestCorrectRequestApplication.ts +152 -152
- package/src/orchestrate/test/structures/IAutoBeTestFunction.ts +10 -10
- package/src/orchestrate/test/structures/IAutoBeTestFunctionFailure.ts +10 -10
- package/src/orchestrate/test/structures/IAutoBeTestGenerateProcedure.ts +15 -15
- package/src/orchestrate/test/structures/IAutoBeTestGenerationWriteApplication.ts +145 -145
- package/src/orchestrate/test/structures/IAutoBeTestOperationProcedure.ts +17 -17
- package/src/orchestrate/test/structures/IAutoBeTestOperationWriteApplication.ts +162 -162
- package/src/orchestrate/test/structures/IAutoBeTestPrepareCorrectOverallApplication.ts +194 -194
- package/src/orchestrate/test/structures/IAutoBeTestPrepareProcedure.ts +8 -8
- package/src/orchestrate/test/structures/IAutoBeTestPrepareWriteApplication.ts +147 -147
- package/src/orchestrate/test/structures/IAutoBeTestProcedure.ts +10 -10
- package/src/orchestrate/test/structures/IAutoBeTestScenarioApplication.ts +105 -105
- package/src/orchestrate/test/structures/IAutoBeTestScenarioArtifacts.ts +8 -8
- package/src/orchestrate/test/structures/IAutoBeTestScenarioAuthorizationActor.ts +7 -7
- package/src/orchestrate/test/structures/IAutoBeTestScenarioReviewApplication.ts +133 -133
- package/src/orchestrate/test/utils/getPrerequisites.ts +51 -51
- package/src/orchestrate/test/utils/getReferenceIds.ts +26 -26
- package/src/orchestrate/test/utils/insertScriptToTestResult.ts +14 -14
- package/src/structures/IAutoBeConfig.ts +110 -110
- package/src/structures/IAutoBeOrchestrateHistory.ts +44 -44
- package/src/structures/IAutoBeProps.ts +102 -102
- package/src/structures/IAutoBeVendor.ts +113 -113
- package/src/utils/AutoBePreliminaryExhaustedError.ts +30 -30
- package/src/utils/AutoBeTimeoutError.ts +35 -35
- package/src/utils/EmbeddingProvider.ts +4 -4
- package/src/utils/LocalEmbeddingProvider.ts +145 -145
- package/src/utils/RAGRetrieval.ts +411 -411
- package/src/utils/TimedConversation.ts +125 -125
- package/src/utils/backoffRetry.ts +169 -169
- package/src/utils/divideArray.ts +35 -35
- package/src/utils/emplaceMap.ts +31 -31
- package/src/utils/executeCachedBatch.ts +67 -67
- package/src/utils/forceRetry.ts +15 -15
- package/src/utils/getEmbedder.ts +16 -16
- package/src/utils/parseTextFunctionCall.ts +437 -437
- package/src/utils/predicateStateMessage.ts +131 -131
- package/src/utils/validateEmptyCode.ts +73 -73
- package/src/utils/validateEnglishOnly.ts +224 -224
- package/README.md +0 -261
|
@@ -1,144 +1,144 @@
|
|
|
1
|
-
import { AutoBeDatabaseSchemaDefinition } from "@autobe/interface";
|
|
2
|
-
|
|
3
|
-
import { IAutoBePreliminaryGetAnalysisSections } from "../../common/structures/IAutoBePreliminaryGetAnalysisSections";
|
|
4
|
-
import { IAutoBePreliminaryGetPreviousAnalysisSections } from "../../common/structures/IAutoBePreliminaryGetPreviousAnalysisSections";
|
|
5
|
-
import { IAutoBePreliminaryGetPreviousDatabaseSchemas } from "../../common/structures/IAutoBePreliminaryGetPreviousDatabaseSchemas";
|
|
6
|
-
|
|
7
|
-
export interface IAutoBeDatabaseSchemaApplication {
|
|
8
|
-
/**
|
|
9
|
-
* Process schema generation task or preliminary data requests.
|
|
10
|
-
*
|
|
11
|
-
* Generates database models for the target component following normalization
|
|
12
|
-
* principles and database design best practices.
|
|
13
|
-
*
|
|
14
|
-
* @param props Request containing either preliminary data request or complete
|
|
15
|
-
* task
|
|
16
|
-
*/
|
|
17
|
-
process(props: IAutoBeDatabaseSchemaApplication.IProps): void;
|
|
18
|
-
}
|
|
19
|
-
export namespace IAutoBeDatabaseSchemaApplication {
|
|
20
|
-
export interface IProps {
|
|
21
|
-
/**
|
|
22
|
-
* Think before you act.
|
|
23
|
-
*
|
|
24
|
-
* Before requesting preliminary data or completing your task, reflect on
|
|
25
|
-
* your current state and explain your reasoning:
|
|
26
|
-
*
|
|
27
|
-
* For preliminary requests (getAnalysisSections, getDatabaseSchemas, etc.):
|
|
28
|
-
*
|
|
29
|
-
* - What critical information is missing that you don't already have?
|
|
30
|
-
* - Why do you need it specifically right now?
|
|
31
|
-
* - Be brief - state the gap, don't list everything you have.
|
|
32
|
-
*
|
|
33
|
-
* For completion (complete):
|
|
34
|
-
*
|
|
35
|
-
* - What key assets did you acquire?
|
|
36
|
-
* - What did you accomplish?
|
|
37
|
-
* - Why is it sufficient to complete?
|
|
38
|
-
* - Summarize - don't enumerate every single item.
|
|
39
|
-
*
|
|
40
|
-
* This reflection helps you avoid duplicate requests and premature
|
|
41
|
-
* completion.
|
|
42
|
-
*/
|
|
43
|
-
thinking: string;
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* Type discriminator for the request.
|
|
47
|
-
*
|
|
48
|
-
* Determines which action to perform: preliminary data retrieval
|
|
49
|
-
* (getAnalysisSections, getPreviousAnalysisSections,
|
|
50
|
-
* getPreviousDatabaseSchemas) or final schema generation (complete). When
|
|
51
|
-
* preliminary returns empty array, that type is removed from the union,
|
|
52
|
-
* physically preventing repeated calls.
|
|
53
|
-
*/
|
|
54
|
-
request:
|
|
55
|
-
| IComplete
|
|
56
|
-
| IAutoBePreliminaryGetAnalysisSections
|
|
57
|
-
| IAutoBePreliminaryGetPreviousAnalysisSections
|
|
58
|
-
| IAutoBePreliminaryGetPreviousDatabaseSchemas;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
* Request to generate database schema models.
|
|
63
|
-
*
|
|
64
|
-
* Executes schema generation to create production-ready database models
|
|
65
|
-
* following normalization principles, relationship patterns, and indexing
|
|
66
|
-
* strategies.
|
|
67
|
-
*/
|
|
68
|
-
export interface IComplete {
|
|
69
|
-
/**
|
|
70
|
-
* Type discriminator for the request.
|
|
71
|
-
*
|
|
72
|
-
* Determines which action to perform: preliminary data retrieval or actual
|
|
73
|
-
* task execution. Value "complete" indicates this is the final task
|
|
74
|
-
* execution request.
|
|
75
|
-
*/
|
|
76
|
-
type: "complete";
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* Strategic database design analysis and planning.
|
|
80
|
-
*
|
|
81
|
-
* Contains the database architecture strategy for the target table and any
|
|
82
|
-
* child tables needed for First Normal Form (1NF) compliance, including
|
|
83
|
-
* structure, relationships, normalization approach, indexing strategies,
|
|
84
|
-
* and business requirement mapping. This planning phase defines the
|
|
85
|
-
* blueprint for the model implementations.
|
|
86
|
-
*
|
|
87
|
-
* Key planning aspects:
|
|
88
|
-
*
|
|
89
|
-
* - Assignment validation: Extract targetTable as the assignment
|
|
90
|
-
* - Target table: The primary table matching targetTable is mandatory
|
|
91
|
-
* - Child tables: Additional tables to decompose repeating groups or
|
|
92
|
-
* non-atomic values into separate normalized tables (1NF compliance)
|
|
93
|
-
* - Child table naming: Must use singular form of targetTable as prefix
|
|
94
|
-
* (e.g., for "shopping_orders": "shopping_order_items")
|
|
95
|
-
* - Other tables: Identify existing tables from otherComponents for foreign
|
|
96
|
-
* key relationships — never recreate them
|
|
97
|
-
* - Normalization: Strict adherence to 1NF, 2NF, 3NF principles
|
|
98
|
-
* - Snapshot architecture: Design for historical data preservation
|
|
99
|
-
* - Junction tables: Plan M:N relationships with proper naming
|
|
100
|
-
* ({table1}_{table2})
|
|
101
|
-
* - Materialized views: Identify needs for mv_ prefixed denormalized tables
|
|
102
|
-
*/
|
|
103
|
-
plan: string;
|
|
104
|
-
|
|
105
|
-
/**
|
|
106
|
-
* Schema definition containing the single target table model and any newly
|
|
107
|
-
* discovered table designs.
|
|
108
|
-
*
|
|
109
|
-
* The definition carries exactly one
|
|
110
|
-
* {@link AutoBeDatabaseSchemaDefinition.model} — the target table assigned
|
|
111
|
-
* to this call — so that the output stays within the LLM's maximum output
|
|
112
|
-
* token limit. If normalization (e.g. 1NF decomposition) requires
|
|
113
|
-
* additional child tables, declare them in
|
|
114
|
-
* {@link AutoBeDatabaseSchemaDefinition.newDesigns} as lightweight name +
|
|
115
|
-
* description pairs; they will be generated by their own dedicated pipeline
|
|
116
|
-
* calls.
|
|
117
|
-
*
|
|
118
|
-
* Model implementation requirements:
|
|
119
|
-
*
|
|
120
|
-
* - Primary keys: Always UUID type with field name "id"
|
|
121
|
-
* - Foreign keys: Proper IRelation configurations for all relationships
|
|
122
|
-
* - Business fields: Only raw data fields - no calculated or derived values
|
|
123
|
-
* - Data types: Limited to uuid, string, int, double, datetime, boolean, uri
|
|
124
|
-
* - Relationships: Correct patterns for 1:1, 1:N, and M:N
|
|
125
|
-
* - Indexes:
|
|
126
|
-
*
|
|
127
|
-
* - UniqueIndexes: Business constraints and composite unique keys
|
|
128
|
-
* - PlainIndexes: Multi-column query optimization (never single FK)
|
|
129
|
-
* - GinIndexes: Full-text search on appropriate string fields
|
|
130
|
-
* - Materialized views: Tables prefixed with "mv_" have material flag set
|
|
131
|
-
* - Documentation: Comprehensive English descriptions with business context
|
|
132
|
-
*
|
|
133
|
-
* Quality standards:
|
|
134
|
-
*
|
|
135
|
-
* - Strict adherence to 3NF (Third Normal Form)
|
|
136
|
-
* - No denormalization except in materialized views (mv_ tables)
|
|
137
|
-
* - All foreign keys reference valid existing tables
|
|
138
|
-
* - Consistent created_at, updated_at, deleted_at patterns
|
|
139
|
-
* - Proper historical data preservation where needed
|
|
140
|
-
* - Optimized index strategy for expected query patterns
|
|
141
|
-
*/
|
|
142
|
-
definition: AutoBeDatabaseSchemaDefinition;
|
|
143
|
-
}
|
|
144
|
-
}
|
|
1
|
+
import { AutoBeDatabaseSchemaDefinition } from "@autobe/interface";
|
|
2
|
+
|
|
3
|
+
import { IAutoBePreliminaryGetAnalysisSections } from "../../common/structures/IAutoBePreliminaryGetAnalysisSections";
|
|
4
|
+
import { IAutoBePreliminaryGetPreviousAnalysisSections } from "../../common/structures/IAutoBePreliminaryGetPreviousAnalysisSections";
|
|
5
|
+
import { IAutoBePreliminaryGetPreviousDatabaseSchemas } from "../../common/structures/IAutoBePreliminaryGetPreviousDatabaseSchemas";
|
|
6
|
+
|
|
7
|
+
export interface IAutoBeDatabaseSchemaApplication {
|
|
8
|
+
/**
|
|
9
|
+
* Process schema generation task or preliminary data requests.
|
|
10
|
+
*
|
|
11
|
+
* Generates database models for the target component following normalization
|
|
12
|
+
* principles and database design best practices.
|
|
13
|
+
*
|
|
14
|
+
* @param props Request containing either preliminary data request or complete
|
|
15
|
+
* task
|
|
16
|
+
*/
|
|
17
|
+
process(props: IAutoBeDatabaseSchemaApplication.IProps): void;
|
|
18
|
+
}
|
|
19
|
+
export namespace IAutoBeDatabaseSchemaApplication {
|
|
20
|
+
export interface IProps {
|
|
21
|
+
/**
|
|
22
|
+
* Think before you act.
|
|
23
|
+
*
|
|
24
|
+
* Before requesting preliminary data or completing your task, reflect on
|
|
25
|
+
* your current state and explain your reasoning:
|
|
26
|
+
*
|
|
27
|
+
* For preliminary requests (getAnalysisSections, getDatabaseSchemas, etc.):
|
|
28
|
+
*
|
|
29
|
+
* - What critical information is missing that you don't already have?
|
|
30
|
+
* - Why do you need it specifically right now?
|
|
31
|
+
* - Be brief - state the gap, don't list everything you have.
|
|
32
|
+
*
|
|
33
|
+
* For completion (complete):
|
|
34
|
+
*
|
|
35
|
+
* - What key assets did you acquire?
|
|
36
|
+
* - What did you accomplish?
|
|
37
|
+
* - Why is it sufficient to complete?
|
|
38
|
+
* - Summarize - don't enumerate every single item.
|
|
39
|
+
*
|
|
40
|
+
* This reflection helps you avoid duplicate requests and premature
|
|
41
|
+
* completion.
|
|
42
|
+
*/
|
|
43
|
+
thinking: string;
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Type discriminator for the request.
|
|
47
|
+
*
|
|
48
|
+
* Determines which action to perform: preliminary data retrieval
|
|
49
|
+
* (getAnalysisSections, getPreviousAnalysisSections,
|
|
50
|
+
* getPreviousDatabaseSchemas) or final schema generation (complete). When
|
|
51
|
+
* preliminary returns empty array, that type is removed from the union,
|
|
52
|
+
* physically preventing repeated calls.
|
|
53
|
+
*/
|
|
54
|
+
request:
|
|
55
|
+
| IComplete
|
|
56
|
+
| IAutoBePreliminaryGetAnalysisSections
|
|
57
|
+
| IAutoBePreliminaryGetPreviousAnalysisSections
|
|
58
|
+
| IAutoBePreliminaryGetPreviousDatabaseSchemas;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Request to generate database schema models.
|
|
63
|
+
*
|
|
64
|
+
* Executes schema generation to create production-ready database models
|
|
65
|
+
* following normalization principles, relationship patterns, and indexing
|
|
66
|
+
* strategies.
|
|
67
|
+
*/
|
|
68
|
+
export interface IComplete {
|
|
69
|
+
/**
|
|
70
|
+
* Type discriminator for the request.
|
|
71
|
+
*
|
|
72
|
+
* Determines which action to perform: preliminary data retrieval or actual
|
|
73
|
+
* task execution. Value "complete" indicates this is the final task
|
|
74
|
+
* execution request.
|
|
75
|
+
*/
|
|
76
|
+
type: "complete";
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Strategic database design analysis and planning.
|
|
80
|
+
*
|
|
81
|
+
* Contains the database architecture strategy for the target table and any
|
|
82
|
+
* child tables needed for First Normal Form (1NF) compliance, including
|
|
83
|
+
* structure, relationships, normalization approach, indexing strategies,
|
|
84
|
+
* and business requirement mapping. This planning phase defines the
|
|
85
|
+
* blueprint for the model implementations.
|
|
86
|
+
*
|
|
87
|
+
* Key planning aspects:
|
|
88
|
+
*
|
|
89
|
+
* - Assignment validation: Extract targetTable as the assignment
|
|
90
|
+
* - Target table: The primary table matching targetTable is mandatory
|
|
91
|
+
* - Child tables: Additional tables to decompose repeating groups or
|
|
92
|
+
* non-atomic values into separate normalized tables (1NF compliance)
|
|
93
|
+
* - Child table naming: Must use singular form of targetTable as prefix
|
|
94
|
+
* (e.g., for "shopping_orders": "shopping_order_items")
|
|
95
|
+
* - Other tables: Identify existing tables from otherComponents for foreign
|
|
96
|
+
* key relationships — never recreate them
|
|
97
|
+
* - Normalization: Strict adherence to 1NF, 2NF, 3NF principles
|
|
98
|
+
* - Snapshot architecture: Design for historical data preservation
|
|
99
|
+
* - Junction tables: Plan M:N relationships with proper naming
|
|
100
|
+
* ({table1}_{table2})
|
|
101
|
+
* - Materialized views: Identify needs for mv_ prefixed denormalized tables
|
|
102
|
+
*/
|
|
103
|
+
plan: string;
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* Schema definition containing the single target table model and any newly
|
|
107
|
+
* discovered table designs.
|
|
108
|
+
*
|
|
109
|
+
* The definition carries exactly one
|
|
110
|
+
* {@link AutoBeDatabaseSchemaDefinition.model} — the target table assigned
|
|
111
|
+
* to this call — so that the output stays within the LLM's maximum output
|
|
112
|
+
* token limit. If normalization (e.g. 1NF decomposition) requires
|
|
113
|
+
* additional child tables, declare them in
|
|
114
|
+
* {@link AutoBeDatabaseSchemaDefinition.newDesigns} as lightweight name +
|
|
115
|
+
* description pairs; they will be generated by their own dedicated pipeline
|
|
116
|
+
* calls.
|
|
117
|
+
*
|
|
118
|
+
* Model implementation requirements:
|
|
119
|
+
*
|
|
120
|
+
* - Primary keys: Always UUID type with field name "id"
|
|
121
|
+
* - Foreign keys: Proper IRelation configurations for all relationships
|
|
122
|
+
* - Business fields: Only raw data fields - no calculated or derived values
|
|
123
|
+
* - Data types: Limited to uuid, string, int, double, datetime, boolean, uri
|
|
124
|
+
* - Relationships: Correct patterns for 1:1, 1:N, and M:N
|
|
125
|
+
* - Indexes:
|
|
126
|
+
*
|
|
127
|
+
* - UniqueIndexes: Business constraints and composite unique keys
|
|
128
|
+
* - PlainIndexes: Multi-column query optimization (never single FK)
|
|
129
|
+
* - GinIndexes: Full-text search on appropriate string fields
|
|
130
|
+
* - Materialized views: Tables prefixed with "mv_" have material flag set
|
|
131
|
+
* - Documentation: Comprehensive English descriptions with business context
|
|
132
|
+
*
|
|
133
|
+
* Quality standards:
|
|
134
|
+
*
|
|
135
|
+
* - Strict adherence to 3NF (Third Normal Form)
|
|
136
|
+
* - No denormalization except in materialized views (mv_ tables)
|
|
137
|
+
* - All foreign keys reference valid existing tables
|
|
138
|
+
* - Consistent created_at, updated_at, deleted_at patterns
|
|
139
|
+
* - Proper historical data preservation where needed
|
|
140
|
+
* - Optimized index strategy for expected query patterns
|
|
141
|
+
*/
|
|
142
|
+
definition: AutoBeDatabaseSchemaDefinition;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
@@ -1,138 +1,138 @@
|
|
|
1
|
-
import { AutoBeDatabaseSchemaDefinition } from "@autobe/interface";
|
|
2
|
-
|
|
3
|
-
import { IAutoBePreliminaryGetAnalysisSections } from "../../common/structures/IAutoBePreliminaryGetAnalysisSections";
|
|
4
|
-
import { IAutoBePreliminaryGetDatabaseSchemas } from "../../common/structures/IAutoBePreliminaryGetDatabaseSchemas";
|
|
5
|
-
import { IAutoBePreliminaryGetPreviousAnalysisSections } from "../../common/structures/IAutoBePreliminaryGetPreviousAnalysisSections";
|
|
6
|
-
import { IAutoBePreliminaryGetPreviousDatabaseSchemas } from "../../common/structures/IAutoBePreliminaryGetPreviousDatabaseSchemas";
|
|
7
|
-
|
|
8
|
-
export interface IAutoBeDatabaseSchemaReviewApplication {
|
|
9
|
-
/**
|
|
10
|
-
* Process schema review task or preliminary data requests.
|
|
11
|
-
*
|
|
12
|
-
* Reviews generated database models to validate normalization, relationships,
|
|
13
|
-
* indexes, and business alignment, producing necessary modifications.
|
|
14
|
-
*
|
|
15
|
-
* @param props Request containing either preliminary data request or complete
|
|
16
|
-
* task
|
|
17
|
-
*/
|
|
18
|
-
process(props: IAutoBeDatabaseSchemaReviewApplication.IProps): void;
|
|
19
|
-
}
|
|
20
|
-
export namespace IAutoBeDatabaseSchemaReviewApplication {
|
|
21
|
-
export interface IProps {
|
|
22
|
-
/**
|
|
23
|
-
* Think before you act.
|
|
24
|
-
*
|
|
25
|
-
* Before requesting preliminary data or completing your task, reflect on
|
|
26
|
-
* your current state and explain your reasoning:
|
|
27
|
-
*
|
|
28
|
-
* For preliminary requests (getAnalysisSections, getDatabaseSchemas, etc.):
|
|
29
|
-
*
|
|
30
|
-
* - What critical information is missing that you don't already have?
|
|
31
|
-
* - Why do you need it specifically right now?
|
|
32
|
-
* - Be brief - state the gap, don't list everything you have.
|
|
33
|
-
*
|
|
34
|
-
* For completion (complete):
|
|
35
|
-
*
|
|
36
|
-
* - What key assets did you acquire?
|
|
37
|
-
* - What did you accomplish?
|
|
38
|
-
* - Why is it sufficient to complete?
|
|
39
|
-
* - Summarize - don't enumerate every single item.
|
|
40
|
-
*
|
|
41
|
-
* This reflection helps you avoid duplicate requests and premature
|
|
42
|
-
* completion.
|
|
43
|
-
*/
|
|
44
|
-
thinking: string;
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* Type discriminator for the request.
|
|
48
|
-
*
|
|
49
|
-
* Determines which action to perform: preliminary data retrieval
|
|
50
|
-
* (getAnalysisSections, getPreviousAnalysisSections, getDatabaseSchemas,
|
|
51
|
-
* getPreviousDatabaseSchemas) or final schema review (complete). When
|
|
52
|
-
* preliminary returns empty array, that type is removed from the union,
|
|
53
|
-
* physically preventing repeated calls.
|
|
54
|
-
*/
|
|
55
|
-
request:
|
|
56
|
-
| IComplete
|
|
57
|
-
| IAutoBePreliminaryGetAnalysisSections
|
|
58
|
-
| IAutoBePreliminaryGetDatabaseSchemas
|
|
59
|
-
| IAutoBePreliminaryGetPreviousAnalysisSections
|
|
60
|
-
| IAutoBePreliminaryGetPreviousDatabaseSchemas;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
* Request to review and refine database schema models.
|
|
65
|
-
*
|
|
66
|
-
* Executes comprehensive schema review to validate design quality and
|
|
67
|
-
* identify necessary improvements for normalization, relationships, and
|
|
68
|
-
* performance optimization.
|
|
69
|
-
*/
|
|
70
|
-
export interface IComplete {
|
|
71
|
-
/**
|
|
72
|
-
* Type discriminator for the request.
|
|
73
|
-
*
|
|
74
|
-
* Determines which action to perform: preliminary data retrieval or actual
|
|
75
|
-
* task execution. Value "complete" indicates this is the final task
|
|
76
|
-
* execution request.
|
|
77
|
-
*/
|
|
78
|
-
type: "complete";
|
|
79
|
-
|
|
80
|
-
/**
|
|
81
|
-
* Comprehensive review analysis of the schema.
|
|
82
|
-
*
|
|
83
|
-
* Contains detailed evaluation of the schema design including:
|
|
84
|
-
*
|
|
85
|
-
* - Normalization validation: Confirms 3NF compliance and proper data
|
|
86
|
-
* structure
|
|
87
|
-
* - Relationship integrity: Validates foreign key references and cardinality
|
|
88
|
-
* - Performance optimization: Reviews indexing strategy and query patterns
|
|
89
|
-
* - Business logic alignment: Ensures schema supports all use cases
|
|
90
|
-
* - Naming conventions: Verifies consistent naming patterns
|
|
91
|
-
* - Data type consistency: Confirms appropriate field types
|
|
92
|
-
* - Temporal field handling: Validates audit trail implementation
|
|
93
|
-
*
|
|
94
|
-
* The review identifies potential issues and confirms adherence to best
|
|
95
|
-
* practices before final implementation.
|
|
96
|
-
*/
|
|
97
|
-
review: string;
|
|
98
|
-
|
|
99
|
-
/**
|
|
100
|
-
* Strategic database design plan.
|
|
101
|
-
*
|
|
102
|
-
* Contains the original planning document outlining the database
|
|
103
|
-
* architecture strategy including table structures, relationships,
|
|
104
|
-
* normalization approach, and business requirement mapping. This plan
|
|
105
|
-
* serves as the blueprint for validating the implemented schema.
|
|
106
|
-
*
|
|
107
|
-
* Planning components:
|
|
108
|
-
*
|
|
109
|
-
* - Business requirements: Mapping of business needs to database structures
|
|
110
|
-
* - Table design: Entity definitions and attribute specifications
|
|
111
|
-
* - Relationship strategy: Cardinality and referential integrity planning
|
|
112
|
-
* - Normalization approach: Application of 1NF, 2NF, 3NF principles
|
|
113
|
-
* - Performance considerations: Index strategy and query optimization
|
|
114
|
-
* - Snapshot architecture: Temporal data handling and audit requirements
|
|
115
|
-
* - Materialized views: Denormalization strategy for performance
|
|
116
|
-
*/
|
|
117
|
-
plan: string;
|
|
118
|
-
|
|
119
|
-
/**
|
|
120
|
-
* Corrected schema definition based on review feedback, or null if no
|
|
121
|
-
* changes are needed.
|
|
122
|
-
*
|
|
123
|
-
* When not null, the definition carries exactly one corrected
|
|
124
|
-
* {@link AutoBeDatabaseSchemaDefinition.model} for the reviewed target table
|
|
125
|
-
* so that the output stays within the LLM's maximum output token limit. If
|
|
126
|
-
* the review determines that additional child tables are required (e.g. 1NF
|
|
127
|
-
* decomposition), they are declared in
|
|
128
|
-
* {@link AutoBeDatabaseSchemaDefinition.newDesigns} as lightweight name +
|
|
129
|
-
* description pairs and will be generated by their own dedicated pipeline
|
|
130
|
-
* calls.
|
|
131
|
-
*
|
|
132
|
-
* If null, the original model remains unchanged from the original schema.
|
|
133
|
-
* If not null, the modification must resolve issues identified in the
|
|
134
|
-
* review.
|
|
135
|
-
*/
|
|
136
|
-
content: AutoBeDatabaseSchemaDefinition | null;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
1
|
+
import { AutoBeDatabaseSchemaDefinition } from "@autobe/interface";
|
|
2
|
+
|
|
3
|
+
import { IAutoBePreliminaryGetAnalysisSections } from "../../common/structures/IAutoBePreliminaryGetAnalysisSections";
|
|
4
|
+
import { IAutoBePreliminaryGetDatabaseSchemas } from "../../common/structures/IAutoBePreliminaryGetDatabaseSchemas";
|
|
5
|
+
import { IAutoBePreliminaryGetPreviousAnalysisSections } from "../../common/structures/IAutoBePreliminaryGetPreviousAnalysisSections";
|
|
6
|
+
import { IAutoBePreliminaryGetPreviousDatabaseSchemas } from "../../common/structures/IAutoBePreliminaryGetPreviousDatabaseSchemas";
|
|
7
|
+
|
|
8
|
+
export interface IAutoBeDatabaseSchemaReviewApplication {
|
|
9
|
+
/**
|
|
10
|
+
* Process schema review task or preliminary data requests.
|
|
11
|
+
*
|
|
12
|
+
* Reviews generated database models to validate normalization, relationships,
|
|
13
|
+
* indexes, and business alignment, producing necessary modifications.
|
|
14
|
+
*
|
|
15
|
+
* @param props Request containing either preliminary data request or complete
|
|
16
|
+
* task
|
|
17
|
+
*/
|
|
18
|
+
process(props: IAutoBeDatabaseSchemaReviewApplication.IProps): void;
|
|
19
|
+
}
|
|
20
|
+
export namespace IAutoBeDatabaseSchemaReviewApplication {
|
|
21
|
+
export interface IProps {
|
|
22
|
+
/**
|
|
23
|
+
* Think before you act.
|
|
24
|
+
*
|
|
25
|
+
* Before requesting preliminary data or completing your task, reflect on
|
|
26
|
+
* your current state and explain your reasoning:
|
|
27
|
+
*
|
|
28
|
+
* For preliminary requests (getAnalysisSections, getDatabaseSchemas, etc.):
|
|
29
|
+
*
|
|
30
|
+
* - What critical information is missing that you don't already have?
|
|
31
|
+
* - Why do you need it specifically right now?
|
|
32
|
+
* - Be brief - state the gap, don't list everything you have.
|
|
33
|
+
*
|
|
34
|
+
* For completion (complete):
|
|
35
|
+
*
|
|
36
|
+
* - What key assets did you acquire?
|
|
37
|
+
* - What did you accomplish?
|
|
38
|
+
* - Why is it sufficient to complete?
|
|
39
|
+
* - Summarize - don't enumerate every single item.
|
|
40
|
+
*
|
|
41
|
+
* This reflection helps you avoid duplicate requests and premature
|
|
42
|
+
* completion.
|
|
43
|
+
*/
|
|
44
|
+
thinking: string;
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Type discriminator for the request.
|
|
48
|
+
*
|
|
49
|
+
* Determines which action to perform: preliminary data retrieval
|
|
50
|
+
* (getAnalysisSections, getPreviousAnalysisSections, getDatabaseSchemas,
|
|
51
|
+
* getPreviousDatabaseSchemas) or final schema review (complete). When
|
|
52
|
+
* preliminary returns empty array, that type is removed from the union,
|
|
53
|
+
* physically preventing repeated calls.
|
|
54
|
+
*/
|
|
55
|
+
request:
|
|
56
|
+
| IComplete
|
|
57
|
+
| IAutoBePreliminaryGetAnalysisSections
|
|
58
|
+
| IAutoBePreliminaryGetDatabaseSchemas
|
|
59
|
+
| IAutoBePreliminaryGetPreviousAnalysisSections
|
|
60
|
+
| IAutoBePreliminaryGetPreviousDatabaseSchemas;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Request to review and refine database schema models.
|
|
65
|
+
*
|
|
66
|
+
* Executes comprehensive schema review to validate design quality and
|
|
67
|
+
* identify necessary improvements for normalization, relationships, and
|
|
68
|
+
* performance optimization.
|
|
69
|
+
*/
|
|
70
|
+
export interface IComplete {
|
|
71
|
+
/**
|
|
72
|
+
* Type discriminator for the request.
|
|
73
|
+
*
|
|
74
|
+
* Determines which action to perform: preliminary data retrieval or actual
|
|
75
|
+
* task execution. Value "complete" indicates this is the final task
|
|
76
|
+
* execution request.
|
|
77
|
+
*/
|
|
78
|
+
type: "complete";
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Comprehensive review analysis of the schema.
|
|
82
|
+
*
|
|
83
|
+
* Contains detailed evaluation of the schema design including:
|
|
84
|
+
*
|
|
85
|
+
* - Normalization validation: Confirms 3NF compliance and proper data
|
|
86
|
+
* structure
|
|
87
|
+
* - Relationship integrity: Validates foreign key references and cardinality
|
|
88
|
+
* - Performance optimization: Reviews indexing strategy and query patterns
|
|
89
|
+
* - Business logic alignment: Ensures schema supports all use cases
|
|
90
|
+
* - Naming conventions: Verifies consistent naming patterns
|
|
91
|
+
* - Data type consistency: Confirms appropriate field types
|
|
92
|
+
* - Temporal field handling: Validates audit trail implementation
|
|
93
|
+
*
|
|
94
|
+
* The review identifies potential issues and confirms adherence to best
|
|
95
|
+
* practices before final implementation.
|
|
96
|
+
*/
|
|
97
|
+
review: string;
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Strategic database design plan.
|
|
101
|
+
*
|
|
102
|
+
* Contains the original planning document outlining the database
|
|
103
|
+
* architecture strategy including table structures, relationships,
|
|
104
|
+
* normalization approach, and business requirement mapping. This plan
|
|
105
|
+
* serves as the blueprint for validating the implemented schema.
|
|
106
|
+
*
|
|
107
|
+
* Planning components:
|
|
108
|
+
*
|
|
109
|
+
* - Business requirements: Mapping of business needs to database structures
|
|
110
|
+
* - Table design: Entity definitions and attribute specifications
|
|
111
|
+
* - Relationship strategy: Cardinality and referential integrity planning
|
|
112
|
+
* - Normalization approach: Application of 1NF, 2NF, 3NF principles
|
|
113
|
+
* - Performance considerations: Index strategy and query optimization
|
|
114
|
+
* - Snapshot architecture: Temporal data handling and audit requirements
|
|
115
|
+
* - Materialized views: Denormalization strategy for performance
|
|
116
|
+
*/
|
|
117
|
+
plan: string;
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* Corrected schema definition based on review feedback, or null if no
|
|
121
|
+
* changes are needed.
|
|
122
|
+
*
|
|
123
|
+
* When not null, the definition carries exactly one corrected
|
|
124
|
+
* {@link AutoBeDatabaseSchemaDefinition.model} for the reviewed target table
|
|
125
|
+
* so that the output stays within the LLM's maximum output token limit. If
|
|
126
|
+
* the review determines that additional child tables are required (e.g. 1NF
|
|
127
|
+
* decomposition), they are declared in
|
|
128
|
+
* {@link AutoBeDatabaseSchemaDefinition.newDesigns} as lightweight name +
|
|
129
|
+
* description pairs and will be generated by their own dedicated pipeline
|
|
130
|
+
* calls.
|
|
131
|
+
*
|
|
132
|
+
* If null, the original model remains unchanged from the original schema.
|
|
133
|
+
* If not null, the modification must resolve issues identified in the
|
|
134
|
+
* review.
|
|
135
|
+
*/
|
|
136
|
+
content: AutoBeDatabaseSchemaDefinition | null;
|
|
137
|
+
}
|
|
138
|
+
}
|