Integrate master 78ae4fc2d4d8ecaebb4b674028f781a358b92cc9 after the four independent review fixes. Keep this base update separate from those fixes and from subsequent review changes so the integration is independently reviewable and the observed-master checkpoint remains preserved. Retain activation-owned execution, caller-independent local discovery, and unconditional parent final-answer delivery. Preserve master's preset scoped scheduling tools and all delegated-child schedule deny rules. Move the new scheduling regression from the removed driver package into the surviving subagent package and run it through a real Spawn activation. Preserve master's removal of runtime invariant plugins, dependencies, exports, and test mounts. Keep context disposal before fixture directory cleanup. Combine Python workflow ordering with activation/catalog events without inventing unsupported source-plane import paths. Keep all frozen Agent Note archives byte-for-byte identical to master; do not accept Git's automatic edits to renamed archived notes. Retain current lifecycle and delivery facts in active documentation, repair its links, and regenerate catalogs/persistence schemas from merged source. All 62 master persistence roots remain; only subagent/catalog gains the PR's external membership extension. Keep master's third-party lock graph and update only workspace dependency changes. Validation before this checkpoint: 683 focused tests passed, seven Windows-only cases skipped; 2,772 archived artifacts verified. Generated catalog and active-pair checks passed. Fresh artifact build and remaining build-dependent documentation checks continue before publication.
description, kind
| description | kind |
|---|---|
| Package map for the durable session data plane: the persistence seam and its backends, checkpoint policy, projections, log-backed titles, and outbound session telemetry. | package-group |
session/ — durable session data plane
English | 中文
Summary
The session group keeps conversations durable, restores released log formats, and makes committed history available after restart. Its storage and checkpoint packages protect requests, tool side effects, and completed steps; projection packages derive client-ready values; title packages name sessions; telemetry packages report activity. Start with the shipped JSONL storage, then add checkpointing and only the projections, title policy, or telemetry your deployment needs. Each package README owns its guarantees and configuration, while a sibling query group provides independent read and tool access.
Table of Contents
Packages
The group splits into four families: durable storage (persistence seam, backends, checkpoint policy), projections, titles, and telemetry. Each package README owns its contract and configuration.
Persistence
| Package | Role | ctx key |
|---|---|---|
session-format/ |
Pure adjacent-format chain and artifact validation library | library — no ctx key |
session-format-v0-to-v1/ |
Frozen released-v0 decoder and identity migration into released v1 | library — no ctx key |
session-format-v1-to-v2/ |
Frozen released-v1 decoder and cardinality-changing Assistant-stream migration into released v2 | library — no ctx key |
session-format-v2-to-v3/ |
Frozen V2 decoder and system-prompt, envelope, and PTC migration into V3 | library — no ctx key |
session-format-v3-to-v4/ |
V3 identity migration and V4 codec with generation-aware delivery validation | library — no ctx key |
session-format-catalog/ |
Generated static catalog of shipped adjacent migrations | library — no ctx key |
session-persistence/ |
Defines the durable session-storage service and the shared write coordination every backend composes | ctx.sessionPersistence |
session-persistence-jsonl/ |
Shipped backend: immutable canonical generation filenames per Session with exclusive successor publication, optionally Zstandard-compressed | registers on ctx.sessionPersistence |
session-checkpoint-policy/ |
Makes model requests, top-level tool side effects, and completed steps durable before the next action | wraps ctx.llm and ctx.tools |
session-log-deepseek/ |
Uploads the incremental canonical log as optional official DeepSeek request metadata | contributes dsh_session_log |
Projection
| Package | Role | ctx key |
|---|---|---|
session-projection/ |
Defines and drives projection units that fold committed events into whole current values | ctx.sessionProjections |
session-projection-cache/ |
Persists projection checkpoints so cold reads skip full log loads | ctx.sessionProjectionCache |
session-stats/ |
Serves whole-log conversation counts and wall times through the sessionStats unit |
registers on ctx.sessionProjections |
session-turn-outline/ |
Serves the whole-log turn outline (turn, turn/start seq, prompt preview) through the turnOutline unit |
registers on ctx.sessionProjections |
Titles
| Package | Role | ctx key |
|---|---|---|
session-title/ |
Log-backed session titles with a deterministic fallback and one optional provider | ctx.sessionTitle |
session-title-llm/ |
Shared model-backed title-generation policy for the provider packages | library — no ctx key |
session-title-first-prompt-llm/ |
Titles a session from its first eligible human message | registers on ctx.sessionTitle |
session-title-all-prompts-llm/ |
Titles a session from all eligible human messages | registers on ctx.sessionTitle |
Telemetry
| Package | Role | ctx key |
|---|---|---|
session-telemetry/ |
Captures session activity and hands records to a configured reporting backend | ctx.sessionTelemetry |
session-telemetry-otel/ |
Delivers telemetry through OpenTelemetry logs in FEEDBACK_ONLY or DISABLED mode |
registers on ctx.sessionTelemetry |
Only one title provider may register at a time; without one, the title service keeps its deterministic fallback. The subsystem pages below are the backend-neutral references for each family.
Related documentation
- Session persistence subsystem — backend-neutral service semantics, the flush checkpoint, and crash recovery.
- Session projections subsystem — the projection unit contract and drive semantics.
- Session titles subsystem — title eligibility, fallback, and provider flow.
- Session telemetry subsystem — capture, redaction, and delivery modes.
- Session subsystem — the live event log every package in this group persists or derives from.
Dev Note
None.