ddCat
b667605902
fix(canvas): Live2D 外观 - 补齐随部署发布的 Cubism Core 运行库
2026-09-22 14:17:27 +08:00
ddCat
40b1a9eeda
Merge remote-tracking branch 'origin/pr-589' into codex/pr-557-589-security-integration
...
# Conflicts:
# docs/content/docs/backend/http-api.mdx
2026-09-22 11:20:54 +08:00
ddCat
86a1f4671e
Merge remote-tracking branch 'origin/pr-585' into codex/pr-557-589-security-integration
2026-09-22 11:10:48 +08:00
ddCat
d67df01dd5
fix(agent): 画布助手 - 恢复 Skills 引用提示
2026-09-22 09:35:11 +08:00
AetherNo2332
d6ecdd528b
fix(cloud-agent): 布局工具参数错误按字段归类,审批卡补整理徽标
...
- canvas_arrange_nodes 的参数契约错误改用上游既有的 cloudAgentFieldError:
snapshotHash 缺失按 required、mode/align/gap/nodeIds/groups 非法按 invalid_value、
nodeIds/groups 超限按 item_count。原先一律 BadAuthRequest(*AppError),按上游运行期的
errors.As 顺序会走 failCloudAgentAdmission 把整轮判死,模型拿不到可纠正回执。
- 审批卡补 .canvas-agent-approval-operation-arrange_nodes 徽标配色(与新增/修改/连线同一组),
并补一条前端用例:arrange_nodes 预览项不得被 operation() 当成未知值丢掉。
2026-09-22 01:40:43 +08:00
AetherNo2332
cc7af37d27
feat(canvas): 云端 Agent 画布布局 - 新增 canvas_arrange_nodes 与新增节点自动落位
...
云端 Agent 此前只能新建节点与连线,既不会排版也不能移动已有节点:模型只能用几十个
update_node 手算坐标,或者让用户自己拖。
- 新增 backend/internal/canvas/layout:把前端既有的画布布局算法(web/src/lib/canvas/
canvas-layout.ts,本 PR 不改该文件)按同一套常量移植到服务端,提供 Kahn 拓扑分层 flow、
媒体泳道 byType、row/column/grid、对齐与等距、分组分带、AABB 重叠检测与空位搜索。
- 新增写工具 canvas_arrange_nodes:snapshotHash 必需,mode∈{auto,flow,byType,row,column,
grid},可传 nodeIds、groups(只做横向位置分带,不建容器、不改层级)、align、gap、dryRun。
只改坐标,不改内容、不建连线、不增删节点;一次最多 50 个节点 / 12 组。锁定节点、背板等
容器、隐藏批次子节点与已归属背板的子节点保持不动并在回执里说明;整批复用现有 mutation
记录与事件管线,审批与撤销走同一条路径。
- add_node 省略坐标时不再落到 (0,0):优先贴合本批连线的对端(输入在左、输出在右),否则
追加到同泳道同类节点之后,冲突则扫描空位;只给一个轴时保留该轴。agentCanvasOp.X/Y 改为
指针以区分"没给坐标"与"坐标 0"。
- update_node 的 patch 新增 x/y(PatchField.Limit 校验 ±1e6),供模型微调单个节点。
- 系统行为策略新增「布局与整理」一节并升版到 8;docs 补工具说明与工具全集;前端同步审批
预览联合类型、面板文案与徽标。
- 工具 schema 预算按实测从 24000 上调到 25000(21 个工具 24788 字节),并改正注释里
"上游约 23.4 KB"的说法(上游 20 个工具实测 22777 字节)。
2026-09-22 01:32:20 +08:00
AetherNo2332
4febdf3c0e
fix(cloud-agent): 工具失败归类与可行动字段
...
工具失败此前只有一句自然语言(tool_failed + text),无法区分"模型自己出的错"和真实的
权限/状态/上游问题:模型拿不到可自纠的反馈,排查时分不清该改提示词、改权限还是等上游。
- 新增 backend/internal/app/cloud_agent_tool_error_class.go:把失败归成
invalid_model_output(幻觉工具名;本轮契约之外、只被 contextScope 挡掉的调用)、
schema_error(缺必填字段/类型错/未知字段/非法 JSON)、state_conflict(画布在读取之后被改动)、
permission_violation(只读轮发起写入等真实授权边界)、upstream_failure(上游 4xx/5xx、
超时、媒体上游拒绝),其余归 tool_error。
- 每类附 retryable 与稳定的 requiredAction(fix_arguments / reread_canvas /
use_advertised_tools / ask_user / report_to_user),写进 tool_failed 的回执与载荷顶层。
只加标注:没有任何放行或拒绝逻辑读它。
- 缺必填字段的通用判定:各工具的校验点抛的多是普通 AppError,从错误类型看不出"模型漏了字段"。
现在用本轮实际暴露的 schema 的 required 与参数比对,命中即按参数契约错误处理(回传 schema 与
guidance 供模型自纠);只在业务侧确实按参数问题拒绝(400/422)时套用,已分类的参数错误不套壳。
- 幻觉工具名的拒绝文案更具体:过去一律"工具未获本轮权限授权",现在指向"不存在的工具 + 只使用
本轮工具表里列出的工具"。
- 前端工具卡失败时显示归类标签,比统一的"执行失败"更能说明下一步该做什么。
2026-09-22 00:53:32 +08:00
ddCat
0146a232a7
fix(*): 素材库与画布 - 修复批量删除刷新、选择布局及工具引用
2026-09-21 20:14:05 +08:00
ddCat
4e0b0a9256
feat(*): 画布助手 - 新增 Live2D 配置导入与模型渲染支持
2026-09-21 14:11:29 +08:00
ddCat
4f9e79f67f
feat(canvas): 模型选择 - 支持彩色展示标签并优化目录与积分交互
2026-09-21 11:11:10 +08:00
ddCat
f3a58416cd
fix(ui): 提示浮层 - 修复键盘触发并补真实交互回归
...
Original-Commit: ff42bb969a037f3271e3da59b752f513c3112b2d
2026-09-21 09:55:26 +08:00
Rou
b57767eb8b
fix(model-picker): 模型选择 - 修复候选报价显示与同渠道模型跳回 ( #556 )
...
Original-Commit: 7a5e17e2112c3c23e081a1ecf3c33a654cf1e907
fix(model-picker): 模型选择 - 修复候选报价显示与同渠道模型跳回
2026-09-21 09:37:51 +08:00
AetherNo2332
0f909a77b0
fix(web): 基础控件 FloatingDock - 宿主没有 matchMedia 时不再渲染失败 ( #563 )
...
Original-Commit: 3da77b3931a675de06b02c1bba93f112d253041b
fix(web): 基础控件 FloatingDock - 宿主没有 matchMedia 时不再渲染失败
`window` 存在不代表 `matchMedia` 存在(SSR 垫片、嵌入式 webview、部分 DOM polyfill),
而 FloatingDock 在渲染期直接取 `window.matchMedia("(pointer: coarse)").matches`,
取不到就抛 TypeError,整个 dock(画布工具栏/素材托盘/缩放控件)渲染失败。
仓库里同一模式已有先例:canvas-workspace-tool-panel 用 typeof 守卫。
抽 coarsePointerQuery():两个都探测,取不到按"非触屏"处理,useEffect 也提前返回;
能取到时行为不变。新增源码级守卫用例(上游原态失败、补丁后通过)。
2026-09-21 09:37:19 +08:00
AetherNo2332
c4172295c3
chore(web): 前端格式 - 统一十个文件的 Prettier 格式 ( #561 )
...
Original-Commit: ade0049c0b80733dfea563bac2aae9260e373cf0
style(web): 前端格式 - 补 Prettier 格式(10 个文件)
这 10 个文件(3 个组件/样式与设置页、4 个 admin 主题与控件、1 个 lib、2 个测试)
用仓库自带 Prettier 检查会 warn,`bun scripts/check-changed-formatting.mjs` 在改动到它们时
会直接判红。本次只做格式化,不改任何行为:合并的 CSS 声明、去掉多余换行与括号、
统一链式调用换行。
验证:prettier --write 后 `check-changed-formatting.mjs` 通过、typecheck 通过、
1940 条前端测试全过、eslint 通过。
2026-09-21 09:37:19 +08:00
AetherNo2332
425cc369fb
fix(web): 基础控件 Tooltip - 子元素可触发并保留键盘可达性 ( #560 )
...
Original-Commit: 38b5909fa78902048345ad8d8e00248660830ad5
fix(web): 基础控件 Tooltip - 子元素可触发并保留键盘可达性
react-aria-components 的 TooltipTrigger 通过 context 下发 hover/focus 处理与 triggerRef,
只有消费该上下文的组件才会真正挂上;原来包一层普通 span,既不读 context 也拿不到 ref,
所以悬停/聚焦都不弹气泡(有定位也无基准)。
包装层改为 Focusable + excludeFromTabOrder:悬停与聚焦都能触发、气泡有定位基准,
外层不占 Tab 位,键盘焦点仍落在内层控件上,导航顺序不变。
2026-09-21 09:37:19 +08:00
ddCat
6eea2552f8
fix(canvas): 云端 Agent - 参数错误有限重试并折叠中间失败
2026-09-21 09:30:38 +08:00
ddCat
bdc4bd8dd6
feat(canvas): 多模态表格 - 合并 PR #549 并保留本地交互与校验
2026-09-20 17:18:46 +08:00
ddCat
e93bf3ca39
feat(canvas): 画布工作区 - 整合侧栏与风格预设并修复提示词回填
...
选择性整合 #547,保留主分支节点与工具条设计。新增默认折叠的节点、资产、任务和历史面板,风格与预设保留在节点内,移除重复入口。
补齐工具权限、提示词解析、资源引用保护及数据库迁移,修复提示词清空和连续编辑后的生成配置同步。
验证:前端全量 1925 项测试、构建、类型检查及 lint 通过;后端 go test ./... 通过。真实模型、PostgreSQL 实库与登录态页面验收仍待进行。
Refs #547
Co-authored-by: bensharp <bensharp@qq.com >
2026-09-20 16:40:08 +08:00
Codex
559f212c2f
merge: official v1.5.6 with multimodal storyboard enhancements
2026-09-20 13:05:42 +08:00
Codex
007575f56f
feat(canvas): support multimodal video storyboard tables
2026-09-20 12:59:23 +08:00
ddCat
46c498ff87
feat(*): 系统渠道与画布 - 支持多规格批量调价及 Agent 入口拖动
2026-09-20 11:18:19 +08:00
ddCat
609ab70203
fix(web): 导演台检查 - 隔离开发复现入口的外观初始化请求
2026-09-20 09:35:07 +08:00
ddCat
ad82559cda
fix(workspace): 创作工作台 - 修复线上样式层级并优化 Agent、菜单与素材密度
2026-09-20 05:29:52 +08:00
ddCat
ec5abc967e
feat(canvas): 交互可读性 - 优化连线、字号与工作条
2026-09-19 22:29:41 +08:00
ddCat
db9e18da1e
fix(canvas): 远程媒体 - 统一资源地址并校验视频缓存
2026-09-19 22:29:09 +08:00
ddCat
14a78c3c18
fix(canvas): 打光效果 - 保留主干四列预设布局
2026-09-19 21:04:12 +08:00
cn-derekdu
5f73916e17
fix(ci): 质量检查 - 同步格式、前端断言与存储降级
2026-09-19 21:04:03 +08:00
libiao320-cmd
8b68c6ef12
fix(canvas): 打光效果 - 修复预设文字重叠
2026-09-19 21:03:54 +08:00
ddCat
3bf21d79af
feat(canvas): 生成合同 - 统一节点参数并补充模型上下文能力
2026-09-19 20:32:05 +08:00
ddCat
6f2f0eb490
refactor(web): 样式体系 - 拆分模型选择、滚动条与编辑器样式
2026-09-19 20:28:16 +08:00
Codex
376770aad6
fix: restore list mode entry in text composer
2026-09-19 20:25:53 +08:00
Codex
d3bec84363
merge: preserve batch canvas enhancements on v1.5.4
2026-09-19 15:48:07 +08:00
Codex
7f389875cb
merge: official v1.5.4 release
2026-09-19 15:36:02 +08:00
Codex
4bb65cec26
fix: harden list mode and batch generation flow
2026-09-19 15:35:11 +08:00
Codex
6cad9a608d
fix: replace custom context menu with hover X button, restore native right-click
2026-09-19 14:55:41 +08:00
Codex
67da7af88c
feat: add right-click and keyboard delete for batch table reference thumbnails
...
- Right-click on reference thumbnail shows context menu with 删除素材
- Delete/Backspace key removes the hovered reference cell
- Both actions only work within the batch table, on the specific thumbnail
2026-09-19 14:36:20 +08:00
Codex
5b9abfcc97
feat: add list mode for AI-powered batch table generation
...
- Add text/list toggle in prompt panel
- List mode: AI analyzes connected images + prompt, outputs structured JSON table
- Batch table node renders AI-generated text columns as read-only content
- Column names and row count determined by AI (3-6 columns, N rows)
2026-09-19 14:25:24 +08:00
Codex
97e6b045d9
feat: 批量创作表增加完整生成设置对话框,参考图上限提升到10
...
- 新增 BatchGenerationSettingsDialog 组件:模型选择 + 图像质量/尺寸/宽高比/透明背景/生成张数
- 替换原简单确认框为完整设置面板,用户可在生成前调整参数
- 参考图列上限从 6 提升到 10,列宽调整为 72px 以适配
2026-09-19 13:35:15 +08:00
ddCat
338c0ed860
feat(models): 模型目录与计费 - 按展示名分组并隔离管理员积分成本
2026-09-19 09:54:27 +08:00
ddCat
a3a5afe51f
fix(canvas): Agent 面板 - 移除 PR #539 QAyong 提交中的无效 hover 背景
...
PR #539 作者:QAyong
2026-09-19 08:29:58 +08:00
ddCat
bc6897b208
feat(payment): PR #538 支付FM插件 - 合并 Danborad 的支付插件实现
2026-09-19 08:17:47 +08:00
ddCat
b18e0e914b
feat(canvas): PR #539 Agent 面板 - 合并 QAyong 的回车发送与中文 Skills 触发改进
2026-09-19 08:17:36 +08:00
ddCat
6c67019f2f
fix(*): 视频计费与结果解析 - 按 Token 预估展示并解析数组媒体结果
2026-09-19 07:48:08 +08:00
ddCat
f549486fa2
fix(canvas): 模型选择 - 按系统渠道聚合模型一级菜单
...
Co-authored-by: lmj15657306288-ui <lmj15657306288-ui@users.noreply.github.com >
Co-authored-by: ZW-Hao <ZW-Hao@users.noreply.github.com >
2026-09-19 07:18:01 +08:00
QAyong
5537fae73b
feat(canvas): Agent 面板 - 支持回车发送并让技能菜单接受中文顿号
...
画布 Agent 面板的输入框此前有两个中文用户的体验问题:Enter 不发送(只换行),
且技能候选菜单只认 "/" 触发,中文标点状态下按 "/" 打出的是 "、",必须先切回英文。
回车发送:
- canvas-resource-mention-textarea.tsx:sendOnEnter 由 boolean 扩展为 boolean | "both",
新增 shouldSubmitOnEnter() 统一判定;原来 contentEditable 与 textarea 两处各写一份表达式。
false 仅 ⌘/Ctrl+Enter 提交(原行为),"both" 两者都提交,Shift+Enter 始终换行。默认仍为 true,
首页智能创作、批量创作表、短剧工作台三个调用方键位不变。
- canvas-cloud-agent-chat-ui.tsx:改传 sendOnEnter={canSubmit ? "both" : false},
运行中 Enter 保持换行、不误发;提示文案改为「Enter 发送 · Shift+Enter 换行」,发送按钮 tooltip 同步。
- canvas-cloud-agent.css:快捷键提示原本在 @container (max-width: 520px) 下整条 display: none,
而默认面板宽度 448px 正落在该区间,等于开箱即用时看不到任何发送键说明;
改为 .agent-composer-send-hint-full / -compact 两段,窄态降级为短文案「Enter 发送」。
中文顿号触发技能菜单:
- canvas-cloud-agent-chat-ui.tsx:handlePromptChange 的检测正则由 /(^|\s)\/([^\s/]*)$/
改为 /(^|\s)[/、]([^\s/、]*)$/。保留「行首或紧跟空白」前置条件,
中文正文里的顿号(如「苹果、香蕉」)不会误触发;applySlashSkill 的替换长度仍为 1,两个触发符都是单字符。
- canvas-cloud-agent-panel.tsx:placeholder 改为「用 / 或 、 引用 Skills」,让两种触发方式可发现。
- canvas-resource-mention-editor.test.ts:同步源码断言(键位、两段提示类名、触发正则、placeholder)。
验证:
- cd web && bun run typecheck 通过。
- bun run lint(改动文件)通过;改动文件按 prettier 校验通过(其余四个文件基线即未格式化,CI 会跳过)。
- bun test test/canvas-resource-mention-editor.test.ts:10 通过 / 1 失败。失败项是同文件既有断言
expect(css).not.toContain(".agent-tool-row:hover"),而 main 上 canvas-cloud-agent.css 本就含该选择器,
属于基线既有失败,与本次改动无关(未在本 PR 内顺手修改,避免扩大范围)。
- 触发正则边界用独立脚本实测:、夜景 / 、夜景(前置空白)/ abc /夜 / a\n、x / " @节点 /夜景" 均正确给出
start 与 query;苹果、香蕉 / abc、夜景 / 、a、 不触发。
- 未启动开发服务,浏览器键位与实际菜单行为待人工验收。
2026-09-19 03:31:41 +08:00
Danborad
3cccf8eec7
feat(payment): 支付插件 - 接入支付FM官方标准插件 official-payment-zhifufm
2026-09-19 00:42:57 +08:00
ddCat
a07893309f
fix(canvas): 图片工具 - 移除独立图片编辑入口并保留连线生成
...
Co-authored-by: lmj15657306288-ui <lmj15657306288-ui@users.noreply.github.com >
2026-09-19 00:08:41 +08:00
ddCat
fbe6a4311e
feat(canvas): 图片编辑 - 合并图片编辑工作流并保留近期项目基线
2026-09-18 23:54:14 +08:00
ddCat
3cb1423f7e
feat(admin): 站点外观 - 支持 Tab 分类与主题渐变按钮配置
2026-09-18 23:28:57 +08:00
ddCat
262540ea36
fix(canvas): 画布与素材同步 - 修复批量缩略图、远程资源回退与重命名同步
2026-09-18 23:27:34 +08:00