@autobe/agent 0.30.4 → 0.30.5
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/constants/AutoBeSystemPromptConstant.d.ts +5 -4
- package/lib/constants/AutoBeSystemPromptConstant.js.map +1 -1
- package/lib/describe/image/orchestrateImageDescribeDraft.js +6 -6
- package/lib/describe/image/structures/IAutoBeImageDescribeDraftApplication.d.ts +12 -63
- package/lib/index.mjs +2918 -2842
- package/lib/index.mjs.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeExtractDecisions.js +8 -8
- package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js +36 -37
- package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeScenarioReview.js +7 -7
- package/lib/orchestrate/analyze/orchestrateAnalyzeSectionCrossFileReview.js +55 -42
- package/lib/orchestrate/analyze/orchestrateAnalyzeSectionCrossFileReview.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeSectionReview.js +67 -54
- package/lib/orchestrate/analyze/orchestrateAnalyzeSectionReview.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeWriteSection.js +24 -25
- package/lib/orchestrate/analyze/orchestrateAnalyzeWriteSection.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeWriteSectionPatch.js +24 -25
- package/lib/orchestrate/analyze/orchestrateAnalyzeWriteSectionPatch.js.map +1 -1
- package/lib/orchestrate/analyze/orchestrateAnalyzeWriteUnit.js +30 -31
- package/lib/orchestrate/analyze/orchestrateAnalyzeWriteUnit.js.map +1 -1
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeExtractDecisionsApplication.d.ts +14 -52
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioApplication.d.ts +23 -96
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioReviewApplication.d.ts +12 -40
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeSectionCrossFileReviewApplication.d.ts +30 -88
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeSectionReviewApplication.d.ts +35 -94
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeWriteSectionApplication.d.ts +23 -93
- package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeWriteUnitApplication.d.ts +15 -88
- package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistory.js +76 -31
- package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistory.js.map +1 -1
- package/lib/orchestrate/common/orchestrateCommonCorrectCasting.js +7 -7
- package/lib/orchestrate/common/structures/IAnalysisSectionEntry.d.ts +2 -8
- package/lib/orchestrate/common/structures/IAutoBeCommonCorrectCastingApplication.d.ts +8 -50
- package/lib/orchestrate/common/structures/IAutoBePreliminaryCollection.d.ts +1 -9
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetAnalysisSections.d.ts +4 -23
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetDatabaseSchemas.d.ts +3 -21
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceOperations.d.ts +4 -22
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceSchemas.d.ts +4 -22
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetPreviousAnalysisSections.d.ts +5 -17
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetPreviousDatabaseSchemas.d.ts +7 -76
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetPreviousInterfaceOperations.d.ts +6 -89
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetPreviousInterfaceSchemas.d.ts +7 -93
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetRealizeCollectors.d.ts +3 -22
- package/lib/orchestrate/common/structures/IAutoBePreliminaryGetRealizeTransformers.d.ts +3 -22
- package/lib/orchestrate/interface/orchestrateInterfaceAuthorization.js +114 -139
- package/lib/orchestrate/interface/orchestrateInterfaceAuthorization.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointReview.js +90 -91
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointReview.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointWrite.js +58 -59
- package/lib/orchestrate/interface/orchestrateInterfaceEndpointWrite.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceGroup.js +58 -59
- package/lib/orchestrate/interface/orchestrateInterfaceGroup.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceOperation.js +108 -132
- package/lib/orchestrate/interface/orchestrateInterfaceOperation.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceOperationReview.js +72 -72
- package/lib/orchestrate/interface/orchestrateInterfacePrerequisite.js +76 -77
- package/lib/orchestrate/interface/orchestrateInterfacePrerequisite.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaCasting.js +130 -159
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaCasting.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaComplement.js +126 -155
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaComplement.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaRefine.js +114 -142
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaRefine.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaRename.js +5 -5
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.js +100 -129
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.js.map +1 -1
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaWrite.js +120 -149
- package/lib/orchestrate/interface/orchestrateInterfaceSchemaWrite.js.map +1 -1
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceAuthorizationApplication.d.ts +10 -97
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointReviewApplication.d.ts +14 -83
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointWriteApplication.d.ts +12 -90
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceGroupApplication.d.ts +12 -80
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.d.ts +21 -116
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationReviewApplication.d.ts +24 -112
- package/lib/orchestrate/interface/structures/IAutoBeInterfacePrerequisiteApplication.d.ts +11 -83
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaApplication.d.ts +11 -76
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaCastingApplication.d.ts +18 -96
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaComplementApplication.d.ts +11 -76
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRefineApplication.d.ts +25 -107
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRenameApplication.d.ts +5 -31
- package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaReviewApplication.d.ts +6 -42
- package/lib/orchestrate/prisma/orchestratePrismaAuthorization.js +41 -41
- package/lib/orchestrate/prisma/orchestratePrismaAuthorizationReview.js +62 -63
- package/lib/orchestrate/prisma/orchestratePrismaAuthorizationReview.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaComponent.js +40 -41
- package/lib/orchestrate/prisma/orchestratePrismaComponent.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaComponentReview.js +60 -61
- package/lib/orchestrate/prisma/orchestratePrismaComponentReview.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaCorrect.js +112 -116
- package/lib/orchestrate/prisma/orchestratePrismaCorrect.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaGroup.js +48 -49
- package/lib/orchestrate/prisma/orchestratePrismaGroup.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaGroupReview.js +70 -71
- package/lib/orchestrate/prisma/orchestratePrismaGroupReview.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaSchema.js +118 -122
- package/lib/orchestrate/prisma/orchestratePrismaSchema.js.map +1 -1
- package/lib/orchestrate/prisma/orchestratePrismaSchemaReview.js +126 -131
- package/lib/orchestrate/prisma/orchestratePrismaSchemaReview.js.map +1 -1
- package/lib/orchestrate/prisma/structures/IAutoBeDatabaseAuthorizationApplication.d.ts +22 -99
- package/lib/orchestrate/prisma/structures/IAutoBeDatabaseAuthorizationReviewApplication.d.ts +12 -109
- package/lib/orchestrate/prisma/structures/IAutoBeDatabaseComponentApplication.d.ts +14 -100
- package/lib/orchestrate/prisma/structures/IAutoBeDatabaseComponentReviewApplication.d.ts +15 -108
- package/lib/orchestrate/prisma/structures/IAutoBeDatabaseCorrectApplication.d.ts +24 -106
- package/lib/orchestrate/prisma/structures/IAutoBeDatabaseGroupApplication.d.ts +13 -76
- package/lib/orchestrate/prisma/structures/IAutoBeDatabaseGroupReviewApplication.d.ts +13 -111
- package/lib/orchestrate/prisma/structures/IAutoBeDatabaseSchemaApplication.d.ts +26 -97
- package/lib/orchestrate/prisma/structures/IAutoBeDatabaseSchemaReviewApplication.d.ts +16 -93
- package/lib/orchestrate/realize/histories/transformRealizeOperationCorrectHistory.js +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeOperationCorrectHistory.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeOperationWriteHistory.js +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeOperationWriteHistory.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeTransformerCorrectHistory.js +20 -2
- package/lib/orchestrate/realize/histories/transformRealizeTransformerCorrectHistory.js.map +1 -1
- package/lib/orchestrate/realize/histories/transformRealizeTransformerWriteHistory.js +22 -2
- package/lib/orchestrate/realize/histories/transformRealizeTransformerWriteHistory.js.map +1 -1
- package/lib/orchestrate/realize/internal/orchestrateRealizeCorrectCasting.js +7 -7
- package/lib/orchestrate/realize/internal/orchestrateRealizeCorrectOverall.js +86 -6
- package/lib/orchestrate/realize/internal/orchestrateRealizeCorrectOverall.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js +38 -38
- package/lib/orchestrate/realize/orchestrateRealizeAuthorizationWrite.js +34 -34
- package/lib/orchestrate/realize/orchestrateRealizeCollectorCorrectOverall.js +38 -38
- package/lib/orchestrate/realize/orchestrateRealizeCollectorPlan.js +54 -54
- package/lib/orchestrate/realize/orchestrateRealizeCollectorWrite.js +36 -36
- package/lib/orchestrate/realize/orchestrateRealizeOperationCorrectOverall.js +44 -44
- package/lib/orchestrate/realize/orchestrateRealizeOperationWrite.js +42 -42
- package/lib/orchestrate/realize/orchestrateRealizeTransformerCorrectCasting.js +1 -0
- package/lib/orchestrate/realize/orchestrateRealizeTransformerCorrectCasting.js.map +1 -1
- package/lib/orchestrate/realize/orchestrateRealizeTransformerCorrectOverall.js +46 -46
- package/lib/orchestrate/realize/orchestrateRealizeTransformerPlan.js +36 -36
- package/lib/orchestrate/realize/orchestrateRealizeTransformerWrite.js +44 -44
- package/lib/orchestrate/realize/programmers/AutoBeRealizeTransformerProgrammer.d.ts +18 -0
- package/lib/orchestrate/realize/programmers/AutoBeRealizeTransformerProgrammer.js +167 -8
- package/lib/orchestrate/realize/programmers/AutoBeRealizeTransformerProgrammer.js.map +1 -1
- package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationCorrectApplication.d.ts +17 -71
- package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationWriteApplication.d.ts +32 -92
- package/lib/orchestrate/realize/structures/IAutoBeRealizeCollectorCorrectApplication.d.ts +32 -114
- package/lib/orchestrate/realize/structures/IAutoBeRealizeCollectorPlanApplication.d.ts +29 -106
- package/lib/orchestrate/realize/structures/IAutoBeRealizeCollectorWriteApplication.d.ts +38 -131
- package/lib/orchestrate/realize/structures/IAutoBeRealizeOperationCorrectApplication.d.ts +16 -71
- package/lib/orchestrate/realize/structures/IAutoBeRealizeOperationWriteApplication.d.ts +16 -73
- package/lib/orchestrate/realize/structures/IAutoBeRealizeTransformerCorrectApplication.d.ts +37 -155
- package/lib/orchestrate/realize/structures/IAutoBeRealizeTransformerPlanApplication.d.ts +25 -88
- package/lib/orchestrate/realize/structures/IAutoBeRealizeTransformerWriteApplication.d.ts +48 -181
- package/lib/orchestrate/realize/utils/generateTS2339Hints.d.ts +5 -3
- package/lib/orchestrate/realize/utils/generateTS2339Hints.js +37 -19
- package/lib/orchestrate/realize/utils/generateTS2339Hints.js.map +1 -1
- package/lib/orchestrate/test/histories/transformTestOperationWriteHistory.js +2 -2
- package/lib/orchestrate/test/orchestrateTestScenario.js +22 -22
- package/lib/orchestrate/test/orchestrateTestScenarioReview.js +22 -22
- package/package.json +5 -5
- package/src/constants/AutoBeSystemPromptConstant.ts +5 -4
- package/src/describe/image/structures/IAutoBeImageDescribeDraftApplication.ts +12 -63
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeExtractDecisionsApplication.ts +14 -52
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioApplication.ts +23 -96
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioReviewApplication.ts +12 -40
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeSectionCrossFileReviewApplication.ts +30 -88
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeSectionReviewApplication.ts +35 -94
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeWriteSectionApplication.ts +23 -93
- package/src/orchestrate/analyze/structures/IAutoBeAnalyzeWriteUnitApplication.ts +15 -88
- package/src/orchestrate/common/histories/transformPreviousAndLatestCorrectHistory.ts +92 -31
- package/src/orchestrate/common/structures/IAnalysisSectionEntry.ts +2 -8
- package/src/orchestrate/common/structures/IAutoBeCommonCorrectCastingApplication.ts +8 -50
- package/src/orchestrate/common/structures/IAutoBePreliminaryCollection.ts +1 -9
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetAnalysisSections.ts +4 -23
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetDatabaseSchemas.ts +3 -21
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceOperations.ts +4 -22
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceSchemas.ts +4 -22
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousAnalysisSections.ts +5 -17
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousDatabaseSchemas.ts +7 -76
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousInterfaceOperations.ts +6 -89
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousInterfaceSchemas.ts +7 -93
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetRealizeCollectors.ts +3 -22
- package/src/orchestrate/common/structures/IAutoBePreliminaryGetRealizeTransformers.ts +3 -22
- package/src/orchestrate/interface/structures/IAutoBeInterfaceAuthorizationApplication.ts +10 -97
- package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointReviewApplication.ts +14 -83
- package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointWriteApplication.ts +12 -90
- package/src/orchestrate/interface/structures/IAutoBeInterfaceGroupApplication.ts +12 -80
- package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.ts +21 -116
- package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationReviewApplication.ts +24 -112
- package/src/orchestrate/interface/structures/IAutoBeInterfacePrerequisiteApplication.ts +11 -83
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaApplication.ts +11 -76
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaCastingApplication.ts +18 -96
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaComplementApplication.ts +11 -76
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaRefineApplication.ts +25 -107
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaRenameApplication.ts +5 -31
- package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaReviewApplication.ts +6 -42
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseAuthorizationApplication.ts +22 -99
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseAuthorizationReviewApplication.ts +12 -109
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseComponentApplication.ts +14 -100
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseComponentReviewApplication.ts +15 -108
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseCorrectApplication.ts +24 -106
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseGroupApplication.ts +13 -76
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseGroupReviewApplication.ts +13 -111
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseSchemaApplication.ts +26 -97
- package/src/orchestrate/prisma/structures/IAutoBeDatabaseSchemaReviewApplication.ts +16 -93
- package/src/orchestrate/realize/histories/transformRealizeTransformerCorrectHistory.ts +21 -1
- package/src/orchestrate/realize/histories/transformRealizeTransformerWriteHistory.ts +26 -4
- package/src/orchestrate/realize/internal/orchestrateRealizeCorrectOverall.ts +125 -9
- package/src/orchestrate/realize/orchestrateRealizeTransformerCorrectCasting.ts +1 -0
- package/src/orchestrate/realize/programmers/AutoBeRealizeTransformerProgrammer.ts +210 -7
- package/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationCorrectApplication.ts +17 -71
- package/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationWriteApplication.ts +32 -92
- package/src/orchestrate/realize/structures/IAutoBeRealizeCollectorCorrectApplication.ts +32 -114
- package/src/orchestrate/realize/structures/IAutoBeRealizeCollectorPlanApplication.ts +29 -106
- package/src/orchestrate/realize/structures/IAutoBeRealizeCollectorWriteApplication.ts +38 -131
- package/src/orchestrate/realize/structures/IAutoBeRealizeOperationCorrectApplication.ts +16 -71
- package/src/orchestrate/realize/structures/IAutoBeRealizeOperationWriteApplication.ts +16 -73
- package/src/orchestrate/realize/structures/IAutoBeRealizeTransformerCorrectApplication.ts +37 -155
- package/src/orchestrate/realize/structures/IAutoBeRealizeTransformerPlanApplication.ts +25 -88
- package/src/orchestrate/realize/structures/IAutoBeRealizeTransformerWriteApplication.ts +48 -181
- package/src/orchestrate/realize/utils/generateTS2339Hints.ts +39 -19
|
@@ -103,7 +103,7 @@ function step(ctx, props) {
|
|
|
103
103
|
properties: {
|
|
104
104
|
thinking: {
|
|
105
105
|
type: "string",
|
|
106
|
-
description: "
|
|
106
|
+
description: "Reasoning about your current state: what's missing (preliminary) or what\nyou accomplished (completion)."
|
|
107
107
|
},
|
|
108
108
|
request: {
|
|
109
109
|
oneOf: [
|
|
@@ -133,7 +133,7 @@ function step(ctx, props) {
|
|
|
133
133
|
complete: "#/components/schemas/IAutoBeDatabaseSchemaReviewApplication.IComplete"
|
|
134
134
|
}
|
|
135
135
|
},
|
|
136
|
-
description: "
|
|
136
|
+
description: "Action to perform. Exhausted preliminary types are removed from the\nunion."
|
|
137
137
|
}
|
|
138
138
|
},
|
|
139
139
|
required: [
|
|
@@ -146,7 +146,7 @@ function step(ctx, props) {
|
|
|
146
146
|
properties: {
|
|
147
147
|
type: {
|
|
148
148
|
"const": "getAnalysisSections",
|
|
149
|
-
description: "Type discriminator
|
|
149
|
+
description: "Type discriminator."
|
|
150
150
|
},
|
|
151
151
|
sectionIds: {
|
|
152
152
|
type: "array",
|
|
@@ -156,21 +156,21 @@ function step(ctx, props) {
|
|
|
156
156
|
},
|
|
157
157
|
minItems: 1,
|
|
158
158
|
maxItems: 100,
|
|
159
|
-
description: "
|
|
159
|
+
description: "Section IDs to retrieve. DO NOT request same IDs already requested in\nprevious calls."
|
|
160
160
|
}
|
|
161
161
|
},
|
|
162
162
|
required: [
|
|
163
163
|
"type",
|
|
164
164
|
"sectionIds"
|
|
165
165
|
],
|
|
166
|
-
description: "Request to retrieve individual analysis sections by numeric ID
|
|
166
|
+
description: "Request to retrieve individual analysis sections by numeric ID."
|
|
167
167
|
},
|
|
168
168
|
IAutoBePreliminaryGetDatabaseSchemas: {
|
|
169
169
|
type: "object",
|
|
170
170
|
properties: {
|
|
171
171
|
type: {
|
|
172
172
|
"const": "getDatabaseSchemas",
|
|
173
|
-
description: "Type discriminator
|
|
173
|
+
description: "Type discriminator."
|
|
174
174
|
},
|
|
175
175
|
schemaNames: {
|
|
176
176
|
type: "array",
|
|
@@ -178,21 +178,21 @@ function step(ctx, props) {
|
|
|
178
178
|
type: "string"
|
|
179
179
|
},
|
|
180
180
|
minItems: 1,
|
|
181
|
-
description: "
|
|
181
|
+
description: "Database table names to retrieve. DO NOT request same names already\nrequested in previous calls."
|
|
182
182
|
}
|
|
183
183
|
},
|
|
184
184
|
required: [
|
|
185
185
|
"type",
|
|
186
186
|
"schemaNames"
|
|
187
187
|
],
|
|
188
|
-
description: "Request to retrieve database schema definitions for context
|
|
188
|
+
description: "Request to retrieve database schema definitions for context."
|
|
189
189
|
},
|
|
190
190
|
IAutoBePreliminaryGetPreviousAnalysisSections: {
|
|
191
191
|
type: "object",
|
|
192
192
|
properties: {
|
|
193
193
|
type: {
|
|
194
194
|
"const": "getPreviousAnalysisSections",
|
|
195
|
-
description: "Type discriminator
|
|
195
|
+
description: "Type discriminator."
|
|
196
196
|
},
|
|
197
197
|
sectionIds: {
|
|
198
198
|
type: "array",
|
|
@@ -201,21 +201,21 @@ function step(ctx, props) {
|
|
|
201
201
|
minimum: 0
|
|
202
202
|
},
|
|
203
203
|
minItems: 1,
|
|
204
|
-
description: "
|
|
204
|
+
description: "Section IDs to retrieve from previous iteration. DO NOT request same IDs\nalready requested in previous calls."
|
|
205
205
|
}
|
|
206
206
|
},
|
|
207
207
|
required: [
|
|
208
208
|
"type",
|
|
209
209
|
"sectionIds"
|
|
210
210
|
],
|
|
211
|
-
description: "Request to retrieve
|
|
211
|
+
description: "Request to retrieve analysis sections from the previous iteration by numeric\nID."
|
|
212
212
|
},
|
|
213
213
|
IAutoBePreliminaryGetPreviousDatabaseSchemas: {
|
|
214
214
|
type: "object",
|
|
215
215
|
properties: {
|
|
216
216
|
type: {
|
|
217
217
|
"const": "getPreviousDatabaseSchemas",
|
|
218
|
-
description: "Type discriminator
|
|
218
|
+
description: "Type discriminator."
|
|
219
219
|
},
|
|
220
220
|
schemaNames: {
|
|
221
221
|
type: "array",
|
|
@@ -223,29 +223,29 @@ function step(ctx, props) {
|
|
|
223
223
|
type: "string"
|
|
224
224
|
},
|
|
225
225
|
minItems: 1,
|
|
226
|
-
description: "
|
|
226
|
+
description: "Table names to retrieve from previous iteration. DO NOT request same names\nalready requested in previous calls."
|
|
227
227
|
}
|
|
228
228
|
},
|
|
229
229
|
required: [
|
|
230
230
|
"type",
|
|
231
231
|
"schemaNames"
|
|
232
232
|
],
|
|
233
|
-
description: "Request to retrieve database schemas from
|
|
233
|
+
description: "Request to retrieve database schemas from the previous iteration.\n\nLoads database table definitions from the last successfully generated\nversion, used as reference context during regeneration or modification\ncycles."
|
|
234
234
|
},
|
|
235
235
|
"IAutoBeDatabaseSchemaReviewApplication.IComplete": {
|
|
236
236
|
type: "object",
|
|
237
237
|
properties: {
|
|
238
238
|
type: {
|
|
239
239
|
"const": "complete",
|
|
240
|
-
description: "Type discriminator for
|
|
240
|
+
description: "Type discriminator for completion request."
|
|
241
241
|
},
|
|
242
242
|
review: {
|
|
243
243
|
type: "string",
|
|
244
|
-
description: "
|
|
244
|
+
description: "Review analysis covering normalization, relationships, indexes, naming,\nand business alignment."
|
|
245
245
|
},
|
|
246
246
|
plan: {
|
|
247
247
|
type: "string",
|
|
248
|
-
description: "
|
|
248
|
+
description: "Database design plan serving as the blueprint for validating the\nimplemented schema."
|
|
249
249
|
},
|
|
250
250
|
content: {
|
|
251
251
|
oneOf: [
|
|
@@ -256,7 +256,7 @@ function step(ctx, props) {
|
|
|
256
256
|
$ref: "#/components/schemas/AutoBeDatabaseSchemaDefinition"
|
|
257
257
|
}
|
|
258
258
|
],
|
|
259
|
-
description: "Corrected schema definition
|
|
259
|
+
description: "Corrected schema definition, or null if no changes are needed.\n\nWhen not null, carries exactly one corrected\n{@link AutoBeDatabaseSchemaDefinition.model}. Additional child tables go\nin {@link AutoBeDatabaseSchemaDefinition.newDesigns}."
|
|
260
260
|
}
|
|
261
261
|
},
|
|
262
262
|
required: [
|
|
@@ -265,28 +265,28 @@ function step(ctx, props) {
|
|
|
265
265
|
"plan",
|
|
266
266
|
"content"
|
|
267
267
|
],
|
|
268
|
-
description: "
|
|
268
|
+
description: "Review and refine database schema models for normalization, relationships,\nand performance."
|
|
269
269
|
},
|
|
270
270
|
AutoBeDatabaseSchemaDefinition: {
|
|
271
271
|
type: "object",
|
|
272
272
|
properties: {
|
|
273
273
|
model: {
|
|
274
274
|
$ref: "#/components/schemas/AutoBeDatabase.IModel",
|
|
275
|
-
description: "The single database table model produced by this call
|
|
275
|
+
description: "The single database table model produced by this call."
|
|
276
276
|
},
|
|
277
277
|
newDesigns: {
|
|
278
278
|
type: "array",
|
|
279
279
|
items: {
|
|
280
280
|
$ref: "#/components/schemas/AutoBeDatabaseComponentTableDesign"
|
|
281
281
|
},
|
|
282
|
-
description: "
|
|
282
|
+
description: "Name+description pairs for child tables discovered during generation (1NF\ndecomposition, junction tables, etc.). Each feeds back into the pipeline as\na separate generation call."
|
|
283
283
|
}
|
|
284
284
|
},
|
|
285
285
|
required: [
|
|
286
286
|
"model",
|
|
287
287
|
"newDesigns"
|
|
288
288
|
],
|
|
289
|
-
description: "
|
|
289
|
+
description: "Output of a single schema generation or review call.\n\nOne target table model + lightweight designs for newly discovered child\ntables. Single-model constraint keeps output within LLM token budget."
|
|
290
290
|
},
|
|
291
291
|
"AutoBeDatabase.IModel": {
|
|
292
292
|
type: "object",
|
|
@@ -294,15 +294,15 @@ function step(ctx, props) {
|
|
|
294
294
|
name: {
|
|
295
295
|
type: "string",
|
|
296
296
|
pattern: "^[a-z][a-z0-9_]*$",
|
|
297
|
-
description: "
|
|
297
|
+
description: "MUST use snake_case. Materialized views use \"mv_\" prefix."
|
|
298
298
|
},
|
|
299
299
|
description: {
|
|
300
300
|
type: "string",
|
|
301
|
-
description: "
|
|
301
|
+
description: "Business purpose of this model. MUST be written in English. Reference\nrelated entities using \"{@\\link ModelName}\" syntax."
|
|
302
302
|
},
|
|
303
303
|
material: {
|
|
304
304
|
type: "boolean",
|
|
305
|
-
description: "
|
|
305
|
+
description: "Whether this model is a materialized view (read-only cached query). If\ntrue, name must use \"mv_\" prefix."
|
|
306
306
|
},
|
|
307
307
|
stance: {
|
|
308
308
|
oneOf: [
|
|
@@ -322,46 +322,46 @@ function step(ctx, props) {
|
|
|
322
322
|
"const": "session"
|
|
323
323
|
}
|
|
324
324
|
],
|
|
325
|
-
description: "
|
|
325
|
+
description: "Architectural role of this model, guiding API endpoint generation.\n\n- \"primary\": Core entity users manage independently (full CRUD APIs). Use\n when users need to create, search, or manage entities outside their\n parent context.\n- \"actor\": Authenticated user type with its own identity, credentials, and\n auth flow. Generates auth endpoints.\n- \"session\": Login session table belonging to exactly one actor.\n Append-only audit trail, managed via auth flows.\n- \"subsidiary\": Supporting entity managed through its parent, rarely needs\n standalone endpoints.\n- \"snapshot\": Point-in-time versioning record, typically append-only and\n read-only from user perspective."
|
|
326
326
|
},
|
|
327
327
|
primaryField: {
|
|
328
328
|
$ref: "#/components/schemas/AutoBeDatabase.IPrimaryField",
|
|
329
|
-
description: "
|
|
329
|
+
description: "Primary key field (UUID)."
|
|
330
330
|
},
|
|
331
331
|
foreignFields: {
|
|
332
332
|
type: "array",
|
|
333
333
|
items: {
|
|
334
334
|
$ref: "#/components/schemas/AutoBeDatabase.IForeignField"
|
|
335
335
|
},
|
|
336
|
-
description: "
|
|
336
|
+
description: "Foreign key fields establishing relationships to other models."
|
|
337
337
|
},
|
|
338
338
|
plainFields: {
|
|
339
339
|
type: "array",
|
|
340
340
|
items: {
|
|
341
341
|
$ref: "#/components/schemas/AutoBeDatabase.IPlainField"
|
|
342
342
|
},
|
|
343
|
-
description: "
|
|
343
|
+
description: "Regular data fields (names, timestamps, flags, amounts, etc.)."
|
|
344
344
|
},
|
|
345
345
|
uniqueIndexes: {
|
|
346
346
|
type: "array",
|
|
347
347
|
items: {
|
|
348
348
|
$ref: "#/components/schemas/AutoBeDatabase.IUniqueIndex"
|
|
349
349
|
},
|
|
350
|
-
description: "
|
|
350
|
+
description: "Unique indexes for data integrity constraints."
|
|
351
351
|
},
|
|
352
352
|
plainIndexes: {
|
|
353
353
|
type: "array",
|
|
354
354
|
items: {
|
|
355
355
|
$ref: "#/components/schemas/AutoBeDatabase.IPlainIndex"
|
|
356
356
|
},
|
|
357
|
-
description: "
|
|
357
|
+
description: "Regular indexes for query performance."
|
|
358
358
|
},
|
|
359
359
|
ginIndexes: {
|
|
360
360
|
type: "array",
|
|
361
361
|
items: {
|
|
362
362
|
$ref: "#/components/schemas/AutoBeDatabase.IGinIndex"
|
|
363
363
|
},
|
|
364
|
-
description: "
|
|
364
|
+
description: "GIN indexes for PostgreSQL full-text search (trigram)."
|
|
365
365
|
}
|
|
366
366
|
},
|
|
367
367
|
required: [
|
|
@@ -376,7 +376,7 @@ function step(ctx, props) {
|
|
|
376
376
|
"plainIndexes",
|
|
377
377
|
"ginIndexes"
|
|
378
378
|
],
|
|
379
|
-
description: "
|
|
379
|
+
description: "A single Prisma model (database table)."
|
|
380
380
|
},
|
|
381
381
|
"AutoBeDatabase.IPrimaryField": {
|
|
382
382
|
type: "object",
|
|
@@ -384,15 +384,14 @@ function step(ctx, props) {
|
|
|
384
384
|
name: {
|
|
385
385
|
type: "string",
|
|
386
386
|
pattern: "^[a-z][a-z0-9_]*$",
|
|
387
|
-
description: "
|
|
387
|
+
description: "MUST use snake_case."
|
|
388
388
|
},
|
|
389
389
|
type: {
|
|
390
|
-
"const": "uuid"
|
|
391
|
-
description: "Data type of the primary key field.\n\nAlways \"uuid\" in the uploaded schemas for better distributed system\nsupport and to avoid exposing sequential IDs that could reveal business\ninformation."
|
|
390
|
+
"const": "uuid"
|
|
392
391
|
},
|
|
393
392
|
description: {
|
|
394
393
|
type: "string",
|
|
395
|
-
description: "
|
|
394
|
+
description: "Business purpose of this primary key. MUST be written in English."
|
|
396
395
|
}
|
|
397
396
|
},
|
|
398
397
|
required: [
|
|
@@ -400,7 +399,7 @@ function step(ctx, props) {
|
|
|
400
399
|
"type",
|
|
401
400
|
"description"
|
|
402
401
|
],
|
|
403
|
-
description: "
|
|
402
|
+
description: "Primary key field of a model."
|
|
404
403
|
},
|
|
405
404
|
"AutoBeDatabase.IForeignField": {
|
|
406
405
|
type: "object",
|
|
@@ -408,27 +407,26 @@ function step(ctx, props) {
|
|
|
408
407
|
name: {
|
|
409
408
|
type: "string",
|
|
410
409
|
pattern: "^[a-z][a-z0-9_]*$",
|
|
411
|
-
description: "
|
|
410
|
+
description: "MUST use snake_case. Convention: \"{target_model}_id\"."
|
|
412
411
|
},
|
|
413
412
|
type: {
|
|
414
|
-
"const": "uuid"
|
|
415
|
-
description: "Data type of the foreign key field.\n\nAlways \"uuid\" to match the primary key type of referenced models. Ensures\nreferential integrity and consistency across the schema."
|
|
413
|
+
"const": "uuid"
|
|
416
414
|
},
|
|
417
415
|
description: {
|
|
418
416
|
type: "string",
|
|
419
|
-
description: "
|
|
417
|
+
description: "Use format: \"Target's {@\\link ModelName.id}\". MUST be written in English."
|
|
420
418
|
},
|
|
421
419
|
relation: {
|
|
422
420
|
$ref: "#/components/schemas/AutoBeDatabase.IRelation",
|
|
423
|
-
description: "Prisma relation configuration
|
|
421
|
+
description: "Prisma relation configuration."
|
|
424
422
|
},
|
|
425
423
|
unique: {
|
|
426
424
|
type: "boolean",
|
|
427
|
-
description: "
|
|
425
|
+
description: "True for 1:1 relationships, false for 1:N."
|
|
428
426
|
},
|
|
429
427
|
nullable: {
|
|
430
428
|
type: "boolean",
|
|
431
|
-
description: "
|
|
429
|
+
description: "True if the relationship is optional."
|
|
432
430
|
}
|
|
433
431
|
},
|
|
434
432
|
required: [
|
|
@@ -439,7 +437,7 @@ function step(ctx, props) {
|
|
|
439
437
|
"unique",
|
|
440
438
|
"nullable"
|
|
441
439
|
],
|
|
442
|
-
description: "
|
|
440
|
+
description: "Foreign key field establishing a relationship to another model."
|
|
443
441
|
},
|
|
444
442
|
"AutoBeDatabase.IRelation": {
|
|
445
443
|
type: "object",
|
|
@@ -447,16 +445,16 @@ function step(ctx, props) {
|
|
|
447
445
|
name: {
|
|
448
446
|
type: "string",
|
|
449
447
|
pattern: "^[a-z][a-zA-Z0-9]*$",
|
|
450
|
-
description: "
|
|
448
|
+
description: "Relation property name in this model. MUST use camelCase."
|
|
451
449
|
},
|
|
452
450
|
targetModel: {
|
|
453
451
|
type: "string",
|
|
454
|
-
description: "
|
|
452
|
+
description: "Must match an existing model name in the schema."
|
|
455
453
|
},
|
|
456
454
|
oppositeName: {
|
|
457
455
|
type: "string",
|
|
458
456
|
pattern: "^[a-z][a-zA-Z0-9]*$",
|
|
459
|
-
description: "
|
|
457
|
+
description: "Inverse relation property name generated in the target model. Typically\nplural for 1:N (e.g., \"comments\"), singular for 1:1."
|
|
460
458
|
}
|
|
461
459
|
},
|
|
462
460
|
required: [
|
|
@@ -464,7 +462,7 @@ function step(ctx, props) {
|
|
|
464
462
|
"targetModel",
|
|
465
463
|
"oppositeName"
|
|
466
464
|
],
|
|
467
|
-
description: "
|
|
465
|
+
description: "Prisma"
|
|
468
466
|
},
|
|
469
467
|
"AutoBeDatabase.IPlainField": {
|
|
470
468
|
type: "object",
|
|
@@ -472,7 +470,7 @@ function step(ctx, props) {
|
|
|
472
470
|
name: {
|
|
473
471
|
type: "string",
|
|
474
472
|
pattern: "^[a-z][a-z0-9_]*$",
|
|
475
|
-
description: "
|
|
473
|
+
description: "MUST use snake_case."
|
|
476
474
|
},
|
|
477
475
|
type: {
|
|
478
476
|
oneOf: [
|
|
@@ -498,15 +496,15 @@ function step(ctx, props) {
|
|
|
498
496
|
"const": "datetime"
|
|
499
497
|
}
|
|
500
498
|
],
|
|
501
|
-
description: "
|
|
499
|
+
description: "Prisma/PostgreSQL type mapping: boolean, int, double, string, uri, uuid\n(non-FK), datetime."
|
|
502
500
|
},
|
|
503
501
|
description: {
|
|
504
502
|
type: "string",
|
|
505
|
-
description: "
|
|
503
|
+
description: "Business purpose of this field. MUST be written in English."
|
|
506
504
|
},
|
|
507
505
|
nullable: {
|
|
508
506
|
type: "boolean",
|
|
509
|
-
description: "Whether this field can
|
|
507
|
+
description: "Whether this field can be null."
|
|
510
508
|
}
|
|
511
509
|
},
|
|
512
510
|
required: [
|
|
@@ -515,7 +513,7 @@ function step(ctx, props) {
|
|
|
515
513
|
"description",
|
|
516
514
|
"nullable"
|
|
517
515
|
],
|
|
518
|
-
description: "
|
|
516
|
+
description: "A regular data field (not a primary or foreign key)."
|
|
519
517
|
},
|
|
520
518
|
"AutoBeDatabase.IUniqueIndex": {
|
|
521
519
|
type: "object",
|
|
@@ -527,18 +525,18 @@ function step(ctx, props) {
|
|
|
527
525
|
},
|
|
528
526
|
minItems: 1,
|
|
529
527
|
uniqueItems: true,
|
|
530
|
-
description: "
|
|
528
|
+
description: "Field names forming the unique constraint. All must exist in the model."
|
|
531
529
|
},
|
|
532
530
|
unique: {
|
|
533
531
|
"const": true,
|
|
534
|
-
description: "
|
|
532
|
+
description: "Always true. Distinguishes from plain indexes."
|
|
535
533
|
}
|
|
536
534
|
},
|
|
537
535
|
required: [
|
|
538
536
|
"fieldNames",
|
|
539
537
|
"unique"
|
|
540
538
|
],
|
|
541
|
-
description: "
|
|
539
|
+
description: "Unique index constraint (@@unique)."
|
|
542
540
|
},
|
|
543
541
|
"AutoBeDatabase.IPlainIndex": {
|
|
544
542
|
type: "object",
|
|
@@ -550,45 +548,45 @@ function step(ctx, props) {
|
|
|
550
548
|
},
|
|
551
549
|
minItems: 1,
|
|
552
550
|
uniqueItems: true,
|
|
553
|
-
description: "
|
|
551
|
+
description: "Field names to index. Order matters for composite indexes."
|
|
554
552
|
}
|
|
555
553
|
},
|
|
556
554
|
required: [
|
|
557
555
|
"fieldNames"
|
|
558
556
|
],
|
|
559
|
-
description: "
|
|
557
|
+
description: "Regular index for query performance (@@index)."
|
|
560
558
|
},
|
|
561
559
|
"AutoBeDatabase.IGinIndex": {
|
|
562
560
|
type: "object",
|
|
563
561
|
properties: {
|
|
564
562
|
fieldName: {
|
|
565
563
|
type: "string",
|
|
566
|
-
description: "
|
|
564
|
+
description: "Must be a string field containing searchable text."
|
|
567
565
|
}
|
|
568
566
|
},
|
|
569
567
|
required: [
|
|
570
568
|
"fieldName"
|
|
571
569
|
],
|
|
572
|
-
description: "
|
|
570
|
+
description: "GIN index for PostgreSQL full-text search (gin_trgm_ops)."
|
|
573
571
|
},
|
|
574
572
|
AutoBeDatabaseComponentTableDesign: {
|
|
575
573
|
type: "object",
|
|
576
574
|
properties: {
|
|
577
575
|
description: {
|
|
578
576
|
type: "string",
|
|
579
|
-
description: "
|
|
577
|
+
description: "Business purpose of this table. One or two sentences maximum. MUST be\nwritten in English."
|
|
580
578
|
},
|
|
581
579
|
name: {
|
|
582
580
|
type: "string",
|
|
583
581
|
pattern: "^[a-z][a-z0-9_]*$",
|
|
584
|
-
description: "
|
|
582
|
+
description: "Table name in snake_case with domain prefix (e.g., \"shopping_customers\")."
|
|
585
583
|
}
|
|
586
584
|
},
|
|
587
585
|
required: [
|
|
588
586
|
"description",
|
|
589
587
|
"name"
|
|
590
588
|
],
|
|
591
|
-
description: "Table design with name and description
|
|
589
|
+
description: "Table design with name and description."
|
|
592
590
|
}
|
|
593
591
|
}
|
|
594
592
|
},
|
|
@@ -599,14 +597,13 @@ function step(ctx, props) {
|
|
|
599
597
|
parameters: [
|
|
600
598
|
{
|
|
601
599
|
name: "props",
|
|
602
|
-
description: " Request containing either preliminary data request or complete\ntask",
|
|
603
600
|
required: true,
|
|
604
601
|
schema: {
|
|
605
602
|
$ref: "#/components/schemas/IAutoBeDatabaseSchemaReviewApplication.IProps"
|
|
606
603
|
}
|
|
607
604
|
}
|
|
608
605
|
],
|
|
609
|
-
description: "Process schema review task or preliminary data
|
|
606
|
+
description: "Process schema review task or retrieve preliminary data."
|
|
610
607
|
}
|
|
611
608
|
]
|
|
612
609
|
},
|
|
@@ -1169,11 +1166,11 @@ function createController(props) {
|
|
|
1169
1166
|
type: "object",
|
|
1170
1167
|
properties: {
|
|
1171
1168
|
thinking: {
|
|
1172
|
-
description: "
|
|
1169
|
+
description: "Reasoning about your current state: what's missing (preliminary) or what\nyou accomplished (completion).",
|
|
1173
1170
|
type: "string"
|
|
1174
1171
|
},
|
|
1175
1172
|
request: {
|
|
1176
|
-
description: "
|
|
1173
|
+
description: "Action to perform. Exhausted preliminary types are removed from the\nunion.",
|
|
1177
1174
|
anyOf: [
|
|
1178
1175
|
{
|
|
1179
1176
|
$ref: "#/$defs/IAutoBePreliminaryGetAnalysisSections"
|
|
@@ -1210,18 +1207,18 @@ function createController(props) {
|
|
|
1210
1207
|
additionalProperties: false,
|
|
1211
1208
|
$defs: {
|
|
1212
1209
|
IAutoBePreliminaryGetAnalysisSections: {
|
|
1213
|
-
description: "Request to retrieve individual analysis sections by numeric ID
|
|
1210
|
+
description: "Request to retrieve individual analysis sections by numeric ID.",
|
|
1214
1211
|
type: "object",
|
|
1215
1212
|
properties: {
|
|
1216
1213
|
type: {
|
|
1217
|
-
description: "Type discriminator
|
|
1214
|
+
description: "Type discriminator.",
|
|
1218
1215
|
type: "string",
|
|
1219
1216
|
"enum": [
|
|
1220
1217
|
"getAnalysisSections"
|
|
1221
1218
|
]
|
|
1222
1219
|
},
|
|
1223
1220
|
sectionIds: {
|
|
1224
|
-
description: "
|
|
1221
|
+
description: "Section IDs to retrieve. DO NOT request same IDs already requested in\nprevious calls.",
|
|
1225
1222
|
type: "array",
|
|
1226
1223
|
items: {
|
|
1227
1224
|
type: "integer",
|
|
@@ -1237,18 +1234,18 @@ function createController(props) {
|
|
|
1237
1234
|
]
|
|
1238
1235
|
},
|
|
1239
1236
|
IAutoBePreliminaryGetDatabaseSchemas: {
|
|
1240
|
-
description: "Request to retrieve database schema definitions for context
|
|
1237
|
+
description: "Request to retrieve database schema definitions for context.",
|
|
1241
1238
|
type: "object",
|
|
1242
1239
|
properties: {
|
|
1243
1240
|
type: {
|
|
1244
|
-
description: "Type discriminator
|
|
1241
|
+
description: "Type discriminator.",
|
|
1245
1242
|
type: "string",
|
|
1246
1243
|
"enum": [
|
|
1247
1244
|
"getDatabaseSchemas"
|
|
1248
1245
|
]
|
|
1249
1246
|
},
|
|
1250
1247
|
schemaNames: {
|
|
1251
|
-
description: "
|
|
1248
|
+
description: "Database table names to retrieve. DO NOT request same names already\nrequested in previous calls.",
|
|
1252
1249
|
type: "array",
|
|
1253
1250
|
items: {
|
|
1254
1251
|
type: "string"
|
|
@@ -1262,18 +1259,18 @@ function createController(props) {
|
|
|
1262
1259
|
]
|
|
1263
1260
|
},
|
|
1264
1261
|
IAutoBePreliminaryGetPreviousAnalysisSections: {
|
|
1265
|
-
description: "Request to retrieve
|
|
1262
|
+
description: "Request to retrieve analysis sections from the previous iteration by numeric\nID.",
|
|
1266
1263
|
type: "object",
|
|
1267
1264
|
properties: {
|
|
1268
1265
|
type: {
|
|
1269
|
-
description: "Type discriminator
|
|
1266
|
+
description: "Type discriminator.",
|
|
1270
1267
|
type: "string",
|
|
1271
1268
|
"enum": [
|
|
1272
1269
|
"getPreviousAnalysisSections"
|
|
1273
1270
|
]
|
|
1274
1271
|
},
|
|
1275
1272
|
sectionIds: {
|
|
1276
|
-
description: "
|
|
1273
|
+
description: "Section IDs to retrieve from previous iteration. DO NOT request same IDs\nalready requested in previous calls.",
|
|
1277
1274
|
type: "array",
|
|
1278
1275
|
items: {
|
|
1279
1276
|
type: "integer",
|
|
@@ -1288,18 +1285,18 @@ function createController(props) {
|
|
|
1288
1285
|
]
|
|
1289
1286
|
},
|
|
1290
1287
|
IAutoBePreliminaryGetPreviousDatabaseSchemas: {
|
|
1291
|
-
description: "Request to retrieve database schemas from
|
|
1288
|
+
description: "Request to retrieve database schemas from the previous iteration.\n\nLoads database table definitions from the last successfully generated\nversion, used as reference context during regeneration or modification\ncycles.",
|
|
1292
1289
|
type: "object",
|
|
1293
1290
|
properties: {
|
|
1294
1291
|
type: {
|
|
1295
|
-
description: "Type discriminator
|
|
1292
|
+
description: "Type discriminator.",
|
|
1296
1293
|
type: "string",
|
|
1297
1294
|
"enum": [
|
|
1298
1295
|
"getPreviousDatabaseSchemas"
|
|
1299
1296
|
]
|
|
1300
1297
|
},
|
|
1301
1298
|
schemaNames: {
|
|
1302
|
-
description: "
|
|
1299
|
+
description: "Table names to retrieve from previous iteration. DO NOT request same names\nalready requested in previous calls.",
|
|
1303
1300
|
type: "array",
|
|
1304
1301
|
items: {
|
|
1305
1302
|
type: "string"
|
|
@@ -1313,26 +1310,26 @@ function createController(props) {
|
|
|
1313
1310
|
]
|
|
1314
1311
|
},
|
|
1315
1312
|
"IAutoBeDatabaseSchemaReviewApplication.IComplete": {
|
|
1316
|
-
description: "
|
|
1313
|
+
description: "Review and refine database schema models for normalization, relationships,\nand performance.",
|
|
1317
1314
|
type: "object",
|
|
1318
1315
|
properties: {
|
|
1319
1316
|
type: {
|
|
1320
|
-
description: "Type discriminator for
|
|
1317
|
+
description: "Type discriminator for completion request.",
|
|
1321
1318
|
type: "string",
|
|
1322
1319
|
"enum": [
|
|
1323
1320
|
"complete"
|
|
1324
1321
|
]
|
|
1325
1322
|
},
|
|
1326
1323
|
review: {
|
|
1327
|
-
description: "
|
|
1324
|
+
description: "Review analysis covering normalization, relationships, indexes, naming,\nand business alignment.",
|
|
1328
1325
|
type: "string"
|
|
1329
1326
|
},
|
|
1330
1327
|
plan: {
|
|
1331
|
-
description: "
|
|
1328
|
+
description: "Database design plan serving as the blueprint for validating the\nimplemented schema.",
|
|
1332
1329
|
type: "string"
|
|
1333
1330
|
},
|
|
1334
1331
|
content: {
|
|
1335
|
-
description: "Corrected schema definition
|
|
1332
|
+
description: "Corrected schema definition, or null if no changes are needed.\n\nWhen not null, carries exactly one corrected\n{@link AutoBeDatabaseSchemaDefinition.model}. Additional child tables go\nin {@link AutoBeDatabaseSchemaDefinition.newDesigns}.",
|
|
1336
1333
|
anyOf: [
|
|
1337
1334
|
{
|
|
1338
1335
|
type: "null"
|
|
@@ -1351,15 +1348,15 @@ function createController(props) {
|
|
|
1351
1348
|
]
|
|
1352
1349
|
},
|
|
1353
1350
|
AutoBeDatabaseSchemaDefinition: {
|
|
1354
|
-
description: "
|
|
1351
|
+
description: "Output of a single schema generation or review call.\n\nOne target table model + lightweight designs for newly discovered child\ntables. Single-model constraint keeps output within LLM token budget.",
|
|
1355
1352
|
type: "object",
|
|
1356
1353
|
properties: {
|
|
1357
1354
|
model: {
|
|
1358
|
-
description: "The single database table model produced by this call
|
|
1355
|
+
description: "The single database table model produced by this call.",
|
|
1359
1356
|
$ref: "#/$defs/AutoBeDatabase.IModel"
|
|
1360
1357
|
},
|
|
1361
1358
|
newDesigns: {
|
|
1362
|
-
description: "
|
|
1359
|
+
description: "Name+description pairs for child tables discovered during generation (1NF\ndecomposition, junction tables, etc.). Each feeds back into the pipeline as\na separate generation call.",
|
|
1363
1360
|
type: "array",
|
|
1364
1361
|
items: {
|
|
1365
1362
|
$ref: "#/$defs/AutoBeDatabaseComponentTableDesign"
|
|
@@ -1372,24 +1369,24 @@ function createController(props) {
|
|
|
1372
1369
|
]
|
|
1373
1370
|
},
|
|
1374
1371
|
"AutoBeDatabase.IModel": {
|
|
1375
|
-
description: "
|
|
1372
|
+
description: "A single Prisma model (database table).",
|
|
1376
1373
|
type: "object",
|
|
1377
1374
|
properties: {
|
|
1378
1375
|
name: {
|
|
1379
|
-
description: "
|
|
1376
|
+
description: "MUST use snake_case. Materialized views use \"mv_\" prefix.",
|
|
1380
1377
|
type: "string",
|
|
1381
1378
|
pattern: "^[a-z][a-z0-9_]*$"
|
|
1382
1379
|
},
|
|
1383
1380
|
description: {
|
|
1384
|
-
description: "
|
|
1381
|
+
description: "Business purpose of this model. MUST be written in English. Reference\nrelated entities using \"{@\\link ModelName}\" syntax.",
|
|
1385
1382
|
type: "string"
|
|
1386
1383
|
},
|
|
1387
1384
|
material: {
|
|
1388
|
-
description: "
|
|
1385
|
+
description: "Whether this model is a materialized view (read-only cached query). If\ntrue, name must use \"mv_\" prefix.",
|
|
1389
1386
|
type: "boolean"
|
|
1390
1387
|
},
|
|
1391
1388
|
stance: {
|
|
1392
|
-
description: "
|
|
1389
|
+
description: "Architectural role of this model, guiding API endpoint generation.\n\n- \"primary\": Core entity users manage independently (full CRUD APIs). Use\n when users need to create, search, or manage entities outside their\n parent context.\n- \"actor\": Authenticated user type with its own identity, credentials, and\n auth flow. Generates auth endpoints.\n- \"session\": Login session table belonging to exactly one actor.\n Append-only audit trail, managed via auth flows.\n- \"subsidiary\": Supporting entity managed through its parent, rarely needs\n standalone endpoints.\n- \"snapshot\": Point-in-time versioning record, typically append-only and\n read-only from user perspective.",
|
|
1393
1390
|
type: "string",
|
|
1394
1391
|
"enum": [
|
|
1395
1392
|
"primary",
|
|
@@ -1400,39 +1397,39 @@ function createController(props) {
|
|
|
1400
1397
|
]
|
|
1401
1398
|
},
|
|
1402
1399
|
primaryField: {
|
|
1403
|
-
description: "
|
|
1400
|
+
description: "Primary key field (UUID).",
|
|
1404
1401
|
$ref: "#/$defs/AutoBeDatabase.IPrimaryField"
|
|
1405
1402
|
},
|
|
1406
1403
|
foreignFields: {
|
|
1407
|
-
description: "
|
|
1404
|
+
description: "Foreign key fields establishing relationships to other models.",
|
|
1408
1405
|
type: "array",
|
|
1409
1406
|
items: {
|
|
1410
1407
|
$ref: "#/$defs/AutoBeDatabase.IForeignField"
|
|
1411
1408
|
}
|
|
1412
1409
|
},
|
|
1413
1410
|
plainFields: {
|
|
1414
|
-
description: "
|
|
1411
|
+
description: "Regular data fields (names, timestamps, flags, amounts, etc.).",
|
|
1415
1412
|
type: "array",
|
|
1416
1413
|
items: {
|
|
1417
1414
|
$ref: "#/$defs/AutoBeDatabase.IPlainField"
|
|
1418
1415
|
}
|
|
1419
1416
|
},
|
|
1420
1417
|
uniqueIndexes: {
|
|
1421
|
-
description: "
|
|
1418
|
+
description: "Unique indexes for data integrity constraints.",
|
|
1422
1419
|
type: "array",
|
|
1423
1420
|
items: {
|
|
1424
1421
|
$ref: "#/$defs/AutoBeDatabase.IUniqueIndex"
|
|
1425
1422
|
}
|
|
1426
1423
|
},
|
|
1427
1424
|
plainIndexes: {
|
|
1428
|
-
description: "
|
|
1425
|
+
description: "Regular indexes for query performance.",
|
|
1429
1426
|
type: "array",
|
|
1430
1427
|
items: {
|
|
1431
1428
|
$ref: "#/$defs/AutoBeDatabase.IPlainIndex"
|
|
1432
1429
|
}
|
|
1433
1430
|
},
|
|
1434
1431
|
ginIndexes: {
|
|
1435
|
-
description: "
|
|
1432
|
+
description: "GIN indexes for PostgreSQL full-text search (trigram).",
|
|
1436
1433
|
type: "array",
|
|
1437
1434
|
items: {
|
|
1438
1435
|
$ref: "#/$defs/AutoBeDatabase.IGinIndex"
|
|
@@ -1453,23 +1450,22 @@ function createController(props) {
|
|
|
1453
1450
|
]
|
|
1454
1451
|
},
|
|
1455
1452
|
"AutoBeDatabase.IPrimaryField": {
|
|
1456
|
-
description: "
|
|
1453
|
+
description: "Primary key field of a model.",
|
|
1457
1454
|
type: "object",
|
|
1458
1455
|
properties: {
|
|
1459
1456
|
name: {
|
|
1460
|
-
description: "
|
|
1457
|
+
description: "MUST use snake_case.",
|
|
1461
1458
|
type: "string",
|
|
1462
1459
|
pattern: "^[a-z][a-z0-9_]*$"
|
|
1463
1460
|
},
|
|
1464
1461
|
type: {
|
|
1465
|
-
description: "Data type of the primary key field.\n\nAlways \"uuid\" in the uploaded schemas for better distributed system\nsupport and to avoid exposing sequential IDs that could reveal business\ninformation.",
|
|
1466
1462
|
type: "string",
|
|
1467
1463
|
"enum": [
|
|
1468
1464
|
"uuid"
|
|
1469
1465
|
]
|
|
1470
1466
|
},
|
|
1471
1467
|
description: {
|
|
1472
|
-
description: "
|
|
1468
|
+
description: "Business purpose of this primary key. MUST be written in English.",
|
|
1473
1469
|
type: "string"
|
|
1474
1470
|
}
|
|
1475
1471
|
},
|
|
@@ -1480,35 +1476,34 @@ function createController(props) {
|
|
|
1480
1476
|
]
|
|
1481
1477
|
},
|
|
1482
1478
|
"AutoBeDatabase.IForeignField": {
|
|
1483
|
-
description: "
|
|
1479
|
+
description: "Foreign key field establishing a relationship to another model.",
|
|
1484
1480
|
type: "object",
|
|
1485
1481
|
properties: {
|
|
1486
1482
|
name: {
|
|
1487
|
-
description: "
|
|
1483
|
+
description: "MUST use snake_case. Convention: \"{target_model}_id\".",
|
|
1488
1484
|
type: "string",
|
|
1489
1485
|
pattern: "^[a-z][a-z0-9_]*$"
|
|
1490
1486
|
},
|
|
1491
1487
|
type: {
|
|
1492
|
-
description: "Data type of the foreign key field.\n\nAlways \"uuid\" to match the primary key type of referenced models. Ensures\nreferential integrity and consistency across the schema.",
|
|
1493
1488
|
type: "string",
|
|
1494
1489
|
"enum": [
|
|
1495
1490
|
"uuid"
|
|
1496
1491
|
]
|
|
1497
1492
|
},
|
|
1498
1493
|
description: {
|
|
1499
|
-
description: "
|
|
1494
|
+
description: "Use format: \"Target's {@\\link ModelName.id}\". MUST be written in English.",
|
|
1500
1495
|
type: "string"
|
|
1501
1496
|
},
|
|
1502
1497
|
relation: {
|
|
1503
|
-
description: "Prisma relation configuration
|
|
1498
|
+
description: "Prisma relation configuration.",
|
|
1504
1499
|
$ref: "#/$defs/AutoBeDatabase.IRelation"
|
|
1505
1500
|
},
|
|
1506
1501
|
unique: {
|
|
1507
|
-
description: "
|
|
1502
|
+
description: "True for 1:1 relationships, false for 1:N.",
|
|
1508
1503
|
type: "boolean"
|
|
1509
1504
|
},
|
|
1510
1505
|
nullable: {
|
|
1511
|
-
description: "
|
|
1506
|
+
description: "True if the relationship is optional.",
|
|
1512
1507
|
type: "boolean"
|
|
1513
1508
|
}
|
|
1514
1509
|
},
|
|
@@ -1522,20 +1517,20 @@ function createController(props) {
|
|
|
1522
1517
|
]
|
|
1523
1518
|
},
|
|
1524
1519
|
"AutoBeDatabase.IRelation": {
|
|
1525
|
-
description: "
|
|
1520
|
+
description: "Prisma",
|
|
1526
1521
|
type: "object",
|
|
1527
1522
|
properties: {
|
|
1528
1523
|
name: {
|
|
1529
|
-
description: "
|
|
1524
|
+
description: "Relation property name in this model. MUST use camelCase.",
|
|
1530
1525
|
type: "string",
|
|
1531
1526
|
pattern: "^[a-z][a-zA-Z0-9]*$"
|
|
1532
1527
|
},
|
|
1533
1528
|
targetModel: {
|
|
1534
|
-
description: "
|
|
1529
|
+
description: "Must match an existing model name in the schema.",
|
|
1535
1530
|
type: "string"
|
|
1536
1531
|
},
|
|
1537
1532
|
oppositeName: {
|
|
1538
|
-
description: "
|
|
1533
|
+
description: "Inverse relation property name generated in the target model. Typically\nplural for 1:N (e.g., \"comments\"), singular for 1:1.",
|
|
1539
1534
|
type: "string",
|
|
1540
1535
|
pattern: "^[a-z][a-zA-Z0-9]*$"
|
|
1541
1536
|
}
|
|
@@ -1547,16 +1542,16 @@ function createController(props) {
|
|
|
1547
1542
|
]
|
|
1548
1543
|
},
|
|
1549
1544
|
"AutoBeDatabase.IPlainField": {
|
|
1550
|
-
description: "
|
|
1545
|
+
description: "A regular data field (not a primary or foreign key).",
|
|
1551
1546
|
type: "object",
|
|
1552
1547
|
properties: {
|
|
1553
1548
|
name: {
|
|
1554
|
-
description: "
|
|
1549
|
+
description: "MUST use snake_case.",
|
|
1555
1550
|
type: "string",
|
|
1556
1551
|
pattern: "^[a-z][a-z0-9_]*$"
|
|
1557
1552
|
},
|
|
1558
1553
|
type: {
|
|
1559
|
-
description: "
|
|
1554
|
+
description: "Prisma/PostgreSQL type mapping: boolean, int, double, string, uri, uuid\n(non-FK), datetime.",
|
|
1560
1555
|
type: "string",
|
|
1561
1556
|
"enum": [
|
|
1562
1557
|
"string",
|
|
@@ -1569,11 +1564,11 @@ function createController(props) {
|
|
|
1569
1564
|
]
|
|
1570
1565
|
},
|
|
1571
1566
|
description: {
|
|
1572
|
-
description: "
|
|
1567
|
+
description: "Business purpose of this field. MUST be written in English.",
|
|
1573
1568
|
type: "string"
|
|
1574
1569
|
},
|
|
1575
1570
|
nullable: {
|
|
1576
|
-
description: "Whether this field can
|
|
1571
|
+
description: "Whether this field can be null.",
|
|
1577
1572
|
type: "boolean"
|
|
1578
1573
|
}
|
|
1579
1574
|
},
|
|
@@ -1585,11 +1580,11 @@ function createController(props) {
|
|
|
1585
1580
|
]
|
|
1586
1581
|
},
|
|
1587
1582
|
"AutoBeDatabase.IUniqueIndex": {
|
|
1588
|
-
description: "
|
|
1583
|
+
description: "Unique index constraint (@@unique).",
|
|
1589
1584
|
type: "object",
|
|
1590
1585
|
properties: {
|
|
1591
1586
|
fieldNames: {
|
|
1592
|
-
description: "
|
|
1587
|
+
description: "Field names forming the unique constraint. All must exist in the model.",
|
|
1593
1588
|
type: "array",
|
|
1594
1589
|
items: {
|
|
1595
1590
|
type: "string"
|
|
@@ -1598,7 +1593,7 @@ function createController(props) {
|
|
|
1598
1593
|
uniqueItems: true
|
|
1599
1594
|
},
|
|
1600
1595
|
unique: {
|
|
1601
|
-
description: "
|
|
1596
|
+
description: "Always true. Distinguishes from plain indexes.",
|
|
1602
1597
|
type: "boolean",
|
|
1603
1598
|
"enum": [
|
|
1604
1599
|
true
|
|
@@ -1611,11 +1606,11 @@ function createController(props) {
|
|
|
1611
1606
|
]
|
|
1612
1607
|
},
|
|
1613
1608
|
"AutoBeDatabase.IPlainIndex": {
|
|
1614
|
-
description: "
|
|
1609
|
+
description: "Regular index for query performance (@@index).",
|
|
1615
1610
|
type: "object",
|
|
1616
1611
|
properties: {
|
|
1617
1612
|
fieldNames: {
|
|
1618
|
-
description: "
|
|
1613
|
+
description: "Field names to index. Order matters for composite indexes.",
|
|
1619
1614
|
type: "array",
|
|
1620
1615
|
items: {
|
|
1621
1616
|
type: "string"
|
|
@@ -1629,11 +1624,11 @@ function createController(props) {
|
|
|
1629
1624
|
]
|
|
1630
1625
|
},
|
|
1631
1626
|
"AutoBeDatabase.IGinIndex": {
|
|
1632
|
-
description: "
|
|
1627
|
+
description: "GIN index for PostgreSQL full-text search (gin_trgm_ops).",
|
|
1633
1628
|
type: "object",
|
|
1634
1629
|
properties: {
|
|
1635
1630
|
fieldName: {
|
|
1636
|
-
description: "
|
|
1631
|
+
description: "Must be a string field containing searchable text.",
|
|
1637
1632
|
type: "string"
|
|
1638
1633
|
}
|
|
1639
1634
|
},
|
|
@@ -1642,15 +1637,15 @@ function createController(props) {
|
|
|
1642
1637
|
]
|
|
1643
1638
|
},
|
|
1644
1639
|
AutoBeDatabaseComponentTableDesign: {
|
|
1645
|
-
description: "Table design with name and description
|
|
1640
|
+
description: "Table design with name and description.",
|
|
1646
1641
|
type: "object",
|
|
1647
1642
|
properties: {
|
|
1648
1643
|
description: {
|
|
1649
|
-
description: "
|
|
1644
|
+
description: "Business purpose of this table. One or two sentences maximum. MUST be\nwritten in English.",
|
|
1650
1645
|
type: "string"
|
|
1651
1646
|
},
|
|
1652
1647
|
name: {
|
|
1653
|
-
description: "
|
|
1648
|
+
description: "Table name in snake_case with domain prefix (e.g., \"shopping_customers\").",
|
|
1654
1649
|
type: "string",
|
|
1655
1650
|
pattern: "^[a-z][a-z0-9_]*$"
|
|
1656
1651
|
}
|
|
@@ -1662,7 +1657,7 @@ function createController(props) {
|
|
|
1662
1657
|
}
|
|
1663
1658
|
}
|
|
1664
1659
|
},
|
|
1665
|
-
description: "Process schema review task or preliminary data
|
|
1660
|
+
description: "Process schema review task or retrieve preliminary data.",
|
|
1666
1661
|
validate: (() => { const _io0 = input => "string" === typeof input.thinking && ("object" === typeof input.request && null !== input.request && _iu0(input.request)); const _io1 = input => "getAnalysisSections" === input.type && (Array.isArray(input.sectionIds) && (1 <= input.sectionIds.length && input.sectionIds.length <= 100 && input.sectionIds.every(elem => "number" === typeof elem && __typia_transform__isTypeUint32._isTypeUint32(elem)))); const _io2 = input => "getDatabaseSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io3 = input => "getPreviousAnalysisSections" === input.type && (Array.isArray(input.sectionIds) && (1 <= input.sectionIds.length && input.sectionIds.every(elem => "number" === typeof elem && __typia_transform__isTypeUint32._isTypeUint32(elem)))); const _io4 = input => "getPreviousDatabaseSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io5 = input => "complete" === input.type && "string" === typeof input.review && "string" === typeof input.plan && (null === input.content || "object" === typeof input.content && null !== input.content && _io6(input.content)); const _io6 = input => "object" === typeof input.model && null !== input.model && _io7(input.model) && (Array.isArray(input.newDesigns) && input.newDesigns.every(elem => "object" === typeof elem && null !== elem && _io15(elem))); const _io7 = input => "string" === typeof input.name && RegExp("^[a-z][a-z0-9_]*$").test(input.name) && "string" === typeof input.description && "boolean" === typeof input.material && ("primary" === input.stance || "subsidiary" === input.stance || "snapshot" === input.stance || "actor" === input.stance || "session" === input.stance) && ("object" === typeof input.primaryField && null !== input.primaryField && _io8(input.primaryField)) && (Array.isArray(input.foreignFields) && input.foreignFields.every(elem => "object" === typeof elem && null !== elem && _io9(elem))) && (Array.isArray(input.plainFields) && input.plainFields.every(elem => "object" === typeof elem && null !== elem && _io11(elem))) && (Array.isArray(input.uniqueIndexes) && input.uniqueIndexes.every(elem => "object" === typeof elem && null !== elem && _io12(elem))) && (Array.isArray(input.plainIndexes) && input.plainIndexes.every(elem => "object" === typeof elem && null !== elem && _io13(elem))) && (Array.isArray(input.ginIndexes) && input.ginIndexes.every(elem => "object" === typeof elem && null !== elem && _io14(elem))); const _io8 = input => "string" === typeof input.name && RegExp("^[a-z][a-z0-9_]*$").test(input.name) && "uuid" === input.type && "string" === typeof input.description; const _io9 = input => "string" === typeof input.name && RegExp("^[a-z][a-z0-9_]*$").test(input.name) && "uuid" === input.type && "string" === typeof input.description && ("object" === typeof input.relation && null !== input.relation && _io10(input.relation)) && "boolean" === typeof input.unique && "boolean" === typeof input.nullable; const _io10 = input => "string" === typeof input.name && RegExp("^[a-z][a-zA-Z0-9]*$").test(input.name) && "string" === typeof input.targetModel && ("string" === typeof input.oppositeName && RegExp("^[a-z][a-zA-Z0-9]*$").test(input.oppositeName)); const _io11 = input => "string" === typeof input.name && RegExp("^[a-z][a-z0-9_]*$").test(input.name) && ("string" === input.type || "boolean" === input.type || "uuid" === input.type || "uri" === input.type || "int" === input.type || "double" === input.type || "datetime" === input.type) && "string" === typeof input.description && "boolean" === typeof input.nullable; const _io12 = input => Array.isArray(input.fieldNames) && (1 <= input.fieldNames.length && __typia_transform__isUniqueItems._isUniqueItems(input.fieldNames) && input.fieldNames.every(elem => "string" === typeof elem)) && true === input.unique; const _io13 = input => Array.isArray(input.fieldNames) && (1 <= input.fieldNames.length && __typia_transform__isUniqueItems._isUniqueItems(input.fieldNames) && input.fieldNames.every(elem => "string" === typeof elem)); const _io14 = input => "string" === typeof input.fieldName; const _io15 = input => "string" === typeof input.description && ("string" === typeof input.name && RegExp("^[a-z][a-z0-9_]*$").test(input.name)); const _iu0 = input => (() => {
|
|
1667
1662
|
if ("getAnalysisSections" === input.type)
|
|
1668
1663
|
return _io1(input);
|