- #70: implémentation suppression modèles locaux téléchargés - #100: correction scroll OpenCode - #102: correction fit TUI après switch/layout - memory note scoping UX
This commit is contained in:
@ -1339,6 +1339,7 @@ pub async fn save_model_server(
|
||||
.map_err(ErrorDto::from)?
|
||||
.servers
|
||||
.into_iter()
|
||||
.map(|item| item.config)
|
||||
.find(|config| config.id == server_id);
|
||||
let input = save_model_server_input(request, existing.as_ref())?;
|
||||
state
|
||||
@ -1388,6 +1389,26 @@ pub async fn delete_model_server(
|
||||
.map_err(model_server_command_error)
|
||||
}
|
||||
|
||||
/// `delete_model_artifact` — delete a managed downloaded model artifact while
|
||||
/// keeping the local model-server config.
|
||||
///
|
||||
/// # Errors
|
||||
/// Returns `invalid` for non-managed `localPath` sources, `model_server_in_use`
|
||||
/// when a download or live agent blocks deletion, and model-server errors for
|
||||
/// cache I/O failures.
|
||||
#[tauri::command]
|
||||
pub async fn delete_model_artifact(
|
||||
server_id: String,
|
||||
state: State<'_, AppState>,
|
||||
) -> Result<(), ErrorDto> {
|
||||
let server_id = parse_model_server_id(&server_id)?;
|
||||
state
|
||||
.delete_model_artifact
|
||||
.execute(application::DeleteModelArtifactInput { server_id })
|
||||
.await
|
||||
.map_err(model_server_command_error)
|
||||
}
|
||||
|
||||
fn model_server_command_error(err: AppError) -> ErrorDto {
|
||||
match err {
|
||||
AppError::ModelServer { code, message } => ErrorDto { code, message },
|
||||
|
||||
@ -265,6 +265,7 @@ pub fn run() {
|
||||
commands::save_model_server,
|
||||
commands::preview_model_server_command,
|
||||
commands::delete_model_server,
|
||||
commands::delete_model_artifact,
|
||||
commands::list_embedder_profiles,
|
||||
commands::save_embedder_profile,
|
||||
commands::delete_embedder_profile,
|
||||
|
||||
Reference in New Issue
Block a user