From a324b04a1dfcb7bc733f43182771c2253095eede Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Mon, 23 Mar 2026 22:37:11 -0400 Subject: [PATCH] begin populating extra prompt details --- .../steps/validate_and_save_results.rs | 5 ++ .../flux_2_lora_edit_image_angle_handler.rs | 3 +- ...qwen_edit_2511_edit_image_angle_handler.rs | 3 +- ...flux_pro_kontext_max_edit_image_handler.rs | 3 +- .../gemini_25_flash_edit_image_handler.rs | 3 +- .../edit/gpt_image_1_edit_image_handler.rs | 3 +- .../image/edit/qwen_edit_image_handler.rs | 3 +- .../edit/seededit_3_edit_image_handler.rs | 3 +- ...nerate_flux_1_dev_text_to_image_handler.rs | 5 +- ...te_flux_1_schnell_text_to_image_handler.rs | 3 +- ...erate_flux_pro_11_text_to_image_handler.rs | 3 +- ...flux_pro_11_ultra_text_to_image_handler.rs | 3 +- ...erate_gpt_image_1_text_to_image_handler.rs | 3 +- .../flux_dev_juggernaut_inpaint_handler.rs | 3 +- .../inpaint/flux_pro_1_inpaint_handler.rs | 3 +- ...5_lite_multi_function_image_gen_handler.rs | 2 +- ...eam_v4_multi_function_image_gen_handler.rs | 2 +- ...m_v4p5_multi_function_image_gen_handler.rs | 2 +- ...ge_1p5_multi_function_image_gen_handler.rs | 2 +- ...nana_2_multi_function_image_gen_handler.rs | 2 +- ...banana_multi_function_image_gen_handler.rs | 2 +- ...na_pro_multi_function_image_gen_handler.rs | 2 +- ...enerate_hunyuan_2_0_image_to_3d_handler.rs | 74 ++++++++++++++++++- ...enerate_hunyuan_2_1_image_to_3d_handler.rs | 73 +++++++++++++++++- ...yuan3d_v3_multi_function_object_handler.rs | 2 +- ...worldlabs_marble_0p1_mini_splat_handler.rs | 3 +- ...worldlabs_marble_0p1_plus_splat_handler.rs | 3 +- ...eedance_1_0_lite_image_to_video_handler.rs | 3 +- ...seedance_1_0_pro_image_to_video_handler.rs | 3 +- .../generate_veo_2_image_to_video_handler.rs | 3 +- ...erate_veo_3_fast_image_to_video_handler.rs | 5 +- .../generate_veo_3_image_to_video_handler.rs | 5 +- ...bo_pro_multi_function_video_gen_handler.rs | 2 +- ...p6_pro_multi_function_video_gen_handler.rs | 4 +- ...p0_pro_multi_function_video_gen_handler.rs | 4 +- ...andard_multi_function_video_gen_handler.rs | 4 +- ...p5_pro_multi_function_video_gen_handler.rs | 4 +- ...ce_2p0_multi_function_video_gen_handler.rs | 2 +- ...sora_2_multi_function_video_gen_handler.rs | 2 +- ..._2_pro_multi_function_video_gen_handler.rs | 2 +- ...1_fast_multi_function_video_gen_handler.rs | 4 +- ...eo_3p1_multi_function_video_gen_handler.rs | 4 +- 42 files changed, 217 insertions(+), 52 deletions(-) diff --git a/crates/service/job/deprecated/inference_job/src/job/job_types/workflow/video_style_transfer/steps/validate_and_save_results.rs b/crates/service/job/deprecated/inference_job/src/job/job_types/workflow/video_style_transfer/steps/validate_and_save_results.rs index 24dda25160..bdf2c2b373 100644 --- a/crates/service/job/deprecated/inference_job/src/job/job_types/workflow/video_style_transfer/steps/validate_and_save_results.rs +++ b/crates/service/job/deprecated/inference_job/src/job/job_types/workflow/video_style_transfer/steps/validate_and_save_results.rs @@ -295,6 +295,11 @@ pub async fn validate_and_save_results(args: SaveResultsArgs<'_>) -> Result Some(token), + Err(err) => { + warn!("Error inserting prompt: {:?}", err); + None // Don't fail the job if the prompt insertion fails. + } + }; + + // Insert context items for any images used + if let Some(token) = prompt_token.as_ref() { + let mut context_items = Vec::new(); + + context_items.push(PromptContextItem { + media_token: media_file.token.clone(), + context_semantic_type: PromptContextSemanticType::Imgref, + }); + + if !context_items.is_empty() { + let result = insert_batch_prompt_context_items(InsertBatchArgs { + prompt_token: token.clone(), + items: context_items, + transaction: &mut transaction, + }).await; + + if let Err(err) = result { + // NB: Fail open. + warn!("Error inserting batch prompt context items: {:?}", err); + } + } + } + let db_result = insert_generic_inference_job_for_fal_queue(InsertGenericInferenceForFalArgs { uuid_idempotency_token: &request.uuid_idempotency_token, maybe_external_third_party_id: &external_job_id, fal_category: FalCategory::ObjectGeneration, maybe_inference_args: None, - maybe_prompt_token: None, + maybe_prompt_token: prompt_token.as_ref(), maybe_creator_user_token: maybe_user_session.as_ref().map(|s| &s.user_token), maybe_avt_token: maybe_avt_token.as_ref(), creator_ip_address: &ip_address, creator_set_visibility: Visibility::Public, - mysql_executor: &mut *mysql_connection, + mysql_executor: &mut *transaction, phantom: Default::default(), }).await; @@ -167,6 +232,11 @@ pub async fn generate_hunyuan_2_0_image_to_3d_handler( } }; + let _r = transaction.commit().await.map_err(|err| { + error!("Error committing MySQL transaction: {:?}", err); + CommonWebError::ServerError + })?; + Ok(Json(GenerateHunyuan20ImageTo3dResponse { success: true, inference_job_token: job_token, diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/object/generate_hunyuan_2_1_image_to_3d_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/object/generate_hunyuan_2_1_image_to_3d_handler.rs index 3ebb5600d8..f37fcd48bb 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/object/generate_hunyuan_2_1_image_to_3d_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/object/generate_hunyuan_2_1_image_to_3d_handler.rs @@ -15,12 +15,19 @@ use fal_client::requests::webhook::object::enqueue_hunyuan_3d_21_image_to_3d_web use fal_client::requests::webhook::object::enqueue_hunyuan_3d_21_image_to_3d_webhook::Hunyuan3d21Args; use http_server_common::request::get_request_ip::get_request_ip; use log::{error, info, warn}; +use sqlx::Acquire; use mysql_queries::queries::generic_inference::fal::insert_generic_inference_job_for_fal_queue::insert_generic_inference_job_for_fal_queue; use mysql_queries::queries::generic_inference::fal::insert_generic_inference_job_for_fal_queue::FalCategory; use mysql_queries::queries::generic_inference::fal::insert_generic_inference_job_for_fal_queue::InsertGenericInferenceForFalArgs; use mysql_queries::queries::idepotency_tokens::insert_idempotency_token::insert_idempotency_token; use mysql_queries::queries::media_files::get::get_media_file::{get_media_file, get_media_file_with_connection}; use utoipa::ToSchema; +use enums::by_table::prompt_context_items::prompt_context_semantic_type::PromptContextSemanticType; +use enums::by_table::prompts::prompt_type::PromptType; +use enums::common::generation::common_model_type::CommonModelType; +use enums::common::generation_provider::GenerationProvider; +use mysql_queries::queries::prompt_context_items::insert_batch_prompt_context_items::{insert_batch_prompt_context_items, InsertBatchArgs, PromptContextItem}; +use mysql_queries::queries::prompts::insert_prompt::{insert_prompt, InsertPromptArgs}; /// Hunyuan 2.1 Image to 3D #[utoipa::path( @@ -145,17 +152,74 @@ pub async fn generate_hunyuan_2_1_image_to_3d_handler( let ip_address = get_request_ip(&http_request); + let mut transaction = mysql_connection.begin().await.map_err(|err| { + error!("Error starting MySQL transaction: {:?}", err); + CommonWebError::ServerError + })?; + + // Insert prompt record if we have a prompt + let prompt_result = insert_prompt(InsertPromptArgs { + maybe_apriori_prompt_token: None, + prompt_type: PromptType::ArtcraftApp, + maybe_creator_user_token: maybe_user_session.as_ref().map(|s| &s.user_token), + maybe_model_type: Some(CommonModelType::Hunyuan3d2_1), + maybe_generation_provider: Some(GenerationProvider::Artcraft), + maybe_positive_prompt: None, + maybe_negative_prompt: None, + maybe_other_args: None, + maybe_generation_mode: None, + maybe_aspect_ratio: None, + maybe_resolution: None, + maybe_batch_count: None, + maybe_generate_audio: None, + creator_ip_address: &ip_address, + mysql_executor: &mut *transaction, + phantom: Default::default(), + }) + .await; + + let prompt_token = match prompt_result { + Ok(token) => Some(token), + Err(err) => { + warn!("Error inserting prompt: {:?}", err); + None // Don't fail the job if the prompt insertion fails. + } + }; + + // Insert context items for any images used + if let Some(token) = prompt_token.as_ref() { + let mut context_items = Vec::new(); + + context_items.push(PromptContextItem { + media_token: media_file.token.clone(), + context_semantic_type: PromptContextSemanticType::Imgref, + }); + + if !context_items.is_empty() { + let result = insert_batch_prompt_context_items(InsertBatchArgs { + prompt_token: token.clone(), + items: context_items, + transaction: &mut transaction, + }).await; + + if let Err(err) = result { + // NB: Fail open. + warn!("Error inserting batch prompt context items: {:?}", err); + } + } + } + let db_result = insert_generic_inference_job_for_fal_queue(InsertGenericInferenceForFalArgs { uuid_idempotency_token: &request.uuid_idempotency_token, maybe_external_third_party_id: &external_job_id, fal_category: FalCategory::ObjectGeneration, maybe_inference_args: None, - maybe_prompt_token: None, + maybe_prompt_token: prompt_token.as_ref(), maybe_creator_user_token: maybe_user_session.as_ref().map(|s| &s.user_token), maybe_avt_token: maybe_avt_token.as_ref(), creator_ip_address: &ip_address, creator_set_visibility: Visibility::Public, - mysql_executor: &mut *mysql_connection, + mysql_executor: &mut *transaction, phantom: Default::default(), }).await; @@ -167,6 +231,11 @@ pub async fn generate_hunyuan_2_1_image_to_3d_handler( } }; + let _r = transaction.commit().await.map_err(|err| { + error!("Error committing MySQL transaction: {:?}", err); + CommonWebError::ServerError + })?; + Ok(Json(GenerateHunyuan21ImageTo3dResponse { success: true, inference_job_token: job_token, diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/object/multi_function/generate_hunyuan3d_v3_multi_function_object_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/object/multi_function/generate_hunyuan3d_v3_multi_function_object_handler.rs index bfb01ba139..c8dd545877 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/object/multi_function/generate_hunyuan3d_v3_multi_function_object_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/object/multi_function/generate_hunyuan3d_v3_multi_function_object_handler.rs @@ -307,7 +307,7 @@ pub async fn generate_hunyuan3d_v3_multi_function_object_handler( maybe_positive_prompt: request.prompt.as_deref(), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: None, // TODO: Multi-function handlers support multiple modes maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/splat/generate_worldlabs_marble_0p1_mini_splat_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/splat/generate_worldlabs_marble_0p1_mini_splat_handler.rs index dacefcb116..a97f4bb651 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/splat/generate_worldlabs_marble_0p1_mini_splat_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/splat/generate_worldlabs_marble_0p1_mini_splat_handler.rs @@ -15,6 +15,7 @@ use enums::by_table::prompts::prompt_type::PromptType; use enums::common::generation_provider::GenerationProvider; use enums::common::generation::common_model_type::CommonModelType; use enums::common::visibility::Visibility; +use enums::common::generation::common_generation_mode::CommonGenerationMode; use http_server_common::request::get_request_ip::get_request_ip; use log::{error, info, warn}; use mysql_queries::queries::generic_inference::worldlabs::insert_generic_inference_job_for_worldlabs_queue_with_apriori_job_token::{insert_generic_inference_job_for_worldlabs_queue_with_apriori_job_token, InsertGenericInferenceForWorldlabsWithAprioriJobTokenArgs}; @@ -179,7 +180,7 @@ pub async fn generate_worldlabs_marble_0p1_mini_splat_handler( maybe_positive_prompt: request.prompt.as_deref(), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: Some(CommonGenerationMode::Reference), maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/splat/generate_worldlabs_marble_0p1_plus_splat_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/splat/generate_worldlabs_marble_0p1_plus_splat_handler.rs index d4c8ee6c9d..5a25eb523d 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/splat/generate_worldlabs_marble_0p1_plus_splat_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/splat/generate_worldlabs_marble_0p1_plus_splat_handler.rs @@ -15,6 +15,7 @@ use enums::by_table::prompts::prompt_type::PromptType; use enums::common::generation_provider::GenerationProvider; use enums::common::generation::common_model_type::CommonModelType; use enums::common::visibility::Visibility; +use enums::common::generation::common_generation_mode::CommonGenerationMode; use http_server_common::request::get_request_ip::get_request_ip; use log::{error, info, warn}; use mysql_queries::queries::generic_inference::worldlabs::insert_generic_inference_job_for_worldlabs_queue_with_apriori_job_token::{insert_generic_inference_job_for_worldlabs_queue_with_apriori_job_token, InsertGenericInferenceForWorldlabsWithAprioriJobTokenArgs}; @@ -179,7 +180,7 @@ pub async fn generate_worldlabs_marble_0p1_plus_splat_handler( maybe_positive_prompt: request.prompt.as_deref(), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: Some(CommonGenerationMode::Reference), maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_seedance_1_0_lite_image_to_video_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_seedance_1_0_lite_image_to_video_handler.rs index cabe46b319..edfbb12f11 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_seedance_1_0_lite_image_to_video_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_seedance_1_0_lite_image_to_video_handler.rs @@ -20,6 +20,7 @@ use enums::by_table::prompts::prompt_type::PromptType; use enums::common::generation_provider::GenerationProvider; use enums::common::generation::common_model_type::CommonModelType; use enums::common::visibility::Visibility; +use enums::common::generation::common_generation_mode::CommonGenerationMode; use fal_client::requests::traits::fal_request_cost_calculator_trait::FalRequestCostCalculator; use fal_client::requests::webhook::video::image::enqueue_seedance_1_lite_image_to_video_webhook::Seedance1LiteDuration; use fal_client::requests::webhook::video::image::enqueue_seedance_1_lite_image_to_video_webhook::{enqueue_seedance_1_lite_image_to_video_webhook, Seedance1LiteAspectRatio}; @@ -238,7 +239,7 @@ pub async fn generate_seedance_1_0_lite_image_to_video_handler( maybe_positive_prompt: Some(prompt), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: Some(CommonGenerationMode::Keyframe), maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_seedance_1_0_pro_image_to_video_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_seedance_1_0_pro_image_to_video_handler.rs index 560f70b697..23076d17bc 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_seedance_1_0_pro_image_to_video_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_seedance_1_0_pro_image_to_video_handler.rs @@ -20,6 +20,7 @@ use enums::by_table::prompts::prompt_type::PromptType; use enums::common::generation_provider::GenerationProvider; use enums::common::generation::common_model_type::CommonModelType; use enums::common::visibility::Visibility; +use enums::common::generation::common_generation_mode::CommonGenerationMode; use fal_client::requests::traits::fal_request_cost_calculator_trait::FalRequestCostCalculator; use fal_client::requests::webhook::video::image::enqueue_seedance_1_pro_image_to_video_webhook::enqueue_seedance_1_pro_image_to_video_webhook; use fal_client::requests::webhook::video::image::enqueue_seedance_1_pro_image_to_video_webhook::Seedance1ProDuration; @@ -215,7 +216,7 @@ pub async fn generate_seedance_1_0_pro_image_to_video_handler( maybe_positive_prompt: Some(prompt), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: Some(CommonGenerationMode::Keyframe), maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_veo_2_image_to_video_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_veo_2_image_to_video_handler.rs index 9eba686326..97acc74294 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_veo_2_image_to_video_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_veo_2_image_to_video_handler.rs @@ -20,6 +20,7 @@ use enums::by_table::prompts::prompt_type::PromptType; use enums::common::generation_provider::GenerationProvider; use enums::common::generation::common_model_type::CommonModelType; use enums::common::visibility::Visibility; +use enums::common::generation::common_generation_mode::CommonGenerationMode; use fal_client::requests::traits::fal_request_cost_calculator_trait::FalRequestCostCalculator; use fal_client::requests::webhook::video::image::enqueue_veo_2_image_to_video_webhook::enqueue_veo_2_image_to_video_webhook; use fal_client::requests::webhook::video::image::enqueue_veo_2_image_to_video_webhook::Veo2Args; @@ -219,7 +220,7 @@ pub async fn generate_veo_2_image_to_video_handler( maybe_positive_prompt: Some(prompt), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: Some(CommonGenerationMode::Keyframe), maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_veo_3_fast_image_to_video_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_veo_3_fast_image_to_video_handler.rs index c28b610d78..12924ca58f 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_veo_3_fast_image_to_video_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_veo_3_fast_image_to_video_handler.rs @@ -17,6 +17,7 @@ use enums::by_table::prompts::prompt_type::PromptType; use enums::common::generation_provider::GenerationProvider; use enums::common::generation::common_model_type::CommonModelType; use enums::common::visibility::Visibility; +use enums::common::generation::common_generation_mode::CommonGenerationMode; use fal_client::requests::traits::fal_request_cost_calculator_trait::FalRequestCostCalculator; use fal_client::requests::webhook::video::image::enqueue_veo_3_fast_image_to_video_webhook::{enqueue_veo_3_fast_image_to_video_webhook, Veo3FastArgs, Veo3FastDuration, Veo3FastResolution}; use http_server_common::request::get_request_ip::get_request_ip; @@ -212,11 +213,11 @@ pub async fn generate_veo_3_fast_image_to_video_handler( maybe_positive_prompt: Some(prompt), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: Some(CommonGenerationMode::Keyframe), maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, - maybe_generate_audio: None, + maybe_generate_audio: Some(generate_audio), creator_ip_address: &ip_address, mysql_executor: &mut *transaction, phantom: Default::default(), diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_veo_3_image_to_video_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_veo_3_image_to_video_handler.rs index 231628b60d..9de344a982 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_veo_3_image_to_video_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/generate_veo_3_image_to_video_handler.rs @@ -17,6 +17,7 @@ use enums::by_table::prompts::prompt_type::PromptType; use enums::common::generation_provider::GenerationProvider; use enums::common::generation::common_model_type::CommonModelType; use enums::common::visibility::Visibility; +use enums::common::generation::common_generation_mode::CommonGenerationMode; use fal_client::requests::traits::fal_request_cost_calculator_trait::FalRequestCostCalculator; use fal_client::requests::webhook::video::image::enqueue_veo_3_image_to_video_webhook::{enqueue_veo_3_image_to_video_webhook, Veo3Args, Veo3AspectRatio, Veo3Duration, Veo3Resolution}; use http_server_common::request::get_request_ip::get_request_ip; @@ -220,11 +221,11 @@ pub async fn generate_veo_3_image_to_video_handler( maybe_positive_prompt: Some(prompt), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: Some(CommonGenerationMode::Keyframe), maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, - maybe_generate_audio: None, + maybe_generate_audio: Some(generate_audio), creator_ip_address: &ip_address, mysql_executor: &mut *transaction, phantom: Default::default(), diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_2p5_turbo_pro_multi_function_video_gen_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_2p5_turbo_pro_multi_function_video_gen_handler.rs index 9df9f0a852..dceb2f4500 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_2p5_turbo_pro_multi_function_video_gen_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_2p5_turbo_pro_multi_function_video_gen_handler.rs @@ -261,7 +261,7 @@ pub async fn kling_2p5_turbo_pro_multi_function_video_gen_handler( maybe_positive_prompt: request.prompt.as_deref(), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: None, // TODO: Multi-function handlers support multiple modes maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_2p6_pro_multi_function_video_gen_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_2p6_pro_multi_function_video_gen_handler.rs index e17164e1e1..2beb61ad3c 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_2p6_pro_multi_function_video_gen_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_2p6_pro_multi_function_video_gen_handler.rs @@ -260,11 +260,11 @@ pub async fn kling_2p6_pro_multi_function_video_gen_handler( maybe_positive_prompt: request.prompt.as_deref(), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: None, // TODO: Multi-function handlers support multiple modes maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, - maybe_generate_audio: None, + maybe_generate_audio: request.generate_audio, creator_ip_address: &ip_address, mysql_executor: &mut *transaction, phantom: Default::default(), diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_3p0_pro_multi_function_video_gen_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_3p0_pro_multi_function_video_gen_handler.rs index 7172a25ee8..4e416712fe 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_3p0_pro_multi_function_video_gen_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_3p0_pro_multi_function_video_gen_handler.rs @@ -309,11 +309,11 @@ pub async fn kling_3p0_pro_multi_function_video_gen_handler( maybe_positive_prompt: request.prompt.as_deref(), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: None, // TODO: Multi-function handlers support multiple modes maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, - maybe_generate_audio: None, + maybe_generate_audio: Some(generate_audio), creator_ip_address: &ip_address, mysql_executor: &mut *transaction, phantom: Default::default(), diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_3p0_standard_multi_function_video_gen_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_3p0_standard_multi_function_video_gen_handler.rs index 4076f1193a..63c3086964 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_3p0_standard_multi_function_video_gen_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/kling_3p0_standard_multi_function_video_gen_handler.rs @@ -309,11 +309,11 @@ pub async fn kling_3p0_standard_multi_function_video_gen_handler( maybe_positive_prompt: request.prompt.as_deref(), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: None, // TODO: Multi-function handlers support multiple modes maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, - maybe_generate_audio: None, + maybe_generate_audio: Some(generate_audio), creator_ip_address: &ip_address, mysql_executor: &mut *transaction, phantom: Default::default(), diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/seedance_1p5_pro_multi_function_video_gen_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/seedance_1p5_pro_multi_function_video_gen_handler.rs index fba0c7746c..65b4410e23 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/seedance_1p5_pro_multi_function_video_gen_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/seedance_1p5_pro_multi_function_video_gen_handler.rs @@ -314,11 +314,11 @@ pub async fn seedance_1p5_pro_multi_function_video_gen_handler( maybe_positive_prompt: request.prompt.as_deref(), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: None, // TODO: Multi-function handlers support multiple modes maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, - maybe_generate_audio: None, + maybe_generate_audio: Some(generate_audio), creator_ip_address: &ip_address, mysql_executor: &mut *transaction, phantom: Default::default(), diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/seedance_2p0_multi_function_video_gen_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/seedance_2p0_multi_function_video_gen_handler.rs index d92cacfd9d..e4350531e2 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/seedance_2p0_multi_function_video_gen_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/seedance_2p0_multi_function_video_gen_handler.rs @@ -273,7 +273,7 @@ pub async fn seedance_2p0_multi_function_video_gen_handler( maybe_positive_prompt: request.prompt.as_deref(), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: None, // TODO: Multi-function handlers support multiple modes maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/sora_2_multi_function_video_gen_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/sora_2_multi_function_video_gen_handler.rs index bb14e39248..dbcacc2336 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/sora_2_multi_function_video_gen_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/sora_2_multi_function_video_gen_handler.rs @@ -280,7 +280,7 @@ pub async fn sora_2_multi_function_video_gen_handler( maybe_positive_prompt: request.prompt.as_deref(), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: None, // TODO: Multi-function handlers support multiple modes maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/sora_2_pro_multi_function_video_gen_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/sora_2_pro_multi_function_video_gen_handler.rs index c1c83cec32..ce10a2fbee 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/sora_2_pro_multi_function_video_gen_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/sora_2_pro_multi_function_video_gen_handler.rs @@ -282,7 +282,7 @@ pub async fn sora_2_pro_multi_function_video_gen_handler( maybe_positive_prompt: request.prompt.as_deref(), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: None, // TODO: Multi-function handlers support multiple modes maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/veo_3p1_fast_multi_function_video_gen_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/veo_3p1_fast_multi_function_video_gen_handler.rs index 0e6a9c69ef..8aab1ec1e9 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/veo_3p1_fast_multi_function_video_gen_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/veo_3p1_fast_multi_function_video_gen_handler.rs @@ -345,11 +345,11 @@ pub async fn veo_3p1_fast_multi_function_video_gen_handler( maybe_positive_prompt: request.prompt.as_deref(), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: None, // TODO: Multi-function handlers support multiple modes maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, - maybe_generate_audio: None, + maybe_generate_audio: Some(generate_audio), creator_ip_address: &ip_address, mysql_executor: &mut *transaction, phantom: Default::default(), diff --git a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/veo_3p1_multi_function_video_gen_handler.rs b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/veo_3p1_multi_function_video_gen_handler.rs index 42e0afcb77..f037e36fcd 100644 --- a/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/veo_3p1_multi_function_video_gen_handler.rs +++ b/crates/service/web/storyteller_web/src/http_server/endpoints/generate/video/multi_function/veo_3p1_multi_function_video_gen_handler.rs @@ -345,11 +345,11 @@ pub async fn veo_3p1_multi_function_video_gen_handler( maybe_positive_prompt: request.prompt.as_deref(), maybe_negative_prompt: None, maybe_other_args: None, - maybe_generation_mode: None, + maybe_generation_mode: None, // TODO: Multi-function handlers support multiple modes maybe_aspect_ratio: None, maybe_resolution: None, maybe_batch_count: None, - maybe_generate_audio: None, + maybe_generate_audio: Some(generate_audio), creator_ip_address: &ip_address, mysql_executor: &mut *transaction, phantom: Default::default(),