修复 AGC 资源 kind 收敛后的 Rust 默认值与工具栏用例
- agent/runtime_tools/media.rs:asset_kind 只在入参未声明(空白)时落通道默认值,显式认不出的值保持 Unknown 交给下游失败关闭。 - tests/project.rs:规范图 / 图集用例的入参改传 canonical kind(icon-spec / icon-spritesheet),用例名与断言同步。
This commit is contained in:
@@ -618,7 +618,12 @@ pub(in crate::agent) async fn observe_agent_runtime_platform_art_asset_generatio
|
||||
} else {
|
||||
requested_options.image_size
|
||||
},
|
||||
asset_kind: if requested_options.asset_kind.is_empty() {
|
||||
// kind 已是枚举,「空串」不再可表达:只有工具入参**没有**声明 assetKind(空白)才落
|
||||
// 本通道默认值。显式给了认不出的值仍是 `Unknown`,继续在下游按「不受支持」失败关闭,
|
||||
// 不做兜底猜测。
|
||||
asset_kind: if requested_options.asset_kind == GameCreationAppAssetKind::Unknown
|
||||
&& requested_asset_kind.trim().is_empty()
|
||||
{
|
||||
defaults.asset_kind
|
||||
} else {
|
||||
requested_options.asset_kind
|
||||
|
||||
@@ -3409,7 +3409,7 @@ async fn generate_local_project_asset_command_lands_the_requested_target_categor
|
||||
}
|
||||
|
||||
#[tokio::test]
|
||||
async fn generate_local_project_asset_command_maps_spec_onto_the_verified_icon_spec_channel() {
|
||||
async fn generate_local_project_asset_command_registers_icon_spec_with_the_spec_generation_kind() {
|
||||
let root = unique_project_path();
|
||||
let config_dir = unique_project_path();
|
||||
let base_url = spawn_mock_external_canvas_generation_api_server(None);
|
||||
@@ -3436,7 +3436,7 @@ async fn generate_local_project_asset_command_maps_spec_onto_the_verified_icon_s
|
||||
|
||||
let asset = generate_local_project_asset(
|
||||
root.to_string_lossy().into_owned(),
|
||||
"spec".to_string(),
|
||||
"icon-spec".to_string(),
|
||||
"原创收集玩法的统一视觉规范".to_string(),
|
||||
None,
|
||||
None,
|
||||
@@ -3457,7 +3457,7 @@ async fn generate_local_project_asset_command_maps_spec_onto_the_verified_icon_s
|
||||
.iter()
|
||||
.find(|entry| entry["id"].as_str() == Some(asset.id.as_str()))
|
||||
.expect("registered toolbar spec asset");
|
||||
// spec 必须收口到客户端验证过的 icon-spec,否则规范图无法作为 UI 原型与透明图集的权威参考。
|
||||
// 工具栏直接给 canonical kind;平台请求词汇 `spec` 只出现在 generationKind,不再参与登记。
|
||||
assert_eq!(entry["kind"], "icon-spec");
|
||||
assert_eq!(entry["source"]["generationKind"], "spec");
|
||||
assert_eq!(
|
||||
@@ -3476,7 +3476,8 @@ async fn generate_local_project_asset_command_maps_spec_onto_the_verified_icon_s
|
||||
}
|
||||
|
||||
#[tokio::test]
|
||||
async fn generate_local_project_asset_command_generates_art_spritesheet_from_the_registered_spec() {
|
||||
async fn generate_local_project_asset_command_generates_icon_spritesheet_from_the_registered_spec()
|
||||
{
|
||||
let root = unique_project_path();
|
||||
let config_dir = unique_project_path();
|
||||
let base_url = spawn_mock_external_canvas_generation_api_server(None);
|
||||
@@ -3504,7 +3505,7 @@ async fn generate_local_project_asset_command_generates_art_spritesheet_from_the
|
||||
// 透明图集必须有权威规范图:没有已登记的 icon-spec 时必须明确失败,不能静默降级成普通图。
|
||||
let missing_reference = generate_local_project_asset(
|
||||
root.to_string_lossy().into_owned(),
|
||||
"art-spritesheet".to_string(),
|
||||
"icon-spritesheet".to_string(),
|
||||
"原创收集玩法素材图集".to_string(),
|
||||
None,
|
||||
None,
|
||||
@@ -3533,7 +3534,7 @@ async fn generate_local_project_asset_command_generates_art_spritesheet_from_the
|
||||
|
||||
let asset = generate_local_project_asset(
|
||||
root.to_string_lossy().into_owned(),
|
||||
"art-spritesheet".to_string(),
|
||||
"icon-spritesheet".to_string(),
|
||||
"原创收集玩法素材图集".to_string(),
|
||||
Some("1:1".to_string()),
|
||||
Some("1K".to_string()),
|
||||
@@ -3555,7 +3556,7 @@ async fn generate_local_project_asset_command_generates_art_spritesheet_from_the
|
||||
.iter()
|
||||
.find(|entry| entry["id"].as_str() == Some(asset.id.as_str()))
|
||||
.expect("registered toolbar spritesheet asset");
|
||||
// 平台请求词汇 `art-spritesheet` 登记时收口成正式成员 `icon-spritesheet`。
|
||||
// 工具栏直接给 canonical kind;平台请求词汇 `icon-spritesheet` 只出现在 generationKind。
|
||||
assert_eq!(entry["kind"], "icon-spritesheet");
|
||||
assert_eq!(
|
||||
entry["source"]["generationRoute"],
|
||||
|
||||
Reference in New Issue
Block a user