Fix/改造不可用问题 #135

Closed
k88936 wants to merge 0 commits from fix/unexpected-options into master
Member

问题:

角色→生成动画,生成动画之后点击改造无弹窗内容,如果不支持改造功能,应该不显示“改造”按钮
动作的快速编辑功能和改造功能逻辑优化,当前点击改造无反馈

fix:

  • 在 generation_input的每个field新增id字段, 用于稳定恢复参数, 对于legacy有基于title和默认值的fallback.(相应会有UI提示)

  • generation_input本身新增action 字段, 用于改造时找到原工具

  • 只有引用等不可被手动替换的生成来源(如快速编辑) , 且对应字段缺失, 才会拒绝改造, 其他情况都会尽力恢复

  • 当前的快速编辑的原地替换实现是: 原地替换一个layer的rescource, 但generate_input_json并没迁移到新resource中, 如果尝试改造会稳定在画布上找不到旧引用, 因此对快速编辑结果不提供改造

仍存在的问题:

动作视频改造会错误地把本身作为一个引用. see #117 在117里的处理: 预览视频作为副产品, 不记录对应的生成参数, 没有改造效果

问题: >角色→生成动画,生成动画之后点击改造无弹窗内容,如果不支持改造功能,应该不显示“改造”按钮 >动作的快速编辑功能和改造功能逻辑优化,当前点击改造无反馈 fix: - 在 generation_input的每个field新增id字段, 用于稳定恢复参数, 对于legacy有基于title和默认值的fallback.(相应会有UI提示) - generation_input本身新增action 字段, 用于改造时找到原工具 - 只有引用等不可被手动替换的生成来源(如~~快速编辑~~) , 且对应字段缺失, 才会拒绝改造, 其他情况都会尽力恢复 - 当前的快速编辑的原地替换实现是: 原地替换一个layer的rescource, 但generate_input_json并没迁移到新resource中, 如果尝试改造会稳定在画布上找不到旧引用, 因此对快速编辑结果不提供改造 仍存在的问题: ~~动作视频改造会错误地把本身作为一个引用. see #117~~ 在117里的处理: 预览视频作为副产品, 不记录对应的生成参数, 没有改造效果
k88936 changed title from WIP: Fix/unexpected options to WIP: Fix/快速编辑, 改造 UI和可用不一致 2026-08-04 20:12:08 +08:00
k88936 changed title from WIP: Fix/快速编辑, 改造 UI和可用不一致 to WIP: Fix/改造不可用问题 2026-08-05 17:40:54 +08:00
k88936 force-pushed fix/unexpected-options from ed65cc1020 to 267bc1c678 2026-08-05 17:49:28 +08:00 Compare
Author
Member

剔除了快速编辑白名单的change, 移到另一个pr

剔除了快速编辑白名单的change, 移到另一个pr
k88936 force-pushed fix/unexpected-options from 08320e4e22 to e2e5993a52 2026-08-05 19:19:11 +08:00 Compare
k88936 force-pushed fix/unexpected-options from e2e5993a52 to ca20799bc4 2026-08-06 11:15:13 +08:00 Compare
k88936 added this to the 美术画布 project 2026-08-06 18:32:27 +08:00
k88936 self-assigned this 2026-08-06 18:32:31 +08:00
k88936 marked the pull request as ready for review 2026-08-06 18:32:34 +08:00
kdletters requested changes 2026-08-06 20:47:22 +08:00
kdletters left a comment
Member

当前审查基于 head f9d4af5cfdd9913426ddbbfb0b5983e578724653、base 9dab1f53b91c8707b9d02c0f8c2c1939850e72c8。Gitea Actions run 758 的 Repository checks、Frontend、Backend、Native shell 四项均成功;PR 当前可合并,且本地 git merge-tree --write-tree 无冲突。但以下两个 P1 会让本次 V2 改造配方在刷新/完美像素恢复链路失真或失效,另有一个 P2 会把布尔输入显示为空,因此请求修改。请统一 V2 generationInputs 的持久化水合与完美像素账本白名单,保留 legacy 兼容,并补齐刷新恢复、数字/布尔值、无标签引用及布尔元数据显示的回归测试。

当前审查基于 head `f9d4af5cfdd9913426ddbbfb0b5983e578724653`、base `9dab1f53b91c8707b9d02c0f8c2c1939850e72c8`。Gitea Actions run 758 的 Repository checks、Frontend、Backend、Native shell 四项均成功;PR 当前可合并,且本地 `git merge-tree --write-tree` 无冲突。但以下两个 P1 会让本次 V2 改造配方在刷新/完美像素恢复链路失真或失效,另有一个 P2 会把布尔输入显示为空,因此请求修改。请统一 V2 `generationInputs` 的持久化水合与完美像素账本白名单,保留 legacy 兼容,并补齐刷新恢复、数字/布尔值、无标签引用及布尔元数据显示的回归测试。
Member

[P1] V2 生成配方在项目/素材水合时被降级

这里仍把字段值交给 stringOrNull,并只重建 { title, value };整个函数还会丢掉顶层 version/action、字段与引用的 id,并要求引用必须有 label。本 PR 新增的 V2 合同允许数字、布尔值和无标签引用,同时 decodeCanvasGenerationInputs 又要求 version: 2action 和稳定 id,所以项目资源或素材库刷新后会退化为 legacy,video.generate 等配方无法按原工具和原参数准确“改造”。请让水合逻辑严格识别并完整保留 V2 结构,同时继续兼容 legacy;补项目资源、素材库、数字/布尔字段和无标签引用的刷新测试。

**[P1] V2 生成配方在项目/素材水合时被降级** 这里仍把字段值交给 `stringOrNull`,并只重建 `{ title, value }`;整个函数还会丢掉顶层 `version/action`、字段与引用的 `id`,并要求引用必须有 `label`。本 PR 新增的 V2 合同允许数字、布尔值和无标签引用,同时 `decodeCanvasGenerationInputs` 又要求 `version: 2`、`action` 和稳定 `id`,所以项目资源或素材库刷新后会退化为 legacy,`video.generate` 等配方无法按原工具和原参数准确“改造”。请让水合逻辑严格识别并完整保留 V2 结构,同时继续兼容 legacy;补项目资源、素材库、数字/布尔字段和无标签引用的刷新测试。
k88936 marked this conversation as resolved
@@ -62,5 +62,5 @@
</>
) : (
'-'
)}
</dd>
Member

[P2] 布尔生成输入在元数据弹窗中显示为空

本 PR 已把生成输入值扩展为 string | number | boolean,但这里仍把 field.value 直接作为 React child;React 不渲染布尔 child,所以视频“联网搜索”等 true/false 参数会显示为空。请使用已有的 formatGenerationInputValue(或等价字符串化)统一格式化,并补充 true/false 的弹窗渲染测试。

**[P2] 布尔生成输入在元数据弹窗中显示为空** 本 PR 已把生成输入值扩展为 `string | number | boolean`,但这里仍把 `field.value` 直接作为 React child;React 不渲染布尔 child,所以视频“联网搜索”等 `true/false` 参数会显示为空。请使用已有的 `formatGenerationInputValue`(或等价字符串化)统一格式化,并补充 true/false 的弹窗渲染测试。
k88936 marked this conversation as resolved
@@ -2571,5 +2571,5 @@
normalizedProjectId,
perfectPixelDialogId,
);
}
}
Member

[P1] 完美像素账本无法恢复 V2 generationInputs

这里会把当前 V2 generationInputs 原样写进完美像素 request/本机账本;但读取端 hydratePerfectPixelGenerationInputs 的顶层白名单只允许 fields/references,字段只允许 title/value 且 value 必须是字符串,引用也不允许 id。因此刷新一个 generatingpending-confirmation 的 V2 操作时,账本会被判无效并丢弃,随后占位收口为 failed + invalid,GET-only 对账和同 identity 重试都无法继续。请让账本的严格白名单/重建逻辑支持并保留 V2 version/action/id 及数字、布尔值,并增加刷新恢复回归测试。

**[P1] 完美像素账本无法恢复 V2 generationInputs** 这里会把当前 V2 `generationInputs` 原样写进完美像素 request/本机账本;但读取端 `hydratePerfectPixelGenerationInputs` 的顶层白名单只允许 `fields/references`,字段只允许 `title/value` 且 value 必须是字符串,引用也不允许 `id`。因此刷新一个 `generating` 或 `pending-confirmation` 的 V2 操作时,账本会被判无效并丢弃,随后占位收口为 `failed + invalid`,GET-only 对账和同 identity 重试都无法继续。请让账本的严格白名单/重建逻辑支持并保留 V2 `version/action/id` 及数字、布尔值,并增加刷新恢复回归测试。
k88936 marked this conversation as resolved
k88936 force-pushed fix/unexpected-options from f9d4af5cfd to 87a85e5ef4 2026-08-07 13:25:04 +08:00 Compare
k88936 requested review from kdletters 2026-08-07 17:49:20 +08:00
k88936 removed review request for kdletters 2026-08-07 20:26:18 +08:00
k88936 force-pushed fix/unexpected-options from fb83440e90 to f33f5731ec 2026-08-07 21:47:09 +08:00 Compare
k88936 requested review from kdletters 2026-08-07 22:31:55 +08:00
k88936 removed review request for kdletters 2026-08-08 13:13:27 +08:00
k88936 requested review from kdletters 2026-08-08 13:13:28 +08:00
kdletters requested changes 2026-08-08 15:06:01 +08:00
kdletters left a comment
Member

请求修改。当前 head 已修复旧 review 中的 V2 水合、完美像素账本、布尔值显示和场景输入类型问题,且四项 CI 全绿;但本 PR 内两份现役设计文档对“必需 source 已移出画布”给出相反合同:Lovart 方案要求隐藏改造入口,MVP 方案与当前实现/测试却要求继续显示并在点击后报错。该矛盾直接影响角色动作与 UI 素材提取的正常入口验收,请先明确产品选择并同步文档、实现和测试。另请补齐提交 dcdc5f469(修复lint问题)的正文,满足仓库提交规范后重新请求 review。

请求修改。当前 head 已修复旧 review 中的 V2 水合、完美像素账本、布尔值显示和场景输入类型问题,且四项 CI 全绿;但本 PR 内两份现役设计文档对“必需 source 已移出画布”给出相反合同:Lovart 方案要求隐藏改造入口,MVP 方案与当前实现/测试却要求继续显示并在点击后报错。该矛盾直接影响角色动作与 UI 素材提取的正常入口验收,请先明确产品选择并同步文档、实现和测试。另请补齐提交 `dcdc5f469`(修复lint问题)的正文,满足仓库提交规范后重新请求 review。
@@ -115,2 +116,2 @@
- 角色动作结果图层点击“改造”时,必须通过 `sourceResourceId` 找回原角色图层并重新打开角色动作生成器;关联原角色已不存在时应显示明确提示,不得无响应或降级成图片生成器。
- 恢复已生成图层的来源生成器时,角色、动作、规范、图标、UI、宣发、视频、音效背景音乐必须按 `assetKind / mediaType` 恢复对应面板;去背景或快速编辑产生的派生 `quick-edit` 对话框不得遮住图层原有来源生成器
- 角色动作结果图层点击“改造”时,V2 必须通过 `references[id="source"]` 找回原角色图层,legacy 数据才允许以 `sourceResourceId` 回退;关联原角色已不存在时应显示明确提示,不得无响应或降级成图片生成器。
- `改造` 覆盖图片、规范、角色、图标、UI、宣发、游戏场景、视频、音效背景音乐、角色动作和生成型图片编辑。有效 V2 只按 `action + fields[].id + references[].id` 恢复,引用只匹配当前画布图层;面板直接上传引用和已移出画布的引用不恢复。V2 不新增后续版本,读取时统一经 action 级 runtime decoder 原地收紧:已存在但未知、非法、已下线或与当前模型能力不兼容的参数统一回落到该 action 当前默认值,历史 Veo 也回落到当前默认视频模型;图片比例 / 尺寸按回落后的模型联动校验,角色动作帧数 / 时长按完整档位成对校验。发生参数回落时显示明确告警,再次提交和新快照只使用规范值并继续保存为 `version: 2`。可重新选择的引用缺失时打开面板、留空槽位并提示,提交门禁继续校验必填槽位;必须依赖原 `source` 图层才能构造面板的动作在 source 缺失时不显示改造入口,运行期间来源变化时仍拒绝改造。有效 V2 不得因引用缺失降级到 legacy。生成型图片编辑 V2 中已持久化的附加 `reference` 恢复到可见参考槽,并让再次提交的模型、比例、尺寸、像素尺寸、参考图和新快照保持一致;普通快速编辑仍不得提交未展示的隐藏参考图。视频 V2 同步保存并恢复 `webSearchEnabled`。历史对话框和 legacy 数据保留 `assetKind/mediaType`、标题别名、资源尺寸 / 模型 / 时长 / `sourceResourceId` 回退,并对默认值恢复显示告警。V2 结构水合必须完整保留 `version/action`、字段与引用 `id`、有限数字、布尔值和无标签引用;一旦出现 `version``action` 却不满足 V2 合同,必须失败关闭,禁止降级成 legacy
Member

[P2] 请统一必需 source 丢失时的改造入口合同

这里要求 source 缺失时“不显示改造入口”,但本 PR 同时把 MVP 方案和 canOpenRedrawPanel 改成“仍显示按钮、点击后报错”,测试也明确锁定后者。两份现役设计文档因此互相冲突,无法确定验收语义。请明确产品选择,并同步统一两份文档、按钮实现与测试;若仍要求隐藏,需让工具栏按当前画布图层判断 character-animation.generate / ui-design.extract-assets 的 source 是否存在,并保留点击后的竞态复检。

**[P2] 请统一必需 source 丢失时的改造入口合同** 这里要求 source 缺失时“不显示改造入口”,但本 PR 同时把 MVP 方案和 `canOpenRedrawPanel` 改成“仍显示按钮、点击后报错”,测试也明确锁定后者。两份现役设计文档因此互相冲突,无法确定验收语义。请明确产品选择,并同步统一两份文档、按钮实现与测试;若仍要求隐藏,需让工具栏按当前画布图层判断 `character-animation.generate` / `ui-design.extract-assets` 的 source 是否存在,并保留点击后的竞态复检。
k88936 marked this conversation as resolved
k88936 force-pushed fix/unexpected-options from 84cf70774a to ef7f40614a 2026-08-08 15:42:22 +08:00 Compare
k88936 force-pushed fix/unexpected-options from 1e4cdfbbda to c2c539cc98 2026-08-08 16:23:24 +08:00 Compare
k88936 added 6 commits 2026-08-08 17:01:29 +08:00
新增 generationInputs V2 稳定 action、field id 与 reference id 契约
恢复图片、视频、音频、角色动作等生成面板并保留 legacy 回退
非生成裁扩、去背景和图集拆分不再继承生成配方
匿名精选响应不再返回 owner generationInputs
同步前后端测试与架构文档
新增不可用引用检测与警告
拒绝缺失必要来源的参数复用
优化引用匹配逻辑
同步测试与文档
强化持久化生成输入的运行时结构校验
统一快速编辑请求尺寸、模型、参考图与生成快照
补齐视频联网搜索参数保存与恢复
隐藏缺少必需来源的复用参数入口
补充回归测试并同步编辑器方案文档
新增按action统一解码生成输入参数
将失效与不兼容参数回落到当前默认值
恢复和再次提交共用规范V2结果并展示告警
记录原地收紧决策与Review处理结果
补充历史模型和非法参数回归测试
- 修复参考素材标签的空白文本回退显示

- 重构 quick-edit 参数选择逻辑,移除嵌套三元并统一回退

- 抽取生成复用流程的参数回退与缺失素材提示逻辑

- 使用 quick-edit 提交计划中的输出尺寸构建复用时占位符
- 图片修改面板优先恢复历史模型、比例和尺寸,并保留显式设置优先级

- 图片修改提交计划统一归一化参数并下发 model、aspectRatio、imageSize 和 size

- 画布完成占位使用实际目标输出尺寸

- 补充参数恢复回归测试与编辑器方案说明
k88936 force-pushed fix/unexpected-options from c2c539cc98 to 84cf70774a 2026-08-08 17:01:29 +08:00 Compare
kdletters requested changes 2026-08-08 18:37:47 +08:00
kdletters left a comment
Member

请求修改。当前复审绑定 head 7d59c54e18ba28023a2017b1dcfe950b5e2f09ce、base 6cb13b3884e66460885d78bbc672b0f145e954a0。新增提交已修复媒体 V2 durationSeconds 字段和视频快速编辑 videoReference 来源配方,旧 review 中的 V2 水合、完美像素账本及布尔显示问题也已修复;run 911 四项 CI 全绿,merge-tree 无冲突。

但两份现役设计文档仍对不可替换 source 丢失时“隐藏改造入口”还是“保留按钮并点击报错”给出相反合同,且当前实现与测试只锁定后者。请先明确产品选择并同步文档、实现和测试。

提交历史规范问题也尚未清理:例如 bb4484f3c 使用英文 merge 标题,dcdc5f469 以及多笔“合并主分支”提交仍无正文,不符合仓库中文标题、逐行正文要求。

请求修改。当前复审绑定 head `7d59c54e18ba28023a2017b1dcfe950b5e2f09ce`、base `6cb13b3884e66460885d78bbc672b0f145e954a0`。新增提交已修复媒体 V2 `durationSeconds` 字段和视频快速编辑 `videoReference` 来源配方,旧 review 中的 V2 水合、完美像素账本及布尔显示问题也已修复;run 911 四项 CI 全绿,merge-tree 无冲突。 但两份现役设计文档仍对不可替换 source 丢失时“隐藏改造入口”还是“保留按钮并点击报错”给出相反合同,且当前实现与测试只锁定后者。请先明确产品选择并同步文档、实现和测试。 提交历史规范问题也尚未清理:例如 `bb4484f3c` 使用英文 merge 标题,`dcdc5f469` 以及多笔“合并主分支”提交仍无正文,不符合仓库中文标题、逐行正文要求。
@@ -115,2 +116,2 @@
- 角色动作结果图层点击“改造”时,必须通过 `sourceResourceId` 找回原角色图层并重新打开角色动作生成器;关联原角色已不存在时应显示明确提示,不得无响应或降级成图片生成器。
- 恢复已生成图层的来源生成器时,角色、动作、规范、图标、UI、宣发、视频、音效背景音乐必须按 `assetKind / mediaType` 恢复对应面板;去背景或快速编辑产生的派生 `quick-edit` 对话框不得遮住图层原有来源生成器
- 角色动作结果图层点击“改造”时,V2 必须通过 `references[id="source"]` 找回原角色图层,legacy 数据才允许以 `sourceResourceId` 回退;关联原角色已不存在时应显示明确提示,不得无响应或降级成图片生成器。
- `改造` 覆盖图片、规范、角色、图标、UI、宣发、游戏场景、视频、音效背景音乐、角色动作和生成型图片编辑。有效 V2 只按 `action + fields[].id + references[].id` 恢复,引用只匹配当前画布图层;面板直接上传引用和已移出画布的引用不恢复。V2 不新增后续版本,读取时统一经 action 级 runtime decoder 原地收紧:已存在但未知、非法、已下线或与当前模型能力不兼容的参数统一回落到该 action 当前默认值,历史 Veo 也回落到当前默认视频模型;图片比例 / 尺寸按回落后的模型联动校验,角色动作帧数 / 时长按完整档位成对校验。发生参数回落时显示明确告警,再次提交和新快照只使用规范值并继续保存为 `version: 2`。服务端以实际媒体时长覆盖 V2 配方时必须保留 `fields[id="durationSeconds"]`,并写入归一后的有限数值,不能改写为无 `id` 的 legacy 展示字符串。可重新选择的引用缺失时打开面板、留空槽位并提示,提交门禁继续校验必填槽位;必须依赖原 `source` 图层才能构造面板的动作在 source 缺失时不显示改造入口,运行期间来源变化时仍拒绝改造。有效 V2 不得因引用缺失降级到 legacy。生成型图片编辑 V2 中已持久化的附加 `reference` 恢复到可见参考槽,并让再次提交的模型、比例、尺寸、像素尺寸、参考图和新快照保持一致;普通快速编辑仍不得提交未展示的隐藏参考图。视频快速编辑必须把实际送入请求的源视频同步保存为 `references[id="videoReference"]`,不能只依赖 `sourceResourceId`;视频 V2 同步保存并恢复 `webSearchEnabled`。历史对话框和 legacy 数据保留 `assetKind/mediaType`、标题别名、资源尺寸 / 模型 / 时长 / `sourceResourceId` 回退,并对默认值恢复显示告警。V2 结构水合必须完整保留 `version/action`、字段与引用 `id`、有限数字、布尔值和无标签引用;一旦出现 `version``action` 却不满足 V2 合同,必须失败关闭,禁止降级成 legacy
Member

[P2] 请统一不可替换 source 丢失时的改造入口合同

这里仍要求 source 缺失时“不显示改造入口”,但本 PR 同时在 MVP 方案中规定支持改造的 action 即使必需来源丢失也保留按钮,当前 canOpenRedrawPanel 和回归测试也锁定了“点击后报错”的实现。两份现役文档因此仍给出相反验收口径。请明确产品选择,并同步统一两份文档、按钮实现与测试;若选择隐藏,还需让工具栏按当前画布引用状态判断 character-animation.generate / ui-design.extract-assets,同时保留点击后的竞态复检。

**[P2] 请统一不可替换 source 丢失时的改造入口合同** 这里仍要求 source 缺失时“不显示改造入口”,但本 PR 同时在 MVP 方案中规定支持改造的 action 即使必需来源丢失也保留按钮,当前 `canOpenRedrawPanel` 和回归测试也锁定了“点击后报错”的实现。两份现役文档因此仍给出相反验收口径。请明确产品选择,并同步统一两份文档、按钮实现与测试;若选择隐藏,还需让工具栏按当前画布引用状态判断 `character-animation.generate` / `ui-design.extract-assets`,同时保留点击后的竞态复检。
k88936 marked this conversation as resolved
k88936 added 34 commits 2026-08-08 19:14:04 +08:00
同步协作 Prompt 跨语义复用禁止规则
保留画布生成配方分支改动
同步运行态测试来源默认值修正
保留画布生成配方分支改动
同步游戏创作硬截止恢复测试修正
保留画布生成配方分支改动
按 ESLint 规则排序生成输入格式化函数导入
同步托管 MCP 开发域名访问白名单
保留画布生成配方分支改动
同步 AI 游戏创作 Runtime、资源图与工作台主线改动
保留画布编辑器生成配方恢复改动
同步主分支的角色动作序列、精选展示与外部编辑器契约更新
保留画布生成输入 V2 契约并合并视频、音效时长元数据
修复精选视频对数值型 V2 时长元数据的兼容
接入画板背景音乐预设、提示词优化与生成链路
统一前后端音频契约和 canonical prompt 语义
保留画布生成输入改造契约并同步文档与测试
明确仅在必需 source 无法手动补齐且请求无法执行时拒绝改造
说明可手动补选的 reference 继续按 best-effort 恢复参数
支持音频背景音乐生成链路的 `version: 2` 和 `action: audio.background-music.generate` 参数
保持背景音乐规范提示词与生成输入快照一致。

统一 V2 generationInputs 的项目、素材与完美像素账本水合,并保留 legacy 兼容。

为完美像素、裁扩、去背景和图集切片保存确定性配方并禁止改造。

由服务端按当前账号资源重建安全来源引用,修复布尔元数据显示。

补齐刷新恢复、数值布尔、无标签引用、来源溯源与确定性操作回归测试。
解决简单合并冲突
兼容生成配方未来字段与历史完美像素快照
补齐参数回退、旧版恢复告警和本地参考图上传
收紧生成任务幂等比较与裁扩来源归属
同步画布编辑器设计文档和回归测试
按生成 action 能力决定改造按钮显隐
保留支持 action 的错误入口并在点击后提示原因
补充损坏配方与缺失来源回归测试
同步画布编辑器设计文档
可补选的必填与可选引用统一按最佳努力恢复
仅对三个无来源替换入口的 action 拒绝改造
细化快速编辑与来源绑定错误提示
补充权威设计说明和回归测试
移除 image.edit 的可改造 action 能力
保留快速编辑入口并隐藏改造按钮
说明原位替换结果无法可靠恢复旧 source
同步权威设计文档和回归测试
调整画布生成工作流类型导入顺序,通过 simple-import-sort 检查。
保留生成配方 hydrate 来源状态

禁止损坏或未来版本配方回退 legacy 恢复

补齐资源快照与改造入口回归测试

记录已生成图层点击恢复浮层的产品待确认项

同步画布编辑器恢复契约文档
合并编辑器生成结果原子提交与外部 MCP 项目选择修复

保留确定性派生配方与改造 capability 分离语义
从预处理记录读取实际素材记录
解决冲突
调整 ImageCanvasEditorView 的生成输入模型导入顺序以通过 ESLint。
解决合并冲突
合入素材库多选操作与批量导出更新
保留画布生成配方分支改动并解决冲突
场景请求提交前将画布参数转换为字符串契约

保留素材结果中的原始画布参数类型
按 ESLint 规则排序场景生成契约导入
新增 scene.generate V2 配方、解码与场景面板恢复
服务端按结构化请求重建权威场景字段和参考图槽位
兼容旧场景画面内容字段并限制非场景改造入口
补充前后端测试与 assetKind 改造接入文档
同步关闭项目或 Run 切换时的运行详情弹窗,消除延迟 effect 覆盖用户点击的竞态
更新场景提交测试,按当前稳定枚举值和完整兼容字段断言
同步补充 AI 游戏 Runtime 与场景 V2 配方文档
保留图片生成 V2 配方中的像素艺术风格断言
合并 AGC 统一端口段、文本编辑器与移动端欢迎页改动
合并 Jenkins 产物权限门禁并同步项目共享文档
修复 AGC 实时清单测试竞态
同步实时清单测试约束与项目记忆
同步 AGC 启动脚本导入顺序修复
保留 V2 durationSeconds 字段标识和数值类型

补充回归测试与改造契约说明
将源视频写入 V2 videoReference 引用列表

补充提交与改造水合回归测试及契约说明
统一缺失来源的改造入口合同
Project CI / Repository checks (pull_request) Successful in 52s
Project CI / Frontend tests (pull_request) Successful in 3m37s
Project CI / Backend tests (pull_request) Successful in 3m28s
Project CI / Native shell tests (pull_request) Successful in 13m25s
9a326c940a
明确不可替换 source 缺失时保留改造按钮并在点击后报错

同步现役设计文档、后端契约与长期决策记录

补齐角色动作和 UI 素材提取的按钮与失败回归测试
k88936 force-pushed fix/unexpected-options from a17059ddaa to 9a326c940a 2026-08-08 19:14:04 +08:00 Compare
k88936 requested review from kdletters 2026-08-08 19:24:25 +08:00
Member

已与 PR #137 一并手工集成到 master。master 提交:2412700e665ecb90e93575670399a46f72a728d7;已保留本 PR head 9a326c940a 的完整历史,并在集成分支解决与 #137、master 的冲突。

已与 PR #137 一并手工集成到 master。master 提交:2412700e665ecb90e93575670399a46f72a728d7;已保留本 PR head 9a326c940a15ffdaa0576e64fda12602868a2fb9 的完整历史,并在集成分支解决与 #137、master 的冲突。
kdletters closed this pull request 2026-08-08 22:15:12 +08:00
Some checks are pending
Project CI / Repository checks (pull_request) Successful in 52s
Project CI / Frontend tests (pull_request) Successful in 3m37s
Project CI / Backend tests (pull_request) Successful in 3m28s
Project CI / Native shell tests (pull_request) Successful in 13m25s

Pull request closed

Sign in to join this conversation.