Consistency Audit: rough-cut-scheduler / functional-spec
- 修改文件:rough-cut-scheduler.fp.md
- 修改日期:2026-06-09
- 編輯者:Alan
- Diff 摘要:因 requirement 新增 #17(節拍點機台 eligibility),FS 引入「節拍點多機台(棋盤)+ eligibility」模型——UC A1(前置條件產能下沉機台×日、行為步驟加 eligible 機台佔用、預期結果輸出不含機台、例外路徑加 §RCS-FS-16
§RCS-FS-19)、流程圖圖 1 加 eligibility 分支、新增 eligibility I/O 場景、新增 §RCS-FS-16§RCS-FS-19、覆蓋對照加 #17、待裁定加 Q6/Q7;§RCS-FS-18 於本輪 audit 中再介面化為ResourceAllocationStrategy(defaultIdAscendingStrategy)。狀態改「待重新簽核」。 - Audit 觸發時點:簽核前(FS 原已簽核、本次為 mid-stage edit,重新簽核前比對)
註:本次為 Path A(Stage 1 揭露 #17)觸發的 Stage 2 更新;因 FS 原已簽核,依專案慣例在重新簽核前跑本 audit。上游驅動文件
requirement/rough-cut-scheduler/index.md(含新raw/2026-06-08-內部PO-節拍點資源適用性.md)走 A 路徑、本身不在此 audit。同次工作目錄另有兩處與本 feature 無關的改動,不納入本 audit:ooa/rough-cut-scheduler.md(僅一個Map<...>渲染 typo)、product-module-development-workflow.md(Stage 4 性質定義措辭釐清)。
上游一致性
| 項目 | 狀態 | 說明 |
|---|---|---|
| Problem Statement 範圍 | ✅ | Problem statement=「快速拉動的粗排引擎、評估交期、細排 input、避免單體」。eligibility 讓「交期評估」對受限零件更準(不被總產能高估),落在「評估交期」範圍內,未擴張 problem。 |
| 需求收斂結論範圍 | ✅ | index.md 收斂結論(本次同步新增)「已定向」明列:eligibility 採 C 方案、產能下沉至資源(機台)×日、純機台硬綁延後、粗排不指派實際機台/時段。FS 的棋盤模型、機台×日內部記帳、不輸出機台、§RCS-FS-18 策略 default、硬綁延後(待裁定 Q7)逐項對齊,未自行拍板結論列為「仍待 Stage 2」的點。 |
| Requirement 素材覆蓋 | ✅ | 主體被 #17/素材 #5 覆蓋。§RCS-FS-18 原為「固定機台序(id 小先)」這個 requirement 未明寫的具體 tie-break;經裁定(見下「需討論項目」)抽象為 ResourceAllocationStrategy 介面、本期 default=IdAscendingStrategy(=現行 id 小先行為、悲觀下界),MostConstrainedFirstStrategy 登記為 Stage 3 才實作。本期 scope 維持 #17「最佳化延後 Stage 3」,故收 ✅。 |
| 既有素材矛盾 | ✅ | 與 raw #5 原話(PartB 只能上 LA02、找符合製程-工作站的資源)一致。FS 把舊「節拍點一次只做一張單」重述為棋盤模型 N=1 的退化——此推翻由 #17 明文授權(多機台為新領域事實),非與既有素材矛盾。 |
需討論項目
⚠️ 集中於此,由人裁定。本輪已於 audit 過程裁定收口,留紀錄。
§RCS-FS-18「固定機台序(id 小先)」是 requirement 未明寫的具體 tie-break,且此 tie-break 會左右受限零件的 LeanPlay/交期(非純內部記帳)——本期此 default 是否可接受?是否需回問 stakeholder?→ 已裁定(2026-06-09,Alan):抽象為ResourceAllocationStrategy介面(與既有LeadTimeStrategy同模式、OCP),把「機制可插拔」與「本期出貨哪個策略」拆開。本期 default=IdAscendingStrategy(悲觀下界),MostConstrainedFirstStrategy(受限資源優先)介面已就位、實作延後 Stage 3。因 default=現行 id 小先行為,現有 I/O 範例與 validate 結果不變。本期 scope 與 #17 一致,收 ✅、不需回問 stakeholder。FS §RCS-FS-18 + 待裁定 Q6 已於本輪同步落地此語意。
矛盾項目
(無)
下游影響
| 下游文件 | 受影響章節 | 行動 |
|---|---|---|
| domain-model.ooa.md | AvailableCapacity/CapacitySlot(鍵=工作站×日) | 需更新 |
| rough-cut-scheduler.ooa.md | CapacityOverlay(WorkCenterDay 鍵、isAvailable=二元一次一單 D5) | 需更新 |
| rough-cut-scheduler.ooa.md | VSMNode/DataBox(需帶 eligible 機台集合) | 需更新 |
| rough-cut-scheduler.ooa.md | (新增)ResourceAllocationStrategy 介面 + IdAscendingStrategy default | 需更新 |
| rough-cut-scheduler.ooa.md | (新增)NoEligibleResourceError 例外(§RCS-FS-19) | 需更新 |
| rough-cut-scheduler.pseudo.md | 定錨/有限產能堆疊流程(對應圖 1)、產能鍵工作站×日 | 需更新(§編號 append-only,新分支加新 §、不重編) |
| rough-cut-scheduler.pseudo.md | §RCS-FS-18 策略 hook/§RCS-FS-19 例外分支覆蓋 | 需重看 |
Code(.java) | 無(Stage 5 尚未產生) | — |
行動標籤定義見
workflow.md§步驟 5。下游更新由該階段的 partner skill 執行,本 audit 不開處方。特別提示:
ooa/rough-cut-scheduler.md本次 diff 僅含一個Map<...>渲染 typo;eligibility 的實質更新尚未進行,OOA 現為落後於 FS 的 stale 狀態(仍是工作站×日/一次一單)。此非 ❌(FS 對上游 requirement 一致;OOA 落後屬正常 cascade 待辦),但 reviewer 勿誤讀「OOA 被碰過」為「已對齊新 FS」。- 產能鍵下沉觸及共用領域物件
ooa/domain-model.md,blast radius 溢出本 feature;更新時需一併檢視其他消費方與既有audit/domain-model-2026-06-05-fs.md。requirement #17 已明標此下沉屬 Stage 3。
建議行動清單
- 裁定 §RCS-FS-18 tie-break:介面化
ResourceAllocationStrategy、defaultIdAscendingStrategy、MostConstrainedFirst延後 Stage 3(⚠️1,已收 ✅) - 將 §RCS-FS-18 介面化語意落地 FS(§RCS-FS-18 邊界條件列 + 待裁定 Q6)
- Reviewer 重新簽核 rough-cut-scheduler.fp.md,並把頂部「狀態」改回「已簽核」
- 開 object-oriented-analysis-partner 更新 domain-model.ooa.md:產能鍵工作站×日 → 資源(機台)×日
- 開 object-oriented-analysis-partner 更新 rough-cut-scheduler.ooa.md:
CapacityOverlay支援 N 台並行 + eligible 子集、VSMNode 帶 eligible 機台集合、新增ResourceAllocationStrategy/IdAscendingStrategy、新增NoEligibleResourceError - 開 pseudo-code-partner 更新 rough-cut-scheduler.pseudo.md:append 新 § 涵蓋 §RCS-FS-16~§RCS-FS-19 分支、產能扣減下沉機台×日(勿重編既有 §)
統計
- ✅ 4 | ⚠️ 1(已裁定收 ✅) | ❌ 0
- 下游受影響點:6 需更新 + 1 需重看(橫跨
ooa/domain-model.md、ooa/rough-cut-scheduler.md、pseudo-code/rough-cut-scheduler.md);Code 無 - 簽核擋判定:不擋(❌ = 0)
簽核
- 編輯者已跑過 audit:Alan / 日期 2026-06-09
- AI 產出 Impact Report:consistency-audit skill / 2026-06-09
- Reviewer 確認:Alan / 日期 2026-06-09
❌ 項目未處理前,本 audit 不應該簽核通過(本輪 ❌ = 0)。 上游階段文件(
functional-spec/rough-cut-scheduler.md)的 Exit Gate 重新簽核應在本 audit 確認後進行;下游 cascade(OOA/pseudo-code)於 FS 重新簽核後再開對應 partner skill。