For the complete documentation index, see llms.txt. This page is also available as Markdown.

JavaScript SDK 17.6.0

2026年9月17日リリース

lightbulb-exclamation-on

cachingPostFunction の削除 (Node): createCachingFunction(storage, options?) に置き換えられました。cachingPostFunction を直接呼び出していた場合は、新しい関数に切り替え、作業ディレクトリ内にある古い平文キャッシュファイルを削除してください。

更新内容

  • KSM-1209: すべてのネットワーク呼び出し (クエリ、ファイルのアップロード、ファイルのダウンロード) に、上限付きで設定可能なリクエストタイムアウトを追加。SecretManagerOptions の requestTimeoutMs (デフォルト30秒) で設定できます。downloadFile、downloadThumbnail、uploadFile では、呼び出しごとに timeoutMs を指定してこの値を上書きすることも可能です。タイムアウトが発生した場合、呼び出しは適用されたタイムアウト値を示す KeeperError で拒否されます。

  • KSM-1073: pamDatabase レコードの pamSettings.connection に dbConnectionMethod フィールドが欠落していた不具合を修正。

  • KSM-1079: 応答内のフォルダのキーが破損または欠落している場合に getFolders() がクラッシュしていた不具合を修正。復号できないフォルダはスキップされるようになりました。

  • KSM-1084: サーバーが一部のUIDを拒否した場合でも deleteSecret() および deleteFolder() が成功として扱われていた不具合を修正。アイテム単位のサーバーエラーメッセージが呼び出し元に伝わるようになりました。

  • KSM-748: 共有フォルダ内でコマンダーまたはボルトUIから作成されたレコードが、getSecrets() で取得されずに欠落していた不具合を修正。

  • KSM-1035: スロットリングのリトライのジッターが、両側 (±25%) ではなく一方向 (0~+25%) になりました。また、サーバーから提供される retry_after の上限が176秒になりました。

  • KSM-1128: postQuery 内のサーバー鍵ローテーションのリトライが無期限ではなく、最大3回に制限されました。また、サーバーが提示する鍵IDは、保存前に検証されるようになりました。

  • KSM-1254: Nodeプラットフォームの hash() が tag パラメータを無視していた不具合を修正。

  • KSM-1332: ブラウザのIndexedDBストレージが、ストレージ障害発生時に拒否されず無期限にハングしていた不具合を修正。

  • KSM-1251: 応答本文が1000バイトを超える場合に、スロットリングおよび鍵ローテーションの検出処理が解析に失敗し、その応答に対するリトライが行われなくなっていた不具合を修正。

  • KSM-1297: サーバーから提供されるフォルダの親情報に循環参照がある場合、getSharedFolderUid() が無期限にハングし、イベントループやブラウザタブ全体をブロックしていた不具合を修正。循環が閉じるフォルダの名前を示す、分かりやすいエラーが送出されるようになりました。

  • KSM-1342: 大容量ファイル (おおむね75MB以上) のダウンロードが、誤ったタイムアウトで失敗する不具合を修正。原因は、新しいリクエストタイムアウトの追跡処理が、ネットワークチャンクを受信するたびに応答バッファ全体をコピーし直していたことでした。チャンクは、応答が完了した時点で一度だけ結合されるようになりました。

  • KSM-1351: hasEncryptedData() および hasReadableData() が、暗号化済みの実データを約128回に1回の割合で未暗号化と誤判定していた不具合を修正。どちらの関数も、デコード後の先頭1文字を確認するだけではなく、実際にJSONとして解析できるかどうかを確認するようになりました。

  • KSM-1395: 本番バックエンドに対してスロットリングのリトライが一度も発生しない不具合を修正。リトライの判定処理はHTTP 403のみを確認していましたが、バックエンドは2026年6月15日以降、スロットリングされたシークレットマネージャーのリクエストに対してHTTP 429を返すようになっていました。判定処理は403と429の両方を受け付けるようになりました。

  • KSM-1265: 互換性に影響 (Nodeのみ): キャッシュキーを保護対象データと同じ場所に平文で保存していた cachingPostFunction を、createCachingFunction(storage, options?) に置き換えました。キャッシュはアプリキーから導出した鍵で暗号化され、改ざん検知用の認証も行われるようになり、デフォルトでは ~/.keeper/ksm-cache.dat に保存されます。詳しくは、本ページ先頭の互換性に関する注記をご参照ください。

  • KSM-1266: localConfigStorage が、破損・読み取り不可・形式不正な構成ファイルを暗黙的に「構成がまだ存在しない」として扱っていた不具合を修正。これらの場合には、型付きの KeeperStorageError (可能な場合はファイルシステムのエラーコードを含む) が送出されるようになり、構成ファイルの書き込みはアトミックに行われるようになりました。

  • KSM-1267: getFolders() が、復号できずにスキップしたフォルダの原因を分類し、対象のフォルダ名を記載した概要ログを出力するようになりました。SecretManagerOptions に追加された任意の onDecryptionError コールバックにより、呼び出し元は部分的な結果に対して独自の処理を行ったり、処理を中断させたりできます。

  • KSM-1263: 構成ファイルおよびキャッシュファイルの権限が、ファイル作成時だけでなく、書き込みごとに再適用されるようになりました。

  • KSM-1256、KSM-1255: 保存されている serverPublicKeyId が組み込みの鍵テーブルに存在しない場合、それ以降のすべてのリクエストが永続的にブロックされていた不具合を修正。デフォルトの鍵に自動的に復旧するようになりました。また、変更がない場合に serverPublicKey / serverPublicKeyId を呼び出しごとに再保存する処理を停止し、同時実行中のリクエストによって鍵とIDの組み合わせが不整合な状態で保存される競合状態を解消しました。カスタムの serverPublicKey を指定する場合は、同じ呼び出しで必ず serverPublicKeyId も指定する必要があります。

リソース

最終更新