Refactor IPC and DTO structures; remove unused code and streamline message handling

- Removed unused structs and methods from `response.rs`, `usage.rs`, and `client.rs`.
- Simplified `Connection` handling in `conn.rs` to only support Unix sockets.
- Updated `IpcServer` to exclusively use Unix sockets and removed TCP handling.
- Cleaned up `editlog.rs` by removing loading and recent entry methods.
- Refactored `memory.rs` to eliminate unused functions related to lesson promotion and retrospective creation.
- Enhanced `search.rs` to support multiple search providers and improved error handling.
- Updated chat view logic to simplify message display and improve user experience.
- Removed deprecated modules and constants from various files to streamline the codebase.
This commit is contained in:
asepharyana
2026-07-11 23:45:13 +07:00
parent 93d1bbb7c1
commit fcef85a327
51 changed files with 1431 additions and 1246 deletions
-18
View File
@@ -13,17 +13,6 @@ pub enum Role {
}
impl Role {
pub fn is_user(&self) -> bool {
matches!(self, Role::User)
}
pub fn is_assistant(&self) -> bool {
matches!(self, Role::Assistant)
}
pub fn is_system(&self) -> bool {
matches!(self, Role::System)
}
}
#[derive(Debug, Clone, Serialize, Deserialize)]
@@ -79,10 +68,3 @@ impl ChatMessage {
}
}
}
#[derive(Debug, Clone)]
pub struct ChatMessageDisplay {
pub role: Role,
pub content: String,
pub timestamp: i64,
}
-8
View File
@@ -15,14 +15,6 @@ pub struct ToolFunction {
pub arguments: Value,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ToolResult {
pub tool_call_id: String,
pub output: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub is_error: Option<bool>,
}
pub fn sanitize_tool_arguments(args: &Value) -> Value {
match args {
Value::String(s) => {
-40
View File
@@ -15,43 +15,3 @@ pub struct Choice {
pub message: super::super::chat::message::ChatMessage,
pub finish_reason: Option<String>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct StreamChunk {
pub id: Option<String>,
pub model: Option<String>,
pub choices: Vec<StreamChoice>,
pub usage: Option<super::usage::Usage>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct StreamChoice {
pub index: u32,
pub delta: Delta,
pub finish_reason: Option<String>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Delta {
#[serde(skip_serializing_if = "Option::is_none")]
pub role: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub content: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub tool_calls: Option<Vec<DeltaToolCall>>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct DeltaToolCall {
pub index: u32,
pub id: Option<String>,
#[serde(rename = "type")]
pub type_: Option<String>,
pub function: Option<DeltaFunction>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct DeltaFunction {
pub name: Option<String>,
pub arguments: Option<String>,
}
-6
View File
@@ -10,9 +10,3 @@ pub struct Usage {
#[serde(skip_serializing_if = "Option::is_none")]
pub completion_tokens_cost: Option<f64>,
}
impl Usage {
pub fn total(&self) -> u32 {
self.total_tokens.unwrap_or(0)
}
}