Commit Graph

171 Commits

Author SHA1 Message Date
ddcat666
42f14cd73e fix(agent): 模型任务恢复 - 启用孤儿步骤任务接管避免测试超时 2026-10-01 14:11:20 +08:00
ddcat666
839db1c319 fix(agent): 图片审批 - 修改生成参数时不再因容量检查自锁
审批落库时已经持有存储锁,干跑创建任务又申请同一把锁。互斥锁不能重入,修改图片参数会一直停住,后端测试也会在 20 分钟后超时。
2026-10-01 13:18:06 +08:00
ddcat666
3aa874a70c feat(platform): Agent 与媒体能力 - 完善角色卡、音频协议与任务恢复链路 2026-10-01 09:42:51 +08:00
Rou
a6e3f3cca6 fix(platform): 存储与 Agent - 修复配额准入、Live2D 与用户筛选 2026-09-30 18:28:19 +08:00
ddcat666
eb13f73626 fix(canvas): Agent 模型调用 - 修复关闭思考被误判为开启 2026-09-30 14:39:56 +08:00
ddcat666
4c0aa682a5 fix(media): 媒体恢复 - 保留音频多结果并兼容单数响应 2026-09-30 14:39:56 +08:00
yepwait
6bbc2849dd fix(canvas): 角色卡引用 - 修复三视图读取与本地图片生成 2026-09-30 11:47:00 +08:00
ddcat666
7f5d87ef1a refactor(*): 平台架构 - 拆分后端领域模块与画布前端组件并补充测试 2026-09-30 10:01:39 +08:00
ddcat666
e0a2697c60 fix(canvas): 画布背板 - 明确背板能力说明并允许拖动 Markdown 节点
背板能力卡改为说明可移动、可折叠的视觉分区用途与边界,Agent 能据此判断何时用背板归组。Markdown 节点正文不再拦截 mousedown,拖动节点和拖入背板恢复正常。
2026-09-30 03:42:36 +08:00
ddcat666
220cc543e1 fix(agent): Agent 运行 - 截断工具参数纠偏重试并修复 ask_user 后续跑与清单状态
模型返回不完整的工具参数 JSON 时,Pi 桥接带 truncated_tool_arguments 纠偏上下文重做同一步,不再把整轮判为中断。ask_user 进入提问后结束本轮 Pi 调用;续轮会话快照缺失时改用服务端 canonical 历史。继承的待办清单挂到新一轮,等待用户确认时清单显示暂停而非停止。
2026-09-30 03:41:25 +08:00
ddcat666
10ea9d3fa0 feat(canvas): Agent 审批 - 节点直接生成时自动关闭同节点的待审批任务
用户在画布节点上直接提交生成后,同画布 Agent 对该节点等待中的 generate_media 审批关闭为 superseded_by_node,Agent 带着「用户已手动提交」的结果继续,不重复提交、不扣费。审批卡片识别目标节点正在生成时禁用「同意执行」并提示原因。
2026-09-30 03:40:14 +08:00
ddcat666
4272b0e499 fix(media): 资源访问 - 签名地址有效期跟随后台策略并放开服务器访问地址限制
平台展示与厂商读取的签名地址有效期改为读取「资源与请求策略」,默认均为 4 小时,不再硬编码 5 分钟。服务器访问地址只校验 http/https 格式,允许本机、局域网或 HTTP 地址,模型读取平台资源不再强制 HTTPS 公网地址。
2026-09-30 03:38:31 +08:00
ddcat666
4957f8bc22 feat(admin): Agent 并发 - 后台可调同时对话上限并展示 Agent 服务状态
新增运行策略 agentMaxSessions(默认 30,范围 1-64),保存后同时下发到内嵌进程闸门与独立 yingce-agent 的 /v1/limit,降低上限不会中断已开始的对话。系统性能页展示 Agent 服务健康、进行中/排队数量,并可直接修改上限。
2026-09-30 03:37:54 +08:00
ddcat666
a0f025aa96 feat(platform): 日志管理 - 统一日志出口并屏蔽查询与 Agent 流式事件日志
新增 internal/logging,slog、标准库 log、GORM 与 Gin 访问日志共用同一 Handler,由 CANVAS_LOG_LEVEL / CANVAS_LOG_FORMAT 控制。info 级别不再输出成功的查询类请求、成功 SQL、message_end 等 Agent 流式事件和常规画布自动保存;4xx/5xx、慢请求、慢 SQL、SQL 失败与 panic 仍会记录,SQL 不内联参数值。
2026-09-30 03:33:34 +08:00
ddcat666
cb146d27a1 feat(deploy): 画布 Agent - 独立 yingce-agent 容器并修复运行中断
生产会话不再因 stdout 管道提前关闭被误判失败。设置 YINGCE_AGENT_URL 后只走独立容器,失败不回退到内嵌进程。
2026-09-29 21:41:36 +08:00
ddcat666
3dd84ff25b fix(*): 支付与Agent运行 - 修复商品策略并保证审批恢复稳定 2026-09-29 11:07:11 +08:00
ddcat666
6ad1adc197 feat(canvas): 条件读取与历史 - 减少画布同步传输并校准版本 2026-09-29 08:26:29 +08:00
ddcat666
bcccddb4e9 feat(admin): 运行时策略 - 配置对象存储策略与默认并发 2026-09-29 08:26:13 +08:00
ddcat666
387d3562ad refactor(agent): Pi 会话运行时 - 接入原生 Agent 与 Skills 工具链 2026-09-29 08:21:11 +08:00
ddcat666
bf2682c38e fix(video): 视频任务 - 规范化数字清晰度价格档 2026-09-27 20:09:41 +08:00
ddcat666
05f0c7a64b feat(canvas): 完善画布 Agent 交互能力 2026-09-27 18:31:37 +08:00
ddcat666
367145010f fix(agent): 修复上下文压缩检查点保存失败 2026-09-27 18:31:24 +08:00
ddcat666
d6e7afa547 feat(3d-director): 3D导演台 - 完善3D导演台UI交互与状态管理 2026-09-27 11:44:33 +08:00
ddcat666
caaa178722 fix(agent): 云端 Agent - 限制确认循环次数 2026-09-27 09:45:46 +08:00
ddcat666
b4111a8721 feat(agent): 云端 Agent - 加固运行时并新增导演工具 2026-09-27 09:45:43 +08:00
ddcat666
49a733161a feat(skills): 技能库 - 内置技能目录迁移为 Markdown 包 2026-09-27 09:45:38 +08:00
ddcat666
331609e6ab fix(release): 发布回归 - 修复资源引用保护并校准验证合同 2026-09-26 17:05:36 +08:00
ddcat666
993580a7bd feat(cloud-agent): 云端 Agent - 完善运行时与资源持久化 2026-09-26 17:05:36 +08:00
ddcat666
2cedc4c66b feat(*): 云端 Agent - 增强画布上下文读取并接入 Gemini 缓存 2026-09-26 02:21:47 +08:00
ddcat666
1dc1b6f6b5 fix(platform): 外观主题 - 保证经典黑白主题不可被修改或删除 2026-09-24 23:59:12 +08:00
ddcat666
3b254fce11 fix(*): 资源与技能 - 精简列表载荷并禁止对象存储静默降级 2026-09-24 23:57:13 +08:00
ddcat666
98f1b31e20 feat(canvas): 云端 Agent - 缩减画布目录上下文并展示实时用量 2026-09-24 23:54:59 +08:00
AetherNo2332
abf593c6c9 feat(cloud-agent): 上下文计量 - 每步发出 context_pressure 读数并用上游实测定锚 (#601) 2026-09-24 13:35:15 +08:00
AetherNo2332
b701b3efd1 feat(agent): 运行详情分页与增量读取契约 (#600)
Co-authored-by: ddcat666 <26564566+ddcat666@users.noreply.github.com>
2026-09-24 11:31:09 +08:00
AetherNo2332
c4b9a426ab feat(agent): 上下文压缩 - 超预算时生成检查点并安全续轮 (#598)
Co-authored-by: ddcat666 <26564566+ddcat666@users.noreply.github.com>
2026-09-24 11:15:31 +08:00
ddcat666
a79b54ada5 fix(*): 平台稳定性 - 修复会话隔离、运行时缓存与部署镜像更新链路 2026-09-24 06:05:04 +08:00
ddCat
d89b55d182 fix(auth): 登录主题 - 跟随应用外观并补齐回归 2026-09-24 00:12:53 +08:00
ddCat
5b38272654 fix(canvas): 资源引用 - 校验递归素材并修复断链 2026-09-24 00:12:53 +08:00
qiuliw
e74a8a6ccc fix(plugin): 万相3.0视频 - 修复上游响应错误解析 2026-09-23 19:30:35 +08:00
Wyatt_K
7c01d29a0d fix(agent): 创作引导 - 使用可点选项并控制工具描述预算 (#607) 2026-09-23 16:26:40 +08:00
itsWyatt-K
33baecde28 feat(agent): 技能用量 - 按用户运行日志统计检索与读取 (#590) 2026-09-23 16:22:44 +08:00
Wyatt_K
ec81a1b92b feat(skills): 场景预设 - 提供公开只读目录并校验内置技能引用 (#603) 2026-09-23 16:01:27 +08:00
Wyatt_K
bca47a27bc fix(agent): skill_search tokenizer keeps single CJK runes
cloudAgentSkillSearchTokens dropped any token shorter than 2 runes.
That filter was copied from English stop-word logic (a / I), but a single
Han rune such as the ones meaning hook, gag or twist is already a complete
semantic unit in Chinese. When the whole keyword consisted of such runes,
tokens came back empty and cloudAgentSearchSkills degraded to listing the
full index of enabled skills - the user thinks a search happened but gets
an unsorted dump.

Fix: keep a token when it is exactly one Han rune (unicode.Han); single
ASCII/digit runes and empty strings are still dropped as before.

Test: TestCloudAgentSkillSearchTokensKeepsSingleCJKRune fails on the old
logic (got [反转 钩子], want [反转 钩子 梗 钩]) and passes after the fix.
recall_lessons has an isomorphic copy of the same tokenizer, fixed
separately in #593.
2026-09-22 16:30:07 +08:00
Wyatt_K
23b4b2adde fix(agent): recall_lessons tokenizer keeps single CJK runes
cloudAgentLessonSearchTokens dropped any token shorter than 2 runes.
That filter was copied from English stop-word logic (a / I), but a single
Han rune such as the ones meaning hook, gag or twist is already a complete
semantic unit in Chinese. When the whole keyword consisted of such runes,
tokens came back empty and cloudAgentSearchLessons silently fell back to
"list the first N lessons" - the user thinks a search happened but gets an
arbitrary list.

Fix: keep a token when it is exactly one Han rune (unicode.Han); single
ASCII/digit runes and empty strings are still dropped as before.

Test: TestLessonSearchTokensKeepsSingleCJKRune fails on the old logic
(got [反转 钩子], want [反转 钩子 梗 钩]) and passes after the fix.
The isomorphic copy in skill_search (cloud_agent_tools.go) is fixed
separately on the #580 branch and deliberately not included here.

Gates: go build ./... and go vet EXIT=0; gofmt clean on LF content; the 3
go-sqlite3 cgo-stub failures in internal/app are pre-existing and unrelated.
2026-09-22 15:59:34 +08:00
Codex Audit
7737047a8d perf(media): OSS 资源 - 通过签名地址直连下载并禁止浏览器代理媒体 2026-09-23 11:10:20 +08:00
Codex Audit
8436904316 fix(backend): Agent 任务 - 限制循环读取并收紧提交后的取消边界 2026-09-23 11:09:57 +08:00
ddCat
5f9b010932 feat(auth): 登录注册 - 添加短信通知与组合验证支持 2026-09-22 23:46:15 +08:00
ddCat
a66799b1f2 fix(media): 资源分发 - 统一 CDN 读取签名与源站降级边界 2026-09-22 23:26:28 +08:00
ddCat
487c34bfeb refactor(media): 资源分发 - 统一资源访问策略与云存储重定向 2026-09-22 21:41:00 +08:00
ddCat
48a82ded74 feat(media): 作品保存恢复 - 按原任务重试交付并避免重复生成计费 2026-09-22 15:47:24 +08:00