Require existing lockfile for selective update
Silently falling back to empty would discard previously locked plugins.

Assisted-by: Claude Opus 4.6 via pi
change rtlnlxpxskqzzlpzynupzyorrpxkxyko
commit e0dd1473f4bee54ac828941a3311753a2476dfe4
author Alpha Chen <alpha@kejadlen.dev>
date
parent xotyqyml
diff --git a/src/main.rs b/src/main.rs
index 3883b0c..c1d9909 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -101,7 +101,7 @@ fn do_update(names: &[String]) -> Result<()> {
             .into_iter()
             .filter(|p| requested.contains(p.name.as_str()))
             .collect();
-        let lockfile = lockfile::load().unwrap_or_else(|_| lockfile::Lockfile { plugins: vec![] });
+        let lockfile = lockfile::load()?;
         (plugins, lockfile)
     };