@autobe/agent 0.10.6 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/lib/AutoBeAgent.js +13 -46
  2. package/lib/AutoBeAgent.js.map +1 -1
  3. package/lib/constants/AutoBeSystemPromptConstant.d.ts +11 -6
  4. package/lib/constants/AutoBeSystemPromptConstant.js.map +1 -1
  5. package/lib/context/AutoBeContext.d.ts +3 -2
  6. package/lib/factory/getAutoBeGenerated.d.ts +5 -0
  7. package/lib/factory/getAutoBeGenerated.js +307 -0
  8. package/lib/factory/getAutoBeGenerated.js.map +1 -0
  9. package/lib/index.mjs +1631 -1389
  10. package/lib/index.mjs.map +1 -1
  11. package/lib/orchestrate/analyze/AutoBeAnalyzeFileSystem.d.ts +2 -7
  12. package/lib/orchestrate/analyze/AutoBeAnalyzeFileSystem.js +1 -9
  13. package/lib/orchestrate/analyze/AutoBeAnalyzeFileSystem.js.map +1 -1
  14. package/lib/orchestrate/analyze/AutoBeAnalyzeRole.d.ts +13 -0
  15. package/lib/orchestrate/analyze/AutoBeAnalyzeRole.js +3 -0
  16. package/lib/orchestrate/analyze/AutoBeAnalyzeRole.js.map +1 -0
  17. package/lib/orchestrate/analyze/orchestrateAnalyze.d.ts +0 -25
  18. package/lib/orchestrate/analyze/orchestrateAnalyze.js +22 -420
  19. package/lib/orchestrate/analyze/orchestrateAnalyze.js.map +1 -1
  20. package/lib/orchestrate/analyze/orchestrateAnalyzeComposer.d.ts +6 -0
  21. package/lib/orchestrate/analyze/orchestrateAnalyzeComposer.js +561 -0
  22. package/lib/orchestrate/analyze/orchestrateAnalyzeComposer.js.map +1 -0
  23. package/lib/orchestrate/analyze/orchestrateAnalyzeReviewer.d.ts +6 -0
  24. package/lib/orchestrate/analyze/orchestrateAnalyzeReviewer.js +41 -0
  25. package/lib/orchestrate/analyze/orchestrateAnalyzeReviewer.js.map +1 -0
  26. package/lib/orchestrate/analyze/orchestrateAnalyzeWrite.d.ts +14 -0
  27. package/lib/orchestrate/analyze/orchestrateAnalyzeWrite.js +468 -0
  28. package/lib/orchestrate/analyze/orchestrateAnalyzeWrite.js.map +1 -0
  29. package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeComposerApplication.d.ts +68 -0
  30. package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeComposerApplication.js +3 -0
  31. package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeComposerApplication.js.map +1 -0
  32. package/lib/orchestrate/analyze/transformAnalyzeReviewerHistories.d.ts +5 -0
  33. package/lib/orchestrate/analyze/transformAnalyzeReviewerHistories.js +27 -0
  34. package/lib/orchestrate/analyze/transformAnalyzeReviewerHistories.js.map +1 -0
  35. package/lib/orchestrate/analyze/transformAnalyzeWriteHistories.d.ts +12 -0
  36. package/lib/orchestrate/analyze/transformAnalyzeWriteHistories.js +78 -0
  37. package/lib/orchestrate/analyze/transformAnalyzeWriteHistories.js.map +1 -0
  38. package/lib/orchestrate/analyze/writeDocumentUntilReviewPassed.d.ts +6 -0
  39. package/lib/orchestrate/analyze/writeDocumentUntilReviewPassed.js +58 -0
  40. package/lib/orchestrate/analyze/writeDocumentUntilReviewPassed.js.map +1 -0
  41. package/lib/orchestrate/interface/orchestrateInterface.js +0 -2
  42. package/lib/orchestrate/interface/orchestrateInterface.js.map +1 -1
  43. package/lib/orchestrate/interface/orchestrateInterfaceComponents.js +17 -137
  44. package/lib/orchestrate/interface/orchestrateInterfaceComponents.js.map +1 -1
  45. package/lib/orchestrate/interface/orchestrateInterfaceOperations.js +92 -141
  46. package/lib/orchestrate/interface/orchestrateInterfaceOperations.js.map +1 -1
  47. package/lib/orchestrate/prisma/orchestratePrisma.js +9 -5
  48. package/lib/orchestrate/prisma/orchestratePrisma.js.map +1 -1
  49. package/lib/orchestrate/prisma/orchestratePrismaComponent.js +54 -25
  50. package/lib/orchestrate/prisma/orchestratePrismaComponent.js.map +1 -1
  51. package/lib/orchestrate/prisma/orchestratePrismaCorrect.js +4 -3
  52. package/lib/orchestrate/prisma/orchestratePrismaCorrect.js.map +1 -1
  53. package/lib/orchestrate/prisma/{orchestratePrismaSchema.d.ts → orchestratePrismaSchemas.d.ts} +2 -4
  54. package/lib/orchestrate/prisma/{orchestratePrismaSchema.js → orchestratePrismaSchemas.js} +269 -203
  55. package/lib/orchestrate/prisma/orchestratePrismaSchemas.js.map +1 -0
  56. package/lib/orchestrate/prisma/transformPrismaComponentsHistories.js +1 -1
  57. package/lib/orchestrate/prisma/transformPrismaComponentsHistories.js.map +1 -1
  58. package/lib/orchestrate/prisma/transformPrismaCorrectHistories.js +1 -1
  59. package/lib/orchestrate/prisma/transformPrismaHistories.js +1 -1
  60. package/lib/orchestrate/prisma/transformPrismaHistories.js.map +1 -1
  61. package/lib/orchestrate/prisma/transformPrismaSchemaHistories.d.ts +2 -6
  62. package/lib/orchestrate/prisma/transformPrismaSchemaHistories.js +24 -32
  63. package/lib/orchestrate/prisma/transformPrismaSchemaHistories.js.map +1 -1
  64. package/lib/orchestrate/realize/RealizePipe.d.ts +5 -0
  65. package/lib/orchestrate/realize/RealizePipe.js +14 -0
  66. package/lib/orchestrate/realize/RealizePipe.js.map +1 -0
  67. package/lib/orchestrate/realize/orchestrateRealize.d.ts +0 -6
  68. package/lib/orchestrate/realize/orchestrateRealize.js +6 -43
  69. package/lib/orchestrate/realize/orchestrateRealize.js.map +1 -1
  70. package/lib/orchestrate/realize/orchestrateRealizeCoder.d.ts +3 -3
  71. package/lib/orchestrate/realize/orchestrateRealizeCoder.js +124 -59
  72. package/lib/orchestrate/realize/orchestrateRealizeCoder.js.map +1 -1
  73. package/lib/orchestrate/realize/structures/IAutoBeRealizeCoderApplication.d.ts +188 -18
  74. package/lib/orchestrate/realize/structures/IAutoBeRealizeCompile.d.ts +23 -0
  75. package/lib/orchestrate/realize/structures/IAutoBeRealizeCompile.js +3 -0
  76. package/lib/orchestrate/realize/structures/IAutoBeRealizeCompile.js.map +1 -0
  77. package/lib/orchestrate/realize/structures/IAutoBeRealizeFailedSymbol.d.ts +2 -0
  78. package/lib/orchestrate/realize/structures/IAutoBeRealizeFailedSymbol.js +5 -0
  79. package/lib/orchestrate/realize/structures/IAutoBeRealizeFailedSymbol.js.map +1 -0
  80. package/lib/orchestrate/realize/transformRealizeCoderHistories.d.ts +2 -1
  81. package/lib/orchestrate/realize/transformRealizeCoderHistories.js +50 -36
  82. package/lib/orchestrate/realize/transformRealizeCoderHistories.js.map +1 -1
  83. package/lib/orchestrate/realize/writeCodeUntilCompilePassed.d.ts +5 -0
  84. package/lib/orchestrate/realize/writeCodeUntilCompilePassed.js +123 -0
  85. package/lib/orchestrate/realize/writeCodeUntilCompilePassed.js.map +1 -0
  86. package/lib/orchestrate/test/compile/getTestExternalDeclarations.js +4 -1
  87. package/lib/orchestrate/test/compile/getTestExternalDeclarations.js.map +1 -1
  88. package/lib/orchestrate/test/compile/getTestScenarioArtifacts.js +2 -1
  89. package/lib/orchestrate/test/compile/getTestScenarioArtifacts.js.map +1 -1
  90. package/lib/orchestrate/test/orchestrateTest.js +11 -5
  91. package/lib/orchestrate/test/orchestrateTest.js.map +1 -1
  92. package/lib/orchestrate/test/orchestrateTestCorrect.js +3 -2
  93. package/lib/orchestrate/test/orchestrateTestCorrect.js.map +1 -1
  94. package/lib/structures/IAutoBeProps.d.ts +8 -8
  95. package/lib/utils/pipe.d.ts +5 -0
  96. package/lib/utils/pipe.js +14 -0
  97. package/lib/utils/pipe.js.map +1 -0
  98. package/package.json +6 -6
  99. package/src/AutoBeAgent.ts +22 -76
  100. package/src/constants/AutoBeSystemPromptConstant.ts +11 -6
  101. package/src/context/AutoBeContext.ts +3 -1
  102. package/src/factory/getAutoBeGenerated.ts +113 -0
  103. package/src/orchestrate/analyze/AutoBeAnalyzeFileSystem.ts +5 -13
  104. package/src/orchestrate/analyze/AutoBeAnalyzeRole.ts +14 -0
  105. package/src/orchestrate/analyze/orchestrateAnalyze.ts +30 -165
  106. package/src/orchestrate/analyze/orchestrateAnalyzeComposer.ts +115 -0
  107. package/src/orchestrate/analyze/orchestrateAnalyzeReviewer.ts +39 -0
  108. package/src/orchestrate/analyze/orchestrateAnalyzeWrite.ts +106 -0
  109. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeComposerApplication.ts +74 -0
  110. package/src/orchestrate/analyze/transformAnalyzeReviewerHistories.ts +31 -0
  111. package/src/orchestrate/analyze/transformAnalyzeWriteHistories.ts +94 -0
  112. package/src/orchestrate/analyze/writeDocumentUntilReviewPassed.ts +66 -0
  113. package/src/orchestrate/interface/orchestrateInterface.ts +0 -2
  114. package/src/orchestrate/interface/orchestrateInterfaceComponents.ts +2 -3
  115. package/src/orchestrate/interface/orchestrateInterfaceOperations.ts +21 -0
  116. package/src/orchestrate/prisma/orchestratePrisma.ts +12 -5
  117. package/src/orchestrate/prisma/orchestratePrismaComponent.ts +4 -13
  118. package/src/orchestrate/prisma/orchestratePrismaCorrect.ts +9 -4
  119. package/src/orchestrate/prisma/orchestratePrismaSchemas.ts +265 -0
  120. package/src/orchestrate/prisma/transformPrismaSchemaHistories.ts +26 -37
  121. package/src/orchestrate/realize/RealizePipe.ts +39 -0
  122. package/src/orchestrate/realize/orchestrateRealize.ts +3 -91
  123. package/src/orchestrate/realize/orchestrateRealizeCoder.ts +60 -25
  124. package/src/orchestrate/realize/structures/IAutoBeRealizeCoderApplication.ts +192 -18
  125. package/src/orchestrate/realize/structures/IAutoBeRealizeCompile.ts +34 -0
  126. package/src/orchestrate/realize/structures/IAutoBeRealizeFailedSymbol.ts +2 -0
  127. package/src/orchestrate/realize/transformRealizeCoderHistories.ts +58 -34
  128. package/src/orchestrate/realize/writeCodeUntilCompilePassed.ts +178 -0
  129. package/src/orchestrate/test/compile/getTestExternalDeclarations.ts +5 -4
  130. package/src/orchestrate/test/compile/getTestScenarioArtifacts.ts +7 -2
  131. package/src/orchestrate/test/orchestrateTest.ts +14 -12
  132. package/src/orchestrate/test/orchestrateTestCorrect.ts +10 -9
  133. package/src/structures/IAutoBeProps.ts +10 -7
  134. package/src/utils/pipe.ts +39 -0
  135. package/lib/orchestrate/analyze/AutoBeAnalyzeAgent.d.ts +0 -20
  136. package/lib/orchestrate/analyze/AutoBeAnalyzeAgent.js +0 -735
  137. package/lib/orchestrate/analyze/AutoBeAnalyzeAgent.js.map +0 -1
  138. package/lib/orchestrate/analyze/AutoBeAnalyzeReviewer.d.ts +0 -15
  139. package/lib/orchestrate/analyze/AutoBeAnalyzeReviewer.js +0 -44
  140. package/lib/orchestrate/analyze/AutoBeAnalyzeReviewer.js.map +0 -1
  141. package/lib/orchestrate/prisma/orchestratePrismaSchema.js.map +0 -1
  142. package/src/orchestrate/analyze/AutoBeAnalyzeAgent.ts +0 -219
  143. package/src/orchestrate/analyze/AutoBeAnalyzeReviewer.ts +0 -62
  144. package/src/orchestrate/prisma/orchestratePrismaSchema.ts +0 -157
@@ -130,7 +130,7 @@ const claude = {
130
130
  description: "Maps Prisma schema filenames to their contained database tables.\n\n**Structure:**\n\n- Key: Prisma schema filename with .prisma extension\n- Value: Array of table names defined in that file\n\n**Example:**\n\n```typescript\n{\n {\n filename: \"schema-01-users.prisma\",\n tables: [\"user\", \"admin\", \"moderator\", \"user_profile\", \"user_settings\"]\n },\n {\n filename: \"schema-02-articles.prisma\",\n tables: [\"article\", \"article_snapshot\"]\n },\n {\n filename: \"schema-03-comments.prisma\",\n tables: [\"comment\", \"comment_like\"]\n }\n}\n```\n\n**Notes:**\n\n- Table names must match exact Prisma model names (case-sensitive)\n- Keep mapping synchronized with actual schema files\n- Use consistent naming convention for files",
131
131
  type: "array",
132
132
  items: {
133
- $ref: "#/$defs/IComponent"
133
+ $ref: "#/$defs/AutoBePrisma.IComponent"
134
134
  }
135
135
  }
136
136
  },
@@ -139,46 +139,53 @@ const claude = {
139
139
  ],
140
140
  additionalProperties: false,
141
141
  $defs: {
142
- IComponent: {
142
+ "AutoBePrisma.IComponent": {
143
+ description: "Interface representing a logical grouping of database tables organized by\nbusiness domain for schema file generation.\n\nComponents provide a systematic way to organize database tables into\ncoherent groups following domain-driven design principles. Each component\nrepresents a specific business domain or functional area that will be\ngenerated as a separate Prisma schema file, ensuring maintainable and\nlogically structured database architecture.\n\nThis interface is primarily used during the database design phase when the\nPrisma agent analyzes requirements and determines the complete scope of\ntables needed, then organizes them into logical groups based on business\nrelationships and functional dependencies.\n\n## Usage in Schema Generation Process\n\nComponents serve as the blueprint for generating multiple Prisma schema\nfiles:\n\n1. **Requirements Analysis**: AI agent identifies all required tables from\n business requirements\n2. **Domain Grouping**: Tables are organized into components based on business\n domains and functional relationships\n3. **File Generation**: Each component becomes a separate .prisma file\n containing related models\n4. **Dependency Management**: Components are ordered to handle cross-domain\n relationships properly\n\n## Domain Organization Examples\n\nBased on typical business applications, components commonly include:\n\n- **Systematic**: Core system tables (channels, sections, configurations)\n- **Actors**: User management (customers, citizens, administrators)\n- **Sales**: Product catalog and sales entities\n- **Carts**: Shopping cart and item management\n- **Orders**: Order processing and fulfillment\n- **Coupons**: Discount and promotion systems\n- **Coins**: Digital currency and mileage systems\n- **Inquiries**: Customer support and FAQ systems\n- **Favorites**: User preference and wishlist management\n- **Articles**: Content management and BBS systems\n\n## Relationship to {@link AutoBePrisma.IFile}\n\nEach IComponent serves as a blueprint for generating one IFile during the\nschema generation process. The component's metadata (filename, namespace,\ntables) is used to structure the actual Prisma schema file with proper\nmodels, relationships, and indexes.",
143
144
  type: "object",
144
145
  properties: {
145
146
  filename: {
146
- description: "Filename of the Prisma schema file.",
147
+ description: "Target filename for the Prisma schema file containing this component's\ntables.\n\nFollows the naming convention `schema-{number}-{domain}.prisma` where the\nnumber indicates dependency order and domain represents the business\narea.",
147
148
  type: "string",
148
149
  pattern: "^[a-zA-Z0-9._-]+\\.prisma$"
149
150
  },
151
+ namespace: {
152
+ description: "Business domain namespace that groups related models.\n\nUsed in Prisma documentation comments as \"@\\namespace directive\".\nExamples from uploaded schemas: \"Systematic\", \"Actors\", \"Sales\", \"Carts\",\n\"Orders\", \"Coupons\", \"Coins\", \"Inquiries\", \"Favorites\", \"Articles\"",
153
+ type: "string"
154
+ },
150
155
  tables: {
151
- description: "List of table names that would be stored in the file.",
156
+ description: "Array of table names that will be included in this component's schema\nfile.\n\nContains all database table names that belong to this business domain,\nensuring logical grouping and proper organization of related data\nstructures.",
152
157
  type: "array",
153
158
  items: {
154
159
  type: "string",
155
160
  pattern: "^[a-z][a-z0-9_]*$"
156
- }
161
+ },
162
+ minItems: 1
157
163
  }
158
164
  },
159
165
  required: [
160
166
  "filename",
167
+ "namespace",
161
168
  "tables"
162
169
  ]
163
170
  }
164
171
  }
165
172
  },
166
173
  description: "Extracts and organizes database schema files with their corresponding table\ndefinitions.\n\nProcesses Prisma schema files and maps each file to its contained database\ntables, enabling structured organization of schemas across multiple files\nfor large projects.",
167
- validate: (() => { const _io0 = input => Array.isArray(input.components) && input.components.every(elem => "object" === typeof elem && null !== elem && _io1(elem)); const _io1 = input => "string" === typeof input.filename && RegExp("^[a-zA-Z0-9._-]+\\.prisma$").test(input.filename) && (Array.isArray(input.tables) && input.tables.every(elem => "string" === typeof elem && RegExp("^[a-z][a-z0-9_]*$").test(elem))); const _vo0 = (input, _path, _exceptionable = true) => [(Array.isArray(input.components) || _report(_exceptionable, {
174
+ validate: (() => { const _io0 = input => Array.isArray(input.components) && input.components.every(elem => "object" === typeof elem && null !== elem && _io1(elem)); const _io1 = input => "string" === typeof input.filename && RegExp("^[a-zA-Z0-9._-]+\\.prisma$").test(input.filename) && "string" === typeof input.namespace && (Array.isArray(input.tables) && (1 <= input.tables.length && input.tables.every(elem => "string" === typeof elem && RegExp("^[a-z][a-z0-9_]*$").test(elem)))); const _vo0 = (input, _path, _exceptionable = true) => [(Array.isArray(input.components) || _report(_exceptionable, {
168
175
  path: _path + ".components",
169
- expected: "Array<IComponent>",
176
+ expected: "Array<AutoBePrisma.IComponent>",
170
177
  value: input.components
171
178
  })) && input.components.map((elem, _index3) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
172
179
  path: _path + ".components[" + _index3 + "]",
173
- expected: "IComponent",
180
+ expected: "AutoBePrisma.IComponent",
174
181
  value: elem
175
182
  })) && _vo1(elem, _path + ".components[" + _index3 + "]", true && _exceptionable) || _report(_exceptionable, {
176
183
  path: _path + ".components[" + _index3 + "]",
177
- expected: "IComponent",
184
+ expected: "AutoBePrisma.IComponent",
178
185
  value: elem
179
186
  })).every(flag => flag) || _report(_exceptionable, {
180
187
  path: _path + ".components",
181
- expected: "Array<IComponent>",
188
+ expected: "Array<AutoBePrisma.IComponent>",
182
189
  value: input.components
183
190
  })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["string" === typeof input.filename && (RegExp("^[a-zA-Z0-9._-]+\\.prisma$").test(input.filename) || _report(_exceptionable, {
184
191
  path: _path + ".filename",
@@ -188,9 +195,17 @@ const claude = {
188
195
  path: _path + ".filename",
189
196
  expected: "(string & Pattern<\"^[a-zA-Z0-9._-]+\\\\.prisma$\">)",
190
197
  value: input.filename
198
+ }), "string" === typeof input.namespace || _report(_exceptionable, {
199
+ path: _path + ".namespace",
200
+ expected: "string",
201
+ value: input.namespace
191
202
  }), (Array.isArray(input.tables) || _report(_exceptionable, {
192
203
  path: _path + ".tables",
193
- expected: "Array<string & Pattern<\"^[a-z][a-z0-9_]*$\">>",
204
+ expected: "(Array<string & Pattern<\"^[a-z][a-z0-9_]*$\">> & MinItems<1>)",
205
+ value: input.tables
206
+ })) && ((1 <= input.tables.length || _report(_exceptionable, {
207
+ path: _path + ".tables",
208
+ expected: "Array<> & MinItems<1>",
194
209
  value: input.tables
195
210
  })) && input.tables.map((elem, _index4) => "string" === typeof elem && (RegExp("^[a-z][a-z0-9_]*$").test(elem) || _report(_exceptionable, {
196
211
  path: _path + ".tables[" + _index4 + "]",
@@ -200,9 +215,9 @@ const claude = {
200
215
  path: _path + ".tables[" + _index4 + "]",
201
216
  expected: "(string & Pattern<\"^[a-z][a-z0-9_]*$\">)",
202
217
  value: elem
203
- })).every(flag => flag) || _report(_exceptionable, {
218
+ })).every(flag => flag)) || _report(_exceptionable, {
204
219
  path: _path + ".tables",
205
- expected: "Array<string & Pattern<\"^[a-z][a-z0-9_]*$\">>",
220
+ expected: "(Array<string & Pattern<\"^[a-z][a-z0-9_]*$\">> & MinItems<1>)",
206
221
  value: input.tables
207
222
  })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
208
223
  if (false === __is(input)) {
@@ -254,7 +269,7 @@ const collection = {
254
269
  description: "Maps Prisma schema filenames to their contained database tables.\n\n**Structure:**\n\n- Key: Prisma schema filename with .prisma extension\n- Value: Array of table names defined in that file\n\n**Example:**\n\n```typescript\n{\n {\n filename: \"schema-01-users.prisma\",\n tables: [\"user\", \"admin\", \"moderator\", \"user_profile\", \"user_settings\"]\n },\n {\n filename: \"schema-02-articles.prisma\",\n tables: [\"article\", \"article_snapshot\"]\n },\n {\n filename: \"schema-03-comments.prisma\",\n tables: [\"comment\", \"comment_like\"]\n }\n}\n```\n\n**Notes:**\n\n- Table names must match exact Prisma model names (case-sensitive)\n- Keep mapping synchronized with actual schema files\n- Use consistent naming convention for files",
255
270
  type: "array",
256
271
  items: {
257
- $ref: "#/$defs/IComponent"
272
+ $ref: "#/$defs/AutoBePrisma.IComponent"
258
273
  }
259
274
  }
260
275
  },
@@ -263,15 +278,20 @@ const collection = {
263
278
  ],
264
279
  additionalProperties: false,
265
280
  $defs: {
266
- IComponent: {
281
+ "AutoBePrisma.IComponent": {
282
+ description: "Interface representing a logical grouping of database tables organized by\nbusiness domain for schema file generation.\n\nComponents provide a systematic way to organize database tables into\ncoherent groups following domain-driven design principles. Each component\nrepresents a specific business domain or functional area that will be\ngenerated as a separate Prisma schema file, ensuring maintainable and\nlogically structured database architecture.\n\nThis interface is primarily used during the database design phase when the\nPrisma agent analyzes requirements and determines the complete scope of\ntables needed, then organizes them into logical groups based on business\nrelationships and functional dependencies.\n\n## Usage in Schema Generation Process\n\nComponents serve as the blueprint for generating multiple Prisma schema\nfiles:\n\n1. **Requirements Analysis**: AI agent identifies all required tables from\n business requirements\n2. **Domain Grouping**: Tables are organized into components based on business\n domains and functional relationships\n3. **File Generation**: Each component becomes a separate .prisma file\n containing related models\n4. **Dependency Management**: Components are ordered to handle cross-domain\n relationships properly\n\n## Domain Organization Examples\n\nBased on typical business applications, components commonly include:\n\n- **Systematic**: Core system tables (channels, sections, configurations)\n- **Actors**: User management (customers, citizens, administrators)\n- **Sales**: Product catalog and sales entities\n- **Carts**: Shopping cart and item management\n- **Orders**: Order processing and fulfillment\n- **Coupons**: Discount and promotion systems\n- **Coins**: Digital currency and mileage systems\n- **Inquiries**: Customer support and FAQ systems\n- **Favorites**: User preference and wishlist management\n- **Articles**: Content management and BBS systems\n\n## Relationship to {@link AutoBePrisma.IFile}\n\nEach IComponent serves as a blueprint for generating one IFile during the\nschema generation process. The component's metadata (filename, namespace,\ntables) is used to structure the actual Prisma schema file with proper\nmodels, relationships, and indexes.",
267
283
  type: "object",
268
284
  properties: {
269
285
  filename: {
270
- description: "Filename of the Prisma schema file.\n\n\n@pattern ^[a-zA-Z0-9._-]+\\.prisma$",
286
+ description: "Target filename for the Prisma schema file containing this component's\ntables.\n\nFollows the naming convention `schema-{number}-{domain}.prisma` where the\nnumber indicates dependency order and domain represents the business\narea.\n\n\n@pattern ^[a-zA-Z0-9._-]+\\.prisma$",
287
+ type: "string"
288
+ },
289
+ namespace: {
290
+ description: "Business domain namespace that groups related models.\n\nUsed in Prisma documentation comments as \"@\\namespace directive\".\nExamples from uploaded schemas: \"Systematic\", \"Actors\", \"Sales\", \"Carts\",\n\"Orders\", \"Coupons\", \"Coins\", \"Inquiries\", \"Favorites\", \"Articles\"",
271
291
  type: "string"
272
292
  },
273
293
  tables: {
274
- description: "List of table names that would be stored in the file.",
294
+ description: "Array of table names that will be included in this component's schema\nfile.\n\nContains all database table names that belong to this business domain,\nensuring logical grouping and proper organization of related data\nstructures.\n\n\n@minItems 1",
275
295
  type: "array",
276
296
  items: {
277
297
  description: "@pattern ^[a-z][a-z0-9_]*$",
@@ -281,27 +301,28 @@ const collection = {
281
301
  },
282
302
  required: [
283
303
  "filename",
304
+ "namespace",
284
305
  "tables"
285
306
  ]
286
307
  }
287
308
  }
288
309
  },
289
310
  description: "Extracts and organizes database schema files with their corresponding table\ndefinitions.\n\nProcesses Prisma schema files and maps each file to its contained database\ntables, enabling structured organization of schemas across multiple files\nfor large projects.",
290
- validate: (() => { const _io0 = input => Array.isArray(input.components) && input.components.every(elem => "object" === typeof elem && null !== elem && _io1(elem)); const _io1 = input => "string" === typeof input.filename && RegExp("^[a-zA-Z0-9._-]+\\.prisma$").test(input.filename) && (Array.isArray(input.tables) && input.tables.every(elem => "string" === typeof elem && RegExp("^[a-z][a-z0-9_]*$").test(elem))); const _vo0 = (input, _path, _exceptionable = true) => [(Array.isArray(input.components) || _report(_exceptionable, {
311
+ validate: (() => { const _io0 = input => Array.isArray(input.components) && input.components.every(elem => "object" === typeof elem && null !== elem && _io1(elem)); const _io1 = input => "string" === typeof input.filename && RegExp("^[a-zA-Z0-9._-]+\\.prisma$").test(input.filename) && "string" === typeof input.namespace && (Array.isArray(input.tables) && (1 <= input.tables.length && input.tables.every(elem => "string" === typeof elem && RegExp("^[a-z][a-z0-9_]*$").test(elem)))); const _vo0 = (input, _path, _exceptionable = true) => [(Array.isArray(input.components) || _report(_exceptionable, {
291
312
  path: _path + ".components",
292
- expected: "Array<IComponent>",
313
+ expected: "Array<AutoBePrisma.IComponent>",
293
314
  value: input.components
294
315
  })) && input.components.map((elem, _index3) => ("object" === typeof elem && null !== elem || _report(_exceptionable, {
295
316
  path: _path + ".components[" + _index3 + "]",
296
- expected: "IComponent",
317
+ expected: "AutoBePrisma.IComponent",
297
318
  value: elem
298
319
  })) && _vo1(elem, _path + ".components[" + _index3 + "]", true && _exceptionable) || _report(_exceptionable, {
299
320
  path: _path + ".components[" + _index3 + "]",
300
- expected: "IComponent",
321
+ expected: "AutoBePrisma.IComponent",
301
322
  value: elem
302
323
  })).every(flag => flag) || _report(_exceptionable, {
303
324
  path: _path + ".components",
304
- expected: "Array<IComponent>",
325
+ expected: "Array<AutoBePrisma.IComponent>",
305
326
  value: input.components
306
327
  })].every(flag => flag); const _vo1 = (input, _path, _exceptionable = true) => ["string" === typeof input.filename && (RegExp("^[a-zA-Z0-9._-]+\\.prisma$").test(input.filename) || _report(_exceptionable, {
307
328
  path: _path + ".filename",
@@ -311,9 +332,17 @@ const collection = {
311
332
  path: _path + ".filename",
312
333
  expected: "(string & Pattern<\"^[a-zA-Z0-9._-]+\\\\.prisma$\">)",
313
334
  value: input.filename
335
+ }), "string" === typeof input.namespace || _report(_exceptionable, {
336
+ path: _path + ".namespace",
337
+ expected: "string",
338
+ value: input.namespace
314
339
  }), (Array.isArray(input.tables) || _report(_exceptionable, {
315
340
  path: _path + ".tables",
316
- expected: "Array<string & Pattern<\"^[a-z][a-z0-9_]*$\">>",
341
+ expected: "(Array<string & Pattern<\"^[a-z][a-z0-9_]*$\">> & MinItems<1>)",
342
+ value: input.tables
343
+ })) && ((1 <= input.tables.length || _report(_exceptionable, {
344
+ path: _path + ".tables",
345
+ expected: "Array<> & MinItems<1>",
317
346
  value: input.tables
318
347
  })) && input.tables.map((elem, _index4) => "string" === typeof elem && (RegExp("^[a-z][a-z0-9_]*$").test(elem) || _report(_exceptionable, {
319
348
  path: _path + ".tables[" + _index4 + "]",
@@ -323,9 +352,9 @@ const collection = {
323
352
  path: _path + ".tables[" + _index4 + "]",
324
353
  expected: "(string & Pattern<\"^[a-z][a-z0-9_]*$\">)",
325
354
  value: elem
326
- })).every(flag => flag) || _report(_exceptionable, {
355
+ })).every(flag => flag)) || _report(_exceptionable, {
327
356
  path: _path + ".tables",
328
- expected: "Array<string & Pattern<\"^[a-z][a-z0-9_]*$\">>",
357
+ expected: "(Array<string & Pattern<\"^[a-z][a-z0-9_]*$\">> & MinItems<1>)",
329
358
  value: input.tables
330
359
  })].every(flag => flag); const __is = input => "object" === typeof input && null !== input && _io0(input); let errors; let _report; return input => {
331
360
  if (false === __is(input)) {
@@ -1 +1 @@
1
- {"version":3,"file":"orchestratePrismaComponent.js","sourceRoot":"","sources":["../../../src/orchestrate/prisma/orchestratePrismaComponent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestratePrismaComponent.js","sourceRoot":"","sources":["../../../src/orchestrate/prisma/orchestratePrismaComponent.ts"],"names":[],"mappings":"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"}
@@ -68,18 +68,19 @@ function orchestratePrismaCorrect(ctx, application, life = 4) {
68
68
  function step(ctx, application, life) {
69
69
  return __awaiter(this, void 0, void 0, function* () {
70
70
  var _a, _b, _c, _d, _e;
71
- const result = yield ctx.compiler.prisma.validate(application);
71
+ const compiler = yield ctx.compiler();
72
+ const result = yield compiler.prisma.validate(application);
72
73
  if (result.success)
73
74
  return result; // SUCCESS
74
75
  else if (life <= 0)
75
76
  return result; // FAILURE
76
77
  // VALIDATION FAILED
77
- const schemas = yield ctx.compiler.prisma.write(application, "postgres");
78
+ const schemas = yield compiler.prisma.write(application, "postgres");
78
79
  ctx.dispatch({
79
80
  type: "prismaValidate",
80
81
  result,
81
82
  schemas,
82
- compiled: yield ctx.compiler.prisma.compile({
83
+ compiled: yield compiler.prisma.compile({
83
84
  files: schemas,
84
85
  }),
85
86
  step: (_b = (_a = ctx.state().analyze) === null || _a === void 0 ? void 0 : _a.step) !== null && _b !== void 0 ? _b : 0,
@@ -1 +1 @@
1
- {"version":3,"file":"orchestratePrismaCorrect.js","sourceRoot":"","sources":["../../../src/orchestrate/prisma/orchestratePrismaCorrect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestratePrismaCorrect.js","sourceRoot":"","sources":["../../../src/orchestrate/prisma/orchestratePrismaCorrect.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,5 @@
1
+ import { AutoBePrisma } from "@autobe/interface";
1
2
  import { AutoBePrismaSchemasEvent } from "@autobe/interface/src/events/AutoBePrismaSchemasEvent";
2
3
  import { ILlmSchema } from "@samchon/openapi";
3
4
  import { AutoBeContext } from "../../context/AutoBeContext";
4
- export declare function orchestratePrismaSchemas<Model extends ILlmSchema.Model>(ctx: AutoBeContext<Model>, components: {
5
- filename: string;
6
- tables: string[];
7
- }[]): Promise<AutoBePrismaSchemasEvent[]>;
5
+ export declare function orchestratePrismaSchemas<Model extends ILlmSchema.Model>(ctx: AutoBeContext<Model>, components: AutoBePrisma.IComponent[]): Promise<AutoBePrismaSchemasEvent[]>;