Meliputi: - File-level //! doc comment: tujuan file, alur kerja, komponen utama - Function-level /// doc comment: apa, parameter, return, flow, edge cases - Struct/enum/trait /// doc comment: peran, field docs - Tracing logging (tracing::info!/debug!/trace!/warn!/error!) di setiap fungsi - Inline comments untuk variable dan branching logic penting - Seluruh 8 crates di workspace: zesdex-backend, zesdex-cms, zesdex-entities, zesdex-iam, zesdex-infra, zesdex-ipc, zesdex-middleware, zesdex-utils - Build: 0 errors, 242/242 tests passed
37 lines
1.3 KiB
Rust
37 lines
1.3 KiB
Rust
//! Common entity types shared across the Zesdex application.
|
|
//!
|
|
//! Contains pure data structures for conversations, messages, tool calls,
|
|
//! usage statistics, provider API types (chat request/response, SSE stream),
|
|
//! and store path configuration. All types derive `Serialize`/`Deserialize`
|
|
//! and are persisted as JSON files.
|
|
//!
|
|
//! # Sub-modules
|
|
//!
|
|
//! - [`conversation`] — Ordered conversation (vector of `ChatMessage`)
|
|
//! - [`message`] — `ChatMessage` + `Role` enum
|
|
//! - [`provider`] — LLM provider API types: `ChatRequest`, `ChatResponse`,
|
|
//! `StreamEvent`, `SseParser`, `ToolDef`, etc.
|
|
//! - [`store`] — `Store` paths for data directories
|
|
//! - [`tool_call`] — `ToolCall` + `ToolFunction` (function-calling request)
|
|
//! - [`tool_result`] — `ToolCallResult` (function-calling response)
|
|
//! - [`usage`] — `UsageStats` (token counts, costs)
|
|
|
|
pub mod conversation;
|
|
pub mod message;
|
|
pub mod provider;
|
|
pub mod store;
|
|
pub mod tool_call;
|
|
pub mod tool_result;
|
|
pub mod usage;
|
|
|
|
pub use conversation::Conversation;
|
|
pub use message::{ChatMessage, Role};
|
|
pub use provider::{
|
|
ChatRequest, ChatResponse, Choice, SseParser, StreamEvent, StreamOptions, ToolDef,
|
|
ToolFunctionDef,
|
|
};
|
|
pub use store::Store;
|
|
pub use tool_call::{ToolCall, ToolFunction};
|
|
pub use tool_result::ToolCallResult;
|
|
pub use usage::UsageStats;
|