Skip to content

Fix 分镜面板不支持整板重做,系统不存在删除旧分镜的 Agent 工具,AI 无法在重做前清空面板,导致新旧分镜混合 - #248

Open
a13060512883 wants to merge 9 commits into
HBAI-Ltd:developfrom
a13060512883:fix-storyboard-panel-20260731
Open

Fix 分镜面板不支持整板重做,系统不存在删除旧分镜的 Agent 工具,AI 无法在重做前清空面板,导致新旧分镜混合#248
a13060512883 wants to merge 9 commits into
HBAI-Ltd:developfrom
a13060512883:fix-storyboard-panel-20260731

Conversation

@a13060512883

@a13060512883 a13060512883 commented Jul 31, 2026

Copy link
Copy Markdown

问题

分镜面板不支持整板重做。系统不存在删除旧分镜的 Agent 工具,AI 无法在重做前清空面板,导致新旧分镜混合。

修复

  • 新增 src/lib/storyboard.ts ,从 batchDelete 路由提取 deleteStoryboards 公共函数,按 ids + projectId + scriptId 事务化批量删除分镜、 o_assets2Storyboard 资产关联和 o_imageFlow 图片流程, requireAll 控制完整性校验
  • 新增 del_flowData_storyboard Agent 工具,删除成功后 socket.emit("delStoryboard") 通知前端刷新面板
  • 修复 src/utils/db.ts : Object.assign 无法复制 Knex 不可枚举的 transaction 方法,手动绑定补上
  • batchDelete HTTP 路由改为复用公共函数,文案修正为"分镜删除成功"
  • 前端 productionAgent.ts 新增 delStoryboard 事件监听, filter 移除对应分镜
  • 技能文件新增整板重做前置流程和决策层意图路由规则

验证

  • POST /api/production/storyboard/batchDelete 200,事务正常提交
  • npx tsc --noEmit 零错误
  • 前端编译产物含 delStoryboard 事件监听逻辑
  • 整板重做全链路:AI 调用 del_flowData_storyboard → 数据库旧分镜清除 → Socket delStoryboard 推前端 → 前端面板即时移除旧分镜 → AI 写入新分镜 → 验证最终面板仅含新分镜
  • 空面板整板重做:跳过删除,直接写入,不报错
  • 本机启动-发出”重做分镜面板指令“,存在”旧分镜删除“步骤,完成删除后继续写入新生成的分镜至分镜面板
image

ACT丶流星雨 and others added 8 commits June 15, 2026 10:50
1:新增工具方法
2:提取公共删除从 batchDelete.ts 中提取出的删除逻辑,封装为独立可复用函数。
3:src/utils/db.ts
4:src/routes/production/storyboard/batchDelete.ts 原删除逻辑改用提取后的公共函数
5:src/agents/productionAgent/tools.ts — 新增工具修复时序
  新增 del_flowData_storyboard 工具 (25 行):
  - 接收 { ids } ,从 resTool.data 自动获取 projectId / scriptId
  - 调用 deleteStoryboards({ ids, projectId, scriptId, requireAll: true }) — 必须全量匹配
  - 删除成功后 socket.emit("delStoryboard", ...) 通知前端刷新面板
6:data/skills/production_execution_storyboard_panel.md — 新增规则
  工具表新增 2 行 : get_flowData("storyboard") 和 del_flowData_storyboard
7:新增"整板重做前置流程"段落 (7 条规则):
  1. 先读当前分镜面板,失败则终止
  2. 提取全部旧分镜 ID,禁止筛选部分 ID
  3. 空面板跳过删除
  4. 一次性全删,不允许分批
  5. 删除失败 → 终止,禁止写入
  6. 删除成功 → 进入流程 A 或 C
  7. 写入完成后再次读取验证(旧 ID 不在 + 数量一致才算成功)

此功能与前端pr一起
@a13060512883 a13060512883 changed the title Fix storyboard panel 20260731 Fix 分镜面板不支持整板重做,系统不存在删除旧分镜的 Agent 工具,AI 无法在重做前清空面板,导致新旧分镜混合。 Jul 31, 2026
@a13060512883 a13060512883 changed the title Fix 分镜面板不支持整板重做,系统不存在删除旧分镜的 Agent 工具,AI 无法在重做前清空面板,导致新旧分镜混合。 Fix 分镜面板不支持整板重做,系统不存在删除旧分镜的 Agent 工具,AI 无法在重做前清空面板,导致新旧分镜混合 Jul 31, 2026
@HBAI-Ltd

Copy link
Copy Markdown
Owner

PR 基于较旧版本的代码提交,非当前最新的 develop。请先同步最新代码并完成适配,确认相关功能和测试正常后再更新 PR。

@a13060512883

Copy link
Copy Markdown
Author

PR 基于较旧版本的代码提交,非当前最新的 。请先同步最新代码并完成适配,确认相关功能和测试正常后再更新 PR。develop

已同步最新代码并完成适配与测试,烦请重新确认~

@HBAI-Ltd

Copy link
Copy Markdown
Owner
image 你好,感谢提交 PR。目前这个 PR 中包含了一些与本次功能无关的文件修改,例如文档、README 和其他资源文件。为了便于 review,也避免引入不必要的变更,麻烦先将这些无关修改回退,只保留本次需求涉及的核心代码及必要的测试改动。调整后再更新 PR,感谢配合。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants