perf: avoid small own clones and intermediate Vec allocations

- Derive Copy on 6 small enums (MessageRole, TaskState, StorageKind, EmbeddingBackend, PdfIngestMode, KnowledgeEntityType)
- Change create_ingestion_payload files param from Vec<FileInfo> to &[FileInfo]
- Remove 5 intermediate Vec allocations (4 embedding serialization + 1 format_history) using write! loop
- Remove 7 unnecessary .clone() calls exposed by Copy derive
This commit is contained in:
Per Stark
2026-05-27 10:28:08 +02:00
parent f5f0454904
commit c60db0fb56
9 changed files with 64 additions and 60 deletions
+1 -1
View File
@@ -32,7 +32,7 @@ impl StorageManager {
/// This method validates the configuration and creates the appropriate
/// storage backend with proper initialization.
pub async fn new(cfg: &AppConfig) -> object_store::Result<Self> {
let backend_kind = cfg.storage.clone();
let backend_kind = cfg.storage;
let (store, local_base) = create_storage_backend(cfg).await?;
Ok(Self {