記録 browse — read-through to Hermes sessions #30

Open
opened 2026-07-30 00:03:49 +00:00 by aiko · 1 comment
Owner

What to build

記録, browse what was said. Replaces #20, whose data source changed.

Per ADR-0002 the go-between keeps no conversation store. History belongs to Hermes sessions, so this is a read-through: client asks the go-between, go-between asks the adapter, adapter reads Hermes.

That retires the old fetch-history-list / fetch-and-set-history / create-new-history / delete-history semantics, which addressed local history files per conversation uid.

Settle while building: whether Hermes exposes session history in a form pageable enough for the activity strip. If not, the strip degrades to what is available rather than faking it. Silence and not-yet-loaded must stay visually distinct - that is the one thing this design refuses to blur.

Acceptance criteria

  • History renders from Hermes sessions with no local store involved
  • Silence and not-yet-loaded are visually distinct in the activity strip
  • Search covers what was actually fetched, and says so when it cannot cover more
  • Local deletion is either absent or clearly labelled as not deleting her memory

Reference

ADR-0002. Design: 5c, 7b.

## What to build 記録, browse what was said. Replaces #20, whose data source changed. Per ADR-0002 the go-between keeps **no conversation store**. History belongs to Hermes sessions, so this is a read-through: client asks the go-between, go-between asks the adapter, adapter reads Hermes. That retires the old `fetch-history-list` / `fetch-and-set-history` / `create-new-history` / `delete-history` semantics, which addressed local history files per conversation uid. Settle while building: whether Hermes exposes session history in a form pageable enough for the activity strip. If not, the strip degrades to what is available rather than faking it. Silence and not-yet-loaded must stay visually distinct - that is the one thing this design refuses to blur. ## Acceptance criteria - [ ] History renders from Hermes sessions with no local store involved - [ ] Silence and not-yet-loaded are visually distinct in the activity strip - [ ] Search covers what was actually fetched, and says so when it cannot cover more - [ ] Local deletion is either absent or clearly labelled as not deleting her memory ## Reference ADR-0002. Design: 5c, 7b.
Author
Owner

Ruled out of scope for v1 on the wayfinder map, the conversation works (v1). Labelled v2; staying open rather than closed, because the scope call lives on the map and this is still real work.

v1 is: a real voice conversation — you speak, she answers in her own voice, Live2D renders, the log records it — on the Windows desktop, the OnePlus Pad and an Android phone, for one operator on hardware they already own.

**Ruled out of scope for v1** on the wayfinder map, [the conversation works (v1)](https://git.aiko.works/aiko/denpa/issues/41). Labelled `v2`; staying open rather than closed, because the scope call lives on the map and this is still real work. v1 is: a real voice conversation — you speak, she answers in her own voice, Live2D renders, the log records it — on the Windows desktop, the OnePlus Pad and an Android phone, for one operator on hardware they already own.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
aiko/denpa#30
No description provided.