diff --git a/src/openhuman/memory/tree/retrieval/rpc.rs b/src/openhuman/memory/tree/retrieval/rpc.rs index 8731d908c..4971ffb34 100644 --- a/src/openhuman/memory/tree/retrieval/rpc.rs +++ b/src/openhuman/memory/tree/retrieval/rpc.rs @@ -84,8 +84,8 @@ pub async fn query_source_rpc( /// Request body for `memory_tree_query_global`. #[derive(Clone, Debug, Serialize, Deserialize)] pub struct QueryGlobalRequest { - #[serde(alias = "time_window_days")] - pub window_days: u32, + #[serde(alias = "window_days")] + pub time_window_days: u32, } /// JSON-RPC handler body for `memory_tree_query_global`. @@ -93,7 +93,7 @@ pub async fn query_global_rpc( config: &Config, req: QueryGlobalRequest, ) -> Result, String> { - let resp = query_global(config, req.window_days) + let resp = query_global(config, req.time_window_days) .await .map_err(|e| format!("query_global: {e}"))?; let n = resp.hits.len(); @@ -411,7 +411,9 @@ mod tests { #[tokio::test] async fn query_global_rpc_returns_response_for_valid_window() { let (_tmp, cfg) = test_config(); - let req = QueryGlobalRequest { window_days: 7 }; + let req = QueryGlobalRequest { + time_window_days: 7, + }; let outcome = query_global_rpc(&cfg, req).await.unwrap(); assert!(outcome.value.hits.is_empty()); assert_eq!(outcome.logs.len(), 1); @@ -423,13 +425,13 @@ mod tests { } #[test] - fn query_global_request_accepts_consolidated_time_window_alias() { + fn query_global_request_accepts_legacy_window_days_alias() { let req: QueryGlobalRequest = serde_json::from_value(serde_json::json!({ - "time_window_days": 7 + "window_days": 7 })) - .expect("time_window_days alias should deserialize"); + .expect("legacy window_days alias should deserialize"); - assert_eq!(req.window_days, 7); + assert_eq!(req.time_window_days, 7); } // ── query_topic_rpc ─────────────────────────────────────────────── diff --git a/src/openhuman/memory/tree/retrieval/schemas.rs b/src/openhuman/memory/tree/retrieval/schemas.rs index 10b34d942..63f5a83c8 100644 --- a/src/openhuman/memory/tree/retrieval/schemas.rs +++ b/src/openhuman/memory/tree/retrieval/schemas.rs @@ -152,7 +152,7 @@ pub fn schemas(function: &str) -> ControllerSchema { `tree_global::recap`; the returned hit carries `child_ids` pointing \ at the folded per-day summary ids for drill-down.", inputs: vec![FieldSchema { - name: "window_days", + name: "time_window_days", ty: TypeSchema::U64, comment: "Lookback window in days (e.g. 7 for weekly recap).", required: true, diff --git a/src/openhuman/tools/impl/memory/tree/query_global.rs b/src/openhuman/tools/impl/memory/tree/query_global.rs index cc19efa4c..5f8b322c9 100644 --- a/src/openhuman/tools/impl/memory/tree/query_global.rs +++ b/src/openhuman/tools/impl/memory/tree/query_global.rs @@ -14,7 +14,7 @@ impl Tool for MemoryTreeQueryGlobalTool { } fn description(&self) -> &str { - "Return the cross-source global digest for the last `window_days`. \ + "Return the cross-source global digest for the last `time_window_days`. \ The 7-day digest is also pre-loaded into the session context at \ start, so only call this for a different window (e.g. 30 days, \ 1 day) or to refresh after new ingest." @@ -24,13 +24,13 @@ impl Tool for MemoryTreeQueryGlobalTool { json!({ "type": "object", "properties": { - "window_days": { + "time_window_days": { "type": "integer", "minimum": 1, "description": "Lookback window in days (e.g. 7 for weekly recap)." } }, - "required": ["window_days"] + "required": ["time_window_days"] }) } @@ -41,7 +41,7 @@ impl Tool for MemoryTreeQueryGlobalTool { let cfg = config_rpc::load_config_with_timeout() .await .map_err(|e| anyhow::anyhow!("memory_tree_query_global: load config failed: {e}"))?; - let resp = retrieval::query_global(&cfg, req.window_days).await?; + let resp = retrieval::query_global(&cfg, req.time_window_days).await?; log::debug!( "[tool][memory_tree] query_global returning hits={} total={}", resp.hits.len(),