run-workflow 的项目权限判据与工具命令映射对齐

- 内部 enforce_project_permission_policy 改用与并行账本一致的 asset.register,避免引入无法在项目策略里配置的私有命令 ID
This commit is contained in:
2026-09-23 21:48:12 +08:00
parent 784f6f0e32
commit 7f4012697f
@@ -26,7 +26,6 @@ use serde::{Deserialize, Serialize};
use serde_json::Value;
use std::path::Path;
const WORKFLOW_COMMAND_ID: &str = "ui_design.workflow";
const DRIFT_REASON: &str = "doc-state-drift";
#[derive(Clone, Debug, Deserialize)]
@@ -65,7 +64,8 @@ pub(crate) async fn run_ui_design_doc_workflow(
provider_identity: Option<(&str, &str)>,
) -> Result<RunUiDesignDocWorkflowOutput, String> {
let root = Path::new(input.project_path.trim());
enforce_project_permission_policy(root, WORKFLOW_COMMAND_ID)?;
// 与 Runtime 工具策略的命令映射一致:本工具等价于登记资源 + 写回 State。
enforce_project_permission_policy(root, "asset.register")?;
let (relative_path, snapshot) =
load_ui_design_document_snapshot_at(root, &input.expected_project_id, &input.asset_id)?;
let log = WorkflowLog::open(root, &relative_path)?;