Commit Graph

109 Commits

Author SHA1 Message Date
QAyong
9bc5512140 feat(portrait-clearance): 肖像排查 - 增加画布插件与本机检测链路 2026-08-26 15:23:19 +08:00
zh15728828264
e2521424eb feat(create): 创作工作台 - 支持参考内容层叠展开与拖拽排序
合并 PR #307。\n\n原作者:陈泽 <749959948@qq.com>
2026-08-26 14:05:00 +08:00
ddCat
2f3a813ccb feat(platform): 插件协议系统 - 支持声明式渠道、工作流与参考媒体映射 2026-08-26 13:11:10 +08:00
ddCat
054e3bbbff refactor(*): 数据同步与资源删除 - 收敛服务端真相并保证删除可恢复 2026-08-25 20:10:11 +08:00
ddCat
3658d78881 fix(*): 删除闭环 - 统一服务端真相并释放画布素材关联 2026-08-25 15:22:05 +08:00
ddCat
0cbe24a19f fix(canvas): 提示词优化器 - 隔离多实例浮层定位并修复路由预加载测试 2026-08-25 14:33:34 +08:00
QAyong
5b7f173102 feat: 完善创作工作台与用户诊断支持 (#295)
* feat(canvas): 参考素材 - 增加移除按钮并删除对应连线

* feat(canvas): 完善节点面板交互与拖拽反馈

* fix(canvas): 画布交互与小地图 - 统一浮层层级并完善节点识别

* feat(prompt-optimizer): 增加 AI 提示词优化器及宿主接入

* feat(canvas): 画布 - 增加自动整理节点按钮并补充文档

* chore(web): 前端 - 修正提示词优化器格式

* chore(backend): 后端 - 修正 Go 格式检查

* feat(workspace): 完善诊断导出与本地排障支持

* chore(web): 格式化诊断导出文件

* fix(web-test): 兼容 Bun 测试运行时

* fix(web-test): 对齐模型目录协议断言
2026-08-25 13:49:15 +08:00
ddCat
1758ba6062 feat(canvas): 分镜脚本 - 关联画布资产并自动物化视频引用 2026-08-25 11:24:47 +08:00
MasterChiefCN
76035451f1 fix(video): 火山方舟 - 解耦可信素材并修复音频组合参考 (#302) 2026-08-24 19:42:30 +08:00
MasterChiefCN
b809d1f835 fix(canvas): 画布提示词 - 修复视频引用遮挡文本 (#301) 2026-08-24 16:55:53 +08:00
MasterChiefCN
8ea2e738a2 feat(video): support Ark full-modal references (#300) 2026-08-24 16:55:45 +08:00
MasterChiefCN
ac269ac508 fix(billing): 视频计费 - 恢复火山方舟视频 Token 计费 2026-08-24 12:44:33 +08:00
ddCat
7043c8ac7a feat(agent): 画布 Agent - 重构工作流上下文与技能交互 2026-08-24 12:09:15 +08:00
MasterChiefCN
acd5e7badf fix(billing): 火山方舟视频 - 恢复 Token 计费配置 2026-08-24 09:47:38 +08:00
ddCat
e1487ad438 fix(admin): 前台模型目录 - 兼容缺失供应线路与价格档数组 2026-08-22 17:42:04 +08:00
kinoko
c34f1ea476 feat(models): 统一模型规格价格与路由 2026-08-22 17:00:08 +08:00
ddCat
772e7bbef7 feat(canvas): 画布节点与背景 - 扩展节点能力并优化连接与网格 2026-08-22 12:52:58 +08:00
ddCat
13702e662d fix(canvas): 画布删除 - 删除云端记录并等待本地持久化 2026-08-22 12:33:34 +08:00
dlh
90d6c58de9 feat(canvas): 扩展节点 - 新增 7 种展示与加工节点并补齐上游读取基建
在已落地的节点注册表上加两层节点:展示层(Markdown / SVG / HTML / 全景)与
接入生成链的加工层(对比 / 图表 / 调色)。全部是第一方内置节点,不引入远程插件
加载,因此不涉及沙箱信任模型,也不需要把 CanvasNodeType 放开成任意字符串。

刻意保留穷尽性检查而不是改成运行时注册。全库只有 4 张按类型建的穷眉表
(NODE_DEFAULT_SIZE / NODE_SPECS / 注册表定义 / nodeContentRenderers),
让编译器强制每个新节点填满它们,比少改几个文件更值 —— 加第一个枚举成员时
编译器点出了 5 处,其中 pages/canvas/shared.tsx 是原先没编目的那一处;
换成运行时注册,那里会静默回落成「未知节点」。

两处前置基建:
- CanvasNodeGraphContext:渲染器只拿到 node、没有 connections,而加工层三个节点
  都要读上游。仿已有的 canvas-node-action-context(同一个问题:节点经
  CanvasProjectWorldLayers 渲染不便逐个透传),取上游复用
  canvas-resource-references 的 getContextResourceNodes,不另写一份。
  Provider 值必须 memo —— 每帧新对象会让所有节点跟着重渲染。
- ToolbarHandlers.onAddExtensionNode(type):一个泛用入口,不给每种扩展节点单开
  一个 onAddXxx。菜单另开「展示与加工」分区,不挤占上方调好的四列创作网格。

SVG 与 HTML 统一走 sandbox iframe:依赖里没有 DOMPurify,手写 SVG 消毒不可靠
(script / on* / foreignObject)。SandboxedFrame 只暴露 allowScripts 布尔而不是
sandbox 取值,让「同时给 allow-same-origin」这条没有入口。

全景节点三个取舍:点击才激活 WebGL(浏览器对同时存在的上下文有硬上限,画布可以有
任意多个全景节点,自动激活必然在某个数量后整片黑);用原生 three 而非 fiber
(需要精确 dispose,forceContextLoss 才真正释放上下文);性能模式下只给静态预览。

调色是唯一碰生成路径的节点,照 Drawing 的先例:拖滑杆只做本地 CSS filter 预览,
落地成资源要等到生成消费它时才走 uploadResourceFile。预览与导出共用同一个
filter 字符串,两处各写一份就会「看到的和用的悄悄不一致」;未调色时直接透传源图,
省掉一次渲染与上传。ctx.filter 不受支持时明确报错而不是导出一张没调色的图。

resourceKind 与 inputKind 分开两个字段:空图片节点不是素材(不进 @ 引用),
但照样计入 imageCount。调色节点的 resourceKind 无条件返回 image —— 它的图来自
上游,按「有没有 content」判断会让它永远进不了生成输入,这是不报错的静默失效。

测试:新增 test/canvas-extension-nodes.test.ts(12 用例 / 64 断言),覆盖 7 个节点的
判据矩阵、调色参数、以及图表解析。图表解析函数刻意不抛 —— 数据来自模型输出,
非法 JSON 是常态而不是异常,抛出来会连带整个画布白屏,有 7 条断言钉这个。
测试列表是显式枚举,已把新文件加进 package.json,不加进去不会跑。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-22 12:29:24 +08:00
ddCat
8be75c1fbd refactor(core): 任务与模型协议治理 - 拆分服务职责并禁止已发起任务取消 2026-08-22 09:52:09 +08:00
ddCat
7323a7b044 fix(tasks): 任务取消 - 禁止取消已开始的生成任务 2026-08-21 17:06:05 +08:00
MasterChiefCN
ce86bb781b fix(web): 资源预览 - 请求明细资源失效时显示预览占位 2026-08-21 16:53:33 +08:00
MasterChiefCN
81ef033f58 fix(web): 任务中心 - 资源失效时显示预览占位 (#286) 2026-08-21 13:26:27 +08:00
ddCat
d909e65993 feat(canvas): 创作体验 - 合并 PR #282 并优化引用、风格与素材文件夹 2026-08-21 09:23:31 +08:00
ddCat
36bff1963b refactor(canvas): 节点注册表 - 合并 PR #284 并收敛类型判据 2026-08-21 09:18:17 +08:00
ddCat
0071e9416c fix(*): 模型与数据同步 - 完善鉴权、供应商模型和本地持久化能力 2026-08-20 22:58:31 +08:00
dlh
a4585fdc2a refactor(canvas): 节点注册表 - 收敛素材类型、生成模式与输入计数判据
把三条按类型分支的语义判据收进注册表:
- resourceKind  原 canvas-resource-references.ts,作为 @ 引用素材时的类型
- generationMode 原 canvas-connection-policy.ts,作为生成节点时的模式
- inputKind     原 canvas-connection-policy.ts,被容量校验计数时的类别

resourceKind 与 inputKind 刻意分成两个字段:它们语义不同——空图片节点不是素材
(不进 @ 引用),但照样计入 imageCount。合成一个会静默改掉连线容量校验。

两处必须保住的语义,均已由测试钉住:
1. 角色卡(workflowKind === character)是跨类型覆盖,对任何节点类型生效,
   属于查注册表之前的前置判定,因此留在调用点而不进 per-type 定义。
2. 排除必须早于覆盖。原实现先 return 掉生成配置与背板,之后才判角色卡;
   若把角色卡判定提前,带角色元数据的配置/背板节点会被多算成 characterCount。

新增 test/canvas-node-registry.test.ts(19 用例 / 77 断言)并加入 package.json
的 test 列表——该列表是显式枚举,不加进去文件不会跑。补测的原因是
canvas-resource-references.test.ts 只覆盖 collectUpstreamVideoNodes,
本次改动的 resourceKind 此前零覆盖,而这类判据出错不报错、只会让 @ 引用少收素材。

顺带内联 nodeGenerationMode(迁移后退化为单行转发)。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-20 22:27:23 +08:00
echoD886
9df5d5add4 chore(web): 文件夹主题 - 修复前端格式检查 2026-08-20 16:50:50 +08:00
echoD886
536af9a69f feat(assets): 文件夹主题 - 新增多主题皮肤并同步主线 2026-08-20 16:33:51 +08:00
echoD886
935108edca feat(assets): 素材库与画布 - 新增可交互通用文件夹 2026-08-20 15:16:45 +08:00
ddCat
a5bac9ec78 fix(platform): 模型路由 - 合并PR并修复归档重试兼容 2026-08-20 13:24:09 +08:00
ddCat
51c79c5a65 fix(canvas): 在线 Agent - 接入平台系统模型工具路由 2026-08-20 12:09:05 +08:00
dlh
31026a112d fix(canvas): 在线 Agent - 系统模型接入工具任务路由 2026-08-20 09:59:27 +08:00
dlh
d7a7397d28 fix(create): 文本生成任务 - 恢复终态正文并停止错误的生成中状态 2026-08-19 23:25:03 +08:00
dlh
1502ccfc1d fix(canvas): 节点模型配置 - 清理音频参数并纳入回归测试
修复 PR #265 遗漏的音频节点参数残留,并将新增回归测试加入 web test 脚本。

Co-authored-by: dlh <2773843782@qq.com>
2026-08-19 20:52:11 +08:00
dlh
6ecf4f4a10 fix(canvas): 节点模型配置 - 切换模型时清理生成参数残留
修复 issue #254;集成 PR #265,保留原 PR 开发者为提交作者。
2026-08-19 20:34:12 +08:00
kinoko
0e272f3b83 feat(canvas): TapNow - 支持公开画布导入 (#255)
(cherry picked from commit 9b96135a5e409b4718e6204ab4212b7ef22635aa)
2026-08-19 11:58:06 +08:00
ddCat
50b4cfc204 revert(canvas): TapNow 公开画布导入 - 撤销 main 误合并 2026-08-19 11:54:58 +08:00
ddCat
de00e211b3 fix(agent): Agent 对话 - 修复无效 URL 与上游取消日志 2026-08-19 11:47:26 +08:00
kinoko
275c59a766 feat(canvas): TapNow - 支持公开画布导入 (#255)
(cherry picked from commit 9b96135a5e409b4718e6204ab4212b7ef22635aa)
2026-08-19 11:34:23 +08:00
ddCat
c7452b701d fix(platform): 模型能力 - 修复图片时长误判与后台默认参数同步 2026-08-19 09:57:37 +08:00
ddCat
d2a089f1ec feat(canvas): 画布能力 - 完善 LibTV 导入与资源预览 2026-08-19 07:16:07 +08:00
ddCat
778551127c feat(platform): 创作能力整合 - 新增 Gemini Images 图片请求协议 2026-08-18 21:42:22 +08:00
ddCat
f62cc5ef3e style(web): 即梦模型目录测试 - 统一测试代码格式 2026-08-18 15:43:25 +08:00
ddCat
bda114b29e fix(runtime): 本地任务恢复 - 恢复本地画布和延迟视频任务 2026-08-18 15:16:05 +08:00
dyhhhhh
60bad10fc9 fix(canvas): 画布图片生成 - 参考图超限时停止生成并提示清理连线
保留全部已连接参考图,在首次生成、重试和任务入口统一校验模型上限。
2026-08-17 16:54:56 +08:00
dyhhhhh
ea657f179d fix(canvas): 画布图片生成 - 参考图超限时停止生成并提示清理连线
保留全部已连接参考图,在首次生成、重试和任务入口统一校验模型上限。
2026-08-17 16:54:56 +08:00
ddCat
fddda497d0 feat(create): 创作对话 - 接入推理展示与可折叠生成详情
Refs #243
2026-08-17 13:16:13 +08:00
ddCat
471d160479 feat(create): 创作对话 - 接入推理展示与可折叠生成详情
Refs #243
2026-08-17 13:16:13 +08:00
ddCat
c2352fd9b6 fix(models): 模型目录 - 保留人工能力并按声明发送视频分辨率 2026-08-17 12:56:51 +08:00