ai-chatbot/docs/video-canvas-connections-2026-09-18.md

5.2 KiB
Raw Permalink Blame History

画布连线语义与请求验收(2026-09-18)

核对范围

参考 LibTV 同一项目的素材混剪:7条视频输入边进入智能剪辑节点,进入真实剪辑器可见14秒时间轴。只查看原有节点、连线及编辑器,未调用参考站生成、修改素材或导出。

本地读取前端节点、连线、任务提交、轮询恢复及后端请求契约,并使用真实Next页面、隔离账号和隔离画布进行浏览器验收。拦截付费生成请求,检查浏览器实际序列化的请求体;不以“画出一条线”作为功能完成依据。

连线应该表示什么

  • source → target:target在执行时读取source当前已完成的输出。节点移动不改变依赖,输入顺序由保存的连线顺序决定。
  • 图片/视频/音频输出与输入预览是两回事。sourceUrl、poster不能证明上游已生成成功;失败、排队和未完成的上游应阻止下游提交。
  • 普通多图参考可以按URL去重;首尾帧是两个位置,即使两张图URL相同也必须保留两个槽位。
  • 文字输出作为下游提示词或配音内容;视频素材作为剪辑输入;角色图片和角色/特效描述应进入相应视频请求。
  • 当前连线是下一次执行的输入关系,已提交任务中的参数是不可变的历史快照。改线不会自动付费重生成,也不篡改已经生成的成片。
  • 完整“整组执行”还需要独立调度器:拓扑排序、等待上游成功、失败阻断、重试和幂等提交。当前没有这套完整实现,不能把连线动画或逐个点生成当作整组调度。

本轮实际修复

问题 修复
视频/图片重跑会混入params.referenceImages中的旧URL 标准重跑路径从当前连线重新解析输入,断线后不使用旧URL或节点自身预览补位
首尾帧相同URL被Set去重 保留连线顺序及两个槽位,后端引用校验也保留相同URL
文字连线没有参与视频/图片/配音请求 接入文字输出;再次执行替换此前连接的文本区段。音频保存原始表单,提交时组合当前文本,避免重复朗读;编辑表单移除解析器标记,任务参数仍保留已解析文本
上游失败但参考预览仍可被使用 提交前检查上游状态与实际输出,缺失节点、空文本、未完成媒体阻止下游
可以自连、循环连接或把分组背景当输入 手动连线、从端口创建节点和选参考图统一检查;旧画布循环在执行前也拦截
不匹配素材可以挂一条无作用的线 常用图片、视频、文字、音频、剪辑节点检查输入类型;多余图片超出视频模式容量明确提示,不静默截取
任务响应/轮询晚到重新补回删除的线 记录本页断开的source/target关系,恢复任务边时不覆盖这次断线;明确重连会解除该限制
角色素材只有描述没有参考图 视频请求同时包含角色图片和角色描述
宫格裁切失败会退回整张图或少数切片 所选切片必须全部准备成功,失败则停止提交并提示重试
空闲连线一直流动 仅下游任务处于pending/running时显示流动,空闲关系保留静态连线

有成品的图片继续派生新图时,该成品本身作为新输入,不自动把它所有历史图片依赖再追加一遍。尚无成品的图像节点则读取其当前直接输入。显式选取的额外参考仍会建立对应输入边。

验收证据

浏览器脚本位于本地忽略目录 .qa/connection-audit-0918/browser.cjs,请求证据位于同目录request-evidence.json。使用隔离测试账号,不提交供应商,不导出账号凭据。

  • 真实视频页面提交:相同URL的首尾帧保留2项,连接文字进入prompt,历史stale.png没有进入请求。
  • 改接素材且更新源URL后,下一次请求只包含新地址,断开的文字不再进入prompt。
  • 删除所有图片连线后,首帧模式提示缺少参考图,无新增请求。
  • 上游failed时提示先完成上游,无新增请求。
  • 暂缓任务POST响应,在页面删除连线后再释放响应,连线不会重新出现。
  • 文字连入音频节点,真实生成音频提交中的text包含该文字;通过右键再次执行,文字没有重复追加。
  • TypeScript全量检查 tsc --noEmit --incremental false 通过。
  • 回归测试:62通过、1跳过(命令PATH未提供FFmpeg;本轮未修改编解码实现)。覆盖循环、端点缺失、类型、模式容量、宫格部分失败、文本更新及首尾帧位置语义。

尚未完成与边界

  • 整组依赖执行器、完整编组成员关系尚未实现。
  • 剪辑器内部独立上传的素材、编辑好的时间轴与画布输入边是不同层数据,现有成片/时间轴不会被改线自动改写;编辑器内素材增删和画布编组之间还需要完整双向同步验收。
  • 部分专用节点有自己的提交路径,本轮不宣称所有导演台、标记对象和第三方工具组合已全链路验收。
  • 模型结果质量、耗时、真实供应商生成没有在本轮重测。本轮验证输入关系和请求边界。
  • 代码仅本地修复,未推送、未更新主站服务器。