本卡屬 FR-088(母卡見 FR-088 母案),第 5 棒 H4:主專案 1,559 行的流程執行 service、DI 接線、向 AI 儀表板申報的查詢 API、控制項對應表(BE repo)。只掃不修

這一棒在做什麼(白話)

流程「跑起來」的所有事——啟動一個稽核流程、建立每個任務、任務完成後決定下一個是誰、寄通知、把任務跟控制項對起來——全在主專案這支 1,559 行的 service 裡,套件只提供零件。這一棒掃這支 service 與它的接線共 21 檔:守門有沒有每條路都包住、向 AI 儀表板申報的查詢有沒有漏租戶過濾、通知內容會不會外洩。只找問題、不修問題。

為什麼切這一塊

H2 掃的是入口,這一棒是入口後面的實作:守門函式 assert_project_participant 與反查鏈都住在這裡;而且這支 service 把三支查詢 API 申報給了 AI 儀表板(FR-083 D2 證實那條路 27 支零守門),其中兩支是 **kwargs 形狀(FR-079 F13 證實過這種形狀會讓租戶過濾被默默丟掉)。

重點看什麼

行號已開檔核對,是思考起點不是檢查清單:

已知背景(只是參照)