Restrict API types visibility — types module is now private
Only Message, Role, MessageContent, ContentPart, ToolCall, FunctionCall, Usage, ImageUrl are pub-exported from agent::api. Internal types (ChatRequest, ChatCompletionChunk, ChunkChoice, Delta, ReasoningConfig, ToolCallDelta, FunctionCallDelta) are pub(crate) — invisible outside the crate. All callers updated to import from agent::api:: instead of agent::api::types::. Co-Authored-By: Proof of Concept <poc@bcachefs.org>
This commit is contained in:
parent
25f4cfabbb
commit
f33b1767da
10 changed files with 17 additions and 16 deletions
|
|
@ -8,10 +8,13 @@
|
|||
|
||||
pub mod http;
|
||||
pub mod parsing;
|
||||
pub mod types;
|
||||
mod types;
|
||||
mod openai;
|
||||
|
||||
pub use types::*;
|
||||
// Public API types — used outside agent::api
|
||||
pub use types::{Message, MessageContent, ContentPart, ImageUrl, Role, ToolCall, FunctionCall, Usage};
|
||||
// Internal types — re-exported for sibling modules within agent/
|
||||
pub(crate) use types::{ChatRequest, ReasoningConfig, ChatCompletionChunk, ChunkChoice, Delta, ToolCallDelta, FunctionCallDelta};
|
||||
|
||||
use anyhow::Result;
|
||||
use std::time::{Duration, Instant};
|
||||
|
|
@ -21,7 +24,6 @@ use self::http::{HttpClient, HttpResponse};
|
|||
use tokio::sync::mpsc;
|
||||
|
||||
use crate::agent::tools::{self as agent_tools, summarize_args, ActiveToolCall};
|
||||
pub use types::ToolCall;
|
||||
|
||||
/// A JoinHandle that aborts its task when dropped.
|
||||
pub struct AbortOnDrop(tokio::task::JoinHandle<()>);
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
// Journal entries are loaded from the memory graph store, not from
|
||||
// a flat file — the parse functions are gone.
|
||||
|
||||
use crate::agent::api::types::*;
|
||||
use crate::agent::api::*;
|
||||
use chrono::{DateTime, Utc};
|
||||
use serde::{Deserialize, Serialize};
|
||||
use tiktoken_rs::CoreBPE;
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ use anyhow::Result;
|
|||
use tiktoken_rs::CoreBPE;
|
||||
|
||||
use api::{ApiClient, ToolCall};
|
||||
use api::types::{ContentPart, Message, MessageContent, Role};
|
||||
use api::{ContentPart, Message, MessageContent, Role};
|
||||
use context::{ConversationEntry, ContextState};
|
||||
use tools::{summarize_args, working_stack};
|
||||
|
||||
|
|
|
|||
|
|
@ -14,8 +14,7 @@ use std::fs;
|
|||
use std::path::PathBuf;
|
||||
use std::sync::OnceLock;
|
||||
|
||||
use super::api::ApiClient;
|
||||
use super::api::types::*;
|
||||
use super::api::{self, ApiClient, Message, Usage};
|
||||
use super::tools::{self as agent_tools};
|
||||
use super::Agent;
|
||||
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ impl Tool {
|
|||
}
|
||||
|
||||
// Re-export API wire types used by the agent turn loop
|
||||
use super::api::types::ToolCall;
|
||||
use super::api::ToolCall;
|
||||
|
||||
/// A tool call in flight — metadata for TUI + JoinHandle for
|
||||
/// result collection and cancellation.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue