ticket: render console snapshot entries

This commit is contained in:
Keisuke Hirata 2026-07-13 23:18:30 +09:00
parent 34856b9900
commit cdf46bd8eb
No known key found for this signature in database
3 changed files with 34 additions and 0 deletions

View File

@ -0,0 +1,27 @@
---
title: 'Render console snapshot entries'
state: 'planning'
created_at: '2026-07-13T14:17:43Z'
updated_at: '2026-07-13T14:18:00Z'
assignee: null
---
## 背景
Browser Console は Worker observation WebSocket から connect-time `snapshot` event を受け取っているが、`snapshot.data.entries` を conversation surface に投影していない。そのため reconnect / restore 後、snapshot 自体は届いていても console が空に見える。現在は snapshot の status と in-flight blocks だけを使っている。
Protocol の `Event::Snapshot.entries` は session-store `LogEntry` JSON であり、bulk reconstruction lane として UI が派生 view を seed するためのデータである。Browser Console でも TUI と同様に snapshot entries から committed conversation rows を復元する。
## 要件
- Browser Console projection が `snapshot.data.entries` を render する。
- `SegmentStart.history` も replay し、fork/restore/compaction 後の seed history を表示する。
- UserInput / assistant message / reasoning / tool call / tool result を既存 ConsoleLine に変換する。
- Snapshot の in-flight block 表示は維持する。
- 不明な snapshot entry は error にせず無視する。
## 受け入れ条件
- snapshot entries だけで user / assistant / tool rows が console に表示される。
- snapshot in-flight blocks は引き続き streaming line として表示される。
- frontend tests が通る。

View File

@ -0,0 +1,7 @@
<!-- event: create author: "yoi ticket" at: 2026-07-13T14:17:43Z -->
## 作成
LocalTicketBackend によって作成されました。
---