Jewelry AI・アカウント

この端末でのサインアウトは、この端末の後始末でもあります

別の端末のセッションを終わらせることと、いま目の前にあるセッションを終わらせることは、別の操作です。この端末でのサインアウトはアカウントの範囲を超えて働きます。端末にキャッシュされた生成画像の削除を試み、端末のGoogleセッションを終了するため、次回のサインインはアカウントの選択画面から始まります。

同じ言葉が三つの操作を指しています

どれを行ったかによって、手元の端末で何が起きたか、そして失敗が表示されたかどうかが決まります。

一覧から別の端末のセッションを終了する。
その端末が外れます。手元の端末はセッションも端末内のデータもそのまま保ちます。
一覧から自分自身のセッションを終了する。
これは通常のサインアウトの流れを通り、端末内のデータの消去も一緒に行われます。自分の項目に対して単一セッションの取り消し要求が別途送られることはありません。サインアウトがすでにその役割を果たしているためです。
すべての端末からサインアウトする。
端末側のサインアウトは完了し、サーバー側の失敗は吸収されずに画面へ渡されます。通常のサインアウトは逆で、そのようなエラーを飲み込みます。端末側の後始末だけで十分だと扱われているためです。

サインアウトとともにこの端末から出ていくもの

アカウントのセッションを終わらせること以外に、端末側では二つのことが起きます。端末にキャッシュされた生成画像が消去され、端末のGoogleセッションが終了されます。

前者が最も効いてくるのは、共有したり売却したりする端末です。サインアウト時にキャッシュを消す狙いは、前の利用者の生成画像を、次に手に取る人のために端末へ残さないことにあります。

同じ端末側の後始末は、アカウントを削除したときにも実行されます。削除の手順そのものと、それがサーバーで伴うすべてのことは、別のページの領分です。

端末のGoogleセッションは終了されます。Apple側に対応する処理はありません

サインアウトの一部として、アプリは端末自身のGoogleセッションを終了します。目に見える結果は次回のサインインに現れます。「Googleで続ける」は、以前使っていたアカウントを復元するのではなく、アカウントの選択画面を開きます。

共有端末でのサインアウトが、次にアプリを開く人にとって意味を持つのは、この動作があるからです。

これはGoogleにのみ当てはまります。Apple側に同等の端末内の後始末の呼び出しはなく、このページもそれがあるとは述べません。

端末の一覧の読み方、読み込めないときも含めて

一覧も他と同じ一つの画面であり、それ自体が失敗することがあります。

読み込みの失敗は再試行とともに知らされます。
他にセッションがないと誤解されかねない空の一覧ではなく、エラーが表示され、もう一度試す機会が与えられます。
古いセッションはラベルを持たないことがあります。
その場合はプラットフォームから読める名前が作られるため、見覚えのない項目があること自体は、自分のものではないセッションの証拠にはなりません。
自分自身の項目だけは、他と動作が異なります。
終了すれば、端末側の後始末を伴う通常のサインアウトになります。他人の項目を終了した場合は、その端末が外れるだけです。

この端末を手放す前に

各項目は上で述べた動作に対応するものであり、一般的な助言ではありません。

  • 他の場所からセッションを外すだけにせず、端末そのものでサインアウトし、端末側の後始末をその場で走らせる。
  • そのあとにアプリを一度開き、「Googleで続ける」がアカウントの選択画面を出すことを確認する。
  • キャッシュされた生成画像は消去が試みられた状態として扱い、その画像が重要な端末では実機で確認する。
  • すべての端末からのサインアウトを使った場合は、他のセッションを閉じたと記録する前に、サーバーのエラーが出ていないか確かめる。
  • 端末の一覧に見覚えのない項目があっても、侵入者の証拠とは読まない。ラベルのない古いセッションはプラットフォームから名付けられる。

このページが他のページに委ねること、そして述べられないこと

  • セッションの有効期間、更新の間隔、失効のタイミング。この種の数値はクライアントからは読み取れません。
  • セッションが失効させられたときサーバーが何をするか、そして外された端末がその瞬間に何を体験するか。
  • アカウント削除の手順と、削除がサーバーで何をするか。手順は別のページが扱い、サーバー側はこの画面の範囲の外です。
  • パスワードの変更が自分の端末に何をするか。それはパスワードとロックアウトのページの領分です。
  • 手元のアプリでGoogleとAppleのサインインが有効になっているかどうか。コードから分かるのは、設定されている場合にその提供元が描画されるということだけです。
  • 特定の端末でキャッシュされた画像が実際に削除されたかどうか。消去は試みられるだけで、結果は画面に報告されません。

これらの記述を読み取ったコード

上記のすべては、2026年8月にJewelry AIのモバイルクライアントを読んで確認したものです。端末側の後始末、端末のGoogleセッションの終了、そしてすべての端末からのサインアウトで失敗が表に出ることは、apps/jewelry-mobile/src/features/auth/auth-provider.tsxに由来します。そこではキャッシュの消去が失敗しても無視されるように書かれ、Googleのサインアウトが処理の一部として呼ばれ、より広い操作のサーバーエラーは飲み込まれずに再送出されています。

自分自身の項目を終了する場合と別の端末の項目を終了する場合の違いは、apps/jewelry-mobile/src/features/auth/sessions-screen.test.tsxに由来します。そこには、サインアウトの処理がすでにすべてを消すため、自分の端末に対しては単一セッションの取り消し要求をサーバーへ送らない、とコメントで記録されています。

サーバー側のセッション規則はこの読み取りに含まれておらず、このページはそこまで踏み込みません。

よくある質問

サインアウトすると、端末から画像は削除されますか?

サインアウトは削除を試みます。キャッシュされた生成画像の消去は処理の一部で、これによって共有端末に前の利用者の画像が残らないようにしています。ただしこの手順はベストエフォートです。成功しなかった場合でもサインアウトは完了します。画像は確実に消えたものではなく、消去が試みられたものとして扱ってください。

なぜアプリは同じGoogleアカウントでサインインし直すのですか?

その端末でサインアウトした後であれば、そうはならないはずです。サインアウトは端末自身のGoogleセッションを終了するため、次の「Googleで続ける」ではアカウントの選択画面が開きます。選択画面が出ない場合は、その端末で先ほどのサインアウトが通ったと考えないでください。

すべての端末からのサインアウトがエラーになりました。いまどういう状態ですか?

端末側のサインアウトは完了しています。表示されたエラーはサーバーのもので、すべて閉じたと伝えられてしまわないように、意図して画面に出されています。成功するまでは、他のセッションを終了済みとして記録できません。

端末の一覧に見覚えのない項目があります。誰かがサインインしているのですか?

必ずしもそうとは限りません。古いセッションはラベルを持たずに届くことがあり、その場合、画面はプラットフォームから読める名前を作ります。そのため見慣れない表示になることがあります。その項目を終了しても外れるのはその端末だけで、手元の端末には何の変化もありません。