feat(tui): implement status bar with connection and turn state indicators feat(tui): create workflow panel for agent status and progress visualization feat(web): introduce web frontend interface with static file serving feat(ws): add WebSocket interface for real-time communication and session management
31 lines
854 B
Rust
31 lines
854 B
Rust
//! Command types for IAM domain operations.
|
|
//!
|
|
//! Following the `NewXxx` / command pattern from clean architecture,
|
|
//! these types encapsulate the input data for create/update operations
|
|
//! on domain entities. They decouple presentation DTOs from the entity
|
|
//! mutation surface and provide a clear boundary for validation.
|
|
|
|
/// Command to create a new session.
|
|
///
|
|
/// Carries only the data needed to construct a session entity — the
|
|
/// service generates the UUID and timestamp internally.
|
|
#[derive(Debug, Clone)]
|
|
pub struct NewSession {
|
|
/// Human-readable session title.
|
|
pub title: String,
|
|
}
|
|
|
|
impl From<String> for NewSession {
|
|
fn from(title: String) -> Self {
|
|
Self { title }
|
|
}
|
|
}
|
|
|
|
impl From<&str> for NewSession {
|
|
fn from(title: &str) -> Self {
|
|
Self {
|
|
title: title.to_string(),
|
|
}
|
|
}
|
|
}
|