fix(canvas): 视频生成 - 显式 @文本 引用内联真实内容

普通模型视频渠道 promptOnly 门槛此前连显式 @文本N 引用一并拦截,
提示词只剩【文本N】占位符、文本节点正文未进上游报文。现 textBlocks
始终追加;promptOnly 拦自动上游连线文本的 8d4f656a 语义保持不变。
补 3 例专项测试并同步 pending-test 待验收清单。
This commit is contained in:
VicoHu
2026-09-11 18:05:38 +08:00
committed by ddCat
parent 1de105b537
commit 7ebbd9e003
4 changed files with 46 additions and 2 deletions

View File

@@ -1644,3 +1644,11 @@ v2(用户反馈首版难看后重做):菜单改用 antd Dropdown(placeme
- 验收用户身份、订单号、渠道交易号和完整用户 ID 查询,与状态过滤、分页组合使用。
- 验收用户详情、订单详情、订单号复制和用户不存在的历史订单;关闭侧栏保留列表状态。
- 检查同步状态、关单确认、明暗主题、长文本和窄屏固定操作列。
## 视频生成显式 @文本 引用内联(2026-09-11)
修复普通模型视频渠道(非声明式工作流)丢弃显式 @文本N 引用内容的问题:`buildComposerGenerationContext` 此前受 `promptOnly` 门槛限制,提示词里的 @文本N 只被改写成「【文本N】」占位标记,文本节点真实内容不追加,导致发给上游的视频提示词只剩无意义占位符(如「任务要求提示词:【文本1】」)。现在显式 @文本 引用始终内联真实内容并在提示词末尾以「【文本N】\n正文」块追加;`promptOnly` 拦截自动上游连线文本的原有语义(提交 8f20240d)不变——未显式引用的连线文本在视频模式下仍不自动拼接,图片仍走结构化参考图通道。提示词超长时按既有校验明确报错,不静默截断。专项测试(canvas-node-generation-mentions.test.ts,新增 3 例)与前端全量测试通过(与 main 基线相比无新增失败),需浏览器验收:
- [ ] 画布视频节点提示词同时 @图片1 和 @文本1(文本节点含多行正文)后用方舟或普通视频渠道生成:抓上游请求,text 为「原提示词 + 【文本1】标记 + 空行 + 【文本1】\n文本正文」,参考图仍为结构化 image_url(方舟素材绑定时为 asset:// 引用)。
- [ ] 视频节点只连图片和文本节点、提示词不写任何 @ 引用时:text 仍只有输入框原文,连线文本不自动拼入(8f20240d 行为保持)。
- [ ] 图片、文本、音频模式生成行为不变;显式 @文本 引用的图片节点重试同样内联文本内容。
- [ ] 引用超长文本(超过模型提示词上限)时提交被拦截并提示具体字符数,不出现静默截断或直接丢弃。