Expand description
Port definitions (trait abstractions) for external systems.
Ports define the interfaces that the core domain expects from infrastructure. They contain no implementation details and use only domain types.
§Design Rules
- No
sqlxtypes in any signature - No process/filesystem implementation details
- Traits are minimal and CRUD-focused for repositories
- Intent-based methods for process runner (not implementation-leaking)
Re-exports§
pub use chat_history::ChatHistoryError;pub use chat_history::ChatHistoryRepository;pub use download::QuantizationResolver;pub use download::Resolution;pub use download::ResolvedFile;pub use download_event_emitter::AppEventBridge;pub use download_event_emitter::DownloadEventEmitterPort;pub use download_event_emitter::NoopDownloadEmitter;pub use download_manager::DownloadManagerConfig;pub use download_manager::DownloadManagerPort;pub use download_manager::DownloadRequest;pub use download_state::DownloadStateRepositoryPort;pub use event_emitter::AppEventEmitter;pub use event_emitter::NoopEmitter;pub use gguf_parser::GgufCapabilities;pub use gguf_parser::GgufMetadata;pub use gguf_parser::GgufParseError;pub use gguf_parser::GgufParserPort;pub use gguf_parser::NoopGgufParser;pub use huggingface::HfClientPort;pub use huggingface::HfFileInfo;pub use huggingface::HfPortError;pub use huggingface::HfQuantInfo;pub use huggingface::HfRepoInfo;pub use huggingface::HfSearchOptions;pub use huggingface::HfSearchResult;pub use mcp_dto::ResolutionAttempt;pub use mcp_dto::ResolutionStatus;pub use mcp_error::McpErrorCategory;pub use mcp_error::McpErrorInfo;pub use mcp_error::McpServiceError;pub use mcp_repository::McpRepositoryError;pub use mcp_repository::McpServerRepository;pub use model_catalog::CatalogError;pub use model_catalog::ModelCatalogPort;pub use model_catalog::ModelLaunchSpec;pub use model_catalog::ModelSummary;pub use model_registrar::CompletedDownload;pub use model_registrar::ModelRegistrarPort;pub use model_repository::ModelRepository;pub use model_runtime::ModelRuntimeError;pub use model_runtime::ModelRuntimePort;pub use model_runtime::RunningTarget;pub use process_runner::ProcessHandle;pub use process_runner::ProcessRunner;pub use process_runner::ServerConfig;pub use process_runner::ServerHealth;pub use server_health::ServerHealthStatus;pub use server_log_sink::ServerLogSinkPort;pub use settings_repository::SettingsRepository;pub use system_probe::SystemProbeError;pub use system_probe::SystemProbePort;pub use system_probe::SystemProbeResult;pub use tool_support::ModelSource;pub use tool_support::ToolFormat;pub use tool_support::ToolSupportDetection;pub use tool_support::ToolSupportDetectionInput;pub use tool_support::ToolSupportDetectorPort;
Modules§
- chat_
history - Chat history repository port definition.
- download
- Download port definitions (trait abstractions).
- download_
event_ emitter - Download event emitter port.
- download_
manager - Download manager port definition.
- download_
state - Download state repository port definition.
- event_
emitter - Event emitter trait for cross-crate event broadcasting.
- gguf_
parser - GGUF parser port definition.
- huggingface
HuggingFaceclient port definitions.- mcp_dto
- MCP DTOs for cross-boundary communication (Tauri, Axum, TypeScript).
- mcp_
error - MCP service error types.
- mcp_
repository - MCP server repository trait and error types.
- model_
catalog - Model catalog port for listing and resolving models.
- model_
registrar - Model registrar port definition.
- model_
repository - Model repository trait definition.
- model_
runtime - Model runtime port for proxy model management.
- process_
runner - Process runner trait definition.
- server_
health - Server health status types for monitoring.
- server_
log_ sink - Server log sink port for structured log capture.
- settings_
repository - Settings repository trait definition.
- system_
probe - System probe port for dependency and GPU detection.
- tool_
support - Tool support detection port.
Structs§
- Repos
- Container for all repository trait objects.
Enums§
- Core
Error - Core error type for semantic domain errors.
- Process
Error - Domain-specific errors for process runner operations.
- Repository
Error - Domain-specific errors for repository operations.