ddCat
|
535e696a53
|
fix(canvas): 图片人物质感 - 点击先打开参数编辑器
|
2026-08-26 14:32:01 +08:00 |
|
ddCat
|
2f3a813ccb
|
feat(platform): 插件协议系统 - 支持声明式渠道、工作流与参考媒体映射
|
2026-08-26 13:11:10 +08:00 |
|
ddCat
|
6ed1eb5a7c
|
fix(canvas): 画布资源恢复 - 生成结果下载或 OSS 落盘失败支持原任务重新加载
|
2026-08-25 15:06:45 +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 |
|
ddCat
|
7043c8ac7a
|
feat(agent): 画布 Agent - 重构工作流上下文与技能交互
|
2026-08-24 12:09:15 +08:00 |
|
kinoko
|
d77432693e
|
feat(ark-assets): 方舟素材库 - 支持私域素材授权 (#294)
|
2026-08-23 08:27:55 +08:00 |
|
 dlhandClaude Fable 5
|
e46f2ec027
|
fix(canvas): 图片节点 - 尺寸跟随图片真实比例,竖图不再两侧留黑
上传接口返回的 width/height 是可选字段(services/api/resources.ts),拿不到时节点落到
默认的横向比例,竖图被放进一个宽盒子、两侧留大片空白。改为在图片解码后于客户端量真实
尺寸并按比例校正节点 —— 这样不依赖服务端是否返回尺寸。
判据是「用户有没有手动定过尺寸」,**不是**「有没有量过尺寸」。第一版按后者写,结果所有
已经存过 naturalWidth 的既有节点永远得不到修正,改完等于没改。现在由 handleNodeResize
在手动拉伸时打 metadata.manualSize 标记,自动适配只避让它和 freeResize(自由比例是用户
显式要求脱离原始比例,自动校正会跟他打架)。
顺带收益:naturalWidth / naturalHeight 补齐后,canvas-node.tsx 的锁比例拉伸也会按真实
比例走 —— 它本来就在读这两个字段,之前多数节点拿不到。
已知影响:既有节点因为没有 manualSize 标记,首次重新加载时会自动校正一次尺寸。
对被 letterbox 的图是修复,但确实会让画布上现有图片节点的尺寸变动一次。
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
2026-08-22 12:33:10 +08:00 |
|
 dlhandClaude Fable 5
|
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
|
9327b75c2e
|
feat(canvas): 画布插件与视觉 - 合并 PR #289 并保留任务计费边界
|
2026-08-22 10:01:41 +08:00 |
|
ddCat
|
8be75c1fbd
|
refactor(core): 任务与模型协议治理 - 拆分服务职责并禁止已发起任务取消
|
2026-08-22 09:52:09 +08:00 |
|
QAyong
|
34a207eb39
|
feat(canvas): 画布视觉 - 优化浮动控件与连接线可读性
|
2026-08-22 03:08:15 +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
|
7f2e8c16e6
|
fix(web): 构建与测试 - 修复会话类型和图标依赖兼容
|
2026-08-20 19:48:02 +08:00 |
|
dlh
|
55b35dd943
|
feat(canvas): 多图批次 - 子图操作条补齐(下载/副本/设主图/失败重试删除)
- 展开批次子图悬浮操作条:成功子项下载/创建副本/设为主图,失败子项重试/删除
- 批次主图位常驻下载按钮
- 通过 CanvasNodeActionContext 注入画布级动作(download/duplicate/delete),不改 world-layers 数据模型
|
2026-08-20 19:46:18 +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
|
d47975f9bc
|
refactor(core): 模型路由与画布 - 收敛渠道模型映射并优化交互
|
2026-08-19 20:27:26 +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 |
|
kinoko
|
275c59a766
|
feat(canvas): TapNow - 支持公开画布导入 (#255)
(cherry picked from commit 9b96135a5e409b4718e6204ab4212b7ef22635aa)
|
2026-08-19 11:34:23 +08:00 |
|
ddCat
|
d2a089f1ec
|
feat(canvas): 画布能力 - 完善 LibTV 导入与资源预览
|
2026-08-19 07:16:07 +08:00 |
|
QAyong
|
d3a029732f
|
feat(canvas): 导演台 - 完善骨骼控制、对象管理与面板交互
|
2026-08-17 19:46:50 +08:00 |
|
WindC0X
|
9ee71d4650
|
feat(canvas): 画布媒体工作流 - 支持批量连线、失败重试与模型能力增强
合并 PR #230。保留当前主线样式与组件结构,吸收批量连线、失败批次重试、媒体模型能力和相关后端增强,并修复集成检查发现的分辨率选择器启用条件与测试稳定性问题。
|
2026-08-15 15:48:16 +08:00 |
|
WindC0X
|
0e251c3c8f
|
feat(canvas): 画布媒体工作流 - 支持批量连线、失败重试与模型能力增强
合并 PR #230。保留当前主线样式与组件结构,吸收批量连线、失败批次重试、媒体模型能力和相关后端增强,并修复集成检查发现的分辨率选择器启用条件与测试稳定性问题。
|
2026-08-15 15:48:16 +08:00 |
|
 ddCatandzkhyww
|
914717cae6
|
feat(runtime): 即梦本机运行时 - 接入安全生成闭环与桌面本机渠道
Refs #225
Co-authored-by: zkhyww <127009345+zkhyww@users.noreply.github.com>
|
2026-08-15 12:45:29 +08:00 |
|
 ddCatandzkhyww
|
57e1820f41
|
feat(runtime): 即梦本机运行时 - 接入安全生成闭环与桌面本机渠道
Refs #225
Co-authored-by: zkhyww <127009345+zkhyww@users.noreply.github.com>
|
2026-08-15 12:45:29 +08:00 |
|
ddCat
|
bf4a2f9c39
|
feat(canvas): 画布创作对话 - 统一流式 Markdown 展示与交互修复
|
2026-08-15 02:31:42 +08:00 |
|
ddCat
|
abcf3e1787
|
feat(canvas): 画布创作对话 - 统一流式 Markdown 展示与交互修复
|
2026-08-15 02:31:42 +08:00 |
|
ddCat
|
15b679acf0
|
refactor(*): 用户工作台 - 统一画布、任务中心与设置页产品化交互
|
2026-08-14 23:44:55 +08:00 |
|
ddCat
|
d89a5a5b7b
|
refactor(*): 用户工作台 - 统一画布、任务中心与设置页产品化交互
|
2026-08-14 23:44:55 +08:00 |
|
ddCat
|
4a8096c920
|
fix(ci): 代码格式 - 修复画布变更文件的 Prettier 校验
Refs #220
|
2026-08-14 12:44:58 +08:00 |
|
ddCat
|
b726620b4d
|
fix(ci): 代码格式 - 修复画布变更文件的 Prettier 校验
Refs #220
|
2026-08-14 12:44:58 +08:00 |
|
ddCat
|
e7af466a16
|
feat(canvas): 画布模型与连线能力 - 合并同名模型并按输入动态限制节点关联
Closes #220
|
2026-08-14 12:41:55 +08:00 |
|
ddCat
|
af609f4a3e
|
feat(canvas): 画布模型与连线能力 - 合并同名模型并按输入动态限制节点关联
Closes #220
|
2026-08-14 12:41:55 +08:00 |
|
 爱笑的毛毛虫andsikongyue
|
d33c6389d4
|
feat(canvas): 视频节点截取重生成 - 支持多段/时间线导入并调用视频模型批量重生成 (#197)
* feat(canvas): 视频节点截取重生成 - 支持多段/时间线导入并调用视频模型批量重生成
* test(canvas): 视频节点时间线导入 - 修正旧数据标题回退测试
* style(canvas): 视频节点截取重生成 - 格式化新增文件并修正测试
---------
Co-authored-by: sikongyue <3155157671@qq.com>
|
2026-08-10 00:13:02 +08:00 |
|
 爱笑的毛毛虫andsikongyue
|
eceaf7ac41
|
feat(canvas): 视频节点截取重生成 - 支持多段/时间线导入并调用视频模型批量重生成 (#197)
* feat(canvas): 视频节点截取重生成 - 支持多段/时间线导入并调用视频模型批量重生成
* test(canvas): 视频节点时间线导入 - 修正旧数据标题回退测试
* style(canvas): 视频节点截取重生成 - 格式化新增文件并修正测试
---------
Co-authored-by: sikongyue <3155157671@qq.com>
|
2026-08-10 00:13:02 +08:00 |
|
 爱笑的毛毛虫andzhaoyue
|
43e65570a5
|
feat(canvas): 新增视频节点字幕体系与多轨时间线编辑(关联 #187) (#191)
* fix(ci): 后端测试 - 修复 responses 流式测试数据与 Grok 生图测试 SSRF 放行
* feat(canvas): 新增视频节点字幕体系与多轨时间线编辑(关联 #187)
---------
Co-authored-by: zhaoyue <zhaoyue@rongshantech.com>
|
2026-08-08 18:28:28 +08:00 |
|
 爱笑的毛毛虫andzhaoyue
|
62b9c420dd
|
feat(canvas): 新增视频节点字幕体系与多轨时间线编辑(关联 #187) (#191)
* fix(ci): 后端测试 - 修复 responses 流式测试数据与 Grok 生图测试 SSRF 放行
* feat(canvas): 新增视频节点字幕体系与多轨时间线编辑(关联 #187)
---------
Co-authored-by: zhaoyue <zhaoyue@rongshantech.com>
|
2026-08-08 18:28:28 +08:00 |
|
ddCat
|
369ff3ac23
|
Merge branch 'main' of github.com:ddcat-ai/open-ai-canvas
|
2026-08-07 18:47:35 +08:00 |
|
ddCat
|
8c5d95511b
|
Merge branch 'main' of github.com:ddcat-ai/open-ai-canvas
|
2026-08-07 18:47:35 +08:00 |
|
 爱笑的毛毛虫andzhaoyue
|
4c52702b41
|
refactor(canvas): 分镜脚本节点 - 按方案 A 信息分层重构(头部瘦身 + 4 步迷你流程条) (#171)
* feat(canvas): 分镜脚本节点 - 新增表格/卡片视图切换与镜头卡片流
* fix(canvas): 分镜卡片 - 缩略图尺寸改用标准间距类
* fix(canvas): 分镜脚本节点 - 头部视图切换 Segmented 补齐事件隔离
* refactor(canvas): 分镜脚本节点 - 按方案 A 信息分层重构,头部瘦身为全屏编辑+更多菜单并启用 4 步迷你流程条
* fix(canvas): 分镜脚本节点 - 迷你流程条改为步骤水平分布,连接线拉伸填充整行宽度
* fix(canvas): 分镜脚本节点 - 迷你流程条改为水平居中分布,连接线限宽不拉伸
---------
Co-authored-by: zhaoyue <zhaoyue@rongshantech.com>
|
2026-08-07 18:46:23 +08:00 |
|
 爱笑的毛毛虫andzhaoyue
|
99fb56ae22
|
refactor(canvas): 分镜脚本节点 - 按方案 A 信息分层重构(头部瘦身 + 4 步迷你流程条) (#171)
* feat(canvas): 分镜脚本节点 - 新增表格/卡片视图切换与镜头卡片流
* fix(canvas): 分镜卡片 - 缩略图尺寸改用标准间距类
* fix(canvas): 分镜脚本节点 - 头部视图切换 Segmented 补齐事件隔离
* refactor(canvas): 分镜脚本节点 - 按方案 A 信息分层重构,头部瘦身为全屏编辑+更多菜单并启用 4 步迷你流程条
* fix(canvas): 分镜脚本节点 - 迷你流程条改为步骤水平分布,连接线拉伸填充整行宽度
* fix(canvas): 分镜脚本节点 - 迷你流程条改为水平居中分布,连接线限宽不拉伸
---------
Co-authored-by: zhaoyue <zhaoyue@rongshantech.com>
|
2026-08-07 18:46:23 +08:00 |
|
ddCat
|
25ea5b0621
|
feat(canvas): 文件上传 - 新增批量选择与拖拽上传弹窗
Fixes #169
|
2026-08-07 16:57:59 +08:00 |
|
ddCat
|
f9accd3bef
|
feat(canvas): 文件上传 - 新增批量选择与拖拽上传弹窗
Fixes #169
|
2026-08-07 16:57:59 +08:00 |
|
ddCat
|
1973afc356
|
feat(*): 生成工作台 - 新增项目画风配置与图片模型能力裁剪
|
2026-08-07 11:46:23 +08:00 |
|
ddCat
|
9957419be3
|
feat(*): 生成工作台 - 新增项目画风配置与图片模型能力裁剪
|
2026-08-07 11:46:23 +08:00 |
|
爱笑的毛毛虫
|
61f0dfb9c6
|
fix(canvas): 活动任务面板 - 恢复顶栏下方偏移并避免遮挡顶部工具 (#162)
* fix(canvas): 活动任务面板 - 恢复顶栏下方偏移并避免遮挡顶部工具
Added topInset prop to CanvasActiveTaskPanel for positioning.
* fix(canvas): 活动任务面板 - 调用侧接入 topInset 让位契约
|
2026-08-06 21:50:54 +08:00 |
|
爱笑的毛毛虫
|
ad4c738e74
|
fix(canvas): 活动任务面板 - 恢复顶栏下方偏移并避免遮挡顶部工具 (#162)
* fix(canvas): 活动任务面板 - 恢复顶栏下方偏移并避免遮挡顶部工具
Added topInset prop to CanvasActiveTaskPanel for positioning.
* fix(canvas): 活动任务面板 - 调用侧接入 topInset 让位契约
|
2026-08-06 21:50:54 +08:00 |
|