Commit Graph

145 Commits

Author SHA1 Message Date
lhk229 ee2cad377f 新增画布完美像素功能
在图片工具栏接入完美像素交互、占位流程与历史保护

新增严格像素网格检测和登录态同步处理接口

补齐素材类型校验、持久化边界、并发限制及技术文档

修复 Windows rlib 门禁长文件名解析
2026-07-30 11:42:45 +00:00
lhk229 732fcf0b45 新增图片生成像素艺术后处理
新增确定性像素网格规整模块并保留第三方 MIT 许可证。

为普通图片、角色和图标图集接入像素艺术选项、并发预算和失败降级。

同步前端交互、请求契约、OpenAPI、项目文档与测试。
2026-07-29 03:46:03 +00:00
k88936 44748b7846 fix:前后端校验手机号区域码 (#104)
Project CI / Frontend tests (push) Successful in 34s
Project CI / Backend tests (push) Failing after 39s
Project CI / Repository checks (push) Successful in 52s
Project CI / Native shell tests (push) Successful in 2m4s
来自今早群友反映
before:
![shotmd-1784692399.jpg](/attachments/3ab36252-78f4-44e2-bb51-fca84badc79e)
and failed
after:
![shotmd-1784702966.jpg](/attachments/3eea7ec9-8aca-43f6-a675-1316162619d4)
![shotmd-1784702843.jpg](/attachments/29182a41-26cf-4954-be16-de060d844d9c)
![shotmd-1784787134.jpg](/attachments/c04a1981-c6bf-4a26-b5ad-d2af51d74a29)

* https://developers.weixin.qq.com/miniprogram/dev/server/API/user-info/phone-number/api_getphonenumber.html#Res-phone-info-Object-Payload 参考微信这个文档修改了微信返回的struct 手机号 区域码字段不应是Optional

* 登录注册改密码改绑定等 api 把单一 phone字段改成 country_code(可选,缺省为86) + pure_phone_number 分别进行了前后端校验

Reviewed-on: https://git.genarrative.world/git/GenarrativeAI/Genarrative/pulls/104
Co-authored-by: 王德宇 <kvtodev@outlook.com>
Co-committed-by: 王德宇 <kvtodev@outlook.com>
2026-07-23 14:52:57 +08:00
kdletters 7ea463ed08 退役旧创作模板业务并保留数据壳
保留 SpacetimeDB 历史表、迁移白名单与最小兼容读取定义
移除旧创作前后端、worker、业务过程及纯业务 crate 的编译依赖
恢复现役创作、项目、我的入口及桌面移动导航
收紧 Vite、TypeScript、ESLint、Vitest 与静态资源退役边界
补齐开发栈、网关、原生壳和文档退役约束
2026-07-18 22:02:22 +08:00
kdletters e9c3dc1120 退役旧创作模板业务
保留 SpacetimeDB 历史表、迁移白名单与旧业务源码
切换前端 active 入口并解除旧创作页面和路由编译链
移除旧后端路由、worker 与纯业务 crate 依赖
收敛 SpacetimeDB 模块为历史数据壳
同步 Nginx、Pingora、验证门禁与架构文档
2026-07-17 22:07:52 +08:00
kdletters 387a1c26e3 完成全量检查整改
清理已跟踪原始日志与个人本地配置
修复前后端有效门禁、测试和构建问题
补齐生产 Jenkins、SpacetimeDB 本地命令与文档约束
收紧图片编辑器状态、附件与媒体引用测试
排除已下线旧创作入口测试并清理 warning
2026-07-17 16:56:46 +08:00
kdletters 18af49c27f 收紧编辑器媒体引用契约
禁止当前画布与外部编辑器接口接收 Data URL 和 Blob URL
生成请求统一先上传 OSS 并使用稳定资源引用
角色动画和视频签名前校验资源归属并支持资源与素材 ID
同步前后端 256KB 引用限制及相关文档测试
2026-07-17 16:44:01 +08:00
kdletters 8862887baa 新增后台充值退款管理与微信V3退款闭环
新增充值订单查询、通用用户详情、钱包冻结与部分退款操作
接入微信V3退款申请、回调、主动查单、交易账单对账与安全诊断
新增退款占用、权益追回、异常欠账和消费限制事务
补齐Native支付SSE自动收口及退款编号与部分退款校验
同步SpacetimeDB schema、生成绑定、测试与项目文档
2026-07-14 12:16:01 +08:00
kdletters 187d7735b9 修复编辑器定价持久化与资源预览
将模型定价改为 SpacetimeDB 强类型持久化并兼容旧配置种子迁移
修复快速编辑支付弹窗期间框选显示和交互冻结
补齐后台图片放大以及视频音频资源预览
收紧主站和 External 资源换签授权并记录管理员跨用户审计
固化外部生成入队价格、attempt 钱包结算和最终 lease 失败收口
加固运行时身份轮换、bootstrap secret 与生产构建发布门禁
同步生成绑定、定向测试、运维脚本和项目文档
2026-07-10 18:28:06 +08:00
kdletters 542fb09365 接入微信 Native 充值与订单过期处理
调整网页端充值渠道,微信内浏览器在开放平台接入前走 Native 支付。

拆分 Native 支付二维码弹窗,展示金额和充值内容并取消无效 code_url 跳转。

修复微信 Native 下单 time_expire 秒级 RFC3339 格式,避免小数秒参数错误。

新增充值订单 5 分钟过期调度,过期前查询微信真实订单状态。

补充微信授权绑定、路由加载恢复和后台表时间显示等配套逻辑。

更新 SpacetimeDB schema、绑定和相关文档测试。
2026-07-08 21:35:02 +08:00
kdletters 25cac367c6 接入功能灰度与画布 Agent 灰度
新增 SpacetimeDB 灰度配置表与后端判定链路

新增后台灰度发布页面和两段式 Gate Key 选择器

将画布 Agent 入口接入灰度配置与运行时能力下发

修复灰度配置刷新读取空本地缓存的问题

补充灰度规则和后台下拉维护约定文档
2026-07-08 11:26:41 +08:00
kdletters 2a98b60830 改为运行时控制画板 Agent 入口
新增前端运行时配置接口下发画板 Agent 开关

将画板 Agent 入口改为读取后端运行时配置

把开关变量改为 GENARRATIVE_ENABLE_IMAGE_EDITOR_AGENT_SIDEBAR

补充前后端测试和生产环境变量文档
2026-07-07 14:04:08 +08:00
kdletters 47083bfe05 切断认证快照同步路径
删除 auth_store_snapshot 表和旧 JSON 快照 procedure。

改用 AuthStoreProjectionView 同步 user_account、auth_identity 和 refresh_session。

让 auth 服务从 user_account 投影恢复内存工作集。

同步生成绑定、schema guard 和后端架构文档。
2026-07-01 19:07:21 +08:00
kdletters 8ee57210a4 修复编辑器参考图与后台日期问题
后台 Dashboard 默认日期按北京时间计算

图片快编请求补齐额外参考图、模型和尺寸参数

后端校验参考图 objectKey 归属并放宽编辑请求体限制

同步资产契约、测试和相关文档
2026-06-28 01:09:40 +08:00
kdletters 8324911bbb 修复动作提示缓存缺失降级
角色资产工作流解析在 OSS 缓存未配置时返回默认提示词

补充无 OSS 缓存的 workflow 路由回归测试

同步后端契约文档说明
2026-06-27 17:24:05 +08:00
kdletters 0579741f64 画板生成统一接入Worker队列
新增图片画布外部生成队列封装和 worker job 分发

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

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

补充共享契约、测试和 worker 化文档说明
2026-06-23 01:07:33 +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
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
kdletters 95d6bc2ae7 接入外部 OpenAPI 与 API Key 管理
新增外部编辑器 OpenAPI 路由与 openapi.json 导出

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

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

补充前端契约、客户端方法、测试与项目文档
2026-06-19 15:31:53 +08:00
JenkenB 160c96a014 合并画板素材生成与宣发入口改动
新增 UI 设计图提取素材入口并复用 gpt-image-2 spritesheet 拆分流程。

保留图标生成与 UI 提取的 spritesheet 原图并同步放置拆分素材到画布。

补齐宣发素材演示入口、占位图样式、引用上传与生成提交链路。

调整编辑器生成接口 body 限制和 VectorEngine 请求兼容逻辑。

更新画板音乐生成、项目基线、宣发素材与图片画布相关文档。
2026-06-19 10:37:22 +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
kdletters ae375a8e5f 合并编辑器素材库能力
合并 codex/editor-asset-library 到宣发素材演示分支

保留素材库、生成器、音频、UI设计图和持久化相关能力

补回宣发素材入口与 5 泥点计费契约
2026-06-18 22:36:54 +08:00
Codex 2ddeaeb348 同步远端主分支更新
合并 origin/master 到宣发素材功能分支

保留项目记忆迁移和 AI Web 编辑器决策记录

解决 decision-log 文档冲突并通过编码检查
2026-06-18 16:45:59 +08:00
Codex 638dc9f6f6 收口图片编辑器宣发素材生成
调整详情五图工作流为单张竖版详情图生成

修正宣发素材明确像素尺寸透传和运营海报尺寸映射

压缩宣发参考图提交并提高后端请求体限制

补充前后端回归测试、文档和 Hermes 踩坑记录
2026-06-18 15:49:20 +08:00
JenkenB 38cbb85d48 严格区分Seedance视频模型
将画板生成视频默认模型调整为 seedance2.0-fast

为 seedance2.0 与 seedance2.0-fast 分别映射独立上游模型

固定角色动画使用 seedance2.0-fast 并更新前后端契约测试

同步更新编辑器生成面板和项目记忆文档
2026-06-18 14:40:39 +08:00
kdletters 7765c69a8a Merge remote-tracking branch 'origin/master' into codex/editor-asset-library
# Conflicts:
#	docs/project-memory/shared-memory/decision-log.md
2026-06-17 20:52:41 +08:00
JenkenB 3a3cc89280 Image editor: hide raw Prompt, use Resolution
Remove backend-assembled raw Prompt and copy action from image info; render a lightweight generationInputs snapshot (user panel inputs + reference thumbnails) stored on canvas layers and shown in the image info dialog. Unify canvas display and info to use originalWidth/originalHeight (Resolution) instead of saved Size and hydrate legacy layout width/height only as fallback. Add model/aspectRatio/imageSize options for character/icon generation (frontend state, tests, and client payloads). Increase Axum JSON body limit for character animation endpoint to 12MB for compatibility and prefer submitting persisted objectKey over large Data URLs. Update tests, docs, and related server/frontend code to reflect these behaviors and validations.
2026-06-16 17:06:21 +08:00
kdletters 6984af782c 更新 API meta 版本号
将 shared-contracts 与前端共享 API_VERSION 更新为 2026-06-16

同步 healthz 响应头断言与 API envelope 测试夹具

补充 api-server 文档中的 API_VERSION 来源说明
2026-06-16 16:37:40 +08:00
kdletters 96c36f0b50 Merge remote-tracking branch 'origin/master' into codex/editor-asset-library
# Conflicts:
#	server-rs/crates/spacetime-client/src/lib.rs
#	server-rs/crates/spacetime-client/src/mapper.rs
#	server-rs/crates/spacetime-client/src/module_bindings.rs
#	src/components/platform-entry/PlatformEntryFlowShellImpl.tsx
2026-06-13 16:52:03 +08:00
kdletters 747473024d 新增图片画布编辑器
新增 /editor 图片画布入口与 Lovart 风格画布交互

新增图片画布工程和资源持久化的 SpacetimeDB 表、绑定与 api-server BFF

接入图片生成和修改的 VectorEngine gpt-image-2 后端通道

完善素材库文件夹、重命名、上传删除、图层和元数据交互

补充图片画布技术方案、领域词、执行跟踪和浏览器 smoke 截图
2026-06-13 16:22:18 +08:00
kdletters 951caac32d 扩展外部生成Worker队列
新增外部生成队列概览和单任务状态契约

将跳一跳、拼消消、敲木鱼图片生成动作接入worker队列

前端生成等待页展示当前任务和队列数量

更新外部生成worker运维文档和团队决策记录
2026-06-12 23:15:55 +08:00
kdletters e29992cf01 点赞和改造开关加入后台配置 2026-06-10 14:37:04 +08:00
kdletters 9db467d23f 补充 release SpacetimeDB 健康检查与巡检防回退
增加 SpacetimeDB 阶段化健康检查与 /readyz 阶段输出
记录 procedure/reducer/read 失败的阶段和耗时
补充 release 健康巡检 systemd timer 与生产 ops 预检
同步 API 构建部署、provision 脚本和运维文档
2026-06-10 11:35:39 +08:00
kdletters 7eae91d7d3 收口后端创作游玩流程主干
新增 play_flow 统一承接创作游玩与支撑路由
将 app.rs 的逐玩法挂载改为统一主干分发
将平台与资产及个人侧游玩支撑路由迁入 play_flow
抽出 visual_novel 路由模块并复用原有 handler
统一入口熔断路径解析并补充目标回归测试
更新后端契约、玩法链路和团队决策记录
2026-06-09 15:36:58 +08:00
kdletters 088470a315 收口微信领域能力
将 api-server 微信 HTTP/BFF 适配统一迁移到 wechat 目录。

将微信支付和虚拟支付消息协议细节下沉到 platform-wechat。

拆分 platform-wechat 的订阅消息与支付模块并补齐依赖。

修正微信相关测试的用户 ID 夹具并同步后端架构文档。
2026-06-08 21:05:37 +08:00
kdletters cc84656a1f 修复多端登录互相顶号
单设备退出只撤销当前 refresh session,不再提升账号级 token_version

认证中间件和 refresh 接口在本进程未命中会话时按需刷新 SpacetimeDB 认证工作集

补充多端登录与跨进程会话补水回归测试

同步项目文档和 Hermes 共享决策记录
2026-06-07 20:54:35 +08:00
kdletters e3ecac85f3 fix: refine mini program nickname collection flow 2026-06-07 00:42:05 +08:00
kdletters 79d0d7a305 Merge branch 'codex/wechat-nickname' 2026-06-06 23:59:30 +08:00
kdletters b74440373f feat(auth): 小程序登录采集微信昵称 2026-06-06 23:59:15 +08:00
kdletters ff7a2f6284 fix: delay wooden fish audio upload 2026-06-06 22:56:53 +08:00
kdletters b2543ba8a2 Merge branch 'master' into codex/puzzle-clear-template-runtime-fixes 2026-06-06 20:01:52 +08:00
JenkenB 601c6772b7 Merge branch 'dev-jenken' of https://git.genarrative.world/GenarrativeAI/Genarrative into dev-jenken 2026-06-05 23:44:36 +08:00
JenkenB 7140ac72b5 1 2026-06-05 23:41:24 +08:00
kdletters 3849c3ccbe Merge remote-tracking branch 'origin/master' into codex/pr57-p0-p2
# Conflicts:
#	docs/【玩法创作】平台入口与玩法链路-2026-05-15.md
#	docs/【项目基线】当前产品与工程约束-2026-05-15.md
2026-06-05 23:25:15 +08:00
kdletters e5592304a5 feat: add graceful api shutdown readiness 2026-06-05 11:44:27 +08:00
JenkenB 27b30f974b Update spacetime-client bindings and frontend
Large update across server and web clients: regenerated/added many spacetime-client module bindings and input types (including new delete/work_delete input types and numerous procedure/reducer files), updates to server-rs API modules (bark_battle, jump_hop, wooden_fish, auth, module-runtime and shared contracts), and fixes in module-runtime behavior and domain logic. Frontend changes include new/updated components and tests (creative audio helpers, bark-battle/jump-hop/wooden-fish clients and views, unified generation pages, RPG entry views, and runtime shells), plus CSS and service updates. Documentation and operational notes updated (.hermes pitfalls and multiple PRD/docs) to cover daily-task refresh, banner asset fallback, recommend-key bug, and other platform behaviors. Tests and verification steps added/updated alongside these changes.
2026-06-04 22:44:19 +08:00
wuxiangwanzi 0c7fc0b26f fix: 提升拼消消素材生成质量门禁 2026-06-04 22:32:46 +08:00
wuxiangwanzi b9de2f2a43 Merge branch 'master' into codex/puzzle-clear-template-runtime-fixes
# Conflicts:
#	.hermes/shared-memory/decision-log.md
#	.hermes/shared-memory/project-overview.md
#	docs/【开发运维】本地开发验证与生产运维-2026-05-15.md
#	scripts/dev.test.ts
#	server-rs/crates/api-server/src/creation_entry_config.rs
#	server-rs/crates/api-server/src/wooden_fish.rs
#	server-rs/crates/module-auth/src/lib.rs
#	server-rs/crates/spacetime-client/src/wooden_fish.rs
#	server-rs/crates/spacetime-module/src/auth/procedures.rs
#	src/components/custom-world-home/creationWorkShelf.ts
#	src/components/platform-entry/PlatformEntryFlowShellImpl.tsx
#	src/components/rpg-entry/rpgEntryWorldPresentation.ts
#	src/services/miniGameDraftGenerationProgress.test.ts
#	src/services/miniGameDraftGenerationProgress.ts
2026-06-04 11:24:14 +08:00
wuxiangwanzi 1b5e098225 feat: add puzzle clear template runtime 2026-06-03 22:11:46 +08:00