fix(ai): 拆解原型无需求ID任务

This commit is contained in:
Script Generator
2026-07-01 13:33:04 +08:00
parent 24e8635a94
commit 756621d366
23 changed files with 371 additions and 45 deletions

View File

@@ -0,0 +1,42 @@
import test from 'node:test';
import assert from 'node:assert/strict';
import { resolveDecomposeDraftRequirementFields } from './ai-decompose-adoption';
const requirements = [
{ id: 'req-1', code: 'REQ001', title: '案例分享基础功能' },
{ id: 'req-2', code: 'REQ002', title: '排行榜' },
];
test('keeps prototype-only drafts out of formal requirements during adoption', () => {
const result = resolveDecomposeDraftRequirementFields(
{
requirementName: '预入职人员支持',
references: [{ type: 'prototype_note', id: 'QY0020', label: 'QY0020' }],
},
requirements,
);
assert.deepEqual(result, {
requirementId: '',
requirementName: '预入职人员支持',
});
});
test('maps formal requirement references by code during adoption', () => {
const result = resolveDecomposeDraftRequirementFields(
{
requirementName: '不应覆盖正式需求',
references: [
{ type: 'requirement', id: 'REQ002', label: 'REQ002 排行榜' },
{ type: 'prototype_note', id: 'QY0030', label: 'QY0030' },
],
},
requirements,
);
assert.deepEqual(result, {
requirementId: 'req-2',
requirementName: undefined,
});
});