Files
deepseek-harness/packages/session
Tianyi Cui c626d5f53c Merge origin/master into worktree/pr2177-export-fixes-20260811
Refresh PR #2258 onto master at 5427cbcc19 so the session-log export fixes are evaluated and mergeable against the current repository.\n\nPreserve master's SDK-toolchain removal, client theme bootstrap, and Python finish-reason changes intact. The only textual overlap is the generated config-catalog pairing record: both English and Chinese catalogs merge cleanly with the PR's compression setting and master's package moves, so regenerate that sidecar from the merged owners instead of choosing either stale hash.
2026-08-11 17:39:19 +08:00
..
2026-08-11 03:20:36 +08:00

session/ — durable session data plane

English | 中文

The durable family around core/session's live in-memory service: the persistence seam with its storage backends and checkpoint policy, the projection seam that serves whole log-derived values, log-backed titles, and outbound session telemetry. All product packages. session-query/ remains a sibling group: the read/tool surface is consumed independently of persistence internals.

Persistence

Durable session persistence, semantic checkpoint policy, and the shipped storage backends.

Package Role ctx key
session-persistence/ Defines the persistence service and shared write coordination ctx.sessionPersistence
session-checkpoint-policy/ Applies semantic durability checkpoints wraps ctx.llm and ctx.tools
session-persistence-jsonl/ Persists sessions in JSONL files registers on ctx.sessionPersistence
session-persistence-sqlite/ Persists sessions in SQLite registers on ctx.sessionPersistence

The session-persistence decision records the persistence design.

Projection

Serves current, log-derived per-session state to client carriers.

Package Role ctx key
session-projection/ Defines and drives session projection units ctx.sessionProjections
session-projection-cache/ Persists and restores projection checkpoints ctx.sessionProjectionCache

Titles

Derives durable session titles from the session log, with an optional model-backed provider.

Package Role ctx key
session-title/ Owns title state, fallback behavior, provider registration, and refresh ctx.sessionTitle
session-title-llm/ Provides shared model-backed title generation
session-title-first-message-llm/ Titles a session from its first eligible human message registers on ctx.sessionTitle
session-title-all-messages-llm/ Titles a session from all eligible human messages registers on ctx.sessionTitle

Deployments may register one model-backed provider; the service retains a deterministic fallback when none is present.

Telemetry

Projects session activity into outbound telemetry and delegates delivery to a configured reporting backend. The telemetry decision records the reporting boundary; the mode decision records immediate, feedback-gated, and disabled delivery.

Package Role
session-telemetry/ Defines capture, redaction, projection, and live or on-demand backend delivery.
session-telemetry-otel/ Delivers telemetry through OpenTelemetry logs in FULL, FEEDBACK_ONLY, or DISABLED mode.

The subsystem references: persistence.md, session-projection.md, session-title.md, and telemetry.md. Only one title provider may register at a time; the demo spine mounts the fallback service and leaves both model providers out of default composition.