観測
2026-08-27、#115 / #116 を実機で確認中に発見。
セッションを起動すると、その時点でトピックが索引に書かれる。しかし発言が無ければ .jsonl は作られないため、索引にエントリがあって投稿ファイルが存在しないトピック が生まれる。一覧にはタイトルが空の行として並ぶ。
実測(%APPDATA%\org.liplus-project.pullcept\logs\main\):
{
"topic_id" : " 2203d6d1-4df7-4d76-ac2b-6f718ad64152" ,
"title" : " " ,
"created_at" : " 2026-08-27T14:07:17.876Z" ,
"sessions" : { "2d8f9a1a-…" : " fc7c3171-…" }
}
同ディレクトリに 2203d6d1-….jsonl は存在しない。
前提
索引を書くこと自体は必然である
トピックはセッションの器であり(#115 決定3)、{account_id: session_uuid} の置き場は索引しかない。セッション起動時に書かないと、その id を失う。したがって「セッション起動で索引に書く」を単純にやめる形は取れない。
整合を戻す仕組みが片方向しかない
src-tauri/src/room_log.rs のモジュール doc は「実在はディレクトリ側、索引は注釈」と述べ、read_index は索引に無い .jsonl を拾う 。これは「投稿がファイルに着いたが索引に着く前に落ちた」窓を閉じるためのもので、#115 の遅延生成を安全にしている。
しかし逆向き — ファイルの無い索引エントリ — を戻す経路が無い 。拾う側だけがあって、落とす側が無い状態。
結果
「起動してセッションだけ起こし、何も言わずに閉じた」たびに、タイトルが空の行が一つ積まれる。掃除される経路を持たない。#115 の遅延生成が避けようとした「何も話さずに閉じた回が一覧に残る」形が、この経路からだけ復活している。
未決
空タイトルの行をどう扱うか。読み出し時に落とすか、一覧で隠すか、セッション id だけ別の場所に持つか。
セッションを起こしただけのトピックは、そもそも一覧に出るべきか。出すなら何と表示するか(現在は空文字)。
既に生まれてしまったエントリの後始末。
関連
feat(history): split the history into topics, resumable from the list #115 — トピック分割。この不具合はその実装から生まれた。
feat(history): split the history into topics, resumable from the list (room_log, room.rs, session.rs, config.rs, sidecar, index.html, main.ts, styles.css, docs) #116 — 実装 PR。実機確認で発見。
観測
2026-08-27、#115 / #116 を実機で確認中に発見。
セッションを起動すると、その時点でトピックが索引に書かれる。しかし発言が無ければ
.jsonlは作られないため、索引にエントリがあって投稿ファイルが存在しないトピックが生まれる。一覧にはタイトルが空の行として並ぶ。実測(
%APPDATA%\org.liplus-project.pullcept\logs\main\):{ "topic_id": "2203d6d1-4df7-4d76-ac2b-6f718ad64152", "title": "", "created_at": "2026-08-27T14:07:17.876Z", "sessions": { "2d8f9a1a-…": "fc7c3171-…" } }同ディレクトリに
2203d6d1-….jsonlは存在しない。前提
索引を書くこと自体は必然である
トピックはセッションの器であり(#115 決定3)、
{account_id: session_uuid}の置き場は索引しかない。セッション起動時に書かないと、その id を失う。したがって「セッション起動で索引に書く」を単純にやめる形は取れない。整合を戻す仕組みが片方向しかない
src-tauri/src/room_log.rsのモジュール doc は「実在はディレクトリ側、索引は注釈」と述べ、read_indexは索引に無い.jsonlを拾う。これは「投稿がファイルに着いたが索引に着く前に落ちた」窓を閉じるためのもので、#115 の遅延生成を安全にしている。しかし逆向き — ファイルの無い索引エントリ — を戻す経路が無い。拾う側だけがあって、落とす側が無い状態。
結果
「起動してセッションだけ起こし、何も言わずに閉じた」たびに、タイトルが空の行が一つ積まれる。掃除される経路を持たない。#115 の遅延生成が避けようとした「何も話さずに閉じた回が一覧に残る」形が、この経路からだけ復活している。
未決
関連