This commit is contained in:
Brandon Thomas committed 2025-12-23 21:44:19 -05:00
1 parent af22c41519
commit a0bc38ad52
7 files changed
+4 -82

No files matched your search

@@ -0,0 +1 @@
pub mod handle_generic_bg_removal_artcraft;
@@ -1,6 +1,6 @@
use crate::core::commands::enqueue::common::notify_frontend_of_errors::notify_frontend_of_errors;
use crate::core::commands::enqueue::generate_error::{BadInputReason, GenerateError};
use crate::core::commands::enqueue::image_bg_removal::generic::handle_generic_bg_removal::handle_generic_bg_removal;
use crate::core::commands::enqueue::image_bg_removal::artcraft::handle_generic_bg_removal_artcraft::handle_generic_bg_removal_artcraft;
use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess;
use crate::core::commands::response::failure_response_wrapper::{CommandErrorResponseWrapper, CommandErrorStatus};
use crate::core::commands::response::shorthand::{Response, ResponseOrErrorType};
@@ -164,12 +164,11 @@ pub async fn handle_request(
// TODO(bt,2025-07-07): Other model/provider routing...
let success_event = handle_generic_bg_removal(
let success_event = handle_generic_bg_removal_artcraft(
request,
app,
app_data_root,
app_env_configs,
provider_priority_store,
storyteller_creds_manager,
).await?;
@@ -1,60 +0,0 @@
use crate::core::commands::enqueue::generate_error::GenerateError;
use crate::core::commands::enqueue::image_bg_removal::enqueue_image_bg_removal_command::EnqueueImageBgRemovalCommand;
use crate::core::commands::enqueue::image_bg_removal::generic::handle_generic_bg_removal_artcraft::handle_generic_bg_removal_artcraft;
use crate::core::commands::enqueue::image_bg_removal::generic::handle_generic_bg_removal_fal::handle_generic_bg_removal_fal;
use crate::core::commands::enqueue::image_edit::enqueue_edit_image_command::EnqueueEditImageCommand;
use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess;
use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs;
use crate::core::state::data_dir::app_data_root::AppDataRoot;
use crate::core::state::provider_priority::{Provider, ProviderPriorityStore};
use crate::services::sora::state::sora_credential_manager::SoraCredentialManager;
use crate::services::sora::state::sora_task_queue::SoraTaskQueue;
use crate::services::storyteller::state::storyteller_credential_manager::StorytellerCredentialManager;
use log::info;
use tauri::AppHandle;
pub async fn handle_generic_bg_removal(
request: &EnqueueImageBgRemovalCommand,
app: &AppHandle,
app_data_root: &AppDataRoot,
app_env_configs: &AppEnvConfigs,
provider_priority_store: &ProviderPriorityStore,
storyteller_creds_manager: &StorytellerCredentialManager,
) -> Result<TaskEnqueueSuccess, GenerateError> {
let priority = provider_priority_store.get_priority()?;
// TODO: Check if providers are available before proceeding.
info!("Providers by priority: {:?}", priority);
for provider in priority.iter() {
match provider {
Provider::Sora => {
// Fallthrough
// Sora doesn't have background removal
}
Provider::Artcraft => {
info!("Removing background via Artcraft...");
return handle_generic_bg_removal_artcraft(
request,
app,
app_data_root,
app_env_configs,
storyteller_creds_manager
).await;
}
Provider::Fal => {
info!("Removing background via Fal...");
return handle_generic_bg_removal_fal(
request,
app,
app_data_root,
app_env_configs,
).await;
}
}
}
Err(GenerateError::NoProviderAvailable)
}
@@ -1,15 +0,0 @@
use crate::core::commands::enqueue::generate_error::GenerateError;
use crate::core::commands::enqueue::image_bg_removal::enqueue_image_bg_removal_command::EnqueueImageBgRemovalCommand;
use crate::core::commands::enqueue::task_enqueue_success::TaskEnqueueSuccess;
use crate::core::state::app_env_configs::app_env_configs::AppEnvConfigs;
use crate::core::state::data_dir::app_data_root::AppDataRoot;
use tauri::AppHandle;
pub async fn handle_generic_bg_removal_fal(
request: &EnqueueImageBgRemovalCommand,
app: &AppHandle,
app_data_root: &AppDataRoot,
app_env_configs: &AppEnvConfigs,
) -> Result<TaskEnqueueSuccess, GenerateError> {
Err(GenerateError::NotYetImplemented("TODO: Implement fal background removal handling".to_string()))
}
@@ -1,3 +0,0 @@
pub mod handle_generic_bg_removal;
pub mod handle_generic_bg_removal_artcraft;
pub mod handle_generic_bg_removal_fal;
@@ -1,2 +1,2 @@
pub mod enqueue_image_bg_removal_command;
pub mod generic;
pub (super) mod artcraft;