agent が複数の sf コマンドを並列実行したとき、OAuth token の refresh と保存が同時に走ることがありました。特に macOS Keychain では duplicate item のような保存エラーになる可能性がありました。
変わったこと
- OAuth token refresh を token store key ごとに直列化しました
- 先に別コマンドが refresh 済みの場合、待機後に token を再読込してその token を使います
- macOS Keychain / Linux keychain / Windows file store のどの保存先でも、同じ token store key の refresh 書き込みが同時に走らないようになりました
- macOS Keychain の duplicate item エラーは既存 token を置き換えて復旧します
通常の利用手順は変わりません。sf login --base-url https://signal-foundry.app のあと、agent が sf credits balance --json や sf company search ... --json を並列に実行しても、refresh が必要なときは CLI 側で安全に待ち合わせます。