diff --git a/apps/ai-game-creator-shell/src-tauri/build_support/runtime_prompt_bundle.rs b/apps/ai-game-creator-shell/src-tauri/build_support/runtime_prompt_bundle.rs index eb91bc7a7..45e5d4601 100644 --- a/apps/ai-game-creator-shell/src-tauri/build_support/runtime_prompt_bundle.rs +++ b/apps/ai-game-creator-shell/src-tauri/build_support/runtime_prompt_bundle.rs @@ -337,7 +337,7 @@ pub fn compile_manifest(manifest_path: &Path) -> Result Result Result<(), Str register("roleOverlays", section); } } - for (_, _, section) in provider_fragment_entries(&manifest.provider_fragments) { + for (_, section) in provider_fragment_entries(&manifest.provider_fragments) { register("providerFragments", section); } @@ -463,48 +463,40 @@ fn validate_section_ownership(manifest: &PromptBundleManifest) -> Result<(), Str Ok(()) } -fn provider_fragment_entries( - fragments: &ProviderFragments, -) -> [(&'static str, &'static str, &String); 8] { +/// 返回 `(manifest 路径键, section 键)`:常量名标签随退役 Runtime 的 `RUNTIME_PROMPT_*` 生成逻辑一并停发, +/// 只剩校验与所有权归属两处用途,因此不再携带常量名字符串。 +fn provider_fragment_entries(fragments: &ProviderFragments) -> [(&'static str, &String); 8] { [ ( "providerFragments.isolatedToolContract", - "RUNTIME_PROMPT_PROVIDER_ISOLATED_TOOL_CONTRACT_SECTION", &fragments.isolated_tool_contract, ), ( "providerFragments.autonomousRunProfile", - "RUNTIME_PROMPT_PROVIDER_AUTONOMOUS_RUN_PROFILE_SECTION", &fragments.autonomous_run_profile, ), ( "providerFragments.autonomousSupervisorManifest", - "RUNTIME_PROMPT_PROVIDER_AUTONOMOUS_SUPERVISOR_MANIFEST_SECTION", &fragments.autonomous_supervisor_manifest, ), ( "providerFragments.initialCollaborationRepair", - "RUNTIME_PROMPT_PROVIDER_INITIAL_COLLABORATION_REPAIR_SECTION", &fragments.initial_collaboration_repair, ), ( "providerFragments.autonomousInitialCollaborationRepair", - "RUNTIME_PROMPT_PROVIDER_AUTONOMOUS_INITIAL_COLLABORATION_REPAIR_SECTION", &fragments.autonomous_initial_collaboration_repair, ), ( "providerFragments.supervisorDeliveryConvergenceRepair", - "RUNTIME_PROMPT_PROVIDER_SUPERVISOR_DELIVERY_CONVERGENCE_REPAIR_SECTION", &fragments.supervisor_delivery_convergence_repair, ), ( "providerFragments.manifestDagWaitRepair", - "RUNTIME_PROMPT_PROVIDER_MANIFEST_DAG_WAIT_REPAIR_SECTION", &fragments.manifest_dag_wait_repair, ), ( "providerFragments.delegatedPlaytestRepair", - "RUNTIME_PROMPT_PROVIDER_DELEGATED_PLAYTEST_REPAIR_SECTION", &fragments.delegated_playtest_repair, ), ] diff --git a/apps/ai-game-creator-shell/src-tauri/src/command_exec.rs b/apps/ai-game-creator-shell/src-tauri/src/command_exec.rs index c72cbd7d0..085d4fb91 100644 --- a/apps/ai-game-creator-shell/src-tauri/src/command_exec.rs +++ b/apps/ai-game-creator-shell/src-tauri/src/command_exec.rs @@ -8,8 +8,8 @@ use tokio::io::AsyncReadExt; #[cfg(target_os = "linux")] use crate::command_sandbox::{ - command_sandbox_platform_metadata, prepare_command_sandbox_launch, stage_command_sandbox_launch, - CommandSandboxLaunch, + command_sandbox_platform_metadata, prepare_command_sandbox_launch, + stage_command_sandbox_launch, CommandSandboxLaunch, }; #[cfg(target_os = "linux")] use crate::command_sandbox_trampoline::{LaunchGate, TargetExecState, TargetTerminalState}; diff --git a/apps/ai-game-creator-shell/src-tauri/src/game_distribution_publish.rs b/apps/ai-game-creator-shell/src-tauri/src/game_distribution_publish.rs index 5439b2640..e2484fb12 100644 --- a/apps/ai-game-creator-shell/src-tauri/src/game_distribution_publish.rs +++ b/apps/ai-game-creator-shell/src-tauri/src/game_distribution_publish.rs @@ -218,7 +218,8 @@ struct CreatedVersion { /// 作者名下作品条目(`GET /my-games` 列表项与 `GET /my-games/{gameId}` 的 `game`)。 /// -/// 只声明恢复绑定需要的字段:游戏身份、`localProjectId`、最近版本与公开修订号。 +/// 只声明恢复绑定需要的字段:游戏身份、最近版本与公开修订号。`localProjectId` 只在测试态编译: +/// 生产按本地 manifest 的 `projectId` 匹配(见 `read_game_distribution_publication`),仅解析用例读它。 #[derive(Clone, Debug, Default, Deserialize)] #[serde(rename_all = "camelCase")] struct OwnerGameEntry { diff --git a/apps/ai-game-creator-shell/src-tauri/src/image_inspect.rs b/apps/ai-game-creator-shell/src-tauri/src/image_inspect.rs index e35eaf31b..5cf141e3f 100644 --- a/apps/ai-game-creator-shell/src-tauri/src/image_inspect.rs +++ b/apps/ai-game-creator-shell/src-tauri/src/image_inspect.rs @@ -84,11 +84,8 @@ pub(crate) fn load_local_project_image_preview_with_cancellation( let absolute = resolve_local_project_path(root, &normalized)?; validate_agent_runtime_inspection_ancestors(root, &absolute)?; cancellation.check()?; - let image = read_agent_runtime_inspection_image_with_cancellation( - &absolute, - normalized, - cancellation, - )?; + let image = + read_agent_runtime_inspection_image_with_cancellation(&absolute, normalized, cancellation)?; cancellation.check()?; // 头部级 alpha 判据:只读签名与头部标志(PNG 还会按 chunk 头跳过数据体找 `tRNS`), // 不做熵解码、不做逐像素扫描,成本不随像素数增长,因此大图与「AI 把棋盘格画进图里」 @@ -1001,7 +998,9 @@ mod tests { root.path().join("assets/linked-parent"), ) .expect("parent symlink"); - assert!(load_local_project_image_preview(root.path(), "assets/linked-parent/image.png") - .is_err()); + assert!( + load_local_project_image_preview(root.path(), "assets/linked-parent/image.png") + .is_err() + ); } }