連接了幾個 AI 服務,登入資料會不會到處跑?
FinchStory 可以連接不同的 AI 服務,但這不代表每個地方都應該看到你的登入資料。0.1.161 重新收緊了這些資料可以去哪裏、誰可以拿到。
連接多個 AI 服務時,FinchStory 現在更嚴格限制登入憑據可以被誰看到:每個執行環節只取得目前工作真正需要的資料。
FinchStory 需要同時處理介面、Worker、不同 Runtime 和 Provider。安全邊界的目標不是讓每一層都接觸完整憑據,而是只把完成目前工作真正需要的資料交給對應元件。
Renderer 不再讀取完整 Provider secret
從 0.1.161 開始,Renderer 不再具備讀取或 Reveal 完整 Provider secret 的能力。Worker 環境也改為最小權限,只注入目前模型和 Runtime 真正需要的變數。
DeepSeek child process 不再繼承完整 process.env。Codex proxy 也只會在 Codex,或 Pi + ChatGPT 這類確實需要的情況下注入。
長期憑據和短期憑據進一步分開
Codex refresh token 繼續由 Codex 自己管理;Pi 只能取得完成目前工作所需的短期 access credential,而不是長期 refresh token。
日誌脫敏開始區分「真正的 secret」和普通文字
日誌、journal、trace、turn state/event、project history、support 等邊界統一接入 Credential Redactor。同時,canonical product state 和 observability 的脫敏策略也明確分開。
已經識別出的真正 secret 會繼續刪除;普通的 token、password、secret 文字,以及程式碼或文件裏的示例,不會再因為看起來像憑據就被錯誤改寫。
安全隔離不是「看到 secret 這個字就刪掉」,而是讓真正的憑據只存在於真正需要它的位置。
這次調整沒有改變現有 Role 產品語意、角色建立體驗和 Provider 支援範圍。完整測試提升到 378 項。