deepseek-harness/snapshots/web
Turtle bec6805d6a refactor(session-persistence)!: handle-based seam with a lifecycle-owned write path
The persistence seam is now create/open/stat/list returning per-session
SessionHandles (read/append/flush/close); every log read and write flows
through the owning handle. The seam package exports only the service and
handle contracts, consumer-visible errors, and pure durable-data
validation helpers; each backend owns its complete storage runtime, and
the shared contract suites pin equivalent observable behavior. The
backend routes published sessions' live events by id into the active
write handle; agent-loop only acquires, seeds, and closes the handle.
Resume appends interruptedTurnClosers through its write handle;
session-query owns the revision-keyed cold cache. Legacy-only surfaces
are removed in the same swap: locate/readRaw/supportsRawArtifacts, the
legacy event-shape read migration, zstd torn-frame salvage,
DSH_SESSION_JSONL, and hook transcript_path population; a torn final
zstd frame is discarded whole; the session-list cold blank probe returns
on stat metadata (eventCount derived from the last physical row,
sizeBytes). The WebUI ZIP export serializes the logical log from a read
handle, so both backends export identically.

Refs #3245
2026-09-01 23:19:02 +08:00
..
approval-composer feat(web): polish the input trigger menu presentation 2026-08-26 21:17:46 +08:00
background-job-list refactor(test): drive sessions through owning profiles 2026-08-24 21:37:13 +08:00
bash-abort-row feat(web): polish the input trigger menu presentation 2026-08-26 21:17:46 +08:00
cordis-tool-round Merge remote-tracking branch 'origin/master' into feat/3220-steer-service 2026-09-01 13:46:35 +08:00
details-session-lifecycle refactor(test): drive sessions through owning profiles 2026-08-24 21:37:13 +08:00
feedback-command feat(ui-chat): split turn stats into usage and time pills with dialogs 2026-08-28 01:34:18 +08:00
feedback-release feat(ui-chat): split turn stats into usage and time pills with dialogs 2026-08-28 01:34:18 +08:00
fresh-round-trip Merge remote-tracking branch 'origin/master' into feat/3220-steer-service 2026-09-01 13:46:35 +08:00
goal-multi-turn-actions feat(ui-chat): split turn stats into usage and time pills with dialogs 2026-08-28 01:34:18 +08:00
lifecycle-chrome fix(web): align connection indicator labels 2026-08-29 11:18:58 +08:00
live-interactions feat(ui-chat): split turn stats into usage and time pills with dialogs 2026-08-28 01:34:18 +08:00
message-actions feat(ui-chat): split turn stats into usage and time pills with dialogs 2026-08-28 01:34:18 +08:00
message-feedback-layout refactor(test): drive sessions through owning profiles 2026-08-24 21:37:13 +08:00
message-feedback-protocol chore(docs): regenerate catalogs, graphs, and the message-feedback golden 2026-08-28 22:37:42 +08:00
minimal-preset feat(ui-chat): split turn stats into usage and time pills with dialogs 2026-08-28 01:34:18 +08:00
navigation-panes refactor(session-persistence)!: handle-based seam with a lifecycle-owned write path 2026-09-01 23:19:02 +08:00
permission-policy-context feat(web): polish the input trigger menu presentation 2026-08-26 21:17:46 +08:00
plan-narrow-viewport refactor(test): drive sessions through owning profiles 2026-08-24 21:37:13 +08:00
plan-review feat(ui-chat): split turn stats into usage and time pills with dialogs 2026-08-28 01:34:18 +08:00
ptc-round Merge remote-tracking branch 'origin/master' into feat/3220-steer-service 2026-09-01 13:46:35 +08:00
pwsh-terminal refactor(session-persistence)!: handle-based seam with a lifecycle-owned write path 2026-09-01 23:19:02 +08:00
question-composer feat(ui-chat): split turn stats into usage and time pills with dialogs 2026-08-28 01:34:18 +08:00
queue-actions feat(ui-chat): split turn stats into usage and time pills with dialogs 2026-08-28 01:34:18 +08:00
queued-image Merge origin/master into worktree/steer-followup-images 2026-08-31 10:37:39 +08:00
schedule-catalog fix(subagent): harden adjacent message guidance 2026-08-31 11:16:00 +08:00
seeded-history refactor(session-persistence)!: handle-based seam with a lifecycle-owned write path 2026-09-01 23:19:02 +08:00
sidebar-scrollbar refactor(test): drive sessions through owning profiles 2026-08-24 21:37:13 +08:00
skill-tool-row Merge remote-tracking branch 'origin/master' into feat/session-turn-stats-display 2026-08-28 11:19:23 +08:00
steering feat(ui-chat): split turn stats into usage and time pills with dialogs 2026-08-28 01:34:18 +08:00
subagent-conversation fix(subagent): harden adjacent message guidance 2026-08-31 11:16:00 +08:00
subagent-interrupt fix(subagent): harden adjacent message guidance 2026-08-31 11:16:00 +08:00
turn-tail-actions feat(ui-chat): split turn stats into usage and time pills with dialogs 2026-08-28 01:34:18 +08:00
web-search-round feat(ui-chat): split turn stats into usage and time pills with dialogs 2026-08-28 01:34:18 +08:00
workflow-run feat(ui-chat): split turn stats into usage and time pills with dialogs 2026-08-28 01:34:18 +08:00
workspace-management refactor(test): drive sessions through owning profiles 2026-08-24 21:37:13 +08:00