Commit Graph

603 Commits

Author SHA1 Message Date
kdletters 6277a823ba 调整动作导出与项目封面兼容
新增动作图层导出二级菜单

序列帧导出改为ZIP并生成GIF预览

兼容历史项目封面资源字段
2026-06-25 19:58:12 +08:00
kdletters 0c2f743010 要求UI素材图集使用绿幕背景
后端UI设计素材提取固定提示词加入纯绿色绿幕要求

前端UI设计素材提取常量与历史字段断言同步绿幕要求

更新编辑器文档和项目记忆中的素材提取约定
2026-06-25 14:58:09 +08:00
kdletters 6bf8b0051b 完善画板生成器与素材导出体验
图片改造改为独立 quick-edit 生成器占位并补齐提交链路
生成完成应用项目快照后同步刷新素材库
序列帧导出补充 Spine JSON 与独立验证器
序列帧播放预加载帧资源以减少加载闪烁
本地 dev 默认启用 all 进程角色并更新文档
2026-06-25 00:12:21 +08:00
kdletters 4eb7bca536 修复画布素材导出跨域读取
导出读取改走同源 read-bytes 接口

readAssetBytes 支持 objectKey 直读

补充对象素材导出不触发 OSS 跨域请求的回归测试

更新画布素材导出文档的 CORS 边界
2026-06-24 21:15:22 +08:00
wuxiangwanzi 0c55d1ca87 后台看板增加时段显示和新增用户数量
后台 Dashboard 日期控件改为起始日期和终止日期

新增本时段筛选并扩展前后端 Dashboard 查询契约

新增新增用户数指标,按 profile_dashboard_state.created_at 统计当前时间窗注册账号

补充后台看板测试和运营看板文档口径
2026-06-24 20:57:03 +08:00
kdletters b6c5fdeb30 修复生成完成提示与项目封面快照
生成完成提示展示后后台确认,避免刷新重复弹出

项目封面改为保存并读取静态快照资源

补充封面快照上传、选择和展示测试

同步外部生成与图片画布契约文档
2026-06-24 19:30:16 +08:00
kdletters 73a17193d4 升级外部生成为正式任务列表
将 external_generation_job 扩展为含价格、确认时间、退款流水和事件审计的正式生成任务事实源

新增外部生成任务列表与确认 BFF,并让平台入口按后端任务补弹完成或失败提示

保护画布生成队列超时、快照回写和自动保存覆盖场景

将 worker 计费退款流水写入 externalGenerationJobId,并补充冷备份后 worker/controller 恢复守护
2026-06-24 15:17:12 +08:00
kdletters f1b4e70bda 节流私有素材换签请求
限制大量不同素材同时换签时的首批派发和后续间隔

补充 read-url 换签爆发导致发布入口 429 的排障记录
2026-06-23 23:11:37 +08:00
kdletters 562366820d 合并master到编辑器素材库分支 2026-06-23 22:45:57 +08:00
kdletters fbecb3c7cb 新增后台Dashboard并修正画板规范图选择
新增后台 Dashboard 默认入口、日周月筛选和运营汇总页签

补充后台 Dashboard 数据契约、接口统计和文档

修正画板角色与图标规范图选择、缓存和提示状态

修复创作页桌面导航类型收窄错误

更新 Codex 环境初始化脚本和相关回归测试记录
2026-06-23 22:44:04 +08:00
wuxiangwanzi fcd9470dcf 加入客服反馈和社区二维码
增加桌面端全站客服反馈悬浮入口。

悬停入口时展示 QQ 和微信社区二维码浮窗。

补充入口拖拽边界、点击跳转和移动端隐藏测试。

同步全站客服悬浮入口接入文档。
2026-06-23 21:02:13 +08:00
kdletters 2e60e43e17 收紧画布素材导出元数据
只导出信息面板可见的素材元数据

过滤导出生成输入中的内置提示词

补充导出测试和图片画布文档约束
2026-06-23 19:23:46 +08:00
kdletters 0c2c0c2c0f 合并 master 到编辑器素材库分支
同步主线原生壳与宿主桥接改动

保留画板媒体瘦身和请求重试契约

合并项目记忆决策记录
2026-06-23 17:25:35 +08:00
kdletters f5ede50ba9 瘦身画板媒体保存链路
改造画板项目保存响应为轻量 ack

统一生成上传媒体以 objectKey 持久化

补齐素材库缩略图换签与本地轻量缓存

刷新生成后泥点余额并补充回归测试
2026-06-23 17:21:55 +08:00
kdletters 63cd92cc3f 补齐图片编辑器素材和画布搜索
普通上传默认落入上传素材文件夹

缺少上传素材文件夹时首次上传前自动创建

素材库和图层侧栏增加前缀优先搜索

更新图片画布技术文档和定向测试
2026-06-23 17:03:11 +08:00
JenkenB 700206f364 Merge branch 'codex/editor-asset-library' of https://git.genarrative.world/git/GenarrativeAI/Genarrative into codex/editor-asset-library 2026-06-23 16:10:22 +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
kdletters 47bdc73b93 串行化画板布局自动保存
让画板布局保存共用单飞队列避免慢 PATCH 并发

覆盖慢保存期间只发送最新待保存快照

补充发布入口 429 排查与自动保存文档
2026-06-23 15:16:50 +08:00
kdletters 0579741f64 画板生成统一接入Worker队列
新增图片画布外部生成队列封装和 worker job 分发

将画板图片、改图、图标、UI 素材、角色动作、视频和音频生成切到队列模式

前端提交生成任务后轮询 queueState 并应用后端项目快照

补充共享契约、测试和 worker 化文档说明
2026-06-23 01:07:33 +08:00
kdletters 7d3e652b53 优化项目封面加载与画布吸附
项目页封面和画布图层增加轻量加载态,图片解码不阻塞外框文字。

缩小等距吸附候选范围,降低多素材拖拽热路径开销。

补充项目封面、画布加载、吸附性能测试和文档说明。
2026-06-23 01:06:28 +08:00
wuxiangwanzi 6c984a24f6 修改滚轮缩放和图标容器比例bug
将画布滚轮缩放下限调整为可见 5%。

修正图标素材生成占位框尺寸,避免 1:1 默认外框过大。

取消图标素材占位装饰 tile 的反向缩放,避免缩小时内部容器异常放大。

补充画布缩放、图标占位和文档验收说明。
2026-06-23 00:19:09 +08:00
JenkenB dfd567fe2c Add Agent execution guidelines & trim AGENTS.md
Introduce a new detailed Agent handbook (docs/【协作规范】Agent工作入口与执行准则-2026-06-22.md) and refactor AGENTS.md to be an entry-only navigation page. Update documentation cross-references (docs/README.md, project-memory README, document-map, team-conventions, development-workflow, decision-log and project-overview) to point to the new file and clarify reading/order rules, submission/validation constraints, and SpacetimeDB/back-end wording. Also adjust image canvas generation placement rules in the frontend doc and apply related changes to image-editor hooks/tests (src/components/image-editor/*). Purpose: separate high-level entry rules from complex execution details to reduce startup cost for complex tasks and centralize execution practices in a single guideline document.
2026-06-22 21:44:07 +08:00
JenkenB 75e1ac93db Refactor UI asset extraction overlay and handlers
Remove explicit cancel callback and centralize dismissal: clicking the canvas now dismisses active UI extraction (handled in ImageCanvasEditorView) instead of relying on an onCancel prop. Simplify ImageCanvasStageView and ImageCanvasUiAssetExtractionOverlayView APIs by removing onCancel and related UI. Improve preview bounds and rendering: add normalization to mark bounds, clamp to source dimensions, and render crop previews using an absolutely-positioned <img> for accurate, coordinate-based previews. Update styles for toolbar active states and preview image layout, and reduce SVG stroke width. Update tests and docs to reflect new behaviors and UI wording (tool highlight, accurate crop preview, and dismissal behavior).
2026-06-22 21:37:39 +08:00
JenkenB a1677027f3 Merge branch 'codex/editor-asset-library' of https://git.genarrative.world/git/GenarrativeAI/Genarrative into codex/editor-asset-library 2026-06-22 21:27:54 +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
wuxiangwanzi 25421140bf 优化画布泥点入口
让画布顶部泥点余额按钮复用创作页充值和兑换码入口

抽取账户充值支付结果与确认弹窗组件供创作页和画布页共用

补充画布泥点入口回归测试和编辑器技术文档
2026-06-22 21:08:33 +08:00
wuxiangwanzi 7fe4a10d19 优化画布顶部栏布局
收窄画布顶部栏高度和按钮间距

移除未命名画布下方的画布副标题

将画布标题和重命名入口贴近返回按钮

在顶部栏右端展示当前泥点余额

补充画布顶部栏测试和技术方案说明
2026-06-22 21:04:43 +08:00
kdletters 1176c71f72 角色动作素材改为序列帧
将角色动作结果图层主类型改为 image-sequence,并持久化完整帧列表与预览视频来源

在画布中增加序列帧播放器,展示透明 PNG 帧而不是预览视频

将角色动作单素材下载和画布素材导出改为序列帧 ZIP/frames 目录

更新角色动作、导出方案和项目记忆文档,补齐相关前端测试
2026-06-22 20:49:51 +08:00
wuxiangwanzi d9cd2edf92 改造时隐藏系统提示词
改造和重绘面板只从用户可见输入快照恢复提示词。

没有用户输入快照的旧资源打开改造时保持输入框为空。

补充图片、音频、视频、规范和宣发素材改造提示词恢复测试。

更新图片画布编辑器文档中的系统提示词隐藏规则。
2026-06-22 20:13:23 +08:00
JenkenB e91a46a419 Merge branch 'codex/editor-asset-library' of https://git.genarrative.world/git/GenarrativeAI/Genarrative into codex/editor-asset-library 2026-06-22 19:18:31 +08:00
JenkenB 55469a2198 UI extraction selection + local FFmpeg dev env
Require an explicit red-box selection before extracting UI-design assets: add rectangular/ellipse/brush selection UI, render red-outline marks into a marked Data URL on the client, and update the extraction prompt to "仅提取被红色框框选的素材并整理成spritesheet". Add frontend overlay/raster models and tests to support the selection flow and adjust numerous image-editor tests and views to wire up the selection lifecycle. On the dev ops side, enhance scripts/dev to detect a local %LOCALAPPDATA%/Genarrative/ffmpeg/bin installation on Windows, prepend it to PATH and inject CHARACTER_ANIMATION_FFMPEG_PATH/FFPROBE_PATH (with tests), and export the helper. Server config now prefers GENARRATIVE_*-prefixed FFmpeg env vars and includes a Rust test to validate reading the prefixed variables. Update docs to describe the new UI extraction behavior and local FFmpeg handling.
2026-06-22 19:13:37 +08:00
kdletters 820e179be5 新增画布快捷键弹窗
添加画布右上角快捷键入口和独立弹窗

补齐 Windows 画布快捷键与选中图层命令

更新快捷键单测和画布文档
2026-06-22 17:58:00 +08:00
wuxiangwanzi 8b18a654eb 增加画布元素吸附功能
新增画布元素边缘、中心线与等距吸附计算。

接入图层与生成占位拖拽吸附,并保持多选队形同步偏移。

补充画布吸附模型和交互测试。

更新图片画布编辑器方案文档中的吸附验收口径。
2026-06-22 17:22:25 +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 fc49ba2a61 后端写入画布生成完成态
后端在图片生成完成后直接写入画布布局和生成器状态

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

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

更新OpenAPI、图片画布文档和共享排障记忆
2026-06-21 22:30:03 +08:00
kdletters 928aecdcb1 扩展画布生成视频参数
生成视频面板支持多比例、4到15秒时长滑杆和静音开关
生成视频清晰度增加1080p并限制Fast模型不可选
生成视频请求默认携带联网搜索标记但不在前端展示
后端校验视频比例、时长、清晰度和声音参数并映射音频生成
更新编辑器视频参数文档和项目决策记录
2026-06-21 20:16:22 +08:00
kdletters de9eaef28f 改为行引用保存画布参考图元数据
生成输入参考图只保存 refType/refId 行引用
生成器布局快照只保存参考图行指针并在加载时恢复临时源
上传参考图优先创建项目资源行并回写 resourceId
元数据弹窗改为展示参考图行引用信息
更新图片画布技术文档和项目决策记录
2026-06-21 17:27:23 +08:00
kdletters 29d9c9ff5b 支持画布多选生成器
新增画布生成器选择 ID 模型,支持图层与生成器混合选择
补齐框选、Shift 点选、拖拽和删除对生成器占位的批量操作
修复音频控件焦点删除和手动素材标签资源持久化
更新图片画布编辑器多选语义文档
2026-06-21 15:59:34 +08:00
kdletters 10dcc2b403 修复图片画布素材与宣发尺寸问题
修复画布上传素材持久化回填和项目重进资源元数据恢复

修复图片、音频、视频图层的私有资源换签与视频裸路径回退

修复宣发素材切换模型后卡片尺寸变成1024x1024的问题

修复音视频预览、媒体导出格式、音频默认提示词和前端去背边界

修复角色动作生成在编辑器路径缺少ffprobe时的已知时长兜底

补充图片画布、资源换签、宣发尺寸、媒体导出和chromaKey回归测试

更新图片画布编辑器技术文档
2026-06-19 23:16:59 +08:00
kdletters 98545d74d1 修复画布底部上传入画布尺寸
底部工具栏上传图片后直接创建画布图层

上传图片在创建素材和图层前读取原始分辨率

补充上传尺寸解析与素材库集成回归测试

同步图片画布上传语义文档和共享决策记录
2026-06-19 17:36:20 +08:00
kdletters 05758775e8 角色重绘复用角色提示词限定
角色图层重绘提交为角色生成类型
补充角色重绘请求契约测试
更新图片画布重绘链路文档
2026-06-19 17:24:00 +08:00
kdletters aa67e72ec5 修复宣发素材生成器刷新恢复
恢复画布布局中的 publication 生成器快照

补齐宣发素材卡片类型、游戏信息和参考图 hydrate

增加模型、面板和编辑器加载链路回归测试

更新图片画布持久化文档和共享踩坑记录
2026-06-19 17:23:34 +08:00
kdletters f615fcd770 合并 master 到图片画布素材分支
保留图片画布素材元数据迁移记录

合入 Pingora 网关与生产运维更新

解决外部生成 worker 测试夹具时间戳冲突
2026-06-19 17:01:31 +08:00
kdletters 4821fb90df Merge branch 'codex/editor-asset-metadata-migration' into codex/editor-asset-library
# Conflicts:
#	docs/project-memory/shared-memory/decision-log.md
#	server-rs/crates/api-server/src/editor_project.rs
#	src/components/image-editor/ImageCanvasEditorModel.ts
#	src/components/image-editor/ImageCanvasEditorView.test-utils.ts
#	src/components/image-editor/ImageCanvasEditorView.tsx
#	src/components/image-editor/useImageCanvasGenerationSubmissionWorkflow.ts
#	src/services/image-editor/editorProjectClient.test.ts
2026-06-19 16:55:41 +08:00
kdletters e644d7c99f 后端保存画布生成素材
生成接口接收项目与素材上下文并返回 resource/asset 快照

画布前端使用后端回包落层并避免重复创建资源和素材

补充生成元数据保存边界的测试与文档
2026-06-19 16:30:56 +08:00
kdletters 76445da9b4 迁移画布素材生成元数据
扩展 editor_project_resource 和 editor_asset 保存素材类别与生成输入快照

调整前端资源与素材读写链路并停止把素材元数据写入新 layout

在服务端保存 layout 时回填并清洗旧图层元数据

更新图片画布契约文档、共享决策和相关测试期望
2026-06-19 15:11:32 +08:00
JenkenB cc3346758c 修复若干bug 2026-06-19 14:18:56 +08:00
JenkenB 097170836d Add UI-design asset extraction & spritesheet support
Introduce a new UI design asset extraction flow: add POST /api/editor/ui-designs/assets/extractions handler that always uses gpt-image-2 with the fixed prompt "提取画面中的所有独立并整理成spritesheet"; parse Data URL references, call OpenAI image edits, return a spritesheet and sliced icon assets. Increase request body limit for image Data URLs and wire the route with bearer auth. Add platform-image slicing: slice_generated_icon_spritesheet_all_by_connected_components (with auto-naming "素材 1..N", foreground estimation and heuristics) and export it. Add Rust tests for the handler, prompt constant, and slicing behavior. Update frontend client and integration tests to call the new extractEditorUiDesignAssets API and verify spritesheet + icon layers are added to the canvas and persisted. Update multiple docs to describe the extraction UI, toolbar placement, and related audio/playback pitfalls. Minor related updates: toolbar button ordering and audio duration / signed read-url notes.
2026-06-19 10:09:19 +08:00