问题
#87 已确定工作流编辑器采用卡片加号式编排,但旧页面代码仍依赖已移除的 action-generation 步骤、旧 Controller 命令,以及重复的 Publish / Review Feature,无法接入当前 WorkflowRun 架构。
当前 WorkflowRun Service 已负责步骤推进、Generation 调用、审核结果读取和 Character 写入;如果页面再次实现这些逻辑,会形成第二套状态机。
目标
按照 #87 的交互方案实现可运行的 Workflow Editor,并且只通过 WorkflowController 推进与恢复任务。
范围
包含:
/workflow-editor 与 /workflow-editor/:runId 页面
- 卡片、加号菜单、自动合法连线和视觉拖动
- 使用当前 WorkflowRun 步骤名称和 WorkflowControllerSnapshot
- 展示角色候选、动作首帧候选与完整动画审核
- 刷新后通过
controller.resume(runId) 恢复
- 审核通过调用
controller.approveAction(runId),并使用返回的稳定 ID 打开 Playtest
- 页面与协调边界测试
不包含:
- 新 Workflow 状态机、第二份 Store 或页面 localStorage
- 页面直接调用 GenerationApis、CharacterApis 或
fetch
- 独立 Publish / Review Feature
- Quick Start、Playtest、History、Asset Library 与 AppShell
- 工作流模板、多角色并行和多视角画布
验收标准
- 所有业务操作都通过 WorkflowController,页面不直接写步骤状态
- 当前 Run 刷新后恢复到同一候选或审核阶段,不重复提交生成任务
- 审核通过只写入一次 Character,并使用
PublishActionResult 跳转 Playtest
- 用户无法绘制非法连线;单一下游直接创建,多下游才显示菜单
- 覆盖角色候选、动作候选、审核、恢复、错误和重复点击测试
- CI 五步全部通过:
format:check / lint / typecheck / test / build
参考实现
卡片加号交互、合法下游和视觉拖动规则见 #87。WorkflowRun 可执行用例见 PR #86,页面协调入口使用 WorkflowController。
备注
旧 publishWorkflowRun() 不迁移:其职责已经由 WorkflowRunService.approveAction() 唯一实现。
问题
#87 已确定工作流编辑器采用卡片加号式编排,但旧页面代码仍依赖已移除的
action-generation步骤、旧 Controller 命令,以及重复的 Publish / Review Feature,无法接入当前 WorkflowRun 架构。当前 WorkflowRun Service 已负责步骤推进、Generation 调用、审核结果读取和 Character 写入;如果页面再次实现这些逻辑,会形成第二套状态机。
目标
按照 #87 的交互方案实现可运行的 Workflow Editor,并且只通过 WorkflowController 推进与恢复任务。
范围
包含:
/workflow-editor与/workflow-editor/:runId页面controller.resume(runId)恢复controller.approveAction(runId),并使用返回的稳定 ID 打开 Playtest不包含:
fetch验收标准
PublishActionResult跳转 Playtestformat:check/lint/typecheck/test/build参考实现
卡片加号交互、合法下游和视觉拖动规则见 #87。WorkflowRun 可执行用例见 PR #86,页面协调入口使用 WorkflowController。
备注
旧
publishWorkflowRun()不迁移:其职责已经由WorkflowRunService.approveAction()唯一实现。