offline_intelligence/api/
search_api.rs1use axum::{
7 extract::State,
8 http::StatusCode,
9 response::IntoResponse,
10 Json,
11};
12use serde::{Deserialize, Serialize};
13
14use crate::UnifiedAppState;
15
16#[derive(Debug, Deserialize)]
18pub struct SearchRequest {
19 pub query: String,
20 pub session_id: Option<String>,
21 pub limit: Option<i32>,
22}
23
24#[derive(Debug, Serialize)]
26pub struct SearchResponse {
27 pub results: Vec<SearchResult>,
28 pub total: usize,
29}
30
31#[derive(Debug, Serialize)]
33pub struct SearchResult {
34 pub session_id: String,
35 pub message_id: i64,
36 pub content: String,
37 pub relevance_score: f32,
38}
39
40pub async fn search(
42 State(_state): State<UnifiedAppState>,
43 Json(_payload): Json<SearchRequest>,
44) -> Result<impl IntoResponse, StatusCode> {
45 Ok((
47 StatusCode::NOT_IMPLEMENTED,
48 Json(SearchResponse {
49 results: vec![],
50 total: 0,
51 }),
52 ))
53}