本卡屬 FR-187(母卡 CM-3711),第 2 批 C:金鑰登記簿、Agent 授權照開通、註冊碼管理(主系統 repo compliance-manager-be,9 檔/約 822 行)。只掃不修。工作坊會用 .claude/workshop-prompts/dispatch-<本卡號>.md 當開場 prompt 直接啟動掃描,小弟不必自己打指令。

這一棒在做什麼(白話)

用 Claude Code 官方 claude-security plugin 掃「金鑰登記簿、Agent 授權照開通、註冊碼管理」這一塊,找出資安問題,寫成 PM 與新手工程師都看得懂的報告。只找問題、不修問題,修是另外開卡的事。

三件事:①FR-171 的金鑰登記簿(主系統用哪幾把鑰匙簽發給 Agent 的通行證,可以新增、啟用、撤銷);②FR-182 Agent 授權照線上開通(Agent 帶註冊碼來,主系統代它向 License Center 開通);③註冊碼的產生與撤銷。

為什麼切這一塊

登記簿是全部 Agent 的信任根:誰能換鑰匙,誰就能讓所有 Agent 改信他的鑰匙。授權照開通是不需登入的入口,任何人只要有一把註冊碼就能打。

背景:這一輪掃的是 2026-11-01(FR-172 開案)到 11-09 之間主專案與 jedi-remote-agent 新寫或大改的程式(FR-171/172/178/179/180/181/182),這些程式都沒掃過。

掃描範圍(scope,與開場 prompt 的 --scope 一致)

core/plugins/_agent_keys.py
app/remote_agent/service/trust_anchor_service.py
api/remote_agent/routes/trust_anchor_route.py
domain/remote_agent/trust_anchor_domain_service.py
infra/remote_agent/trust_anchor_repo_impl.py
core/trust_anchor_bootstrap.py
app/remote_agent/service/agent_license_activation_service.py
api/remote_agent/routes/agent_license_route.py
api/remote_agent/routes/agent_enroll_token_route.py

檔數 9、約 822 行。驗檔數:git -C <工作目錄> ls-files -- core/plugins/_agent_keys.py app/remote_agent/service/trust_anchor_service.py api/remote_agent/routes/trust_anchor_route.py domain/remote_agent/trust_anchor_domain_service.py infra/remote_agent/trust_anchor_repo_impl.py core/trust_anchor_bootstrap.py app/remote_agent/service/agent_license_activation_service.py api/remote_agent/routes/agent_license_route.py api/remote_agent/routes/agent_enroll_token_route.py | wc -l 應為 9。scope 外的檔不要讀,除非下面「重點看什麼」明寫「只追這幾行」;越界的發現首腦驗收時會挑掉。

重點看什麼

首腦讀過程式碼後認為最容易出事的地方,是思考起點不是檢查清單,行號以 2026-11-09 的主線為準,對不上就以內容為準。工具不會照這份走,掃完後你要自己逐條對一遍:工具沒報的,開檔看一眼,寫「人工查過:成立/不成立/為什麼」。

已知背景