Skip to content

spec(session): decide whether the resume line should know which situation it is for #128

Description

@smileygames

観測

再開の線(アカウントの resume_command)は、もともとスリープ回避策として入れられた(Master 談、2026-08-29)。PC がスリープから復帰したとき webview の再読み込みで部屋が空になる経路(#108#84)への手当てである。

resolve_launchsrc-tauri/src/session.rs:369)はその由来を知らない。分岐の条件は「このトピックにこのアカウントの id が記録されているか」と「アカウントが再開の線を持つか」の二つだけで、どの状況のための線かという軸を持たない。結果、スリープ復帰のために書かれた線がアプリの再起動後の起動でもそのまま発火する。

前提が違う。スリープ復帰では CLI のプロセスが生きており、席の引き取り(#115 決定4C、#84)が繋ぎ直す経路であって --resume を要さない場合がある。再起動後はプロセスが無く、--resume が頼るのは会話が保存されていることだけである。

再現の手がかり

#127 は、その前提が崩れた場合(会話ができる前に終わった起動)の復帰を入れた。死んだ id を捨てて通常起動へ落とす形であり、発火するかどうかの軸には触れていない。この issue はそちらを扱う。

判断が要る点

  • 再開の線に適用範囲を持たせるか(例: スリープ復帰時のみ/同一 run 内のみ/常時)。
  • 持たせる場合、それを設定の概念として人に見せるか、アプリが状況から決めるか。設定の概念を増やすことの是非そのものが判断対象である。
  • そもそも「再起動後は再開しない」を既定にするだけで足りるかもしれない。bug(session): a session id recorded on spawn poisons every later resume when the CLI never created the conversation #127 の復帰が入った後、実際にどれだけ困るかを見てから決めてよい。

急がない。#127 の実機観測を積んでから判断するのが安い。

関連

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    memoメモとして開始した状態。見出しは必要なものだけでよいspecLi+の挙動に影響する仕様・ポリシー・定義

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions