suzmii
05f0e2db06
合并master并保留Spine序列帧修复
...
合并master当前工程、后端、前端和文档更新
按已确认方案解决Spine序列帧多模态、帧数和快速编辑冲突
保留当前分支底部工具栏宽度与隐藏滚动条样式
2026-08-14 21:33:26 +08:00
suzmii
d6cb68cf13
Spine序列帧修复与功能收紧
2026-08-13 01:05:57 +08:00
suzmii
132bf7db35
角色多方向图生成
2026-08-12 18:14:25 +08:00
k88936
8abeb333bb
统一画布快速编辑白名单与入口行为 ( #140 )
...
Project CI / Repository checks (push) Successful in 56s
Project CI / Frontend tests (push) Successful in 4m1s
Project CI / Backend tests (push) Successful in 4m26s
Project CI / Native shell tests (push) Successful in 15m12s
- 使用白名单控制快速编辑功能的显示
- 同步浮动工具栏、右键菜单、打开入口和提交门禁
- 禁用角色动作序列帧(整体)、音频和单个图标(explain: backend reject)的快速编辑
- 把快速编辑api改为只接受resource Id | asset Id,删除 image_src 参数, 以保证校验
其中包含生产数据迁移。迁移用于清理历史普通图片错误持久化的 assetKind="image",覆盖 asset → project-resource → showcase → canvas 四个作用域,并包含 operator 鉴权、分批 dry-run、批次 SHA-256 绑定 apply、active 结构化画
> 布迁移摘要同步及最终零残留复核。
---------
Co-authored-by: kdletters <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/140
Co-authored-by: 王德宇 <kvtodev@outlook.com >
Co-committed-by: 王德宇 <kvtodev@outlook.com >
2026-08-12 14:46:24 +08:00
suzmii
1575afc92c
Spine序列帧动画多模态生成
2026-08-10 20:14:09 +08:00
kdletters
a27798be77
合并生成参数恢复与改造入口修复
...
合入 PR 135 的 GenerationInputs V2 稳定字段与严格恢复链路
统一缺失来源时保留改造入口并在点击后复检拒绝
保留主分支 SFX V2 自动时长、Loop 与权威元数据语义
将队列引用槽位与场景配方修复移植到 PR 137 的模块结构
2026-08-08 22:03:50 +08:00
kdletters
3c00bcd2e0
合并图标规范与图集生成优化
...
合入 PR 137 的图标规范生成、稳定引用与图集提示词链路
保留主分支现行音效提交、Prompt 模块与结果压缩逻辑
解决 External Worker、生成提交和客户端测试冲突
2026-08-08 21:44:15 +08:00
lhk229
38e195060b
合并 master 的付费生成预检与调试输出脱敏
...
Project CI / Repository checks (pull_request) Successful in 1m14s
Project CI / Frontend tests (pull_request) Successful in 2m52s
Project CI / Backend tests (pull_request) Successful in 3m54s
Project CI / Native shell tests (pull_request) Has been cancelled
合入 master 的编辑器付费生成目标预检与应用状态调试输出密钥泄漏两项修复。
SFX 直连与入队沿用 master 预检,源码顺序回归改为锁定本分支的 ElevenLabs worker 编排入口。
画布 Agent 音效参数恢复通用 null 缺省兼容,但保留 duration null 表示自动时长的 SFX V2 语义。
音效时长越界断言按 SFX V2 的 0.5-30 秒边界上移,重算契约测试期望。
哨兵测试补入 ElevenLabs base URL 与 API key,锁定其默认缺席于 AppConfig 调试输出。
2026-08-08 05:33:40 +00:00
k88936
5c0e84c78a
场景生成接入改造配方
...
新增 scene.generate V2 配方、解码与场景面板恢复
服务端按结构化请求重建权威场景字段和参考图槽位
兼容旧场景画面内容字段并限制非场景改造入口
补充前后端测试与 assetKind 改造接入文档
2026-08-08 12:26:43 +08:00
k88936
3016b6a3af
合并主分支并保留画布图标与场景生成能力
...
解决编辑项目后端、SpacetimeDB 客户端与前端生成流程冲突
保留图标规范及图集链路并接入场景生成与统一目标预检
同步合并运行时、钱包、契约、文档与测试改动
2026-08-08 11:43:45 +08:00
k88936
179c4c36c5
整理场景提交模型导入顺序
...
按 ESLint 规则排序场景生成契约导入
2026-08-08 11:23:50 +08:00
k88936
d5f0f6de93
修复场景生成输入契约
...
场景请求提交前将画布参数转换为字符串契约
保留素材结果中的原始画布参数类型
2026-08-08 11:16:47 +08:00
k88936
e564db43f1
合并主分支
...
解决合并冲突
2026-08-08 10:48:13 +08:00
suzmii
72f268e088
Feat/游戏场景需求v1.0 ( #139 )
...
Project CI / Repository checks (push) Has been cancelled
Project CI / Frontend tests (push) Has been cancelled
Project CI / Backend tests (push) Has been cancelled
Project CI / Native shell tests (push) Has been cancelled
实现[游戏场景需求v1.0](https://kcnz41bksl1c.feishu.cn/wiki/JSF3wdhduinpqhkrVGKcZFp4nng?psg_id=8477599259997387860&refer_index=1&refer_type=citation )。
---------
Co-authored-by: 段舒康 <kdletters@qq.com >
Co-authored-by: suzmii <suzmii@foxmail.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/139
Co-authored-by: 董羽秦 <suzmii@qq.com >
Co-committed-by: 董羽秦 <suzmii@qq.com >
2026-08-08 10:25:42 +08:00
lhk229
392741215c
完成 SFX V2 T5 正式生成链路
...
Project CI / Repository checks (pull_request) Failing after 7s
Project CI / Backend tests (pull_request) Failing after 7s
Project CI / Frontend tests (pull_request) Successful in 2m52s
Project CI / Native shell tests (pull_request) Successful in 13m43s
接通 Luna 英文化、ElevenLabs 单次生成、MP3 校验、OSS 与权威元数据写回
演进站内和 External v1 契约、幂等参数、详情重绘与 Agent 音效模型
新增 ElevenLabs 动态定价键及历史定价快照兼容
同步 OpenAPI、外部 Agent Skill、共享计划与决策记录
2026-08-07 06:13:34 +00:00
lhk229
cd80c085ff
实现 SFX V2 T1 契约与提示词基础
...
统一前后端 SFX Prompt Unicode canonicalization、字符计数和 2048 边界
固化 52 个音效预设、追加规则及跨语言测试向量
演进共享音频请求响应、duration、Loop 和 V2 metadata 契约
增加 External model 输入矩阵纯函数并保持正式接线归属 T5
补齐前端提交、读取、深拷贝与请求边界回归测试
更新共享计划并标记 T1 完成且当前不可发布
2026-08-06 13:06:10 +00:00
k88936
2266d7fe89
修复图标图集审查中的边界问题
...
校验 LLM 完成原因并规范化 Agent 图标描述
统一前后端图标规范输入、错误返回和精确撤销行为
收紧图集拆分授权并拒绝引用 ID 歧义
修正快照映射诊断和表单标签可访问性
补充定向测试与编辑器设计文档
2026-08-06 19:15:10 +08:00
k88936
942d2d36ad
合并 BGM 生成路径优化
...
接入画板背景音乐预设、提示词优化与生成链路
统一前后端音频契约和 canonical prompt 语义
保留画布生成输入改造契约并同步文档与测试
2026-08-06 19:04:46 +08:00
k88936
2b8ced9195
合并主分支
...
解决简单冲突
2026-08-06 18:55:15 +08:00
lhk229
281c84b7bf
BGM生成路径优化 ( #142 )
...
Project CI / Repository checks (push) Successful in 1m15s
Project CI / Frontend tests (push) Failing after 2m11s
Project CI / Backend tests (push) Successful in 3m33s
Project CI / Native shell tests (push) Successful in 13m57s
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/142
Co-authored-by: Linghong <ink29535@proton.me >
Co-committed-by: Linghong <ink29535@proton.me >
2026-08-06 17:54:40 +08:00
k88936
969afbaf94
合并主分支并解决图标生成模块冲突
...
保留图标规范与图集生成独立模块边界
融合主分支角色动画与图片序列字段
2026-08-06 17:13:41 +08:00
k88936
291724a984
合并主分支并解决画布生成冲突
...
同步主分支的角色动作序列、精选展示与外部编辑器契约更新
保留画布生成输入 V2 契约并合并视频、音效时长元数据
修复精选视频对数值型 V2 时长元数据的兼容
2026-08-06 17:09:39 +08:00
k88936
a03f13d0a5
Fix/动作 前端展示下载+后端数据结构+精选 的问题 ( #117 )
...
Project CI / Repository checks (push) Successful in 1m28s
Project CI / Frontend tests (push) Successful in 3m19s
Project CI / Backend tests (push) Successful in 4m3s
Project CI / Native shell tests (push) Successful in 13m58s
原问题
```
历史角色动作是一个兼容例外:
后端允许它没有 editor_project_resource 资源行,只要布局自身保存了完整图片序列帧。
```
- 把生成动作的原视频asstetkind改为 video, 只把图片序列作为action
- db asset新增字段image_sequence_frames_json image_seq_duration_ms等, (原来动作的这些数据存在generation-input中,并不合适)
修改了externaljob,把这部分数据正确填写到数据库中。
- 为避免到处fallback,做了数据库迁移, 脚本: `scripts/spacetime-normalize-editor-character-actions.mjs` 手动进行过画布+素材库中动作序列帧+原始视频 迁移的测试
- 移除preview_video_path字段, reason:
>preview video
→ separate resource/asset with assetKind="video"
final transparent action
→ assetKind="character-animation"
→ source_resource_id points to the preview-video resource
→ image_sequence_frames_json contains the actual playable result
>
> So preview_video_path on the final action duplicates the source video resource’s image_src.
- 移除每个frame的index字段 原因: 这个只用于后端内部处理时有一个并发请求, 每个赋一个index方便收集, 后续没有再用到,且与数组本身重复
- 清除副产品preview video的generation_input_json, 因为会影响改造功能, 迁移后预览视频不提供改造(参数), 只有序列帧动作有改造
仍存在的共性问题: #134
- 导出:
下载改为完整序列帧, 封面不再作为fallback, 部分帧读取失败时行为:仍生成 ZIP,并记录失败帧, 不变
画布放置:
before:

after:

精选模块: 主页展示, 审核部分UI:


这两处序列帧们的加载设计为惰式的, 只有hover和单独preview才会全部加载
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/117
Reviewed-by: 段舒康 <kdletters@qq.com >
Co-authored-by: 王德宇 <kvtodev@outlook.com >
Co-committed-by: 王德宇 <kvtodev@outlook.com >
2026-08-06 16:57:38 +08:00
k88936
55ff47c6c4
收紧图标图集提示词输入契约
...
新增独立的 spritesheet prompt 单项字符、聚合字符和 UTF-8 字节上限。
以已验证类型约束 prompt builder,并覆盖 inline、队列与 worker 执行边界。
同步画布校验、Editor Agent 工具合同、External v1 OpenAPI、文档和边界测试。
2026-08-06 16:44:33 +08:00
k88936
3fdbe81bfe
重构图标规范与图集生成链路
...
新增图标规范独立队列任务并将参数补全纳入统一计费操作
将图标图集生成和手工拆分迁入独立图标模块并复用公共生图能力
将图标规范引用收紧为项目资源或素材 ID
同步 SpacetimeDB 引用解析契约、External OpenAPI、前端与 Agent 提交链路
补充相关回归测试和长期架构约定
2026-08-06 15:43:10 +08:00
k88936
3485bad2d3
重构:统一编辑器工作流中的 "icon-spec" 处理
...
- 将所有相关工作流从 "ui-spec" 迁移至 "icon-spec"。
- 优化 `playSetting` 和 `artStyle` 的输入处理逻辑。
- 更新编辑器提示词、提交模型及测试用例以适配 "icon-spec"。
- 在 UI 及后端调用中集成 `EDITOR_ICON_SPEC_PROMPT_MAX_LENGTH` 及相关校验。
- 新增 "icon-spec" 生成与微调的专用 API 路径。
- 移除旧版 "ui-spec" 相关定义及提示词构建器。
2026-08-04 20:04:07 +08:00
k88936
59a69f063d
修复图片修改参数恢复与提交一致性
...
- 图片修改面板优先恢复历史模型、比例和尺寸,并保留显式设置优先级
- 图片修改提交计划统一归一化参数并下发 model、aspectRatio、imageSize 和 size
- 画布完成占位使用实际目标输出尺寸
- 补充参数恢复回归测试与编辑器方案说明
2026-08-04 18:00:23 +08:00
k88936
78307de9a1
修复图片编辑复用与元数据回退的小问题
...
- 修复参考素材标签的空白文本回退显示
- 重构 quick-edit 参数选择逻辑,移除嵌套三元并统一回退
- 抽取生成复用流程的参数回退与缺失素材提示逻辑
- 使用 quick-edit 提交计划中的输出尺寸构建复用时占位符
2026-08-04 17:15:33 +08:00
k88936
a9b462d43f
修复画布生成参数复用问题
...
强化持久化生成输入的运行时结构校验
统一快速编辑请求尺寸、模型、参考图与生成快照
补齐视频联网搜索参数保存与恢复
隐藏缺少必需来源的复用参数入口
补充回归测试并同步编辑器方案文档
2026-08-04 14:38:56 +08:00
k88936
5fd26a11ee
统一画布生成产物改造契约
...
新增 generationInputs V2 稳定 action、field id 与 reference id 契约
恢复图片、视频、音频、角色动作等生成面板并保留 legacy 回退
非生成裁扩、去背景和图集拆分不再继承生成配方
匿名精选响应不再返回 owner generationInputs
同步前后端测试与架构文档
2026-08-03 20:07:06 +08:00
lhk229
1ed8064d2f
统一图标图集全连通域拆分
...
移除前端从提示词解析素材数量的逻辑,完整提示词作为单个请求元素提交。
删除后端按描述数量截断切片的路径,自动拆分与手动拆分复用全连通域算法。
统一切片命名和尺寸、像素、数量限制,保留手动拆分按钮与接口。
更新既有测试、OpenAPI、编辑器文档和共享决策记录。
2026-07-29 04:52:29 +00:00
lhk229
732fcf0b45
新增图片生成像素艺术后处理
...
新增确定性像素网格规整模块并保留第三方 MIT 许可证。
为普通图片、角色和图标图集接入像素艺术选项、并发预算和失败降级。
同步前端交互、请求契约、OpenAPI、项目文档与测试。
2026-07-29 03:46:03 +00:00
kdletters
5468bb3212
修复画布生成器恢复串台
...
区分生成结果归属与派生输入关系,避免角色动作和快速编辑面板串台
补全角色动作、视频、音效、背景音乐与宣发素材的生成器恢复类型
统一清理剪切和素材删除后的关联生成状态,避免孤立占位
补充生成器恢复、宣发类型和删除清理回归测试并同步编辑器文档
2026-07-17 21:23:12 +08:00
kdletters
18af49c27f
收紧编辑器媒体引用契约
...
禁止当前画布与外部编辑器接口接收 Data URL 和 Blob URL
生成请求统一先上传 OSS 并使用稳定资源引用
角色动画和视频签名前校验资源归属并支持资源与素材 ID
同步前后端 256KB 引用限制及相关文档测试
2026-07-17 16:44:01 +08:00
kdletters
ed8be38287
统一画布生成资源命名
...
新增所有生成面板的资源名称输入并统一80字符边界
贯通画布标题、项目资源、素材库与生成请求的名称传播
为图标图集和角色动作补齐命名契约及中间产物后缀
补充前后端回归测试、OpenAPI与编辑器文档
2026-07-14 10:27:25 +08:00
kdletters
300e69c97d
修复图片改造尺寸保持
...
保持图片改造提交与画布回填的原图尺寸
在 VectorEngine 边界对齐非 16 倍数参考图并恢复目标尺寸
补充前后端回归测试与编辑器尺寸契约文档
2026-07-11 18:10:00 +08:00
lhk229
5c9b5ef69e
动作视频/生图背景色链路升级 + 阿里云抠图接入 ( #75 )
...
主要改动
1. 阿里云通用抠图接入(新增 platform-matting crate)
手搓阿里云 VIAPI 通用抠图接口(ACS3-HMAC-SHA256 签名),跨区输入走临时桶通道。
图片抠图升级为三档降级:BgFilter → 阿里云 → 本地键色兜底。
动作视频逐帧抠图改用阿里云,remove_editor_generated_green_screen_background 降为最后兜底。
2. 背景色不再写死绿色,改多背景色自动决策
动作视频背景色和生图一样从候选调色板自动选,选项继承。
3. 视觉背景色决策(修"蓝撞蓝")
让 LLM 看参考图选背景色(gpt-4o-mini 视觉模型,路由到 VectorEngine 视觉客户端),修复原纯文本盲选。
4. 背景色候选硬过滤器(新增 editor_screen_background_filter)
按参考图前景配色算 Lab 危险质量 + 皮肤专属三判据(ΔE 距离 / 色调投影 / RGB 分离)剔除撞色候选,LLM 只在安全集合里审美选。露肤角色自动收敛到冷区。新增"灰竹绿"候选补齐安全弧绿色段。
5. 源图合成到背景色(修视频背景变白)
透明源图先填成选定实色再发给 Ark,视频背景确定性等于抠图键色,不再赌模型服从提示词。
6. screenColorHex 结构化记录 + 死代码清理
四条链路统一把实际背景色写进 generation_inputs,修复生图链路"抠图背景色"字段从未生效的旧逻辑。
清理前端抠绿 + qwenSprite 死代码,移除一次性探针示例。
Reviewed-on: https://git.genarrative.world/git/GenarrativeAI/Genarrative/pulls/75
Reviewed-by: kdletters <kdletters@qq.com >
Co-authored-by: Linghong <ink29535@proton.me >
Co-committed-by: Linghong <ink29535@proton.me >
2026-07-10 18:22:17 +08:00
lhk229
308d440816
新抠图算法(轻量版)上线 ( #73 )
...
新抠图算法(轻量版)上线,生图背景色同步改为多颜色+自动决策
---------
Co-authored-by: kdletters <kdletters@qq.com >
Reviewed-on: https://git.genarrative.world/git/GenarrativeAI/Genarrative/pulls/73
Reviewed-by: kdletters <kdletters@qq.com >
Co-authored-by: Linghong <ink29535@proton.me >
Co-committed-by: Linghong <ink29535@proton.me >
2026-07-07 14:57:10 +08:00
kdletters
d707613a8b
修复画布快速编辑回写与原图元数据
...
快速编辑回到原图面板流程,避免新建生成器占位
提交快速编辑时传入目标图层并在后端成功后回写画布
快速编辑生成输入记录原图引用,图片信息可展示原图来源
同步前后端测试与图片画布文档记忆
2026-07-02 23:05:48 +08:00
kdletters
5976c2b337
支持素材生成上传参考图
...
图标素材生成支持上传普通参考图并提交到后端参考图数组。
UI设计图生成和UI素材提取支持上传参考图并写入生成输入记录。
同步前后端契约、OpenAPI、文档和相关单测。
2026-06-27 22:18:10 +08:00
kdletters
bb51c7e0d2
快速编辑直接覆盖原图
...
将图片快速编辑提交切到 /api/editor/images/edits,并用结果回写源图层
保留重绘作为右侧新结果图层,角色重绘继续走 character 生成契约
更新快速编辑文档和定向回归测试
2026-06-27 20:06:24 +08:00
kdletters
6bf8b0051b
完善画板生成器与素材导出体验
...
图片改造改为独立 quick-edit 生成器占位并补齐提交链路
生成完成应用项目快照后同步刷新素材库
序列帧导出补充 Spine JSON 与独立验证器
序列帧播放预加载帧资源以减少加载闪烁
本地 dev 默认启用 all 进程角色并更新文档
2026-06-25 00:12:21 +08:00
kdletters
f5ede50ba9
瘦身画板媒体保存链路
...
改造画板项目保存响应为轻量 ack
统一生成上传媒体以 objectKey 持久化
补齐素材库缩略图换签与本地轻量缓存
刷新生成后泥点余额并补充回归测试
2026-06-23 17:21:55 +08:00
JenkenB
650a54f5eb
Lock publication materials to gpt-image-2
...
Enforce gpt-image-2 for publication-material workflows to ensure stable, predictable promotional asset generation. Updates include: docs clarifying the decision and UI behaviour; backend api-server normalize/force model to GPT_IMAGE_2 for kind = "publication-material"; frontend sets publication dialogs to use and display a disabled gpt-image-2 model capsule and computes cost using that model; submission flow no longer remembers or submits nanobanana2 for publication items. Added/updated unit tests and a demo panel test to validate the locked model. Key files changed: docs/* (decision log and editor guides), server-rs/crates/api-server/src/editor_project.rs, several src/components/image-editor/* files and tests.
2026-06-23 15:27:52 +08:00
JenkenB
7830d201c4
Server-side billing for editor generation
...
Move editor generation pricing to backend: remove priceMudPoints from public request schemas and docs, require backend to compute model prices and perform pre-charge via execute_billable_asset_operation_with_cost. Update character animation and video handlers to use authenticated owner IDs and wrap generation requests in billing; remove client-side price validation. Adjust OpenAPI, project-memory docs, pricing management docs, and related tests to reflect that front-end only displays prices and must not submit priceMudPoints. Also document new user registration reward and wallet refund outbox behavior. Code and test changes applied across api-server handlers, shared contracts, and image-editor client/tests.
2026-06-22 23:11:23 +08:00
wuxiangwanzi
6caf349992
锁定画布UI设计图模型选择
...
固定生成UI设计图模型展示为gpt-image-2
对齐角色规范面板的只读模型展示样式
提交层兜底强制UI设计图使用gpt-image-2
补充模型锁定与旧草稿兜底测试
2026-06-22 21:51:59 +08:00
JenkenB
163b2fa077
Add editor generation model pricing admin UI & API
...
Introduce centralized model pricing for editor generations: add EditorGenerationPricing types and admin API client methods (GET/POST), backend default config and runtime override support, and server route/handler changes to expose admin editor-generation-pricing. Add an AdminEditorGenerationPricingPage component, styles, route entry, icon, and tests, plus a test for admin routes. Update docs and decision log to describe the pricing contract and management workflow. This enables managing per-model pricing (perGeneration / perSecond, flat or tiered) from the admin panel and exposes runtime pricing to the main site.
2026-06-22 16:57:29 +08:00
JenkenB
0c78a6dc21
Merge branch 'codex/editor-asset-library' of https://git.genarrative.world/git/GenarrativeAI/Genarrative into codex/editor-asset-library
2026-06-22 13:52:43 +08:00
JenkenB
c836ac604d
Treat character-action generations as video & UI tweaks
...
Handle character-action generation results as real video assets: use backend previewVideoPath as layer src, set mediaType="video" and assetKind="character-animation", and store the first frame only as thumbnail/poster. Update docs to document the new behavior and preserve backend frame extraction/green-screen workflows. Update UI/UX: compact parameter labels (e.g. "16:9·1K"), quick-edit treats original image as an implicit last reference (hidden from the reference bar) and allows editable bottom capsules, and ensure exports preserve true media file types. Change upload toolbar icon to Upload and add tests to cover the icon and video-layer behavior; also add serialization/hydration test for video thumbnails and adjust many integration/unit tests to reflect new labels, sizes and generation semantics. Files touched include multiple docs under docs/, edited components and tests under src/components/image-editor/, and minor stylesheet updates.
2026-06-22 13:45:20 +08:00
kdletters
928aecdcb1
扩展画布生成视频参数
...
生成视频面板支持多比例、4到15秒时长滑杆和静音开关
生成视频清晰度增加1080p并限制Fast模型不可选
生成视频请求默认携带联网搜索标记但不在前端展示
后端校验视频比例、时长、清晰度和声音参数并映射音频生成
更新编辑器视频参数文档和项目决策记录
2026-06-21 20:16:22 +08:00