Commit Graph

169 Commits

Author SHA1 Message Date
ddCat
39bdc54762 feat(assets): 素材回收站与画布历史 - 合并 PR #370 并修复删除一致性 2026-09-01 18:50:30 +08:00
ddCat
4724f0767b feat(*): 模型协议 - 升级声明式协议、扩充官方插件并完善生成任务恢复 2026-09-01 16:47:03 +08:00
ddCat
3f4a9ea3d0 feat(canvas): 画布工作台 - 新增生成副本并修复大型画布性能、素材同步与删除校验
统一图片与视频副本的生成落点并保留参考连接。\n优化大型画布节点虚拟化、媒体懒加载、拖拽与详情进入路径。\n修复素材主版本 ID 同步及删除时的画布独立引用校验。
2026-09-01 14:57:05 +08:00
MasterChiefCN
190b848c9d fix(storage): 修复腾讯云 COS 连接测试异常 (#362) 2026-08-31 15:06:34 +08:00
ddCat
8984c567ac feat(*): 分镜与资产 - 完善五类资产、候选去重、搜索、中文镜头编号与分类整理 2026-08-31 13:16:10 +08:00
Danborad
ef30645cf0 fix(channel): 修复前台自定义渠道模型配置抽屉空白死锁,并在启动时保护管理员能力配置 (#360)
Co-authored-by: Danborad <danborad@github.com>
2026-08-31 12:28:40 +08:00
Danborad
86d3805f5a fix(canvas): 保护生成中与失败节点画幅尺寸,支持变体即时持久化与 2K 分辨率高亮 (#359)
Co-authored-by: Danborad <danborad@github.com>
2026-08-31 12:28:12 +08:00
wurendao007
c891497df9 perf(canvas): 画布媒体 - 优化媒体加载、播放器与节点交互 (#357)
Merge origin/main at 2b7375f and retain canvas media performance, player layout, and interaction updates.

Co-authored-by: ddCat <2695092045@qq.com>
2026-08-31 09:00:37 +08:00
vv-get-ti
151e99f8d9 feat(canvas): 自由画布 - 增强空白起点、外观设置与节点连接体验 (#356) 2026-08-31 06:49:43 +08:00
ddCat
40fd0c54a4 feat(*): 短剧创作工作台 - 完善章节分镜、资产管理、技能运行与生成任务恢复 2026-08-29 23:34:55 +08:00
ddCat
432030a07a fix(canvas): 媒体生成 - 修复已有图片引用和图片音频视频模型匹配 2026-08-29 14:49:59 +08:00
ddCat
4b75504f75 fix(canvas): 视频设置 - 按渠道能力隐藏尺寸并联动分辨率宽高 2026-08-29 11:05:59 +08:00
ddCat
6d77c250c1 fix(canvas): 生成结果命名 - 保留复制与参数变体标识避免下载重名 2026-08-29 10:28:23 +08:00
ddCat
86019cccea feat(canvas): 视频画面提取 - 支持批量取帧并将片段截取与生成解耦 2026-08-29 08:48:38 +08:00
ddCat
e99ddf3a81 feat(*): 画布创作体验 - 完善 Agent 引导、生成防重、搜索快捷键、素材多选与分辨率兼容 2026-08-28 16:24:58 +08:00
echoD886
335b5406ad fix(create): 参考内容 - 支持添加、独立删除与筛选管理
- 支持参考内容按稳定 ID 删除、筛选、清空、拖拽与触屏交互
- 保留 Vite 生产环境模型 Logo 加载并兼容 Bun 测试
- 同步最新 main,修正相关格式和陈旧测试断言

Co-authored-by: echoD886 <dingxiaojie66@gmail.com>
2026-08-28 09:07:33 +08:00
ddCat
bd0d0fd4fd feat(*): 模型生成链路 - 完善 Agnes 结果兼容、价格展示与请求日志追踪 2026-08-28 06:53:57 +08:00
ddCat
b3e977a985 feat(*): 模型渠道 - 支持系统模型图标并升级 Agnes 视频协议 2026-08-27 23:31:38 +08:00
ddCat
7cb6aed27d fix(canvas): 文本生成 - 修复分镜超时并贯通 Agent 与创作页流式返回 2026-08-27 22:39:30 +08:00
Rou
482d8bdbc2 支持 S3 兼容对象存储 (#336)
* feat(storage): 支持 S3 对象存储

* fix(storage): 补齐 S3 对象文件后缀
2026-08-27 22:16:08 +08:00
ddCat
4675cf4c99 fix(*): 创作工作台 - 修复 Agent、资源引用、附件交互与 Agnes 视频协议 2026-08-27 22:12:04 +08:00
echoD886
0e33cc805e feat(canvas): 3D 导演台 - 补齐非 P0 分层交互与回归保护 (#333)
* feat(canvas): 3D 导演台 - 补齐分层交互与回归保护

* fix(canvas): 3D 导演台 - 过滤非法轨迹关键帧

* chore(canvas): 3D 导演台 - 对齐前端格式规范

* fix(canvas): 3D 导演台 - 保证故障重试入口可点击

* test(canvas): 3D 导演台 - 稳定真实点击验证
2026-08-27 20:47:10 +08:00
MasterChiefCN
3bc670f067 feat(plugins): 插件管理 - 区分系统与官方插件权限 (#329) 2026-08-27 11:22:00 +08:00
echoD886
c2766544d7 fix(canvas): 3D 导演台 - 完成 Issue #305 P0 稳定性治理 (#324)
* fix(canvas): 3D 导演台 - 修复状态回弹与保存恢复生命周期

* style(canvas): 3D 导演台 - 对齐 CI 格式门禁
2026-08-27 10:32:45 +08:00
ddCat
51222f42b6 fix(canvas): 分镜生成上下文 - 忽略未绑定资产的角色设计工作流 2026-08-26 22:38:07 +08:00
ddCat
4b38b89463 fix(*): 插件工作流 - 统一启停状态并闭环校验生成链路 2026-08-26 21:36:48 +08:00
ddCat
eeff8d511f refactor(canvas): 生成配置 - 收敛插件工作流并移除系统模型分支 2026-08-26 16:28:45 +08:00
QAyong
5732eb1536 feat(portrait-clearance): 肖像排查 - 增加画布插件与本机检测链路 2026-08-26 15:23:19 +08:00
yepwait
d458ba3f75 feat(workflow): 工作流提供方 - 集成 RunningHub 与 ComfyUI Bridge 2026-08-26 15:02:42 +08:00
ddCat
df7f607b84 feat(platform): 插件协议系统 - 支持声明式渠道、工作流与参考媒体映射 2026-08-26 13:11:10 +08:00
ddCat
48dca6c796 refactor(*): 数据同步与资源删除 - 收敛服务端真相并保证删除可恢复 2026-08-25 20:10:11 +08:00
ddCat
9d848b9daa fix(canvas): 画布资源恢复 - 生成结果下载或 OSS 落盘失败支持原任务重新加载 2026-08-25 15:06:45 +08:00
QAyong
cf6c78d540 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
625a97560b feat(canvas): 分镜脚本 - 关联画布资产并自动物化视频引用 2026-08-25 11:24:47 +08:00
MasterChiefCN
e56a33008a fix(video): 火山方舟 - 解耦可信素材并修复音频组合参考 (#302) 2026-08-24 19:42:30 +08:00
MasterChiefCN
837a30e75d feat(video): support Ark full-modal references (#300) 2026-08-24 16:55:45 +08:00
MasterChiefCN
40155aa128 fix(billing): 视频计费 - 恢复火山方舟视频 Token 计费 2026-08-24 12:44:33 +08:00
ddCat
326572ea03 feat(agent): 画布 Agent - 重构工作流上下文与技能交互 2026-08-24 12:09:15 +08:00
MasterChiefCN
ef27a0927e fix(billing): 火山方舟视频 - 恢复 Token 计费配置 2026-08-24 09:47:38 +08:00
ddCat
919037e5d9 feat(*): 插件中心与模型协议 - 完善声明式协议运行时并增加功能开放控制 2026-08-23 23:19:27 +08:00
ddCat
7cc6021f6e fix(*): 画布与任务详情 - 优化生成参数展示、批量上传和默认模型状态 2026-08-23 09:08:20 +08:00
kinoko
d1a4fbb96a feat(ark-assets): 方舟素材库 - 支持私域素材授权 (#294) 2026-08-23 08:27:55 +08:00
ddCat
135d389100 fix(*): 模型目录 - 修复前台开关、系统模型价格与访问控制 2026-08-22 20:57:31 +08:00
ddCat
4123b268f2 fix(canvas): 画布背景 - 降低点阵密度与亮度并优化缩放显示 2026-08-22 18:11:03 +08:00
kinoko
236b850177 feat(models): 统一模型规格价格与路由 2026-08-22 17:00:08 +08:00
ddCat
8f8b0f108d fix(canvas): 画布交互 - 优化节点视觉、分镜列与滑动性能 2026-08-22 13:34:30 +08:00
ddCat
73ff34670d fix(canvas): 画布视觉 - 收敛边框与网格样式 2026-08-22 13:09:34 +08:00
dlh
acb2cfc448 fix(canvas): 画布连线 - 端点收敛到端口中点并新增流动光影
两件事,都在连线层。

一、多条线接同一个端口时不再沿着边散开。

原因是 use-canvas-connection-controller 把**鼠标松手的 Y 位置**记成了 anchorRatio,
于是每条线各自钉在落点上。判据还是反的:真正多端口的分镜脚本传 undefined,
而左右各只有一个出入口的普通节点却按落点比例取 Y,看起来像节点有很多端口。

改成单端口一侧永远取边的正中。这条规则有**两份实现**(canvas-connections 的
connectionHandleY 与 canvas-project-domain 的 getConnectionTargetAnchor),只改一处
会让实际画出来的线和吸附点对不上,所以两处一起改。同时把 anchorRatio 参数从这两个
几何函数上摘掉,让「不按落点」写在签名里而不是悄悄丢掉一个入参 —— 摘掉之后编译器
点出了 4 处仍在传旧参数的调用,正是这么做的收益。分镜脚本的 row: 句柄不受影响。

二、连线新增光晕与流光两层。

光晕(blur 的宽描边)和流光(一小段高亮沿路径跑)**只在悬停/选中态渲染**:blur 是
filter,成本随线条数量线性上升,常态几十条线全开会明显掉帧。常态仍是原来那条极淡的
虚线,只有指向的那条亮起来,顺带让「当前在看哪条链路」更清楚。

流光周期 2.1s 与虚线流动 1.25s 刻意错拍 —— 同频会锁成一条整体平移的虚线,
看不出有光在走。keyframes 的位移量等于 dasharray 之和(16 + 118 = 134),
否则循环处会跳一帧。

新动画已加入全部三处禁用名单:prefers-reduced-motion、.no-motion,以及
[data-canvas-viewport-interacting](平移缩放期间)。第三处最关键 —— 漏掉的话拖画布时
几十条线还在跑动画,正是错题本里「画布高频重绘导致崩溃」那一类。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-22 12:33:10 +08:00
dlh
53d05d632b 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
6e73e3811e feat(*): 工作台界面 - 优化插件中心、管理侧栏及画布与短剧列表 2026-08-22 11:35:23 +08:00