@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.
Files changed (210) hide show
  1. package/lib/constants/AutoBeSystemPromptConstant.d.ts +5 -4
  2. package/lib/constants/AutoBeSystemPromptConstant.js.map +1 -1
  3. package/lib/describe/image/orchestrateImageDescribeDraft.js +6 -6
  4. package/lib/describe/image/structures/IAutoBeImageDescribeDraftApplication.d.ts +12 -63
  5. package/lib/index.mjs +2918 -2842
  6. package/lib/index.mjs.map +1 -1
  7. package/lib/orchestrate/analyze/orchestrateAnalyzeExtractDecisions.js +8 -8
  8. package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js +36 -37
  9. package/lib/orchestrate/analyze/orchestrateAnalyzeScenario.js.map +1 -1
  10. package/lib/orchestrate/analyze/orchestrateAnalyzeScenarioReview.js +7 -7
  11. package/lib/orchestrate/analyze/orchestrateAnalyzeSectionCrossFileReview.js +55 -42
  12. package/lib/orchestrate/analyze/orchestrateAnalyzeSectionCrossFileReview.js.map +1 -1
  13. package/lib/orchestrate/analyze/orchestrateAnalyzeSectionReview.js +67 -54
  14. package/lib/orchestrate/analyze/orchestrateAnalyzeSectionReview.js.map +1 -1
  15. package/lib/orchestrate/analyze/orchestrateAnalyzeWriteSection.js +24 -25
  16. package/lib/orchestrate/analyze/orchestrateAnalyzeWriteSection.js.map +1 -1
  17. package/lib/orchestrate/analyze/orchestrateAnalyzeWriteSectionPatch.js +24 -25
  18. package/lib/orchestrate/analyze/orchestrateAnalyzeWriteSectionPatch.js.map +1 -1
  19. package/lib/orchestrate/analyze/orchestrateAnalyzeWriteUnit.js +30 -31
  20. package/lib/orchestrate/analyze/orchestrateAnalyzeWriteUnit.js.map +1 -1
  21. package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeExtractDecisionsApplication.d.ts +14 -52
  22. package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioApplication.d.ts +23 -96
  23. package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioReviewApplication.d.ts +12 -40
  24. package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeSectionCrossFileReviewApplication.d.ts +30 -88
  25. package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeSectionReviewApplication.d.ts +35 -94
  26. package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeWriteSectionApplication.d.ts +23 -93
  27. package/lib/orchestrate/analyze/structures/IAutoBeAnalyzeWriteUnitApplication.d.ts +15 -88
  28. package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistory.js +76 -31
  29. package/lib/orchestrate/common/histories/transformPreviousAndLatestCorrectHistory.js.map +1 -1
  30. package/lib/orchestrate/common/orchestrateCommonCorrectCasting.js +7 -7
  31. package/lib/orchestrate/common/structures/IAnalysisSectionEntry.d.ts +2 -8
  32. package/lib/orchestrate/common/structures/IAutoBeCommonCorrectCastingApplication.d.ts +8 -50
  33. package/lib/orchestrate/common/structures/IAutoBePreliminaryCollection.d.ts +1 -9
  34. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetAnalysisSections.d.ts +4 -23
  35. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetDatabaseSchemas.d.ts +3 -21
  36. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceOperations.d.ts +4 -22
  37. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceSchemas.d.ts +4 -22
  38. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetPreviousAnalysisSections.d.ts +5 -17
  39. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetPreviousDatabaseSchemas.d.ts +7 -76
  40. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetPreviousInterfaceOperations.d.ts +6 -89
  41. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetPreviousInterfaceSchemas.d.ts +7 -93
  42. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetRealizeCollectors.d.ts +3 -22
  43. package/lib/orchestrate/common/structures/IAutoBePreliminaryGetRealizeTransformers.d.ts +3 -22
  44. package/lib/orchestrate/interface/orchestrateInterfaceAuthorization.js +114 -139
  45. package/lib/orchestrate/interface/orchestrateInterfaceAuthorization.js.map +1 -1
  46. package/lib/orchestrate/interface/orchestrateInterfaceEndpointReview.js +90 -91
  47. package/lib/orchestrate/interface/orchestrateInterfaceEndpointReview.js.map +1 -1
  48. package/lib/orchestrate/interface/orchestrateInterfaceEndpointWrite.js +58 -59
  49. package/lib/orchestrate/interface/orchestrateInterfaceEndpointWrite.js.map +1 -1
  50. package/lib/orchestrate/interface/orchestrateInterfaceGroup.js +58 -59
  51. package/lib/orchestrate/interface/orchestrateInterfaceGroup.js.map +1 -1
  52. package/lib/orchestrate/interface/orchestrateInterfaceOperation.js +108 -132
  53. package/lib/orchestrate/interface/orchestrateInterfaceOperation.js.map +1 -1
  54. package/lib/orchestrate/interface/orchestrateInterfaceOperationReview.js +72 -72
  55. package/lib/orchestrate/interface/orchestrateInterfacePrerequisite.js +76 -77
  56. package/lib/orchestrate/interface/orchestrateInterfacePrerequisite.js.map +1 -1
  57. package/lib/orchestrate/interface/orchestrateInterfaceSchemaCasting.js +130 -159
  58. package/lib/orchestrate/interface/orchestrateInterfaceSchemaCasting.js.map +1 -1
  59. package/lib/orchestrate/interface/orchestrateInterfaceSchemaComplement.js +126 -155
  60. package/lib/orchestrate/interface/orchestrateInterfaceSchemaComplement.js.map +1 -1
  61. package/lib/orchestrate/interface/orchestrateInterfaceSchemaRefine.js +114 -142
  62. package/lib/orchestrate/interface/orchestrateInterfaceSchemaRefine.js.map +1 -1
  63. package/lib/orchestrate/interface/orchestrateInterfaceSchemaRename.js +5 -5
  64. package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.js +100 -129
  65. package/lib/orchestrate/interface/orchestrateInterfaceSchemaReview.js.map +1 -1
  66. package/lib/orchestrate/interface/orchestrateInterfaceSchemaWrite.js +120 -149
  67. package/lib/orchestrate/interface/orchestrateInterfaceSchemaWrite.js.map +1 -1
  68. package/lib/orchestrate/interface/structures/IAutoBeInterfaceAuthorizationApplication.d.ts +10 -97
  69. package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointReviewApplication.d.ts +14 -83
  70. package/lib/orchestrate/interface/structures/IAutoBeInterfaceEndpointWriteApplication.d.ts +12 -90
  71. package/lib/orchestrate/interface/structures/IAutoBeInterfaceGroupApplication.d.ts +12 -80
  72. package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.d.ts +21 -116
  73. package/lib/orchestrate/interface/structures/IAutoBeInterfaceOperationReviewApplication.d.ts +24 -112
  74. package/lib/orchestrate/interface/structures/IAutoBeInterfacePrerequisiteApplication.d.ts +11 -83
  75. package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaApplication.d.ts +11 -76
  76. package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaCastingApplication.d.ts +18 -96
  77. package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaComplementApplication.d.ts +11 -76
  78. package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRefineApplication.d.ts +25 -107
  79. package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaRenameApplication.d.ts +5 -31
  80. package/lib/orchestrate/interface/structures/IAutoBeInterfaceSchemaReviewApplication.d.ts +6 -42
  81. package/lib/orchestrate/prisma/orchestratePrismaAuthorization.js +41 -41
  82. package/lib/orchestrate/prisma/orchestratePrismaAuthorizationReview.js +62 -63
  83. package/lib/orchestrate/prisma/orchestratePrismaAuthorizationReview.js.map +1 -1
  84. package/lib/orchestrate/prisma/orchestratePrismaComponent.js +40 -41
  85. package/lib/orchestrate/prisma/orchestratePrismaComponent.js.map +1 -1
  86. package/lib/orchestrate/prisma/orchestratePrismaComponentReview.js +60 -61
  87. package/lib/orchestrate/prisma/orchestratePrismaComponentReview.js.map +1 -1
  88. package/lib/orchestrate/prisma/orchestratePrismaCorrect.js +112 -116
  89. package/lib/orchestrate/prisma/orchestratePrismaCorrect.js.map +1 -1
  90. package/lib/orchestrate/prisma/orchestratePrismaGroup.js +48 -49
  91. package/lib/orchestrate/prisma/orchestratePrismaGroup.js.map +1 -1
  92. package/lib/orchestrate/prisma/orchestratePrismaGroupReview.js +70 -71
  93. package/lib/orchestrate/prisma/orchestratePrismaGroupReview.js.map +1 -1
  94. package/lib/orchestrate/prisma/orchestratePrismaSchema.js +118 -122
  95. package/lib/orchestrate/prisma/orchestratePrismaSchema.js.map +1 -1
  96. package/lib/orchestrate/prisma/orchestratePrismaSchemaReview.js +126 -131
  97. package/lib/orchestrate/prisma/orchestratePrismaSchemaReview.js.map +1 -1
  98. package/lib/orchestrate/prisma/structures/IAutoBeDatabaseAuthorizationApplication.d.ts +22 -99
  99. package/lib/orchestrate/prisma/structures/IAutoBeDatabaseAuthorizationReviewApplication.d.ts +12 -109
  100. package/lib/orchestrate/prisma/structures/IAutoBeDatabaseComponentApplication.d.ts +14 -100
  101. package/lib/orchestrate/prisma/structures/IAutoBeDatabaseComponentReviewApplication.d.ts +15 -108
  102. package/lib/orchestrate/prisma/structures/IAutoBeDatabaseCorrectApplication.d.ts +24 -106
  103. package/lib/orchestrate/prisma/structures/IAutoBeDatabaseGroupApplication.d.ts +13 -76
  104. package/lib/orchestrate/prisma/structures/IAutoBeDatabaseGroupReviewApplication.d.ts +13 -111
  105. package/lib/orchestrate/prisma/structures/IAutoBeDatabaseSchemaApplication.d.ts +26 -97
  106. package/lib/orchestrate/prisma/structures/IAutoBeDatabaseSchemaReviewApplication.d.ts +16 -93
  107. package/lib/orchestrate/realize/histories/transformRealizeOperationCorrectHistory.js +1 -1
  108. package/lib/orchestrate/realize/histories/transformRealizeOperationCorrectHistory.js.map +1 -1
  109. package/lib/orchestrate/realize/histories/transformRealizeOperationWriteHistory.js +1 -1
  110. package/lib/orchestrate/realize/histories/transformRealizeOperationWriteHistory.js.map +1 -1
  111. package/lib/orchestrate/realize/histories/transformRealizeTransformerCorrectHistory.js +20 -2
  112. package/lib/orchestrate/realize/histories/transformRealizeTransformerCorrectHistory.js.map +1 -1
  113. package/lib/orchestrate/realize/histories/transformRealizeTransformerWriteHistory.js +22 -2
  114. package/lib/orchestrate/realize/histories/transformRealizeTransformerWriteHistory.js.map +1 -1
  115. package/lib/orchestrate/realize/internal/orchestrateRealizeCorrectCasting.js +7 -7
  116. package/lib/orchestrate/realize/internal/orchestrateRealizeCorrectOverall.js +86 -6
  117. package/lib/orchestrate/realize/internal/orchestrateRealizeCorrectOverall.js.map +1 -1
  118. package/lib/orchestrate/realize/orchestrateRealizeAuthorizationCorrect.js +38 -38
  119. package/lib/orchestrate/realize/orchestrateRealizeAuthorizationWrite.js +34 -34
  120. package/lib/orchestrate/realize/orchestrateRealizeCollectorCorrectOverall.js +38 -38
  121. package/lib/orchestrate/realize/orchestrateRealizeCollectorPlan.js +54 -54
  122. package/lib/orchestrate/realize/orchestrateRealizeCollectorWrite.js +36 -36
  123. package/lib/orchestrate/realize/orchestrateRealizeOperationCorrectOverall.js +44 -44
  124. package/lib/orchestrate/realize/orchestrateRealizeOperationWrite.js +42 -42
  125. package/lib/orchestrate/realize/orchestrateRealizeTransformerCorrectCasting.js +1 -0
  126. package/lib/orchestrate/realize/orchestrateRealizeTransformerCorrectCasting.js.map +1 -1
  127. package/lib/orchestrate/realize/orchestrateRealizeTransformerCorrectOverall.js +46 -46
  128. package/lib/orchestrate/realize/orchestrateRealizeTransformerPlan.js +36 -36
  129. package/lib/orchestrate/realize/orchestrateRealizeTransformerWrite.js +44 -44
  130. package/lib/orchestrate/realize/programmers/AutoBeRealizeTransformerProgrammer.d.ts +18 -0
  131. package/lib/orchestrate/realize/programmers/AutoBeRealizeTransformerProgrammer.js +167 -8
  132. package/lib/orchestrate/realize/programmers/AutoBeRealizeTransformerProgrammer.js.map +1 -1
  133. package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationCorrectApplication.d.ts +17 -71
  134. package/lib/orchestrate/realize/structures/IAutoBeRealizeAuthorizationWriteApplication.d.ts +32 -92
  135. package/lib/orchestrate/realize/structures/IAutoBeRealizeCollectorCorrectApplication.d.ts +32 -114
  136. package/lib/orchestrate/realize/structures/IAutoBeRealizeCollectorPlanApplication.d.ts +29 -106
  137. package/lib/orchestrate/realize/structures/IAutoBeRealizeCollectorWriteApplication.d.ts +38 -131
  138. package/lib/orchestrate/realize/structures/IAutoBeRealizeOperationCorrectApplication.d.ts +16 -71
  139. package/lib/orchestrate/realize/structures/IAutoBeRealizeOperationWriteApplication.d.ts +16 -73
  140. package/lib/orchestrate/realize/structures/IAutoBeRealizeTransformerCorrectApplication.d.ts +37 -155
  141. package/lib/orchestrate/realize/structures/IAutoBeRealizeTransformerPlanApplication.d.ts +25 -88
  142. package/lib/orchestrate/realize/structures/IAutoBeRealizeTransformerWriteApplication.d.ts +48 -181
  143. package/lib/orchestrate/realize/utils/generateTS2339Hints.d.ts +5 -3
  144. package/lib/orchestrate/realize/utils/generateTS2339Hints.js +37 -19
  145. package/lib/orchestrate/realize/utils/generateTS2339Hints.js.map +1 -1
  146. package/lib/orchestrate/test/histories/transformTestOperationWriteHistory.js +2 -2
  147. package/lib/orchestrate/test/orchestrateTestScenario.js +22 -22
  148. package/lib/orchestrate/test/orchestrateTestScenarioReview.js +22 -22
  149. package/package.json +5 -5
  150. package/src/constants/AutoBeSystemPromptConstant.ts +5 -4
  151. package/src/describe/image/structures/IAutoBeImageDescribeDraftApplication.ts +12 -63
  152. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeExtractDecisionsApplication.ts +14 -52
  153. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioApplication.ts +23 -96
  154. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeScenarioReviewApplication.ts +12 -40
  155. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeSectionCrossFileReviewApplication.ts +30 -88
  156. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeSectionReviewApplication.ts +35 -94
  157. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeWriteSectionApplication.ts +23 -93
  158. package/src/orchestrate/analyze/structures/IAutoBeAnalyzeWriteUnitApplication.ts +15 -88
  159. package/src/orchestrate/common/histories/transformPreviousAndLatestCorrectHistory.ts +92 -31
  160. package/src/orchestrate/common/structures/IAnalysisSectionEntry.ts +2 -8
  161. package/src/orchestrate/common/structures/IAutoBeCommonCorrectCastingApplication.ts +8 -50
  162. package/src/orchestrate/common/structures/IAutoBePreliminaryCollection.ts +1 -9
  163. package/src/orchestrate/common/structures/IAutoBePreliminaryGetAnalysisSections.ts +4 -23
  164. package/src/orchestrate/common/structures/IAutoBePreliminaryGetDatabaseSchemas.ts +3 -21
  165. package/src/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceOperations.ts +4 -22
  166. package/src/orchestrate/common/structures/IAutoBePreliminaryGetInterfaceSchemas.ts +4 -22
  167. package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousAnalysisSections.ts +5 -17
  168. package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousDatabaseSchemas.ts +7 -76
  169. package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousInterfaceOperations.ts +6 -89
  170. package/src/orchestrate/common/structures/IAutoBePreliminaryGetPreviousInterfaceSchemas.ts +7 -93
  171. package/src/orchestrate/common/structures/IAutoBePreliminaryGetRealizeCollectors.ts +3 -22
  172. package/src/orchestrate/common/structures/IAutoBePreliminaryGetRealizeTransformers.ts +3 -22
  173. package/src/orchestrate/interface/structures/IAutoBeInterfaceAuthorizationApplication.ts +10 -97
  174. package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointReviewApplication.ts +14 -83
  175. package/src/orchestrate/interface/structures/IAutoBeInterfaceEndpointWriteApplication.ts +12 -90
  176. package/src/orchestrate/interface/structures/IAutoBeInterfaceGroupApplication.ts +12 -80
  177. package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationApplication.ts +21 -116
  178. package/src/orchestrate/interface/structures/IAutoBeInterfaceOperationReviewApplication.ts +24 -112
  179. package/src/orchestrate/interface/structures/IAutoBeInterfacePrerequisiteApplication.ts +11 -83
  180. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaApplication.ts +11 -76
  181. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaCastingApplication.ts +18 -96
  182. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaComplementApplication.ts +11 -76
  183. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaRefineApplication.ts +25 -107
  184. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaRenameApplication.ts +5 -31
  185. package/src/orchestrate/interface/structures/IAutoBeInterfaceSchemaReviewApplication.ts +6 -42
  186. package/src/orchestrate/prisma/structures/IAutoBeDatabaseAuthorizationApplication.ts +22 -99
  187. package/src/orchestrate/prisma/structures/IAutoBeDatabaseAuthorizationReviewApplication.ts +12 -109
  188. package/src/orchestrate/prisma/structures/IAutoBeDatabaseComponentApplication.ts +14 -100
  189. package/src/orchestrate/prisma/structures/IAutoBeDatabaseComponentReviewApplication.ts +15 -108
  190. package/src/orchestrate/prisma/structures/IAutoBeDatabaseCorrectApplication.ts +24 -106
  191. package/src/orchestrate/prisma/structures/IAutoBeDatabaseGroupApplication.ts +13 -76
  192. package/src/orchestrate/prisma/structures/IAutoBeDatabaseGroupReviewApplication.ts +13 -111
  193. package/src/orchestrate/prisma/structures/IAutoBeDatabaseSchemaApplication.ts +26 -97
  194. package/src/orchestrate/prisma/structures/IAutoBeDatabaseSchemaReviewApplication.ts +16 -93
  195. package/src/orchestrate/realize/histories/transformRealizeTransformerCorrectHistory.ts +21 -1
  196. package/src/orchestrate/realize/histories/transformRealizeTransformerWriteHistory.ts +26 -4
  197. package/src/orchestrate/realize/internal/orchestrateRealizeCorrectOverall.ts +125 -9
  198. package/src/orchestrate/realize/orchestrateRealizeTransformerCorrectCasting.ts +1 -0
  199. package/src/orchestrate/realize/programmers/AutoBeRealizeTransformerProgrammer.ts +210 -7
  200. package/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationCorrectApplication.ts +17 -71
  201. package/src/orchestrate/realize/structures/IAutoBeRealizeAuthorizationWriteApplication.ts +32 -92
  202. package/src/orchestrate/realize/structures/IAutoBeRealizeCollectorCorrectApplication.ts +32 -114
  203. package/src/orchestrate/realize/structures/IAutoBeRealizeCollectorPlanApplication.ts +29 -106
  204. package/src/orchestrate/realize/structures/IAutoBeRealizeCollectorWriteApplication.ts +38 -131
  205. package/src/orchestrate/realize/structures/IAutoBeRealizeOperationCorrectApplication.ts +16 -71
  206. package/src/orchestrate/realize/structures/IAutoBeRealizeOperationWriteApplication.ts +16 -73
  207. package/src/orchestrate/realize/structures/IAutoBeRealizeTransformerCorrectApplication.ts +37 -155
  208. package/src/orchestrate/realize/structures/IAutoBeRealizeTransformerPlanApplication.ts +25 -88
  209. package/src/orchestrate/realize/structures/IAutoBeRealizeTransformerWriteApplication.ts +48 -181
  210. package/src/orchestrate/realize/utils/generateTS2339Hints.ts +39 -19
@@ -82,7 +82,7 @@ function process(ctx, props) {
82
82
  properties: {
83
83
  thinking: {
84
84
  type: "string",
85
- description: "Reflect on requirements analysis before acting.\n\nFor preliminary requests (getAnalysisSections,\ngetPreviousAnalysisSections, getPreviousDatabaseSchemas):\n\n- What authentication requirements do you need to analyze?\n- Which actor types need to be verified?\n\nFor completion (complete):\n\n- What authentication requirements did you analyze?\n- How many revisions are you making and why?\n- Summarize the requirements-to-revisions mapping."
85
+ description: "Reasoning about your current state: what's missing (preliminary) or what\nyou accomplished (completion)."
86
86
  },
87
87
  request: {
88
88
  oneOf: [
@@ -108,7 +108,7 @@ function process(ctx, props) {
108
108
  complete: "#/components/schemas/IAutoBeDatabaseAuthorizationReviewApplication.IComplete"
109
109
  }
110
110
  },
111
- description: "Request type discriminator.\n\nUse preliminary requests (getAnalysisSections, etc.) to fetch\nrequirements documents. Use complete to submit table revisions after\nthorough authentication requirements analysis."
111
+ description: "Action to perform. Exhausted preliminary types are removed from the\nunion."
112
112
  }
113
113
  },
114
114
  required: [
@@ -121,7 +121,7 @@ function process(ctx, props) {
121
121
  properties: {
122
122
  type: {
123
123
  "const": "getPreviousAnalysisSections",
124
- description: "Type discriminator for the request.\n\nValue \"getPreviousAnalysisSections\" indicates this is a preliminary data\nrequest for analysis sections from the previous iteration."
124
+ description: "Type discriminator."
125
125
  },
126
126
  sectionIds: {
127
127
  type: "array",
@@ -130,21 +130,21 @@ function process(ctx, props) {
130
130
  minimum: 0
131
131
  },
132
132
  minItems: 1,
133
- description: "List of section IDs to retrieve from the previous iteration.\n\nCRITICAL: DO NOT request the same section IDs that you have already\nrequested in previous calls."
133
+ description: "Section IDs to retrieve from previous iteration. DO NOT request same IDs\nalready requested in previous calls."
134
134
  }
135
135
  },
136
136
  required: [
137
137
  "type",
138
138
  "sectionIds"
139
139
  ],
140
- description: "Request to retrieve individual analysis sections from previous iteration by\nnumeric ID.\n\nSame as {@link IAutoBePreliminaryGetAnalysisSections} but for sections from\nthe previous generation cycle, enabling comparison and consistency checks."
140
+ description: "Request to retrieve analysis sections from the previous iteration by numeric\nID."
141
141
  },
142
142
  IAutoBePreliminaryGetAnalysisSections: {
143
143
  type: "object",
144
144
  properties: {
145
145
  type: {
146
146
  "const": "getAnalysisSections",
147
- description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getAnalysisSections\" indicates this is a preliminary\ndata request for individual analysis sections."
147
+ description: "Type discriminator."
148
148
  },
149
149
  sectionIds: {
150
150
  type: "array",
@@ -154,21 +154,21 @@ function process(ctx, props) {
154
154
  },
155
155
  minItems: 1,
156
156
  maxItems: 100,
157
- description: "List of section IDs to retrieve.\n\nThese are sequential integer IDs from the analysis sections catalog. Each\nID maps to a specific ### section in the requirements documents.\n\nCRITICAL: DO NOT request the same section IDs that you have already\nrequested in previous calls."
157
+ description: "Section IDs to retrieve. DO NOT request same IDs already requested in\nprevious calls."
158
158
  }
159
159
  },
160
160
  required: [
161
161
  "type",
162
162
  "sectionIds"
163
163
  ],
164
- description: "Request to retrieve individual analysis sections by numeric ID.\n\nInstead of loading entire analysis files (~110-120KB each), this loads\nspecific ### sections (~200-600 words each) identified by integer IDs from\nthe section catalog."
164
+ description: "Request to retrieve individual analysis sections by numeric ID."
165
165
  },
166
166
  IAutoBePreliminaryGetPreviousDatabaseSchemas: {
167
167
  type: "object",
168
168
  properties: {
169
169
  type: {
170
170
  "const": "getPreviousDatabaseSchemas",
171
- description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getPreviousDatabaseSchemas\" indicates this is a\npreliminary data request for database schemas from a previous version."
171
+ description: "Type discriminator."
172
172
  },
173
173
  schemaNames: {
174
174
  type: "array",
@@ -176,14 +176,14 @@ function process(ctx, props) {
176
176
  type: "string"
177
177
  },
178
178
  minItems: 1,
179
- description: "List of database table names to retrieve from the previous version.\n\nThese are table schema names that were generated in a previous version and\nare needed as reference context for the current regeneration.\n\n**Important Notes:**\n\n- These schemas MUST exist in the previous version\n- This function is only available when a previous version exists\n- Used for reference/comparison, not for re-requesting within same execution\n- Table names are in snake_case (e.g., \"shopping_sale\", \"bbs_article\")\n\n**When This Function is Available:**\n\n- When a previous version exists\n- When user requests modifications to existing database schema\n- During correction/regeneration cycles that need previous schema context\n\n**When This Function is NOT Available:**\n\n- During initial generation (no previous version exists)\n- No previous database schemas available for this orchestration task\n\n**Example Table Names:**\n\n- \"users\", \"posts\", \"comments\"\n- \"shopping_sales\", \"shopping_orders\", \"shopping_products\"\n- \"bbs_articles\", \"bbs_article_files\""
179
+ description: "Table names to retrieve from previous iteration. DO NOT request same names\nalready requested in previous calls."
180
180
  }
181
181
  },
182
182
  required: [
183
183
  "type",
184
184
  "schemaNames"
185
185
  ],
186
- description: "Request to retrieve database schemas from a previous version.\n\nThis type is used to load database schema definitions that were generated in\na **previous version** of the AutoBE generation pipeline. This is NOT about\nre-requesting schemas within the same execution, but rather accessing\nartifacts from an earlier version.\n\n**Use Case:** When regenerating or modifying the database schema based on\nuser change requests, agents need to reference the previously generated\ndatabase schemas to understand the existing database structure and what needs\nto be modified.\n\n**Key Difference from `getDatabaseSchemas`:**\n\n- `getDatabaseSchemas`: Fetches schemas from the **current version** (the\n version being generated right now)\n- `getPreviousDatabaseSchemas`: Fetches schemas from the **previous version**\n (the last successfully generated version)\n\n**Example Scenario:**\n\n Initial generation:\n - DATABASE phase creates: users, posts, comments tables\n - Generation completes successfully\n\n User: \"Add email verification status to users\"\n\n Regeneration:\n - DATABASE phase starts regeneration\n - Calls getPreviousDatabaseSchemas([\"users\"])\n \u2192 Loads the previous version of users table schema\n - Creates new version with emailVerified field added\n\n**Waterfall + Spiral Pattern:**\n\nThis aligns with AutoBE's regeneration cycles where:\n\n- Compilation failures trigger regeneration with corrections\n- User modifications trigger new versions\n- Previous schemas serve as reference for incremental changes"
186
+ 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."
187
187
  },
188
188
  "IAutoBeDatabaseAuthorizationReviewApplication.IComplete": {
189
189
  type: "object",
@@ -194,14 +194,14 @@ function process(ctx, props) {
194
194
  },
195
195
  review: {
196
196
  type: "string",
197
- description: "Authentication requirements coverage analysis.\n\nDocument how you analyzed authentication requirements and mapped them to\ntable modifications:\n\n- What actor types are defined?\n- Does each actor have a main table and session table?\n- What authentication support tables are needed?\n- What existing tables need renaming or removal?\n\nBe specific - reference actual requirements and explain the\nrequirements-to-revisions mapping."
197
+ description: "How authentication requirements map to proposed table modifications,\nidentifying coverage gaps."
198
198
  },
199
199
  revises: {
200
200
  type: "array",
201
201
  items: {
202
202
  $ref: "#/components/schemas/AutoBeDatabaseComponentTableRevise"
203
203
  },
204
- description: "Array of table revision operations.\n\nInclude all create, update, and erase operations identified during\nreview. Each operation must include a reason explaining why the change is\nnecessary.\n\n## Operation Types:\n\n### Create - Add missing tables\n\nUse when a table is needed to fulfill authentication requirements but\ndoesn't exist.\n\n```typescript\n{\n \"type\": \"create\",\n \"reason\": \"Actor 'customer' requires password reset token storage\",\n \"table\": \"shopping_customer_password_resets\",\n \"description\": \"Stores password reset tokens with expiration for customers\"\n}\n```\n\n### Update - Rename tables\n\nUse when a table has naming convention issues.\n\n```typescript\n{\n \"type\": \"update\",\n \"reason\": \"Table name violates actor naming convention\",\n \"original\": \"customerSessions\",\n \"updated\": \"shopping_customer_sessions\",\n \"description\": \"Authentication sessions for shopping customers\"\n}\n```\n\n### Erase - Remove tables\n\nUse when a table doesn't belong to authorization.\n\n```typescript\n{\n \"type\": \"erase\",\n \"reason\": \"Table is a business domain entity, not authentication\",\n \"table\": \"shopping_orders\"\n}\n```\n\n## Constraints:\n\n- Only CREATE tables related to authentication and authorization\n- Each actor MUST have a main actor table and session table\n- Each operation must have a clear, requirement-based reason\n- Empty array is valid if no modifications are needed\n\n## Naming Conventions:\n\n- Snake case: `user_sessions` not `userSessions`\n- Plural form: `users` not `user`\n- Domain prefix: `shopping_customer_sessions`\n- Actor name in table: all tables must contain the actor name"
204
+ description: "Table revision operations (create/update/erase). Each must include a\nreason.\n\nConstraints:\n\n- Only CREATE tables related to authentication and authorization\n- Each actor MUST have a main actor table and session table\n- Empty array is valid if no modifications are needed\n\nNaming: snake_case, plural, domain-prefixed, actor name in table."
205
205
  }
206
206
  },
207
207
  required: [
@@ -209,7 +209,7 @@ function process(ctx, props) {
209
209
  "review",
210
210
  "revises"
211
211
  ],
212
- description: "Submit table revisions after authentication requirements analysis.\n\nThe authorization component contains tables for ALL actors, so ensure no\nactor is missing its required tables."
212
+ description: "Submit table revisions after authentication requirements analysis."
213
213
  },
214
214
  AutoBeDatabaseComponentTableRevise: {
215
215
  oneOf: [
@@ -231,27 +231,27 @@ function process(ctx, props) {
231
231
  update: "#/components/schemas/AutoBeDatabaseComponentTableUpdate"
232
232
  }
233
233
  },
234
- description: "Table revision operation type.\n\nDiscriminated union representing all possible table modifications during the\ncomponent review phase. Review agents examine generated tables and return an\narray of these operations to correct issues:\n\n- **Create**: Add missing tables that fulfill requirements\n- **Update**: Fix incorrectly named tables (rename operations)\n- **Erase**: Remove invalid or misplaced tables"
234
+ description: "Table revision: create | update (rename) | erase."
235
235
  },
236
236
  AutoBeDatabaseComponentTableCreate: {
237
237
  type: "object",
238
238
  properties: {
239
239
  type: {
240
240
  "const": "create",
241
- description: "Type discriminator indicating this is a create operation."
241
+ description: "Type discriminator."
242
242
  },
243
243
  reason: {
244
244
  type: "string",
245
- description: "Brief, concise reason for creating this table.\n\nExplain which requirement this table fulfills and why it was missing from\nthe initial generation.\n\n**IMPORTANT**: Keep it **concise** - one or two sentences maximum"
245
+ description: "Why this table is needed. Keep concise \u2014 one or two sentences."
246
246
  },
247
247
  table: {
248
248
  type: "string",
249
249
  pattern: "^[a-z][a-z0-9_]*$",
250
- description: "The new table name to add.\n\nMust follow snake_case naming convention with appropriate domain prefix."
250
+ description: "Table name in snake_case with domain prefix."
251
251
  },
252
252
  description: {
253
253
  type: "string",
254
- description: "Brief, concise description of what this table stores.\n\nExplain the business purpose and what data this table will contain.\n\n**IMPORTANT**: Keep it **concise** - one or two sentences maximum"
254
+ description: "Business purpose of this table. Keep concise. MUST be in English."
255
255
  }
256
256
  },
257
257
  required: [
@@ -260,23 +260,23 @@ function process(ctx, props) {
260
260
  "table",
261
261
  "description"
262
262
  ],
263
- description: "Request to create a new table in the component.\n\nUse this when you identify a missing table that should exist based on\nrequirements analysis. Common scenarios:\n\n- A required table was accidentally omitted from initial generation\n- A use case requires a table that wasn't initially identified\n- Review reveals gaps in data coverage for specific requirements\n- Supporting tables needed (snapshots, settings, attachments, etc.)"
263
+ description: "Add a missing table to the component."
264
264
  },
265
265
  AutoBeDatabaseComponentTableErase: {
266
266
  type: "object",
267
267
  properties: {
268
268
  type: {
269
269
  "const": "erase",
270
- description: "Type discriminator indicating this is an erase operation."
270
+ description: "Type discriminator."
271
271
  },
272
272
  reason: {
273
273
  type: "string",
274
- description: "Brief, concise reason for deletion.\n\nExplain why this table should be removed and what issue it causes.\n\n**IMPORTANT**: Keep it **concise** - one or two sentences maximum"
274
+ description: "Why this table should be removed. Keep concise \u2014 one or two sentences."
275
275
  },
276
276
  table: {
277
277
  type: "string",
278
278
  pattern: "^[a-z][a-z0-9_]*$",
279
- description: "The table name to remove.\n\nMust be from the current component's table list. Must match exactly."
279
+ description: "Table name to remove. Must match exactly from current component."
280
280
  }
281
281
  },
282
282
  required: [
@@ -284,32 +284,32 @@ function process(ctx, props) {
284
284
  "reason",
285
285
  "table"
286
286
  ],
287
- description: "Request to erase a table from the component.\n\nUse this when a table should be removed from the component:\n\n- Table belongs to a different domain/component\n- Duplicate functionality with another table\n- Not derived from actual requirements (hallucinated)\n- Table is unnecessary for the business requirements\n- Over-engineering (unnecessary granularity)"
287
+ description: "Remove a table from the component."
288
288
  },
289
289
  AutoBeDatabaseComponentTableUpdate: {
290
290
  type: "object",
291
291
  properties: {
292
292
  type: {
293
293
  "const": "update",
294
- description: "Type discriminator indicating this is an update operation."
294
+ description: "Type discriminator."
295
295
  },
296
296
  reason: {
297
297
  type: "string",
298
- description: "Brief, concise reason for this update.\n\nExplain what naming issue this fixes and why the new name is better.\n\n**IMPORTANT**: Keep it **concise** - one or two sentences maximum"
298
+ description: "Why this rename is needed. Keep concise \u2014 one or two sentences."
299
299
  },
300
300
  original: {
301
301
  type: "string",
302
302
  pattern: "^[a-z][a-z0-9_]*$",
303
- description: "The original table name to modify.\n\nMust be from the current component's table list. Must match exactly."
303
+ description: "Original table name. Must match exactly from current component."
304
304
  },
305
305
  updated: {
306
306
  type: "string",
307
307
  pattern: "^[a-z][a-z0-9_]*$",
308
- description: "The updated table name.\n\nMust follow snake_case naming convention with appropriate domain prefix."
308
+ description: "New table name in snake_case with domain prefix."
309
309
  },
310
310
  description: {
311
311
  type: "string",
312
- description: "Brief, concise updated description of what this table stores.\n\nProvide a clear description for the renamed table.\n\n**IMPORTANT**: Keep it **concise** - one or two sentences maximum"
312
+ description: "Updated description. Keep concise. MUST be in English."
313
313
  }
314
314
  },
315
315
  required: [
@@ -319,7 +319,7 @@ function process(ctx, props) {
319
319
  "updated",
320
320
  "description"
321
321
  ],
322
- description: "Request to update (rename) an existing table in the component.\n\nUse this when a table has naming issues that need correction:\n\n- Naming convention violations (e.g., `userProfile` -> `user_profiles`)\n- Missing domain prefix (e.g., `orders` -> `shopping_orders`)\n- Singular/plural normalization (e.g., `order` -> `orders`)\n- Typos or unclear naming (e.g., `usr_data` -> `user_data`)\n- Better alignment with domain terminology"
322
+ description: "Rename an existing table in the component."
323
323
  }
324
324
  }
325
325
  },
@@ -330,14 +330,13 @@ function process(ctx, props) {
330
330
  parameters: [
331
331
  {
332
332
  name: "props",
333
- description: " Request containing either preliminary data request or complete\ntask with table revisions for all actors",
334
333
  required: true,
335
334
  schema: {
336
335
  $ref: "#/components/schemas/IAutoBeDatabaseAuthorizationReviewApplication.IProps"
337
336
  }
338
337
  }
339
338
  ],
340
- description: "Analyze requirements and review the single authorization component\ncontaining tables for ALL actors.\n\nYour PRIMARY task is to deeply analyze authentication requirements and\nensure complete table coverage for EVERY actor type in the authorization\ncomponent. The component contains tables for all actors\n(guest/member/admin), and you must verify that each actor has its required\ntables.\n\nALWAYS fetch analysis sections first using `getAnalysisSections` to\nunderstand what authentication features are required, then systematically\nverify that EVERY actor has main actor table + session table, and apply\ncorrections."
339
+ description: "Process authorization review task or retrieve preliminary data."
341
340
  }
342
341
  ]
343
342
  },
@@ -682,11 +681,11 @@ function createController(props) {
682
681
  type: "object",
683
682
  properties: {
684
683
  thinking: {
685
- description: "Reflect on requirements analysis before acting.\n\nFor preliminary requests (getAnalysisSections,\ngetPreviousAnalysisSections, getPreviousDatabaseSchemas):\n\n- What authentication requirements do you need to analyze?\n- Which actor types need to be verified?\n\nFor completion (complete):\n\n- What authentication requirements did you analyze?\n- How many revisions are you making and why?\n- Summarize the requirements-to-revisions mapping.",
684
+ description: "Reasoning about your current state: what's missing (preliminary) or what\nyou accomplished (completion).",
686
685
  type: "string"
687
686
  },
688
687
  request: {
689
- description: "Request type discriminator.\n\nUse preliminary requests (getAnalysisSections, etc.) to fetch\nrequirements documents. Use complete to submit table revisions after\nthorough authentication requirements analysis.",
688
+ description: "Action to perform. Exhausted preliminary types are removed from the\nunion.",
690
689
  anyOf: [
691
690
  {
692
691
  $ref: "#/$defs/IAutoBePreliminaryGetPreviousAnalysisSections"
@@ -719,18 +718,18 @@ function createController(props) {
719
718
  additionalProperties: false,
720
719
  $defs: {
721
720
  IAutoBePreliminaryGetPreviousAnalysisSections: {
722
- description: "Request to retrieve individual analysis sections from previous iteration by\nnumeric ID.\n\nSame as {@link IAutoBePreliminaryGetAnalysisSections} but for sections from\nthe previous generation cycle, enabling comparison and consistency checks.",
721
+ description: "Request to retrieve analysis sections from the previous iteration by numeric\nID.",
723
722
  type: "object",
724
723
  properties: {
725
724
  type: {
726
- description: "Type discriminator for the request.\n\nValue \"getPreviousAnalysisSections\" indicates this is a preliminary data\nrequest for analysis sections from the previous iteration.",
725
+ description: "Type discriminator.",
727
726
  type: "string",
728
727
  "enum": [
729
728
  "getPreviousAnalysisSections"
730
729
  ]
731
730
  },
732
731
  sectionIds: {
733
- description: "List of section IDs to retrieve from the previous iteration.\n\nCRITICAL: DO NOT request the same section IDs that you have already\nrequested in previous calls.",
732
+ description: "Section IDs to retrieve from previous iteration. DO NOT request same IDs\nalready requested in previous calls.",
734
733
  type: "array",
735
734
  items: {
736
735
  type: "integer",
@@ -745,18 +744,18 @@ function createController(props) {
745
744
  ]
746
745
  },
747
746
  IAutoBePreliminaryGetAnalysisSections: {
748
- description: "Request to retrieve individual analysis sections by numeric ID.\n\nInstead of loading entire analysis files (~110-120KB each), this loads\nspecific ### sections (~200-600 words each) identified by integer IDs from\nthe section catalog.",
747
+ description: "Request to retrieve individual analysis sections by numeric ID.",
749
748
  type: "object",
750
749
  properties: {
751
750
  type: {
752
- description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getAnalysisSections\" indicates this is a preliminary\ndata request for individual analysis sections.",
751
+ description: "Type discriminator.",
753
752
  type: "string",
754
753
  "enum": [
755
754
  "getAnalysisSections"
756
755
  ]
757
756
  },
758
757
  sectionIds: {
759
- description: "List of section IDs to retrieve.\n\nThese are sequential integer IDs from the analysis sections catalog. Each\nID maps to a specific ### section in the requirements documents.\n\nCRITICAL: DO NOT request the same section IDs that you have already\nrequested in previous calls.",
758
+ description: "Section IDs to retrieve. DO NOT request same IDs already requested in\nprevious calls.",
760
759
  type: "array",
761
760
  items: {
762
761
  type: "integer",
@@ -772,18 +771,18 @@ function createController(props) {
772
771
  ]
773
772
  },
774
773
  IAutoBePreliminaryGetPreviousDatabaseSchemas: {
775
- description: "Request to retrieve database schemas from a previous version.\n\nThis type is used to load database schema definitions that were generated in\na **previous version** of the AutoBE generation pipeline. This is NOT about\nre-requesting schemas within the same execution, but rather accessing\nartifacts from an earlier version.\n\n**Use Case:** When regenerating or modifying the database schema based on\nuser change requests, agents need to reference the previously generated\ndatabase schemas to understand the existing database structure and what needs\nto be modified.\n\n**Key Difference from `getDatabaseSchemas`:**\n\n- `getDatabaseSchemas`: Fetches schemas from the **current version** (the\n version being generated right now)\n- `getPreviousDatabaseSchemas`: Fetches schemas from the **previous version**\n (the last successfully generated version)\n\n**Example Scenario:**\n\n Initial generation:\n - DATABASE phase creates: users, posts, comments tables\n - Generation completes successfully\n\n User: \"Add email verification status to users\"\n\n Regeneration:\n - DATABASE phase starts regeneration\n - Calls getPreviousDatabaseSchemas([\"users\"])\n \u2192 Loads the previous version of users table schema\n - Creates new version with emailVerified field added\n\n**Waterfall + Spiral Pattern:**\n\nThis aligns with AutoBE's regeneration cycles where:\n\n- Compilation failures trigger regeneration with corrections\n- User modifications trigger new versions\n- Previous schemas serve as reference for incremental changes",
774
+ 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.",
776
775
  type: "object",
777
776
  properties: {
778
777
  type: {
779
- description: "Type discriminator for the request.\n\nDetermines which action to perform: preliminary data retrieval or actual\ntask execution. Value \"getPreviousDatabaseSchemas\" indicates this is a\npreliminary data request for database schemas from a previous version.",
778
+ description: "Type discriminator.",
780
779
  type: "string",
781
780
  "enum": [
782
781
  "getPreviousDatabaseSchemas"
783
782
  ]
784
783
  },
785
784
  schemaNames: {
786
- description: "List of database table names to retrieve from the previous version.\n\nThese are table schema names that were generated in a previous version and\nare needed as reference context for the current regeneration.\n\n**Important Notes:**\n\n- These schemas MUST exist in the previous version\n- This function is only available when a previous version exists\n- Used for reference/comparison, not for re-requesting within same execution\n- Table names are in snake_case (e.g., \"shopping_sale\", \"bbs_article\")\n\n**When This Function is Available:**\n\n- When a previous version exists\n- When user requests modifications to existing database schema\n- During correction/regeneration cycles that need previous schema context\n\n**When This Function is NOT Available:**\n\n- During initial generation (no previous version exists)\n- No previous database schemas available for this orchestration task\n\n**Example Table Names:**\n\n- \"users\", \"posts\", \"comments\"\n- \"shopping_sales\", \"shopping_orders\", \"shopping_products\"\n- \"bbs_articles\", \"bbs_article_files\"",
785
+ description: "Table names to retrieve from previous iteration. DO NOT request same names\nalready requested in previous calls.",
787
786
  type: "array",
788
787
  items: {
789
788
  type: "string"
@@ -797,7 +796,7 @@ function createController(props) {
797
796
  ]
798
797
  },
799
798
  "IAutoBeDatabaseAuthorizationReviewApplication.IComplete": {
800
- description: "Submit table revisions after authentication requirements analysis.\n\nThe authorization component contains tables for ALL actors, so ensure no\nactor is missing its required tables.",
799
+ description: "Submit table revisions after authentication requirements analysis.",
801
800
  type: "object",
802
801
  properties: {
803
802
  type: {
@@ -808,11 +807,11 @@ function createController(props) {
808
807
  ]
809
808
  },
810
809
  review: {
811
- description: "Authentication requirements coverage analysis.\n\nDocument how you analyzed authentication requirements and mapped them to\ntable modifications:\n\n- What actor types are defined?\n- Does each actor have a main table and session table?\n- What authentication support tables are needed?\n- What existing tables need renaming or removal?\n\nBe specific - reference actual requirements and explain the\nrequirements-to-revisions mapping.",
810
+ description: "How authentication requirements map to proposed table modifications,\nidentifying coverage gaps.",
812
811
  type: "string"
813
812
  },
814
813
  revises: {
815
- description: "Array of table revision operations.\n\nInclude all create, update, and erase operations identified during\nreview. Each operation must include a reason explaining why the change is\nnecessary.\n\n## Operation Types:\n\n### Create - Add missing tables\n\nUse when a table is needed to fulfill authentication requirements but\ndoesn't exist.\n\n```typescript\n{\n \"type\": \"create\",\n \"reason\": \"Actor 'customer' requires password reset token storage\",\n \"table\": \"shopping_customer_password_resets\",\n \"description\": \"Stores password reset tokens with expiration for customers\"\n}\n```\n\n### Update - Rename tables\n\nUse when a table has naming convention issues.\n\n```typescript\n{\n \"type\": \"update\",\n \"reason\": \"Table name violates actor naming convention\",\n \"original\": \"customerSessions\",\n \"updated\": \"shopping_customer_sessions\",\n \"description\": \"Authentication sessions for shopping customers\"\n}\n```\n\n### Erase - Remove tables\n\nUse when a table doesn't belong to authorization.\n\n```typescript\n{\n \"type\": \"erase\",\n \"reason\": \"Table is a business domain entity, not authentication\",\n \"table\": \"shopping_orders\"\n}\n```\n\n## Constraints:\n\n- Only CREATE tables related to authentication and authorization\n- Each actor MUST have a main actor table and session table\n- Each operation must have a clear, requirement-based reason\n- Empty array is valid if no modifications are needed\n\n## Naming Conventions:\n\n- Snake case: `user_sessions` not `userSessions`\n- Plural form: `users` not `user`\n- Domain prefix: `shopping_customer_sessions`\n- Actor name in table: all tables must contain the actor name",
814
+ description: "Table revision operations (create/update/erase). Each must include a\nreason.\n\nConstraints:\n\n- Only CREATE tables related to authentication and authorization\n- Each actor MUST have a main actor table and session table\n- Empty array is valid if no modifications are needed\n\nNaming: snake_case, plural, domain-prefixed, actor name in table.",
816
815
  type: "array",
817
816
  items: {
818
817
  $ref: "#/$defs/AutoBeDatabaseComponentTableRevise"
@@ -826,7 +825,7 @@ function createController(props) {
826
825
  ]
827
826
  },
828
827
  AutoBeDatabaseComponentTableRevise: {
829
- description: "Table revision operation type.\n\nDiscriminated union representing all possible table modifications during the\ncomponent review phase. Review agents examine generated tables and return an\narray of these operations to correct issues:\n\n- **Create**: Add missing tables that fulfill requirements\n- **Update**: Fix incorrectly named tables (rename operations)\n- **Erase**: Remove invalid or misplaced tables",
828
+ description: "Table revision: create | update (rename) | erase.",
830
829
  anyOf: [
831
830
  {
832
831
  $ref: "#/$defs/AutoBeDatabaseComponentTableCreate"
@@ -848,27 +847,27 @@ function createController(props) {
848
847
  }
849
848
  },
850
849
  AutoBeDatabaseComponentTableCreate: {
851
- description: "Request to create a new table in the component.\n\nUse this when you identify a missing table that should exist based on\nrequirements analysis. Common scenarios:\n\n- A required table was accidentally omitted from initial generation\n- A use case requires a table that wasn't initially identified\n- Review reveals gaps in data coverage for specific requirements\n- Supporting tables needed (snapshots, settings, attachments, etc.)",
850
+ description: "Add a missing table to the component.",
852
851
  type: "object",
853
852
  properties: {
854
853
  type: {
855
- description: "Type discriminator indicating this is a create operation.",
854
+ description: "Type discriminator.",
856
855
  type: "string",
857
856
  "enum": [
858
857
  "create"
859
858
  ]
860
859
  },
861
860
  reason: {
862
- description: "Brief, concise reason for creating this table.\n\nExplain which requirement this table fulfills and why it was missing from\nthe initial generation.\n\n**IMPORTANT**: Keep it **concise** - one or two sentences maximum",
861
+ description: "Why this table is needed. Keep concise \u2014 one or two sentences.",
863
862
  type: "string"
864
863
  },
865
864
  table: {
866
- description: "The new table name to add.\n\nMust follow snake_case naming convention with appropriate domain prefix.",
865
+ description: "Table name in snake_case with domain prefix.",
867
866
  type: "string",
868
867
  pattern: "^[a-z][a-z0-9_]*$"
869
868
  },
870
869
  description: {
871
- description: "Brief, concise description of what this table stores.\n\nExplain the business purpose and what data this table will contain.\n\n**IMPORTANT**: Keep it **concise** - one or two sentences maximum",
870
+ description: "Business purpose of this table. Keep concise. MUST be in English.",
872
871
  type: "string"
873
872
  }
874
873
  },
@@ -880,22 +879,22 @@ function createController(props) {
880
879
  ]
881
880
  },
882
881
  AutoBeDatabaseComponentTableErase: {
883
- description: "Request to erase a table from the component.\n\nUse this when a table should be removed from the component:\n\n- Table belongs to a different domain/component\n- Duplicate functionality with another table\n- Not derived from actual requirements (hallucinated)\n- Table is unnecessary for the business requirements\n- Over-engineering (unnecessary granularity)",
882
+ description: "Remove a table from the component.",
884
883
  type: "object",
885
884
  properties: {
886
885
  type: {
887
- description: "Type discriminator indicating this is an erase operation.",
886
+ description: "Type discriminator.",
888
887
  type: "string",
889
888
  "enum": [
890
889
  "erase"
891
890
  ]
892
891
  },
893
892
  reason: {
894
- description: "Brief, concise reason for deletion.\n\nExplain why this table should be removed and what issue it causes.\n\n**IMPORTANT**: Keep it **concise** - one or two sentences maximum",
893
+ description: "Why this table should be removed. Keep concise \u2014 one or two sentences.",
895
894
  type: "string"
896
895
  },
897
896
  table: {
898
- description: "The table name to remove.\n\nMust be from the current component's table list. Must match exactly.",
897
+ description: "Table name to remove. Must match exactly from current component.",
899
898
  type: "string",
900
899
  pattern: "^[a-z][a-z0-9_]*$"
901
900
  }
@@ -907,32 +906,32 @@ function createController(props) {
907
906
  ]
908
907
  },
909
908
  AutoBeDatabaseComponentTableUpdate: {
910
- description: "Request to update (rename) an existing table in the component.\n\nUse this when a table has naming issues that need correction:\n\n- Naming convention violations (e.g., `userProfile` -> `user_profiles`)\n- Missing domain prefix (e.g., `orders` -> `shopping_orders`)\n- Singular/plural normalization (e.g., `order` -> `orders`)\n- Typos or unclear naming (e.g., `usr_data` -> `user_data`)\n- Better alignment with domain terminology",
909
+ description: "Rename an existing table in the component.",
911
910
  type: "object",
912
911
  properties: {
913
912
  type: {
914
- description: "Type discriminator indicating this is an update operation.",
913
+ description: "Type discriminator.",
915
914
  type: "string",
916
915
  "enum": [
917
916
  "update"
918
917
  ]
919
918
  },
920
919
  reason: {
921
- description: "Brief, concise reason for this update.\n\nExplain what naming issue this fixes and why the new name is better.\n\n**IMPORTANT**: Keep it **concise** - one or two sentences maximum",
920
+ description: "Why this rename is needed. Keep concise \u2014 one or two sentences.",
922
921
  type: "string"
923
922
  },
924
923
  original: {
925
- description: "The original table name to modify.\n\nMust be from the current component's table list. Must match exactly.",
924
+ description: "Original table name. Must match exactly from current component.",
926
925
  type: "string",
927
926
  pattern: "^[a-z][a-z0-9_]*$"
928
927
  },
929
928
  updated: {
930
- description: "The updated table name.\n\nMust follow snake_case naming convention with appropriate domain prefix.",
929
+ description: "New table name in snake_case with domain prefix.",
931
930
  type: "string",
932
931
  pattern: "^[a-z][a-z0-9_]*$"
933
932
  },
934
933
  description: {
935
- description: "Brief, concise updated description of what this table stores.\n\nProvide a clear description for the renamed table.\n\n**IMPORTANT**: Keep it **concise** - one or two sentences maximum",
934
+ description: "Updated description. Keep concise. MUST be in English.",
936
935
  type: "string"
937
936
  }
938
937
  },
@@ -946,7 +945,7 @@ function createController(props) {
946
945
  }
947
946
  }
948
947
  },
949
- description: "Analyze requirements and review the single authorization component\ncontaining tables for ALL actors.\n\nYour PRIMARY task is to deeply analyze authentication requirements and\nensure complete table coverage for EVERY actor type in the authorization\ncomponent. The component contains tables for all actors\n(guest/member/admin), and you must verify that each actor has its required\ntables.\n\nALWAYS fetch analysis sections first using `getAnalysisSections` to\nunderstand what authentication features are required, then systematically\nverify that EVERY actor has main actor table + session table, and apply\ncorrections.",
948
+ description: "Process authorization review task or retrieve preliminary data.",
950
949
  validate: (() => { const _io0 = input => "string" === typeof input.thinking && ("object" === typeof input.request && null !== input.request && _iu1(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 => "getPreviousAnalysisSections" === input.type && (Array.isArray(input.sectionIds) && (1 <= input.sectionIds.length && input.sectionIds.every(elem => "number" === typeof elem && __typia_transform__isTypeUint32._isTypeUint32(elem)))); const _io3 = input => "getPreviousDatabaseSchemas" === input.type && (Array.isArray(input.schemaNames) && (1 <= input.schemaNames.length && input.schemaNames.every(elem => "string" === typeof elem))); const _io4 = input => "complete" === input.type && "string" === typeof input.review && (Array.isArray(input.revises) && input.revises.every(elem => "object" === typeof elem && null !== elem && _iu0(elem))); const _io5 = input => "create" === input.type && "string" === typeof input.reason && ("string" === typeof input.table && RegExp("^[a-z][a-z0-9_]*$").test(input.table)) && "string" === typeof input.description; const _io6 = input => "erase" === input.type && "string" === typeof input.reason && ("string" === typeof input.table && RegExp("^[a-z][a-z0-9_]*$").test(input.table)); const _io7 = input => "update" === input.type && "string" === typeof input.reason && ("string" === typeof input.original && RegExp("^[a-z][a-z0-9_]*$").test(input.original)) && ("string" === typeof input.updated && RegExp("^[a-z][a-z0-9_]*$").test(input.updated)) && "string" === typeof input.description; const _iu0 = input => (() => {
951
950
  if ("create" === input.type)
952
951
  return _io5(input);
@@ -1 +1 @@
1
- {"version":3,"file":"orchestratePrismaAuthorizationReview.js","sourceRoot":"","sources":["../../../src/orchestrate/prisma/orchestratePrismaAuthorizationReview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestratePrismaAuthorizationReview.js","sourceRoot":"","sources":["../../../src/orchestrate/prisma/orchestratePrismaAuthorizationReview.ts"],"names":[],"mappings":"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"}