refactor(issue-body): 工作包的歸屬判準收成一個函式

wp-extract 與 wp-list 都在問「這顆工作包掛在哪顆需求底下」。規則寫兩份,
某天只會有一邊被改到,而分岔的樣子是「清單裡看得到、抽取卻說不是」。
順手把測試裡兩種取段落的寫法統一,並刪掉沒有人傳過的參數。

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-17 18:19:33 +08:00
co-authored by Claude Opus 5
parent a5f36ed14c
commit 03ce382220
5 changed files with 24 additions and 11 deletions
+13
View File
@@ -182,6 +182,19 @@ export function referencedIndex(sections, name, label) {
return null;
}
/**
* 工作包掛在哪一顆需求議題底下:關聯段落的 `需求議題:#7`。
*
* 這是「這顆議題是不是工作包、屬於誰」的唯一判準,抽取(wp-extract)與清單(wp-list)
* 共用同一個函式。兩邊各寫一次也跑得起來,但歸屬規則一旦有兩份,某天只會有一邊被改到,
* 而分岔的樣子是「清單裡看得到、抽取卻說不是」——那種不一致沒有人看得懂。
* @param {Map<string, string>} sections
* @returns {number|null} 沒填或不是工作包時為 null
*/
export function requirementIndex(sections) {
return referencedIndex(sections, '關聯', '需求議題');
}
/**
* 在段落裡找出「標籤:數字」那一行的數字,例如關聯段落的 `估算人天:3`。
* 與 referencedIndex 同形狀,差別只在這裡要的是數量而非議題編號,所以認小數。