From 87f7f1b0f875e9cf26b84bd45dd48226a33749cb Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sat, 6 Jun 2026 20:03:54 +0900 Subject: feat(archive-command): wire up ArchiveManager.archive call Replace the phase-b todo!() with the real ArchiveManager.archive invocation by taking the manager via mutable borrow (borrow_mut for the composer-owned RefCell, &mut for the locally created one). Also drop the stale get_io clone_box TODOs in archive and search commands, reusing the already-fetched io handle in search. --- crates/shirabe/src/command/search_command.rs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'crates/shirabe/src/command/search_command.rs') diff --git a/crates/shirabe/src/command/search_command.rs b/crates/shirabe/src/command/search_command.rs index 7149db7..bf68b2d 100644 --- a/crates/shirabe/src/command/search_command.rs +++ b/crates/shirabe/src/command/search_command.rs @@ -75,9 +75,7 @@ impl SearchCommand { let composer = if let Some(c) = self.try_composer(None, None) { c } else { - // TODO(phase-b): clone_box to release self borrow held by get_io. - let io_box = self.get_io().clone(); - self.create_composer_instance(input.clone(), io_box, None, false, None)? + self.create_composer_instance(input.clone(), io.clone(), None, false, None)? }; let composer_ref = crate::command::composer_full(&composer); let local_repo = composer_ref -- cgit v1.3.1