本卡屬 FR-095(母卡見本 arc README front matter),第 1 棒 P1:專案成員新增/移除/角色指派+守門入口+掛載契約(jedi 套件 repo)。只掃不修

這一棒在做什麼(白話)

「誰是這個專案的成員、他是管理者還是只能看、誰負責哪個控制項」——這一棒掃的是管理這些名冊的 API(新增成員、移除成員、改角色、查名冊)從網址進來、到「檢查你有沒有資格改名冊」的那段路,以及所有守門共用的那個入口(participant/common/guard.py)與套件掛進主專案的契約(plugin/)。共 39 檔(30 支主檔+9 支 DTO,DTO 就是「API 收進來/回出去的資料長什麼樣」的定義檔)。只找問題、不修問題。

為什麼切這一塊

這是整個 arc 門檻最低的一組:五支「讀名冊」的端點只驗登入,專案編號由呼叫端自己填,程式直接拿去查、不問「你是不是這個專案的人」——登入+知道任一專案編號就能讀走別家客戶的成員名單(帳號、角色、部門)。而 common/guard.py 是六支成員服務共用的守門入口,只有把入口和六支服務放同一棒,才看得出「誰有接、誰沒接、接了但條件式繞過」

重點看什麼

這些是首腦讀過程式碼後認為最容易出事的地方,是思考起點不是檢查清單。每條後面的「首腦核對」是首腦親自開檔的結果——✅ 屬實的不必重做核對,直接當錨點追下去;標「待 runner 核對」的才要你自己開檔確認。工具沒答的自己開檔查了再寫,標明「(工具未報,人工查證)」:

已知背景(只是參照,不當本棒發現)

授權判定怎麼流(首腦 2026-09-14 開檔核對,行號可直接打開):