intention-coding 0.6.1 → 0.6.2
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/dist/index.cjs +294 -45
- package/dist/services/requirement-analyzer/index.d.ts.map +1 -1
- package/dist/services/tech-spec-generator/doc-renderer.d.ts.map +1 -1
- package/dist/services/tech-spec-generator/index.d.ts +34 -342
- package/dist/services/tech-spec-generator/index.d.ts.map +1 -1
- package/dist/services/tech-spec-generator/types.d.ts +134 -0
- package/dist/services/tech-spec-generator/types.d.ts.map +1 -1
- package/dist//346/212/200/346/234/257/350/247/204/346/240/274/350/257/264/346/230/216/344/271/246/346/250/241/346/235/277.docx +0 -0
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -7616,8 +7616,18 @@ ${pageStyle}
|
|
|
7616
7616
|
return cleanHtml.trim();
|
|
7617
7617
|
}
|
|
7618
7618
|
const requirementAnalyzerTool = {
|
|
7619
|
-
name: "
|
|
7620
|
-
description: `\u{
|
|
7619
|
+
name: "generate_design_doc",
|
|
7620
|
+
description: `\u{6839}\u{636E}\u{9700}\u{6C42}\u{5206}\u{6790}\u{7ED3}\u{679C}\u{FF0C}\u{751F}\u{6210} API \u{6280}\u{672F}\u{8BBE}\u{8BA1}\u{6587}\u{6863}\u{548C}\u{53EF}\u{4EA4}\u{4E92} HTML \u{9875}\u{9762}\u{539F}\u{578B}\u{3002}
|
|
7621
|
+
|
|
7622
|
+
\u{89E6}\u{53D1}\u{8BCD}: \u{751F}\u{6210}\u{8BBE}\u{8BA1}\u{6587}\u{6863}\u{3001}\u{751F}\u{6210}API\u{6587}\u{6863}\u{3001}\u{9700}\u{6C42}\u{8F6C}\u{8BBE}\u{8BA1}\u{3001}\u{751F}\u{6210}\u{6280}\u{672F}\u{65B9}\u{6848}\u{3001}\u{751F}\u{6210}\u{9875}\u{9762}\u{539F}\u{578B}
|
|
7623
|
+
|
|
7624
|
+
\u{4F7F}\u{7528}\u{6D41}\u{7A0B}:
|
|
7625
|
+
1. \u{5148}\u{8C03}\u{7528} requirement_identifier \u{5206}\u{6790}\u{539F}\u{59CB}\u{9700}\u{6C42}
|
|
7626
|
+
2. \u{5C06}\u{5206}\u{6790}\u{7ED3}\u{679C}\u{4F20}\u{5165}\u{672C}\u{5DE5}\u{5177}\u{751F}\u{6210}\u{8BBE}\u{8BA1}\u{6587}\u{6863}
|
|
7627
|
+
|
|
7628
|
+
\u{8F93}\u{51FA}:
|
|
7629
|
+
- API \u{6280}\u{672F}\u{9700}\u{6C42}\u{6587}\u{6863} (Markdown)
|
|
7630
|
+
- \u{53EF}\u{4EA4}\u{4E92} HTML \u{9875}\u{9762}\u{539F}\u{578B}`,
|
|
7621
7631
|
inputSchema: {
|
|
7622
7632
|
requirement_analysis: stringType().describe("requirement-identifier\u751F\u6210\u7684\u9700\u6C42\u5206\u6790\u7ED3\u679C\uFF08\u5305\u542B\u5F53\u524D\u9700\u6C42\u4E0E\u9879\u76EE\u60C5\u51B5\u7684\u5B8C\u6574\u5206\u6790\uFF09"),
|
|
7623
7633
|
current_project_path: stringType().describe("\u5F53\u524D\u9879\u76EE\u8DEF\u5F84\uFF08\u5FC5\u586B\uFF09\uFF0C\u9700\u6C42\u62A5\u544A\u5C06\u751F\u6210\u5230\u8BE5\u8DEF\u5F84\u4E0B\u7684.aico/design\u76EE\u5F55"),
|
|
@@ -10942,6 +10952,40 @@ ${requirement_description}
|
|
|
10942
10952
|
}
|
|
10943
10953
|
return external_path_namespaceObject.resolve(currentDir, "\u6280\u672F\u89C4\u683C\u8BF4\u660E\u4E66\u6A21\u677F.docx");
|
|
10944
10954
|
}
|
|
10955
|
+
function prepareRenderData(data) {
|
|
10956
|
+
const renderData = {
|
|
10957
|
+
projectName: data.projectName,
|
|
10958
|
+
moduleName: data.moduleName,
|
|
10959
|
+
year: data.year,
|
|
10960
|
+
month: data.month,
|
|
10961
|
+
referDoc: data.referDoc,
|
|
10962
|
+
serviceInterfaceList: data.serviceInterfaceList || [],
|
|
10963
|
+
designDetailList: data.designDetailList || [],
|
|
10964
|
+
tableInfoList: data.tableInfoList || [],
|
|
10965
|
+
techSolution: data.techSolution || null,
|
|
10966
|
+
businessExceptionList: data.businessExceptionList || [],
|
|
10967
|
+
appendix: data.appendix || null
|
|
10968
|
+
};
|
|
10969
|
+
if (data.techSolution) {
|
|
10970
|
+
const ts = data.techSolution;
|
|
10971
|
+
renderData.trafficEstimation = ts.trafficEstimation || null;
|
|
10972
|
+
renderData.messageQueueList = ts.messageQueueList || [];
|
|
10973
|
+
renderData.databaseSplitList = ts.databaseSplitList || [];
|
|
10974
|
+
renderData.distributedTransactionList = ts.distributedTransactionList || [];
|
|
10975
|
+
renderData.distributedLockList = ts.distributedLockList || [];
|
|
10976
|
+
renderData.scheduledTaskList = ts.scheduledTaskList || [];
|
|
10977
|
+
renderData.delayTaskList = ts.delayTaskList || [];
|
|
10978
|
+
renderData.cacheDesign = ts.cacheDesign || null;
|
|
10979
|
+
if (ts.cacheDesign) {
|
|
10980
|
+
renderData.cacheConstraint = ts.cacheDesign.constraint || "\u4E0D\u6D89\u53CA\u3002";
|
|
10981
|
+
renderData.cacheScenarioList = ts.cacheDesign.cacheScenarioList || [];
|
|
10982
|
+
renderData.cacheDesignDescription = ts.cacheDesign.designDescription || "\u4E0D\u6D89\u53CA\u3002";
|
|
10983
|
+
}
|
|
10984
|
+
}
|
|
10985
|
+
renderData.exceptionCodeList = data.appendix?.exceptionCodeList || [];
|
|
10986
|
+
renderData.codeValueList = data.appendix?.codeValueList || [];
|
|
10987
|
+
return renderData;
|
|
10988
|
+
}
|
|
10945
10989
|
async function renderTechSpecDoc(data, outputDir) {
|
|
10946
10990
|
try {
|
|
10947
10991
|
const templatePath = getTemplatePath();
|
|
@@ -10964,7 +11008,8 @@ ${requirement_description}
|
|
|
10964
11008
|
end: '}'
|
|
10965
11009
|
}
|
|
10966
11010
|
});
|
|
10967
|
-
|
|
11011
|
+
const renderData = prepareRenderData(data);
|
|
11012
|
+
doc.render(renderData);
|
|
10968
11013
|
const output = doc.getZip().generate({
|
|
10969
11014
|
type: 'nodebuffer',
|
|
10970
11015
|
compression: 'DEFLATE'
|
|
@@ -11009,7 +11054,7 @@ ${requirement_description}
|
|
|
11009
11054
|
fieldDescription: stringType().describe("\u5B57\u6BB5\u63CF\u8FF0"),
|
|
11010
11055
|
fieldLength: stringType().describe("\u5B57\u6BB5\u957F\u5EA6")
|
|
11011
11056
|
});
|
|
11012
|
-
|
|
11057
|
+
objectType({
|
|
11013
11058
|
id: stringType().describe("\u5E8F\u53F7"),
|
|
11014
11059
|
tableName: stringType().describe("\u8868\u540D\u79F0"),
|
|
11015
11060
|
entityName: stringType().describe("\u5BF9\u5E94\u5B9E\u4F53\u540D\u79F0"),
|
|
@@ -11038,7 +11083,7 @@ ${requirement_description}
|
|
|
11038
11083
|
returnResultList: arrayType(ReturnResultInfoSchema).default([]).describe("\u8FD4\u56DE\u7ED3\u679C\u5217\u8868"),
|
|
11039
11084
|
implementLogic: stringType().describe("\u5B9E\u73B0\u903B\u8F91")
|
|
11040
11085
|
});
|
|
11041
|
-
|
|
11086
|
+
objectType({
|
|
11042
11087
|
serviceName: stringType().describe("\u670D\u52A1\u540D\u79F0"),
|
|
11043
11088
|
serviceDesc: stringType().describe("\u529F\u80FD\u63CF\u8FF0"),
|
|
11044
11089
|
interfaceDesignDetailList: arrayType(InterfaceDesignDetailSchema).default([]).describe("\u63A5\u53E3\u8BBE\u8BA1\u8BE6\u60C5\u5217\u8868")
|
|
@@ -11049,7 +11094,7 @@ ${requirement_description}
|
|
|
11049
11094
|
serviceName: stringType().describe("\u670D\u52A1\u540D"),
|
|
11050
11095
|
methodName: stringType().describe("\u65B9\u6CD5\u540D")
|
|
11051
11096
|
});
|
|
11052
|
-
|
|
11097
|
+
objectType({
|
|
11053
11098
|
id: stringType().describe("\u5E8F\u53F7"),
|
|
11054
11099
|
serviceType: stringType().describe("\u670D\u52A1\u7C7B\u578B"),
|
|
11055
11100
|
serviceEnglishName: stringType().describe("\u670D\u52A1\u82F1\u6587\u540D\u79F0"),
|
|
@@ -11057,38 +11102,207 @@ ${requirement_description}
|
|
|
11057
11102
|
serviceDescription: stringType().describe("\u670D\u52A1\u63CF\u8FF0"),
|
|
11058
11103
|
interfaceDetailList: arrayType(InterfaceDetailSchema).default([]).describe("\u63A5\u53E3\u8BE6\u60C5\u5217\u8868")
|
|
11059
11104
|
});
|
|
11105
|
+
const TrafficEstimationSchema = objectType({
|
|
11106
|
+
description: stringType().describe("\u63CF\u8FF0"),
|
|
11107
|
+
qps: stringType().describe("\u9884\u4F30QPS"),
|
|
11108
|
+
peakQps: stringType().describe("\u5CF0\u503CQPS"),
|
|
11109
|
+
dailyVolume: stringType().describe("\u65E5\u8BF7\u6C42\u91CF")
|
|
11110
|
+
});
|
|
11111
|
+
const MessageQueueDesignSchema = objectType({
|
|
11112
|
+
topicName: stringType().describe("Topic\u540D\u79F0"),
|
|
11113
|
+
description: stringType().describe("\u63CF\u8FF0"),
|
|
11114
|
+
producer: stringType().describe("\u751F\u4EA7\u8005"),
|
|
11115
|
+
consumer: stringType().describe("\u6D88\u8D39\u8005"),
|
|
11116
|
+
messageType: stringType().describe("\u6D88\u606F\u7C7B\u578B")
|
|
11117
|
+
});
|
|
11118
|
+
const DatabaseSplitDesignSchema = objectType({
|
|
11119
|
+
tableName: stringType().describe("\u8868\u540D"),
|
|
11120
|
+
splitStrategy: stringType().describe("\u62C6\u5206\u7B56\u7565"),
|
|
11121
|
+
splitKey: stringType().describe("\u62C6\u5206\u952E"),
|
|
11122
|
+
description: stringType().describe("\u63CF\u8FF0")
|
|
11123
|
+
});
|
|
11124
|
+
const DistributedTransactionDesignSchema = objectType({
|
|
11125
|
+
sceneName: stringType().describe("\u573A\u666F\u540D\u79F0"),
|
|
11126
|
+
transactionType: stringType().describe("\u4E8B\u52A1\u7C7B\u578B(TCC/SAGA/2PC\u7B49)"),
|
|
11127
|
+
participants: stringType().describe("\u53C2\u4E0E\u65B9"),
|
|
11128
|
+
description: stringType().describe("\u63CF\u8FF0")
|
|
11129
|
+
});
|
|
11130
|
+
const DistributedLockDesignSchema = objectType({
|
|
11131
|
+
lockName: stringType().describe("\u9501\u540D\u79F0"),
|
|
11132
|
+
lockType: stringType().describe("\u9501\u7C7B\u578B"),
|
|
11133
|
+
timeout: stringType().describe("\u8D85\u65F6\u65F6\u95F4"),
|
|
11134
|
+
description: stringType().describe("\u63CF\u8FF0")
|
|
11135
|
+
});
|
|
11136
|
+
const ScheduledTaskDesignSchema = objectType({
|
|
11137
|
+
taskName: stringType().describe("\u4EFB\u52A1\u540D\u79F0"),
|
|
11138
|
+
cronExpression: stringType().describe("Cron\u8868\u8FBE\u5F0F"),
|
|
11139
|
+
description: stringType().describe("\u63CF\u8FF0"),
|
|
11140
|
+
executorClass: stringType().describe("\u6267\u884C\u7C7B")
|
|
11141
|
+
});
|
|
11142
|
+
const DelayTaskDesignSchema = objectType({
|
|
11143
|
+
taskName: stringType().describe("\u4EFB\u52A1\u540D\u79F0"),
|
|
11144
|
+
delayTime: stringType().describe("\u5EF6\u65F6\u65F6\u95F4"),
|
|
11145
|
+
description: stringType().describe("\u63CF\u8FF0"),
|
|
11146
|
+
triggerCondition: stringType().describe("\u89E6\u53D1\u6761\u4EF6")
|
|
11147
|
+
});
|
|
11148
|
+
const CacheScenarioSchema = objectType({
|
|
11149
|
+
id: stringType().describe("\u5E8F\u53F7"),
|
|
11150
|
+
sceneName: stringType().describe("\u573A\u666F\u540D\u79F0"),
|
|
11151
|
+
cacheKey: stringType().describe("\u7F13\u5B58Key"),
|
|
11152
|
+
expireTime: stringType().describe("\u8FC7\u671F\u65F6\u95F4"),
|
|
11153
|
+
description: stringType().describe("\u63CF\u8FF0")
|
|
11154
|
+
});
|
|
11155
|
+
const CacheDesignSchema = objectType({
|
|
11156
|
+
constraint: stringType().describe("\u7EA6\u675F"),
|
|
11157
|
+
cacheScenarioList: arrayType(CacheScenarioSchema).default([]).describe("\u4F7F\u7528\u573A\u666F\u5217\u8868"),
|
|
11158
|
+
designDescription: stringType().describe("\u65B9\u6848\u8BBE\u8BA1\u63CF\u8FF0")
|
|
11159
|
+
});
|
|
11160
|
+
objectType({
|
|
11161
|
+
trafficEstimation: TrafficEstimationSchema.nullable().optional().describe("6.1 \u6D41\u91CF\u4F30\u7B97\u5206\u6790"),
|
|
11162
|
+
messageQueueList: arrayType(MessageQueueDesignSchema).default([]).describe("6.2 \u6D88\u606F\u961F\u5217"),
|
|
11163
|
+
databaseSplitList: arrayType(DatabaseSplitDesignSchema).default([]).describe("6.3 \u6570\u636E\u5E93\u62C6\u5206\u8BBE\u8BA1"),
|
|
11164
|
+
distributedTransactionList: arrayType(DistributedTransactionDesignSchema).default([]).describe("6.4 \u5206\u5E03\u5F0F\u4E8B\u52A1"),
|
|
11165
|
+
distributedLockList: arrayType(DistributedLockDesignSchema).default([]).describe("6.5 \u5206\u5E03\u5F0F\u9501"),
|
|
11166
|
+
scheduledTaskList: arrayType(ScheduledTaskDesignSchema).default([]).describe("6.6 \u5B9A\u65F6\u4EFB\u52A1"),
|
|
11167
|
+
delayTaskList: arrayType(DelayTaskDesignSchema).default([]).describe("6.7 \u5EF6\u65F6\u4EFB\u52A1"),
|
|
11168
|
+
cacheDesign: CacheDesignSchema.nullable().optional().describe("6.8 \u7F13\u5B58\u65B9\u6848")
|
|
11169
|
+
});
|
|
11170
|
+
objectType({
|
|
11171
|
+
id: stringType().describe("\u5E8F\u53F7"),
|
|
11172
|
+
sceneName: stringType().describe("\u5F02\u5E38\u573A\u666F"),
|
|
11173
|
+
exceptionType: stringType().describe("\u5F02\u5E38\u7C7B\u578B"),
|
|
11174
|
+
handleStrategy: stringType().describe("\u5904\u7406\u7B56\u7565"),
|
|
11175
|
+
description: stringType().describe("\u63CF\u8FF0")
|
|
11176
|
+
});
|
|
11177
|
+
const ExceptionCodeSchema = objectType({
|
|
11178
|
+
id: stringType().describe("\u5E8F\u53F7"),
|
|
11179
|
+
exceptionCode: stringType().describe("\u5F02\u5E38\u7F16\u7801"),
|
|
11180
|
+
exceptionDescription: stringType().describe("\u5F02\u5E38\u63CF\u8FF0")
|
|
11181
|
+
});
|
|
11182
|
+
const CodeValueSchema = objectType({
|
|
11183
|
+
id: stringType().describe("\u5E8F\u53F7"),
|
|
11184
|
+
propertyName: stringType().describe("\u5C5E\u6027"),
|
|
11185
|
+
codeValue: stringType().describe("\u7801\u503C")
|
|
11186
|
+
});
|
|
11187
|
+
objectType({
|
|
11188
|
+
exceptionCodeList: arrayType(ExceptionCodeSchema).default([]).describe("8.1 \u5F02\u5E38\u7801\u8868"),
|
|
11189
|
+
codeValueList: arrayType(CodeValueSchema).default([]).describe("8.2 \u7801\u503C")
|
|
11190
|
+
});
|
|
11191
|
+
function normalizeInputData(input) {
|
|
11192
|
+
const result = {
|
|
11193
|
+
...input
|
|
11194
|
+
};
|
|
11195
|
+
if (Array.isArray(input.tableInfoList)) result.tableInfoList = input.tableInfoList.map((table, tableIndex)=>{
|
|
11196
|
+
const normalizedTable = {
|
|
11197
|
+
id: table.id || String(tableIndex + 1),
|
|
11198
|
+
tableName: table.tableName || '',
|
|
11199
|
+
entityName: table.entityName || table.tableName || '',
|
|
11200
|
+
tableDescription: table.tableDescription || table.tableComment || table.comment || '',
|
|
11201
|
+
tableDetailList: []
|
|
11202
|
+
};
|
|
11203
|
+
const fieldList = table.tableDetailList || table.fieldList || [];
|
|
11204
|
+
normalizedTable.tableDetailList = fieldList.map((field, fieldIndex)=>({
|
|
11205
|
+
id: field.id || String(fieldIndex + 1),
|
|
11206
|
+
fieldName: field.fieldName || '',
|
|
11207
|
+
fieldType: field.fieldType || '',
|
|
11208
|
+
fieldDescription: field.fieldDescription || field.fieldComment || field.comment || '',
|
|
11209
|
+
fieldLength: field.fieldLength || '-'
|
|
11210
|
+
}));
|
|
11211
|
+
return normalizedTable;
|
|
11212
|
+
});
|
|
11213
|
+
if (Array.isArray(input.serviceInterfaceList)) result.serviceInterfaceList = input.serviceInterfaceList.map((service, serviceIndex)=>{
|
|
11214
|
+
if (void 0 !== service.serviceEnglishName) return service;
|
|
11215
|
+
const normalizedService = {
|
|
11216
|
+
id: service.id || String(serviceIndex + 1),
|
|
11217
|
+
serviceType: service.serviceType || 'REST',
|
|
11218
|
+
serviceEnglishName: service.interfaceName || service.serviceEnglishName || '',
|
|
11219
|
+
serviceChineseName: service.serviceChineseName || service.interfaceComment || service.interfaceName || '',
|
|
11220
|
+
serviceDescription: service.serviceDescription || service.interfaceComment || '',
|
|
11221
|
+
interfaceDetailList: []
|
|
11222
|
+
};
|
|
11223
|
+
const methodList = service.interfaceDetailList || service.methodList || [];
|
|
11224
|
+
normalizedService.interfaceDetailList = methodList.map((method, methodIndex)=>({
|
|
11225
|
+
id: method.id || String(methodIndex + 1),
|
|
11226
|
+
functionDescription: method.functionDescription || method.methodComment || method.comment || '',
|
|
11227
|
+
serviceName: method.serviceName || service.interfaceName || service.serviceEnglishName || '',
|
|
11228
|
+
methodName: method.methodName || ''
|
|
11229
|
+
}));
|
|
11230
|
+
return normalizedService;
|
|
11231
|
+
});
|
|
11232
|
+
if (Array.isArray(input.designDetailList)) result.designDetailList = input.designDetailList.map((design)=>{
|
|
11233
|
+
if (void 0 !== design.serviceName && void 0 !== design.interfaceDesignDetailList) return design;
|
|
11234
|
+
return {
|
|
11235
|
+
serviceName: design.designName || design.serviceName || '',
|
|
11236
|
+
serviceDesc: design.designDesc || design.serviceDesc || '',
|
|
11237
|
+
interfaceDesignDetailList: design.interfaceDesignDetailList || []
|
|
11238
|
+
};
|
|
11239
|
+
});
|
|
11240
|
+
if (Array.isArray(input.businessExceptionList)) result.businessExceptionList = input.businessExceptionList.map((exception, index)=>{
|
|
11241
|
+
if (void 0 !== exception.sceneName) return exception;
|
|
11242
|
+
return {
|
|
11243
|
+
id: exception.id || String(index + 1),
|
|
11244
|
+
sceneName: exception.exceptionCode || exception.sceneName || '',
|
|
11245
|
+
exceptionType: exception.exceptionType || 'BusinessException',
|
|
11246
|
+
handleStrategy: exception.exceptionSolution || exception.handleStrategy || '',
|
|
11247
|
+
description: exception.exceptionDesc || exception.description || ''
|
|
11248
|
+
};
|
|
11249
|
+
});
|
|
11250
|
+
if ('string' == typeof input.techSolution) result.techSolution = {
|
|
11251
|
+
trafficEstimation: null,
|
|
11252
|
+
messageQueueList: [],
|
|
11253
|
+
databaseSplitList: [],
|
|
11254
|
+
distributedTransactionList: [],
|
|
11255
|
+
distributedLockList: [],
|
|
11256
|
+
scheduledTaskList: [],
|
|
11257
|
+
delayTaskList: [],
|
|
11258
|
+
cacheDesign: {
|
|
11259
|
+
constraint: input.techSolution,
|
|
11260
|
+
cacheScenarioList: [],
|
|
11261
|
+
designDescription: input.techSolution
|
|
11262
|
+
}
|
|
11263
|
+
};
|
|
11264
|
+
return result;
|
|
11265
|
+
}
|
|
11060
11266
|
const techSpecGeneratorTool = {
|
|
11061
|
-
name:
|
|
11062
|
-
description: `\u{
|
|
11063
|
-
|
|
11064
|
-
\u{
|
|
11065
|
-
|
|
11066
|
-
|
|
11067
|
-
|
|
11068
|
-
|
|
11069
|
-
|
|
11070
|
-
|
|
11071
|
-
|
|
11267
|
+
name: "generate_tech_spec",
|
|
11268
|
+
description: `\u{6839}\u{636E}\u{4EE3}\u{7801}\u{5206}\u{6790}\u{7ED3}\u{679C}\u{751F}\u{6210}\u{6280}\u{672F}\u{89C4}\u{683C}\u{8BF4}\u{660E}\u{4E66}(Word\u{6587}\u{6863})\u{3002}
|
|
11269
|
+
|
|
11270
|
+
\u{89E6}\u{53D1}\u{8BCD}: \u{751F}\u{6210}\u{6280}\u{672F}\u{89C4}\u{683C}\u{3001}\u{6280}\u{672F}\u{89C4}\u{683C}\u{8BF4}\u{660E}\u{4E66}\u{3001}\u{751F}\u{6210}\u{6280}\u{672F}\u{6587}\u{6863}\u{3001}\u{6280}\u{672F}spec\u{3001}\u{4EE3}\u{7801}\u{6587}\u{6863}\u{5316}\u{3001}\u{751F}\u{6210}\u{89C4}\u{683C}\u{4E66}\u{3001}\u{6280}\u{672F}\u{8BF4}\u{660E}\u{4E66}
|
|
11271
|
+
|
|
11272
|
+
\u{9002}\u{7528}\u{573A}\u{666F}:
|
|
11273
|
+
- \u{9700}\u{8981}\u{4E3A}\u{9879}\u{76EE}/\u{6A21}\u{5757}\u{751F}\u{6210}\u{6B63}\u{5F0F}\u{7684}\u{6280}\u{672F}\u{89C4}\u{683C}\u{8BF4}\u{660E}\u{4E66}
|
|
11274
|
+
- \u{9700}\u{8981}\u{5C06}\u{4EE3}\u{7801}\u{7ED3}\u{6784}\u{6587}\u{6863}\u{5316}\u{4E3A}Word\u{683C}\u{5F0F}
|
|
11275
|
+
- \u{9879}\u{76EE}\u{4EA4}\u{4ED8}\u{9700}\u{8981}\u{6280}\u{672F}\u{6587}\u{6863}
|
|
11276
|
+
|
|
11277
|
+
\u{8F93}\u{5165}\u{8981}\u{6C42}: \u{9700}\u{8981}\u{5148}\u{5206}\u{6790}\u{4EE3}\u{7801}\u{76EE}\u{5F55}\u{FF0C}\u{6536}\u{96C6}\u{6570}\u{636E}\u{8868}\u{8BBE}\u{8BA1}\u{3001}\u{670D}\u{52A1}\u{63A5}\u{53E3}\u{3001}\u{529F}\u{80FD}\u{8BBE}\u{8BA1}\u{7B49}\u{4FE1}\u{606F}
|
|
11278
|
+
\u{8F93}\u{51FA}: Word\u{683C}\u{5F0F}\u{7684}\u{6280}\u{672F}\u{89C4}\u{683C}\u{8BF4}\u{660E}\u{4E66}(.docx)\u{FF0C}\u{4FDD}\u{5B58}\u{5230} .aico/tech/ \u{76EE}\u{5F55}`,
|
|
11072
11279
|
inputSchema: {
|
|
11073
|
-
projectPath: stringType().min(1).describe("\u5F53\u524D\u9879\u76EE\u8DEF\u5F84\uFF0C\u751F\u6210\u7684\u6280\u672F\u89C4\u683C\u8BF4\u660E\u4E66\u4FDD\u5B58\u5230\u8BE5\u8DEF\u5F84\u4E0B\u7684.aico/
|
|
11074
|
-
techSpecData:
|
|
11075
|
-
|
|
11076
|
-
|
|
11077
|
-
|
|
11078
|
-
|
|
11079
|
-
|
|
11080
|
-
|
|
11081
|
-
|
|
11082
|
-
|
|
11083
|
-
|
|
11280
|
+
projectPath: stringType().min(1).describe("\u5F53\u524D\u9879\u76EE\u8DEF\u5F84\uFF0C\u751F\u6210\u7684\u6280\u672F\u89C4\u683C\u8BF4\u660E\u4E66\u4FDD\u5B58\u5230\u8BE5\u8DEF\u5F84\u4E0B\u7684.aico/tech\u76EE\u5F55"),
|
|
11281
|
+
techSpecData: unionType([
|
|
11282
|
+
stringType(),
|
|
11283
|
+
objectType({
|
|
11284
|
+
projectName: stringType().describe("\u9879\u76EE\u540D\u79F0"),
|
|
11285
|
+
moduleName: stringType().describe("\u6A21\u5757\u540D\u79F0"),
|
|
11286
|
+
year: stringType().optional().describe("\u5E74\u4EFD\uFF0C\u9ED8\u8BA4\u5F53\u524D\u5E74\u4EFD"),
|
|
11287
|
+
month: stringType().optional().describe("\u6708\u4EFD\uFF0C\u9ED8\u8BA4\u5F53\u524D\u6708\u4EFD"),
|
|
11288
|
+
referDoc: stringType().optional().describe("\u53C2\u8003\u6587\u6863"),
|
|
11289
|
+
serviceInterfaceList: arrayType(anyType()).default([]).describe("\u670D\u52A1\u63A5\u53E3\u6E05\u5355"),
|
|
11290
|
+
designDetailList: arrayType(anyType()).default([]).describe("\u670D\u52A1\u63A5\u53E3\u8BBE\u8BA1\u8BE6\u60C5"),
|
|
11291
|
+
tableInfoList: arrayType(anyType()).default([]).describe("\u6570\u636E\u5E93\u8868\u4FE1\u606F\u5217\u8868"),
|
|
11292
|
+
techSolution: anyType().optional().describe("\u7B2C6\u7AE0-\u6280\u672F\u65B9\u6848"),
|
|
11293
|
+
businessExceptionList: arrayType(anyType()).default([]).describe("\u7B2C7\u7AE0-\u4E1A\u52A1\u5F02\u5E38\u5904\u7406\u5217\u8868"),
|
|
11294
|
+
appendix: anyType().optional().describe("\u7B2C8\u7AE0-\u9644\u5F55")
|
|
11295
|
+
}).passthrough()
|
|
11296
|
+
]).describe("\u6280\u672F\u89C4\u683C\u6570\u636E(JSON\u5BF9\u8C61\u6216JSON\u5B57\u7B26\u4E32)\uFF0C\u5305\u542B: projectName(\u9879\u76EE\u540D), moduleName(\u6A21\u5757\u540D), tableInfoList(\u6570\u636E\u8868), serviceInterfaceList(\u670D\u52A1\u63A5\u53E3), designDetailList(\u8BBE\u8BA1\u8BE6\u60C5)")
|
|
11084
11297
|
},
|
|
11085
11298
|
handler: async (args)=>{
|
|
11086
11299
|
try {
|
|
11087
|
-
const { projectPath
|
|
11300
|
+
const { projectPath } = args;
|
|
11301
|
+
let { techSpecData } = args;
|
|
11088
11302
|
if (!projectPath) return {
|
|
11089
11303
|
content: [
|
|
11090
11304
|
{
|
|
11091
|
-
type:
|
|
11305
|
+
type: "text",
|
|
11092
11306
|
text: JSON.stringify({
|
|
11093
11307
|
success: false,
|
|
11094
11308
|
message: "\u7F3A\u5C11\u5FC5\u586B\u53C2\u6570\uFF1AprojectPath",
|
|
@@ -11101,7 +11315,7 @@ ${requirement_description}
|
|
|
11101
11315
|
if (!techSpecData) return {
|
|
11102
11316
|
content: [
|
|
11103
11317
|
{
|
|
11104
|
-
type:
|
|
11318
|
+
type: "text",
|
|
11105
11319
|
text: JSON.stringify({
|
|
11106
11320
|
success: false,
|
|
11107
11321
|
message: "\u7F3A\u5C11\u5FC5\u586B\u53C2\u6570\uFF1AtechSpecData",
|
|
@@ -11111,31 +11325,62 @@ ${requirement_description}
|
|
|
11111
11325
|
],
|
|
11112
11326
|
isError: true
|
|
11113
11327
|
};
|
|
11328
|
+
logger.info("\u63A5\u6536\u5230\u7684 techSpecData \u7C7B\u578B", {
|
|
11329
|
+
type: typeof techSpecData
|
|
11330
|
+
});
|
|
11331
|
+
logger.info("\u63A5\u6536\u5230\u7684 techSpecData \u5185\u5BB9", {
|
|
11332
|
+
data: JSON.stringify(techSpecData).substring(0, 500)
|
|
11333
|
+
});
|
|
11334
|
+
if ("string" == typeof techSpecData) try {
|
|
11335
|
+
techSpecData = JSON.parse(techSpecData);
|
|
11336
|
+
logger.info("techSpecData \u4ECE\u5B57\u7B26\u4E32\u89E3\u6790\u4E3A\u5BF9\u8C61");
|
|
11337
|
+
} catch (parseError) {
|
|
11338
|
+
return {
|
|
11339
|
+
content: [
|
|
11340
|
+
{
|
|
11341
|
+
type: "text",
|
|
11342
|
+
text: JSON.stringify({
|
|
11343
|
+
success: false,
|
|
11344
|
+
message: "techSpecData \u53C2\u6570\u683C\u5F0F\u9519\u8BEF\uFF0C\u5E94\u4E3A JSON \u5BF9\u8C61",
|
|
11345
|
+
data: null
|
|
11346
|
+
})
|
|
11347
|
+
}
|
|
11348
|
+
],
|
|
11349
|
+
isError: true
|
|
11350
|
+
};
|
|
11351
|
+
}
|
|
11114
11352
|
const now = new Date();
|
|
11353
|
+
const normalizedData = normalizeInputData(techSpecData);
|
|
11115
11354
|
const data = {
|
|
11116
|
-
projectName:
|
|
11117
|
-
moduleName:
|
|
11118
|
-
year:
|
|
11119
|
-
month:
|
|
11120
|
-
referDoc:
|
|
11121
|
-
serviceInterfaceList:
|
|
11122
|
-
designDetailList:
|
|
11123
|
-
tableInfoList:
|
|
11355
|
+
projectName: normalizedData.projectName || "\u672A\u547D\u540D\u9879\u76EE",
|
|
11356
|
+
moduleName: normalizedData.moduleName || "\u672A\u547D\u540D\u6A21\u5757",
|
|
11357
|
+
year: normalizedData.year || String(now.getFullYear()),
|
|
11358
|
+
month: normalizedData.month || String(now.getMonth() + 1).padStart(2, "0"),
|
|
11359
|
+
referDoc: normalizedData.referDoc || "\u65E0",
|
|
11360
|
+
serviceInterfaceList: normalizedData.serviceInterfaceList || [],
|
|
11361
|
+
designDetailList: normalizedData.designDetailList || [],
|
|
11362
|
+
tableInfoList: normalizedData.tableInfoList || [],
|
|
11363
|
+
techSolution: normalizedData.techSolution || void 0,
|
|
11364
|
+
businessExceptionList: normalizedData.businessExceptionList || [],
|
|
11365
|
+
appendix: normalizedData.appendix || void 0
|
|
11124
11366
|
};
|
|
11125
|
-
const outputDir = external_path_namespaceObject.join(projectPath,
|
|
11367
|
+
const outputDir = external_path_namespaceObject.join(projectPath, ".aico", "tech");
|
|
11126
11368
|
logger.info("\u5F00\u59CB\u751F\u6210\u6280\u672F\u89C4\u683C\u8BF4\u660E\u4E66", {
|
|
11127
11369
|
projectPath,
|
|
11128
11370
|
outputDir,
|
|
11129
11371
|
projectName: data.projectName,
|
|
11130
11372
|
moduleName: data.moduleName,
|
|
11131
11373
|
tableCount: data.tableInfoList.length,
|
|
11132
|
-
serviceCount: data.serviceInterfaceList.length
|
|
11374
|
+
serviceCount: data.serviceInterfaceList.length,
|
|
11375
|
+
hasTechSolution: !!data.techSolution,
|
|
11376
|
+
businessExceptionCount: data.businessExceptionList?.length || 0,
|
|
11377
|
+
hasAppendix: !!data.appendix
|
|
11133
11378
|
});
|
|
11134
11379
|
const result = await renderTechSpecDoc(data, outputDir);
|
|
11135
11380
|
if (result.success) return {
|
|
11136
11381
|
content: [
|
|
11137
11382
|
{
|
|
11138
|
-
type:
|
|
11383
|
+
type: "text",
|
|
11139
11384
|
text: JSON.stringify({
|
|
11140
11385
|
success: true,
|
|
11141
11386
|
message: "\u6280\u672F\u89C4\u683C\u8BF4\u660E\u4E66\u751F\u6210\u6210\u529F",
|
|
@@ -11146,7 +11391,11 @@ ${requirement_description}
|
|
|
11146
11391
|
statistics: {
|
|
11147
11392
|
tableCount: data.tableInfoList.length,
|
|
11148
11393
|
serviceCount: data.serviceInterfaceList.length,
|
|
11149
|
-
designCount: data.designDetailList.length
|
|
11394
|
+
designCount: data.designDetailList.length,
|
|
11395
|
+
hasTechSolution: !!data.techSolution,
|
|
11396
|
+
businessExceptionCount: data.businessExceptionList?.length || 0,
|
|
11397
|
+
exceptionCodeCount: data.appendix?.exceptionCodeList?.length || 0,
|
|
11398
|
+
codeValueCount: data.appendix?.codeValueList?.length || 0
|
|
11150
11399
|
}
|
|
11151
11400
|
}
|
|
11152
11401
|
})
|
|
@@ -11156,7 +11405,7 @@ ${requirement_description}
|
|
|
11156
11405
|
return {
|
|
11157
11406
|
content: [
|
|
11158
11407
|
{
|
|
11159
|
-
type:
|
|
11408
|
+
type: "text",
|
|
11160
11409
|
text: JSON.stringify({
|
|
11161
11410
|
success: false,
|
|
11162
11411
|
message: result.error || "\u6587\u6863\u751F\u6210\u5931\u8D25",
|
|
@@ -11173,7 +11422,7 @@ ${requirement_description}
|
|
|
11173
11422
|
return {
|
|
11174
11423
|
content: [
|
|
11175
11424
|
{
|
|
11176
|
-
type:
|
|
11425
|
+
type: "text",
|
|
11177
11426
|
text: JSON.stringify({
|
|
11178
11427
|
success: false,
|
|
11179
11428
|
message: error.message || "\u751F\u6210\u8FC7\u7A0B\u4E2D\u53D1\u751F\u9519\u8BEF",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/requirement-analyzer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA0KxB;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/requirement-analyzer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA0KxB;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;oBAyCZ,GAAG;;;;;;;;;;;;;CAwU1B,CAAC;AAGF,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACpE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doc-renderer.d.ts","sourceRoot":"","sources":["../../../src/services/tech-spec-generator/doc-renderer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EAAE,YAAY,EAAE,mBAAmB,
|
|
1
|
+
{"version":3,"file":"doc-renderer.d.ts","sourceRoot":"","sources":["../../../src/services/tech-spec-generator/doc-renderer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAiD,MAAM,SAAS,CAAC;AA0E3G;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,YAAY,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,mBAAmB,CAAC,CAiF9B"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* 2. 将收集的数据传递给该工具
|
|
8
8
|
* 3. 工具使用模板渲染生成技术规格说明书
|
|
9
9
|
*/
|
|
10
|
-
import { z } from
|
|
10
|
+
import { z } from "zod";
|
|
11
11
|
/**
|
|
12
12
|
* 技术规格说明书生成工具
|
|
13
13
|
*/
|
|
@@ -16,351 +16,43 @@ export declare const techSpecGeneratorTool: {
|
|
|
16
16
|
description: string;
|
|
17
17
|
inputSchema: {
|
|
18
18
|
projectPath: z.ZodString;
|
|
19
|
-
techSpecData: z.ZodObject<{
|
|
19
|
+
techSpecData: z.ZodUnion<[z.ZodString, z.ZodObject<{
|
|
20
20
|
projectName: z.ZodString;
|
|
21
21
|
moduleName: z.ZodString;
|
|
22
22
|
year: z.ZodOptional<z.ZodString>;
|
|
23
23
|
month: z.ZodOptional<z.ZodString>;
|
|
24
24
|
referDoc: z.ZodOptional<z.ZodString>;
|
|
25
|
-
serviceInterfaceList: z.ZodDefault<z.ZodArray<z.
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
serviceName: string;
|
|
57
|
-
functionDescription: string;
|
|
58
|
-
}[];
|
|
59
|
-
}, {
|
|
60
|
-
id: string;
|
|
61
|
-
serviceType: string;
|
|
62
|
-
serviceEnglishName: string;
|
|
63
|
-
serviceChineseName: string;
|
|
64
|
-
serviceDescription: string;
|
|
65
|
-
interfaceDetailList?: {
|
|
66
|
-
id: string;
|
|
67
|
-
methodName: string;
|
|
68
|
-
serviceName: string;
|
|
69
|
-
functionDescription: string;
|
|
70
|
-
}[] | undefined;
|
|
71
|
-
}>, "many">>;
|
|
72
|
-
designDetailList: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
73
|
-
serviceName: z.ZodString;
|
|
74
|
-
serviceDesc: z.ZodString;
|
|
75
|
-
interfaceDesignDetailList: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
76
|
-
functionName: z.ZodString;
|
|
77
|
-
interfaceDesc: z.ZodString;
|
|
78
|
-
className: z.ZodString;
|
|
79
|
-
methodName: z.ZodString;
|
|
80
|
-
parameterList: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
81
|
-
id: z.ZodString;
|
|
82
|
-
propertyType: z.ZodString;
|
|
83
|
-
propertyName: z.ZodString;
|
|
84
|
-
required: z.ZodString;
|
|
85
|
-
propertyDesc: z.ZodString;
|
|
86
|
-
}, "strip", z.ZodTypeAny, {
|
|
87
|
-
id: string;
|
|
88
|
-
propertyType: string;
|
|
89
|
-
propertyName: string;
|
|
90
|
-
required: string;
|
|
91
|
-
propertyDesc: string;
|
|
92
|
-
}, {
|
|
93
|
-
id: string;
|
|
94
|
-
propertyType: string;
|
|
95
|
-
propertyName: string;
|
|
96
|
-
required: string;
|
|
97
|
-
propertyDesc: string;
|
|
98
|
-
}>, "many">>;
|
|
99
|
-
returnResultList: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
100
|
-
id: z.ZodString;
|
|
101
|
-
propertyType: z.ZodString;
|
|
102
|
-
propertyName: z.ZodString;
|
|
103
|
-
propertyDesc: z.ZodString;
|
|
104
|
-
}, "strip", z.ZodTypeAny, {
|
|
105
|
-
id: string;
|
|
106
|
-
propertyType: string;
|
|
107
|
-
propertyName: string;
|
|
108
|
-
propertyDesc: string;
|
|
109
|
-
}, {
|
|
110
|
-
id: string;
|
|
111
|
-
propertyType: string;
|
|
112
|
-
propertyName: string;
|
|
113
|
-
propertyDesc: string;
|
|
114
|
-
}>, "many">>;
|
|
115
|
-
implementLogic: z.ZodString;
|
|
116
|
-
}, "strip", z.ZodTypeAny, {
|
|
117
|
-
functionName: string;
|
|
118
|
-
interfaceDesc: string;
|
|
119
|
-
className: string;
|
|
120
|
-
methodName: string;
|
|
121
|
-
parameterList: {
|
|
122
|
-
id: string;
|
|
123
|
-
propertyType: string;
|
|
124
|
-
propertyName: string;
|
|
125
|
-
required: string;
|
|
126
|
-
propertyDesc: string;
|
|
127
|
-
}[];
|
|
128
|
-
returnResultList: {
|
|
129
|
-
id: string;
|
|
130
|
-
propertyType: string;
|
|
131
|
-
propertyName: string;
|
|
132
|
-
propertyDesc: string;
|
|
133
|
-
}[];
|
|
134
|
-
implementLogic: string;
|
|
135
|
-
}, {
|
|
136
|
-
functionName: string;
|
|
137
|
-
interfaceDesc: string;
|
|
138
|
-
className: string;
|
|
139
|
-
methodName: string;
|
|
140
|
-
implementLogic: string;
|
|
141
|
-
parameterList?: {
|
|
142
|
-
id: string;
|
|
143
|
-
propertyType: string;
|
|
144
|
-
propertyName: string;
|
|
145
|
-
required: string;
|
|
146
|
-
propertyDesc: string;
|
|
147
|
-
}[] | undefined;
|
|
148
|
-
returnResultList?: {
|
|
149
|
-
id: string;
|
|
150
|
-
propertyType: string;
|
|
151
|
-
propertyName: string;
|
|
152
|
-
propertyDesc: string;
|
|
153
|
-
}[] | undefined;
|
|
154
|
-
}>, "many">>;
|
|
155
|
-
}, "strip", z.ZodTypeAny, {
|
|
156
|
-
serviceName: string;
|
|
157
|
-
serviceDesc: string;
|
|
158
|
-
interfaceDesignDetailList: {
|
|
159
|
-
functionName: string;
|
|
160
|
-
interfaceDesc: string;
|
|
161
|
-
className: string;
|
|
162
|
-
methodName: string;
|
|
163
|
-
parameterList: {
|
|
164
|
-
id: string;
|
|
165
|
-
propertyType: string;
|
|
166
|
-
propertyName: string;
|
|
167
|
-
required: string;
|
|
168
|
-
propertyDesc: string;
|
|
169
|
-
}[];
|
|
170
|
-
returnResultList: {
|
|
171
|
-
id: string;
|
|
172
|
-
propertyType: string;
|
|
173
|
-
propertyName: string;
|
|
174
|
-
propertyDesc: string;
|
|
175
|
-
}[];
|
|
176
|
-
implementLogic: string;
|
|
177
|
-
}[];
|
|
178
|
-
}, {
|
|
179
|
-
serviceName: string;
|
|
180
|
-
serviceDesc: string;
|
|
181
|
-
interfaceDesignDetailList?: {
|
|
182
|
-
functionName: string;
|
|
183
|
-
interfaceDesc: string;
|
|
184
|
-
className: string;
|
|
185
|
-
methodName: string;
|
|
186
|
-
implementLogic: string;
|
|
187
|
-
parameterList?: {
|
|
188
|
-
id: string;
|
|
189
|
-
propertyType: string;
|
|
190
|
-
propertyName: string;
|
|
191
|
-
required: string;
|
|
192
|
-
propertyDesc: string;
|
|
193
|
-
}[] | undefined;
|
|
194
|
-
returnResultList?: {
|
|
195
|
-
id: string;
|
|
196
|
-
propertyType: string;
|
|
197
|
-
propertyName: string;
|
|
198
|
-
propertyDesc: string;
|
|
199
|
-
}[] | undefined;
|
|
200
|
-
}[] | undefined;
|
|
201
|
-
}>, "many">>;
|
|
202
|
-
tableInfoList: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
203
|
-
id: z.ZodString;
|
|
204
|
-
tableName: z.ZodString;
|
|
205
|
-
entityName: z.ZodString;
|
|
206
|
-
tableDescription: z.ZodString;
|
|
207
|
-
tableDetailList: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
208
|
-
id: z.ZodString;
|
|
209
|
-
fieldName: z.ZodString;
|
|
210
|
-
fieldType: z.ZodString;
|
|
211
|
-
fieldDescription: z.ZodString;
|
|
212
|
-
fieldLength: z.ZodString;
|
|
213
|
-
}, "strip", z.ZodTypeAny, {
|
|
214
|
-
id: string;
|
|
215
|
-
fieldName: string;
|
|
216
|
-
fieldType: string;
|
|
217
|
-
fieldDescription: string;
|
|
218
|
-
fieldLength: string;
|
|
219
|
-
}, {
|
|
220
|
-
id: string;
|
|
221
|
-
fieldName: string;
|
|
222
|
-
fieldType: string;
|
|
223
|
-
fieldDescription: string;
|
|
224
|
-
fieldLength: string;
|
|
225
|
-
}>, "many">>;
|
|
226
|
-
}, "strip", z.ZodTypeAny, {
|
|
227
|
-
id: string;
|
|
228
|
-
tableName: string;
|
|
229
|
-
entityName: string;
|
|
230
|
-
tableDescription: string;
|
|
231
|
-
tableDetailList: {
|
|
232
|
-
id: string;
|
|
233
|
-
fieldName: string;
|
|
234
|
-
fieldType: string;
|
|
235
|
-
fieldDescription: string;
|
|
236
|
-
fieldLength: string;
|
|
237
|
-
}[];
|
|
238
|
-
}, {
|
|
239
|
-
id: string;
|
|
240
|
-
tableName: string;
|
|
241
|
-
entityName: string;
|
|
242
|
-
tableDescription: string;
|
|
243
|
-
tableDetailList?: {
|
|
244
|
-
id: string;
|
|
245
|
-
fieldName: string;
|
|
246
|
-
fieldType: string;
|
|
247
|
-
fieldDescription: string;
|
|
248
|
-
fieldLength: string;
|
|
249
|
-
}[] | undefined;
|
|
250
|
-
}>, "many">>;
|
|
251
|
-
}, "strip", z.ZodTypeAny, {
|
|
252
|
-
projectName: string;
|
|
253
|
-
moduleName: string;
|
|
254
|
-
serviceInterfaceList: {
|
|
255
|
-
id: string;
|
|
256
|
-
serviceType: string;
|
|
257
|
-
serviceEnglishName: string;
|
|
258
|
-
serviceChineseName: string;
|
|
259
|
-
serviceDescription: string;
|
|
260
|
-
interfaceDetailList: {
|
|
261
|
-
id: string;
|
|
262
|
-
methodName: string;
|
|
263
|
-
serviceName: string;
|
|
264
|
-
functionDescription: string;
|
|
265
|
-
}[];
|
|
266
|
-
}[];
|
|
267
|
-
designDetailList: {
|
|
268
|
-
serviceName: string;
|
|
269
|
-
serviceDesc: string;
|
|
270
|
-
interfaceDesignDetailList: {
|
|
271
|
-
functionName: string;
|
|
272
|
-
interfaceDesc: string;
|
|
273
|
-
className: string;
|
|
274
|
-
methodName: string;
|
|
275
|
-
parameterList: {
|
|
276
|
-
id: string;
|
|
277
|
-
propertyType: string;
|
|
278
|
-
propertyName: string;
|
|
279
|
-
required: string;
|
|
280
|
-
propertyDesc: string;
|
|
281
|
-
}[];
|
|
282
|
-
returnResultList: {
|
|
283
|
-
id: string;
|
|
284
|
-
propertyType: string;
|
|
285
|
-
propertyName: string;
|
|
286
|
-
propertyDesc: string;
|
|
287
|
-
}[];
|
|
288
|
-
implementLogic: string;
|
|
289
|
-
}[];
|
|
290
|
-
}[];
|
|
291
|
-
tableInfoList: {
|
|
292
|
-
id: string;
|
|
293
|
-
tableName: string;
|
|
294
|
-
entityName: string;
|
|
295
|
-
tableDescription: string;
|
|
296
|
-
tableDetailList: {
|
|
297
|
-
id: string;
|
|
298
|
-
fieldName: string;
|
|
299
|
-
fieldType: string;
|
|
300
|
-
fieldDescription: string;
|
|
301
|
-
fieldLength: string;
|
|
302
|
-
}[];
|
|
303
|
-
}[];
|
|
304
|
-
year?: string | undefined;
|
|
305
|
-
month?: string | undefined;
|
|
306
|
-
referDoc?: string | undefined;
|
|
307
|
-
}, {
|
|
308
|
-
projectName: string;
|
|
309
|
-
moduleName: string;
|
|
310
|
-
year?: string | undefined;
|
|
311
|
-
month?: string | undefined;
|
|
312
|
-
referDoc?: string | undefined;
|
|
313
|
-
serviceInterfaceList?: {
|
|
314
|
-
id: string;
|
|
315
|
-
serviceType: string;
|
|
316
|
-
serviceEnglishName: string;
|
|
317
|
-
serviceChineseName: string;
|
|
318
|
-
serviceDescription: string;
|
|
319
|
-
interfaceDetailList?: {
|
|
320
|
-
id: string;
|
|
321
|
-
methodName: string;
|
|
322
|
-
serviceName: string;
|
|
323
|
-
functionDescription: string;
|
|
324
|
-
}[] | undefined;
|
|
325
|
-
}[] | undefined;
|
|
326
|
-
designDetailList?: {
|
|
327
|
-
serviceName: string;
|
|
328
|
-
serviceDesc: string;
|
|
329
|
-
interfaceDesignDetailList?: {
|
|
330
|
-
functionName: string;
|
|
331
|
-
interfaceDesc: string;
|
|
332
|
-
className: string;
|
|
333
|
-
methodName: string;
|
|
334
|
-
implementLogic: string;
|
|
335
|
-
parameterList?: {
|
|
336
|
-
id: string;
|
|
337
|
-
propertyType: string;
|
|
338
|
-
propertyName: string;
|
|
339
|
-
required: string;
|
|
340
|
-
propertyDesc: string;
|
|
341
|
-
}[] | undefined;
|
|
342
|
-
returnResultList?: {
|
|
343
|
-
id: string;
|
|
344
|
-
propertyType: string;
|
|
345
|
-
propertyName: string;
|
|
346
|
-
propertyDesc: string;
|
|
347
|
-
}[] | undefined;
|
|
348
|
-
}[] | undefined;
|
|
349
|
-
}[] | undefined;
|
|
350
|
-
tableInfoList?: {
|
|
351
|
-
id: string;
|
|
352
|
-
tableName: string;
|
|
353
|
-
entityName: string;
|
|
354
|
-
tableDescription: string;
|
|
355
|
-
tableDetailList?: {
|
|
356
|
-
id: string;
|
|
357
|
-
fieldName: string;
|
|
358
|
-
fieldType: string;
|
|
359
|
-
fieldDescription: string;
|
|
360
|
-
fieldLength: string;
|
|
361
|
-
}[] | undefined;
|
|
362
|
-
}[] | undefined;
|
|
363
|
-
}>;
|
|
25
|
+
serviceInterfaceList: z.ZodDefault<z.ZodArray<z.ZodAny, "many">>;
|
|
26
|
+
designDetailList: z.ZodDefault<z.ZodArray<z.ZodAny, "many">>;
|
|
27
|
+
tableInfoList: z.ZodDefault<z.ZodArray<z.ZodAny, "many">>;
|
|
28
|
+
techSolution: z.ZodOptional<z.ZodAny>;
|
|
29
|
+
businessExceptionList: z.ZodDefault<z.ZodArray<z.ZodAny, "many">>;
|
|
30
|
+
appendix: z.ZodOptional<z.ZodAny>;
|
|
31
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
32
|
+
projectName: z.ZodString;
|
|
33
|
+
moduleName: z.ZodString;
|
|
34
|
+
year: z.ZodOptional<z.ZodString>;
|
|
35
|
+
month: z.ZodOptional<z.ZodString>;
|
|
36
|
+
referDoc: z.ZodOptional<z.ZodString>;
|
|
37
|
+
serviceInterfaceList: z.ZodDefault<z.ZodArray<z.ZodAny, "many">>;
|
|
38
|
+
designDetailList: z.ZodDefault<z.ZodArray<z.ZodAny, "many">>;
|
|
39
|
+
tableInfoList: z.ZodDefault<z.ZodArray<z.ZodAny, "many">>;
|
|
40
|
+
techSolution: z.ZodOptional<z.ZodAny>;
|
|
41
|
+
businessExceptionList: z.ZodDefault<z.ZodArray<z.ZodAny, "many">>;
|
|
42
|
+
appendix: z.ZodOptional<z.ZodAny>;
|
|
43
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
44
|
+
projectName: z.ZodString;
|
|
45
|
+
moduleName: z.ZodString;
|
|
46
|
+
year: z.ZodOptional<z.ZodString>;
|
|
47
|
+
month: z.ZodOptional<z.ZodString>;
|
|
48
|
+
referDoc: z.ZodOptional<z.ZodString>;
|
|
49
|
+
serviceInterfaceList: z.ZodDefault<z.ZodArray<z.ZodAny, "many">>;
|
|
50
|
+
designDetailList: z.ZodDefault<z.ZodArray<z.ZodAny, "many">>;
|
|
51
|
+
tableInfoList: z.ZodDefault<z.ZodArray<z.ZodAny, "many">>;
|
|
52
|
+
techSolution: z.ZodOptional<z.ZodAny>;
|
|
53
|
+
businessExceptionList: z.ZodDefault<z.ZodArray<z.ZodAny, "many">>;
|
|
54
|
+
appendix: z.ZodOptional<z.ZodAny>;
|
|
55
|
+
}, z.ZodTypeAny, "passthrough">>]>;
|
|
364
56
|
};
|
|
365
57
|
handler: (args: any) => Promise<{
|
|
366
58
|
content: {
|
|
@@ -376,5 +68,5 @@ export declare const techSpecGeneratorTool: {
|
|
|
376
68
|
isError?: undefined;
|
|
377
69
|
}>;
|
|
378
70
|
};
|
|
379
|
-
export * from
|
|
71
|
+
export * from "./types";
|
|
380
72
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/tech-spec-generator/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/tech-spec-generator/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAgZxB;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA0CV,GAAG;;;;;;;;;;;;;CAsK1B,CAAC;AAGF,cAAc,SAAS,CAAC"}
|
|
@@ -81,6 +81,134 @@ export interface ServiceInterface {
|
|
|
81
81
|
serviceDescription: string;
|
|
82
82
|
interfaceDetailList: InterfaceDetail[];
|
|
83
83
|
}
|
|
84
|
+
/**
|
|
85
|
+
* 流量估算分析
|
|
86
|
+
*/
|
|
87
|
+
export interface TrafficEstimation {
|
|
88
|
+
description: string;
|
|
89
|
+
qps: string;
|
|
90
|
+
peakQps: string;
|
|
91
|
+
dailyVolume: string;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* 消息队列设计
|
|
95
|
+
*/
|
|
96
|
+
export interface MessageQueueDesign {
|
|
97
|
+
topicName: string;
|
|
98
|
+
description: string;
|
|
99
|
+
producer: string;
|
|
100
|
+
consumer: string;
|
|
101
|
+
messageType: string;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* 数据库拆分设计
|
|
105
|
+
*/
|
|
106
|
+
export interface DatabaseSplitDesign {
|
|
107
|
+
tableName: string;
|
|
108
|
+
splitStrategy: string;
|
|
109
|
+
splitKey: string;
|
|
110
|
+
description: string;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* 分布式事务设计
|
|
114
|
+
*/
|
|
115
|
+
export interface DistributedTransactionDesign {
|
|
116
|
+
sceneName: string;
|
|
117
|
+
transactionType: string;
|
|
118
|
+
participants: string;
|
|
119
|
+
description: string;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* 分布式锁设计
|
|
123
|
+
*/
|
|
124
|
+
export interface DistributedLockDesign {
|
|
125
|
+
lockName: string;
|
|
126
|
+
lockType: string;
|
|
127
|
+
timeout: string;
|
|
128
|
+
description: string;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* 定时任务设计
|
|
132
|
+
*/
|
|
133
|
+
export interface ScheduledTaskDesign {
|
|
134
|
+
taskName: string;
|
|
135
|
+
cronExpression: string;
|
|
136
|
+
description: string;
|
|
137
|
+
executorClass: string;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* 延时任务设计
|
|
141
|
+
*/
|
|
142
|
+
export interface DelayTaskDesign {
|
|
143
|
+
taskName: string;
|
|
144
|
+
delayTime: string;
|
|
145
|
+
description: string;
|
|
146
|
+
triggerCondition: string;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* 缓存使用场景
|
|
150
|
+
*/
|
|
151
|
+
export interface CacheScenario {
|
|
152
|
+
id: string;
|
|
153
|
+
sceneName: string;
|
|
154
|
+
cacheKey: string;
|
|
155
|
+
expireTime: string;
|
|
156
|
+
description: string;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* 缓存方案设计
|
|
160
|
+
*/
|
|
161
|
+
export interface CacheDesign {
|
|
162
|
+
constraint: string;
|
|
163
|
+
cacheScenarioList: CacheScenario[];
|
|
164
|
+
designDescription: string;
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* 技术方案 - 第6章
|
|
168
|
+
*/
|
|
169
|
+
export interface TechSolution {
|
|
170
|
+
trafficEstimation: TrafficEstimation | null;
|
|
171
|
+
messageQueueList: MessageQueueDesign[];
|
|
172
|
+
databaseSplitList: DatabaseSplitDesign[];
|
|
173
|
+
distributedTransactionList: DistributedTransactionDesign[];
|
|
174
|
+
distributedLockList: DistributedLockDesign[];
|
|
175
|
+
scheduledTaskList: ScheduledTaskDesign[];
|
|
176
|
+
delayTaskList: DelayTaskDesign[];
|
|
177
|
+
cacheDesign: CacheDesign | null;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* 业务异常处理项
|
|
181
|
+
*/
|
|
182
|
+
export interface BusinessExceptionItem {
|
|
183
|
+
id: string;
|
|
184
|
+
sceneName: string;
|
|
185
|
+
exceptionType: string;
|
|
186
|
+
handleStrategy: string;
|
|
187
|
+
description: string;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* 异常码信息 - 用于 exceptionCodeList 循环
|
|
191
|
+
*/
|
|
192
|
+
export interface ExceptionCode {
|
|
193
|
+
id: string;
|
|
194
|
+
exceptionCode: string;
|
|
195
|
+
exceptionDescription: string;
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* 码值信息 - 用于 codeValueList 循环
|
|
199
|
+
*/
|
|
200
|
+
export interface CodeValue {
|
|
201
|
+
id: string;
|
|
202
|
+
propertyName: string;
|
|
203
|
+
codeValue: string;
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* 附录 - 第8章
|
|
207
|
+
*/
|
|
208
|
+
export interface Appendix {
|
|
209
|
+
exceptionCodeList: ExceptionCode[];
|
|
210
|
+
codeValueList: CodeValue[];
|
|
211
|
+
}
|
|
84
212
|
/**
|
|
85
213
|
* 技术规格说明书完整数据结构
|
|
86
214
|
* 模板占位符对应关系:
|
|
@@ -92,6 +220,9 @@ export interface ServiceInterface {
|
|
|
92
220
|
* - {#serviceInterfaceList}...{/serviceInterfaceList} - 服务接口列表循环
|
|
93
221
|
* - {#designDetailList}...{/designDetailList} - 设计详情列表循环
|
|
94
222
|
* - {#tableInfoList}...{/tableInfoList} - 数据表信息列表循环
|
|
223
|
+
* - {#techSolution}...{/techSolution} - 技术方案相关
|
|
224
|
+
* - {#businessExceptionList}...{/businessExceptionList} - 业务异常处理列表
|
|
225
|
+
* - {#appendix}...{/appendix} - 附录相关
|
|
95
226
|
*/
|
|
96
227
|
export interface TechSpecData {
|
|
97
228
|
projectName: string;
|
|
@@ -102,6 +233,9 @@ export interface TechSpecData {
|
|
|
102
233
|
serviceInterfaceList: ServiceInterface[];
|
|
103
234
|
designDetailList: DesignDetail[];
|
|
104
235
|
tableInfoList: TableInfo[];
|
|
236
|
+
techSolution?: TechSolution;
|
|
237
|
+
businessExceptionList?: BusinessExceptionItem[];
|
|
238
|
+
appendix?: Appendix;
|
|
105
239
|
}
|
|
106
240
|
/**
|
|
107
241
|
* 代码分析结果
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/tech-spec-generator/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,gBAAgB,EAAE,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,aAAa,EAAE,CAAC;IAC/B,gBAAgB,EAAE,gBAAgB,EAAE,CAAC;IACrC,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB,EAAE,qBAAqB,EAAE,CAAC;CACpD;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,eAAe,EAAE,CAAC;CACxC;AAED
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/tech-spec-generator/types.ts"],"names":[],"mappings":"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"}
|
|
Binary file
|