撤销画布 Agent 图片编辑门禁改动

撤销基于调用来源全面绕过图片编辑素材白名单的实现。

为改用普通图片空素材类型及有限历史兼容恢复基线。
This commit is contained in:
2026-08-06 15:53:45 +08:00
parent 0ab46d8c8b
commit e35429bb88
5 changed files with 24 additions and 114 deletions
@@ -6499,7 +6499,6 @@
- 背景:画布生成结果统一显示快速编辑,但部分角色动作 / 序列帧和音频结果会进入不受支持的图片编辑链路;不同入口各自判断时也容易继续漂移。
- 决策:快速编辑只支持普通静态图片、角色图、规范图、完整图标图集、UI 设计图、宣发图和视频。单个拆分图标、角色动作 / 序列帧、音效与背景音乐不支持;新增媒体或素材类型默认不开放。浮动工具栏、图层右键菜单、独立图片菜单、打开面板入口和提交门禁统一调用同一个正向白名单;后端图片编辑 BFF 基于目标图层的有效素材类型与媒体类型执行同一正向门禁,视频快速编辑只走视频生成接口。
- 边界:角色动作继续通过对应的动作生成链路处理,不再把当前帧当作可快速编辑图片。
- 2026-08-06 修订:画布 Agent 的 `edit_image` 是服务端确认后生成的独立内部工具调用,不属于画布快速编辑入口。worker 以服务端生成的 `editor-agent:` 队列 dedupe namespace 恢复可信调用来源并允许其无 `targetLayerId` 执行;普通画布与 External API 调用继续按真实目标图层失败关闭,不能通过伪造 `assetKind="editor_agent_edit_image"``generationInputs.source` 绕过白名单。
- 验证:模型测试覆盖允许与拒绝类型,工具栏和两类右键菜单测试覆盖单个拆分图标、角色动作及音频不展示,提交工作流测试覆盖单个拆分图标和角色动作绕过入口时仍拒绝;后端表驱动测试覆盖全部现役素材 / 媒体类型与未知类型,锁定图片编辑端点失败关闭。
- 关联:`src/components/image-editor/ImageCanvasGenerationModel.ts``ImageCanvasSelectedLayerToolbarView.tsx``ImageCanvasContextMenusView.tsx``useImageCanvasGenerationWorkflow.ts``useImageCanvasGenerationSubmissionWorkflow.ts`
File diff suppressed because one or more lines are too long