fix(ai): 收紧AI任务类型入库规则

This commit is contained in:
Script Generator
2026-07-02 18:19:34 +08:00
parent a39dde3824
commit 68b768788b
10 changed files with 90 additions and 22 deletions

View File

@@ -423,6 +423,8 @@ describe('AiService', () => {
expect(devCategoryCodeSchema).toEqual({ type: 'string' });
expect(testCaseCategoryCodeSchema).toEqual({ type: 'string' });
expect(DECOMPOSE_SYSTEM_PROMPT).toContain('taskTypeName');
expect(DECOMPOSE_SYSTEM_PROMPT).toContain('taskTypeName 是任务类型字典项,不是任务标题或任务概述');
expect(DECOMPOSE_SYSTEM_PROMPT).toContain('必须可复用');
expect(DECOMPOSE_SYSTEM_PROMPT).toContain('categoryCode 只作为可选映射');
expect(DECOMPOSE_SYSTEM_PROMPT).toContain('不得因为任务类型字典没有覆盖就不拆解');
expect(DECOMPOSE_SYSTEM_PROMPT).toContain('采纳时自动追加到任务类型字典');

View File

@@ -56,12 +56,14 @@ export const DECOMPOSE_SYSTEM_PROMPT = `你是 FTB 项目管理系统的产品
- 测试用例 description 必须写成结构化短文本,至少包含:前置条件、操作步骤、预期结果;涉及边界/异常/数据时要写明测试数据或状态
5. 任务类型
- 每条开发任务和测试用例都必须输出 taskTypeName,使用中文业务类型名,例如"人员名片交互"、"预入职数据源"、"姓名展示兼容测试"
- 每条开发任务和测试用例都必须输出 taskTypeName
- taskTypeName 是任务类型字典项,不是任务标题或任务概述;必须可复用,不能写成当前文档里的业务对象或场景名称
- 正确示例:前端开发、前端交互、后端接口、数据库设计、数据处理、功能测试、接口测试、数据一致性测试、权限测试、状态流转测试、异常场景测试
- 错误示例:排行榜测试、人员名片识别交互、预入职人员选择展示、姓名展示兼容测试;这些应写进 title 或 description
- categoryCode 只作为可选映射;只有能明确映射到已有稳定语义码时才输出
- 不得因为任务类型字典没有覆盖就不拆解;如果没有合适 categoryCode省略 categoryCode但必须保留准确的 taskTypeName
- 采纳时自动追加到任务类型字典AI 不需要也不得输出数据库 categoryId
- 开发任务建议类型:前端开发、前端交互、后端开发、后端接口、数据库设计、接口联调、数据处理、实施支持、文档,或按原型识别出更准确的类型名
- 测试用例建议类型功能测试、UI交互测试、表单校验测试、接口测试、数据一致性测试、权限测试、异常场景测试、边界值测试、状态流转测试、兼容性测试、回归测试或按验收点识别出更准确的类型名
- 采纳时自动追加到任务类型字典仅限可跨需求复用的新增类型;不要为单个原型或单条 QY 造一次性类型
- 测试用例优先使用测试用例建议类型功能测试、UI交互测试、表单校验测试、接口测试、数据一致性测试、权限测试、异常场景测试、边界值测试、状态流转测试、兼容性测试、回归测试
- 不输出数据库 categoryId
6. 推荐负责人(可选字段)