diff --git a/core/startos/src/registry/package/add.rs b/core/startos/src/registry/package/add.rs index 146f96334..0ea3ae980 100644 --- a/core/startos/src/registry/package/add.rs +++ b/core/startos/src/registry/package/add.rs @@ -167,8 +167,9 @@ pub struct RemovePackageParams { pub id: PackageId, pub version: VersionString, #[ts(skip)] + #[arg(skip)] #[serde(rename = "__auth_signer")] - pub signer: AnyVerifyingKey, + pub signer: Option, } pub async fn remove_package( @@ -180,6 +181,8 @@ pub async fn remove_package( }: RemovePackageParams, ) -> Result<(), Error> { let peek = ctx.db.peek().await; + let signer = + signer.ok_or_else(|| Error::new(eyre!("missing signer"), ErrorKind::InvalidRequest))?; let signer_guid = peek.as_index().as_signers().get_signer(&signer)?; ctx.db diff --git a/core/startos/src/registry/package/mod.rs b/core/startos/src/registry/package/mod.rs index 4419b4d19..621e040f4 100644 --- a/core/startos/src/registry/package/mod.rs +++ b/core/startos/src/registry/package/mod.rs @@ -34,6 +34,7 @@ pub fn package_api() -> ParentHandler { .subcommand( "remove", from_fn_async(add::remove_package) + .with_metadata("get_signer", Value::Bool(true)) .no_display() .with_about("Remove package from registry index") .with_call_remote::(),