Expand description
RecallRequest — canonical Data Transfer Object for the recall pipeline.
Wave-2 Tier-C2 (issue #967): the three recall surfaces (HTTP, MCP, CLI)
historically extracted ~17 scalars from their wire shapes and threaded
them as positional arguments through recall_response (HTTP) /
handle_recall (MCP) / run_with_embedder (CLI). Adding a new field
(Form 6 kinds, Form 4 has_citations, session_id, etc.) meant
editing four signatures.
This module promotes the schemars-derived RecallRequest (originally
defined under mcp::tools::recall for D1.3 #984 schema generation)
into a canonical DTO every surface marshals into ONCE. Constructors
land per surface:
RecallRequest::from_mcp_params— accepts a&serde_json::Valueparams bag (the MCPargumentsshape).RecallRequest::from_http_query— accepts a&RecallQuery(HTTP GET).RecallRequest::from_http_body— accepts a&RecallBody(HTTP POST).RecallRequest::from_cli_args— accepts a&crate::cli::recall::RecallArgs.
The schemars derivation is preserved verbatim so D1.4 (#985) parity
tests in mcp::tools::recall::d1_3_984_tests keep matching the
legacy hand-coded schema byte-for-byte. The schema struct AND the
runtime DTO are now the same type — option (a) in the issue rubric.
Structs§
- Recall
Request - v0.7.0 #972 D1.3 (#984) / #967 — canonical recall-request DTO.
Enums§
- Kinds
Filter - v0.7.0 #972 D1.3 (#984) —
kindsfilter shape formemory_recall.
Constants§
- RECALL_
MODE_ HYBRID_ RERANK - #1558 batch 5 wave 3 — canonical recall-mode label stamped on the
moderesponse field and therecall_observationsledger when the hybrid (FTS+semantic) pipeline ran AND the cross-encoder reranker re-ordered the results. The plain"hybrid"/"keyword"labels stay short literals at the two emit sites.