Commit Graph

33 Commits

Author SHA1 Message Date
lhk229 21da0c8380 Merge remote-tracking branch 'web/master' into feat/pixel_art2
Project CI / Repository checks (pull_request) Failing after 11s
Project CI / Native shell tests (pull_request) Failing after 2m45s
Project CI / Backend tests (pull_request) Failing after 7s
Project CI / Frontend tests (pull_request) Failing after 21s
# Conflicts:
#	.codex/skills/genarrative-external-editor-api/SKILL.md
#	.codex/skills/genarrative-external-editor-api/references/api-selection.md
#	docs/project-memory/shared-memory/decision-log.md
2026-08-03 07:47:17 +00:00
kdletters d1a657b5d2 为未鉴权MCP返回接入引导
保持401与Bearer挑战并提供机器可读的Key配置步骤

统一缺失格式错误和无效Key响应以避免凭据枚举

保留请求元信息并同步OpenAPI集成清单与架构文档

补充鉴权脱敏契约测试并完成本地dev栈验证
2026-08-03 12:03:50 +08:00
kdletters c00dd099e3 扩展MCP的完整Skill资源
拆分外部编辑器Skill为四篇渐进式参考文档
MCP资源列表支持逐篇发现和读取Skill内容
Skill归档和manifest同步七文件清单及SHA校验
同步OpenAPI、架构文档和项目决策记录
2026-08-03 09:59:00 +08:00
lhk229 db6dbfaf94 生成风格 pixelArt 同时约束提示词
Project CI / Repository checks (pull_request) Successful in 1m32s
Project CI / Backend tests (pull_request) Successful in 3m42s
Project CI / Native shell tests (pull_request) Successful in 10m43s
Project CI / Frontend tests (pull_request) Successful in 2m25s
style="pixelArt" 此前只驱动 provider 回图后的确定性像素规整,完全不参与
提示词。但 snapper 是几何对齐器——先检测网格步长再按格重采样;provider 交
一张柔和渐变图时横纵两轴都测不到步长,生成路径用的 legacy profile 会退到
min(width,height)/64 统一网格兜底,产出的是马赛克而不是像素画。原语义等于
「随便生成什么,然后强行网格化」。

注入点固定在 generate_editor_image_for_owner 与
generate_editor_icon_spritesheet_for_owner 构造提交提示词的位置,包住既有
builder 的返回值,builder 签名和输出契约不变。登录态路由、外部 API v1、
异步 job worker 三个入口都汇聚到这两个函数,一处覆盖。

约束句按链路分三条,追加在末尾并独立成行:普通图片没有抠像底色,用
「画面为像素风格」;角色形象和图标图集生成后都要按纯色抠像,绿幕底必须保持
平整,分别用「角色主体为像素风格」和「每个图标素材均为像素风格」,都不出现
「画面」级别的像素化要求,否则与同一段提示词里既有的「纯色背景必须平整无
纹理、无渐变」互相拆台。

实测只提「像素风格」效果已可接受,因此不注入网格密度、色板色数和抗锯齿等
约束。source-guard 钉住注入排在 create_openai_ 之前——被挪到之后时产物看起来
仍然「成功」,只是静默退化成统一网格马赛克,普通测试抓不到。

约束句随 submitted_prompt 写入 editor_project_resource 的 prompt 列;响应体
返回的仍是用户原文,前端显示不变;不新增 OSS PUT、项目资源、素材记录或画布
图层。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-01 07:04:53 +00:00
kdletters e1d031b86f 增加外部API的MCP与异步生成模式
新增托管式Streamable HTTP MCP端点并复用外部API Key鉴权
统一图片视频音频等生成请求为幂等异步提交和状态查询
提供可发现的使用说明、OpenAPI资源及完整Skill下载包
同步更新OpenAPI契约并规定接口变更必须连带维护
适配AI游戏创作Shell的异步提交轮询与安全重试
补齐MCP方法映射、异步Worker和客户端回归测试
2026-07-31 19:48:28 +08:00
lhk229 72acd0ec05 停止向用户泄露抠图模型 (#120)
Project CI / Frontend tests (push) Successful in 3m40s
Project CI / Backend tests (push) Successful in 4m11s
Project CI / Repository checks (push) Successful in 1m19s
Project CI / Native shell tests (push) Successful in 12m36s
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/120
Co-authored-by: Linghong <ink29535@proton.me>
Co-committed-by: Linghong <ink29535@proton.me>
2026-07-31 16:40:43 +08:00
kdletters b512430e53 收紧图集切片资源边界
Project CI / Repository checks (push) Successful in 1m4s
Project CI / Frontend tests (push) Successful in 2m5s
Project CI / Native shell tests (push) Successful in 2m32s
Project CI / Backend tests (push) Successful in 3m37s
前置限制原始连通域、局部候选和输出切片数量
统一图集切片的有界阻塞线程执行
统一角色图标和UI的原图安全降级
补齐异常输入回归测试与工程文档
2026-07-30 13:44:17 +08:00
lhk229 fae6f00c9f 合并 web master 最新更新
Project CI / Frontend tests (pull_request) Failing after 52s
Project CI / Repository checks (pull_request) Successful in 1m2s
Project CI / Native shell tests (pull_request) Successful in 2m10s
Project CI / Backend tests (pull_request) Successful in 3m28s
将 web/master 的画布快照、图集标签和 Agent 框架更新合入像素艺术功能分支。

# Conflicts:
#	docs/project-memory/shared-memory/decision-log.md
#	server-rs/crates/api-server/src/external_editor_api.rs
2026-07-29 07:02:56 +00:00
kdletters edc99e55e4 修复跨设备画布旧快照覆盖
Project CI / Frontend tests (push) Failing after 43s
Project CI / Repository checks (push) Successful in 47s
Project CI / Native shell tests (push) Successful in 2m47s
Project CI / Backend tests (push) Successful in 3m13s
按用户隔离画布缓存并等待权威 revision 后开放保存
固化保存重试版本并安全处理认证重载与冲突恢复
合并迟到资源图层且隔离跨账号异步请求
强制 Web 与 External 画布写入使用 expectedRevision CAS
补充竞态回归测试并同步 OpenAPI、Skill 与技术文档
2026-07-29 13:51:49 +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 b49bf9c984 结构化图片画布持久化并补充历史资源修复
将旧布局上限统一提升至2MiB并接入revision CAS保存
新增画布图层、生成对话框和迁移状态结构化存储
新增migration operator保护的回填、激活和回滚脚本
新增历史图片映射及音频资源恢复的定向dry-run/apply流程
补齐前端保存队列、OpenAPI、Bindings、发布归档与回归测试
2026-07-20 20:45:15 +08:00
lhk229 0c04bbbea3 内存优化 (#91)
BGfilter服务调用改为传url,减少内存占用

Reviewed-on: https://git.genarrative.world/git/GenarrativeAI/Genarrative/pulls/91
Reviewed-by: 段舒康 <kdletters@qq.com>
Co-authored-by: Linghong <ink29535@proton.me>
Co-committed-by: Linghong <ink29535@proton.me>
2026-07-18 21:17:35 +08:00
kdletters a0242e3547 修复图集快速编辑模型路由
快速编辑请求补齐模型比例和清晰度参数
后端按模型分流nanobanana与GPT图片编辑协议
兼容旧队列参数并收紧图片编辑计费边界
补充图集回归测试并同步OpenAPI与编辑器文档
2026-07-16 22:08:05 +08:00
lhk229 aecabdacfd 新抠图算法 (#85)
Co-authored-by: 段舒康 <kdletters@qq.com>
Reviewed-on: https://git.genarrative.world/git/GenarrativeAI/Genarrative/pulls/85
Co-authored-by: Linghong <ink29535@proton.me>
Co-committed-by: Linghong <ink29535@proton.me>
2026-07-16 18:33:06 +08:00
kdletters ed8be38287 统一画布生成资源命名
新增所有生成面板的资源名称输入并统一80字符边界
贯通画布标题、项目资源、素材库与生成请求的名称传播
为图标图集和角色动作补齐命名契约及中间产物后缀
补充前后端回归测试、OpenAPI与编辑器文档
2026-07-14 10:27:25 +08:00
kdletters 4e7bcb8f24 补齐生成中间产物持久化与拆图提示
图标和UI图集拆分失败时保留主图集并在内联、队列及刷新路径提示
角色、图片修改、图标UI和角色动作链路把可恢复中间产物写入项目与素材库
外部生成摘要新增独立告警字段并清理成功任务的历史错误
同步共享契约、SpacetimeDB迁移与绑定、OpenAPI、设计文档和回归测试
2026-07-13 21:41:46 +08:00
kdletters f1639de5fe 修复图标图集自动拆分降级
图集带背景原图和透明整图先写入项目资源与账号素材库并回填画布
自动拆分识别或持久化失败时保留图集并返回结构化警告
手动拆分限制图片尺寸、总像素和单次切片数量
同步共享契约、外部 OpenAPI、前端类型、设计文档和回归测试
2026-07-13 20:29:06 +08:00
kdletters eae00292a1 新增画板图集自动拆分
生成图标图集后自动拆分并持久化独立素材
新增图集工具栏手动拆分入口与权威画布回填
修复连通域切片阅读顺序并补齐前后端测试
同步外部接口与编辑器设计文档
2026-07-13 19:10:30 +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
kdletters 7048c05ebf 补齐外部编辑器生成资产链路
更新外部编辑器 API skill 的画板、素材库和美术规范引导。

扩展 Python helper,自动准备画板会话、长超时生成并补齐角色动画素材入库。

将新建项目和生成任务 ID 前缀调整为 proj/task,并保留旧 ID 兼容。

更新 OpenAPI 说明和项目记忆。
2026-07-03 15:19:44 +08:00
kdletters 4637a5e25a 补齐外部编辑器 API 技能
新增 Genarrative 外部编辑器 API skill

封装本地 JSON API Key 与参考图上传 Python helper

同步 OpenAPI 的画布图层替换字段

补充外部 OpenAPI 导出测试断言
2026-07-02 23:43:17 +08:00
kdletters 6d4033f044 让音频生成进入素材库
音效和背景音乐生成复用媒体素材持久化路径

前端提交音频生成时携带素材库上下文并消费返回素材快照

更新音频生成契约、OpenAPI 和相关文档

补充音频素材库链路回归测试
2026-07-02 20:28:26 +08:00
kdletters 65acf9f429 更新外部编辑器 OpenAPI 契约
补齐外部生成请求的画布写回字段

同步视频生成参数范围和队列状态响应

补充素材与项目资源返回字段

(cherry picked from commit 287c9cc2f86f0b319ef0c34bc45f8d59a744d0f7)
2026-06-30 17:12:13 +08:00
kdletters 63790e22ef 补齐画板视频封面持久化
生成画板视频时截取首帧并上传为封面

将视频生成结果写入素材库并保留 thumbnailSrc

同步后端契约、SpacetimeDB 绑定、前端素材库和画布层映射

补充相关测试与文档说明
2026-06-28 00:22:59 +08:00
kdletters 5976c2b337 支持素材生成上传参考图
图标素材生成支持上传普通参考图并提交到后端参考图数组。

UI设计图生成和UI素材提取支持上传参考图并写入生成输入记录。

同步前后端契约、OpenAPI、文档和相关单测。
2026-06-27 22:18:10 +08:00
kdletters a6671e7da7 修正图标素材只生成透明图集
后端图标素材生成只持久化扣绿后的 spritesheet 图集。

响应兼容保留 iconImageSrcs 但图标生成固定返回空数组。

前端测试改为验证只回填图集且不生成独立图标层。

同步 OpenAPI、编辑器文档和项目记忆中的图标素材生成约定。
2026-06-27 18:52:48 +08:00
kdletters 8eecd038f5 允许UI素材提取选择模型
为UI素材提取面板接入图片模型选择器,默认使用nanobanana模型。

提取提交链路传递选中模型并按模型计算泥点价格。

后端UI素材提取请求支持模型字段,队列、执行、持久化和响应统一使用选中模型。

同步外部OpenAPI模型字段并补充前端工作流、客户端请求和后端默认模型测试。
2026-06-27 17:51:41 +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
JenkenB 2007f1f9ce Update editor generation pricing defaults
Unify and lower default mud-point prices across editor generation features and update related API/schema, docs and tests. Changes set gpt-image-2 to 1K=3 / 2K=5, audio1.0 to 5, and chirp-v5 to 12, and update server default JSON, frontend models/workflows, OpenAPI schema (require aspectRatio/imageSize/priceMudPoints for UI extraction), multiple UX docs (quick-edit viewport, UI extraction panel, pricing guidance) and accompanying tests to match the new defaults and validation rules.
2026-06-22 21:10:43 +08:00
kdletters fc49ba2a61 后端写入画布生成完成态
后端在图片生成完成后直接写入画布布局和生成器状态

前端提交canvasCompletion并只应用后端项目快照刷新显示

移除项目加载时根据资源行推断生成完成态的路径

更新OpenAPI、图片画布文档和共享排障记忆
2026-06-21 22:30:03 +08:00
kdletters d8dd2f1857 补齐外部OpenAPI编辑器素材能力
移除外部OpenAPI中的API Key管理接口暴露
补齐编辑器项目列表、最近项目、重命名和删除外部接口
补齐素材直传凭证、素材对象确认和签名读取外部接口
复用站内编辑器生成、素材库和项目资源链路并按API Key账号归属
更新外部OpenAPI、后端契约和项目共享记忆文档
2026-06-21 13:40:09 +08:00
kdletters 95d6bc2ae7 接入外部 OpenAPI 与 API Key 管理
新增外部编辑器 OpenAPI 路由与 openapi.json 导出

新增账号级 API Key 表、鉴权、创建、列表和撤销链路

新增个人中心开发者 API Key 管理弹窗

补充前端契约、客户端方法、测试与项目文档
2026-06-19 15:31:53 +08:00