Represent tool results as tool-role messages and migrate released wrappers without losing outer own JSON fields, call identity, error state, or writer field order. Refuse nested or wrapper-only information that has no lossless current representation before successor publication. Validate current event relationships directly instead of projecting V4 data back into V3. Keep lifecycle, PTC, title/command, compaction, system-field and retired-syntax checks on catalog restoration and ordinary JSONL opens. The Worker JSON equality helper must inspect own keys so it cannot admit PTC arguments that Node rejects. Keep the source role change, required native admission and consumer fixture updates in one complete review layer. Explain shared-type changes in the persistence record and the native reader rationale in its existing note. Use checked branded fixture identities and discriminant narrowing instead of unknown double casts; fixture values and assertions remain intact. This recomposes the original tool-role work by _Kerman with the independently validated migration and admission repairs by Tianyi Cui. Frozen generations and snapshot input version selection are retained. Co-authored-by: Tianyi Cui <[email protected]>
description, kind
| description | kind |
|---|---|
| Package map for the session retrieval capability family: searching, tracing, and reading live and durable session history, plus the Web session-log export. | package-group |
session-query/ — session retrieval capability family
English | 中文
Summary
The session-query/ group provides retrieval over live and durable session history, independent of compaction: programmatic callers query one unified service for exact logs, filtered lists, relationship traces, and full-text search; a SQLite backend powers the search; the model gets five workspace-authorized tools; and the Web UI gets an /export command that downloads a session ZIP. Search results agree with the conversation history the model sees. This page maps the group; each package README owns its per-package contract.
Table of Contents
Packages
Each package README describes what you can do with its part of the family.
| Package | Role | ctx key |
|---|---|---|
session-query/ |
Unified session-history query service: exact reads, relationship traces, and filters | ctx.sessionQuery |
session-query-sqlite/ |
Full-text search across session history backed by a SQLite FTS5 index | registers on ctx.sessionQuery |
session-log-export/ |
Web /export command and browser download of a session ZIP |
ctx.sessionLogDownload (browser) |
tool-session-query/ |
Model-facing tools to search, trace, and read session history | registers on ctx.tools |
Related documentation
Start with the subsystem reference for the shared query vocabulary, then the design records behind tracing and search.
- Session Query subsystem reference — logical records, filters, search pages, lineage, bounded reads, and event relationships.
- Session query relationship tracing — trace semantics and the validation boundary.
- SQLite FTS5 session search — search semantics, reconciliation, and the tokenizer decision.
Dev Note
None.