k88936
10e63ecb6b
合并 origin/master 到 feat/tribo3d-integeration:ts-rs 一律常开、Cargo 清单去重
...
- server-rs/Cargo.toml:删除与 workspace git 固定重复的 registry `ts-rs = "12.0.1"`,保留固定 commit 并写明「ts-rs 一律常开、绑定命令固定为 cargo test -p shared-contracts export_bindings」
- server-rs/crates/shared-contracts/Cargo.toml:删除 master 侧新增的 `ts-bindings` feature,`ts-rs` 保持常开依赖
- server-rs/crates/shared-contracts/src/game_creation_app/asset_kind.rs:去掉 `cfg_attr(feature = "ts-bindings", …)` 门控,derive 与字段级 `ts(...)` 无条件展开
- apps/ai-game-creator-shell/src-tauri/Cargo.toml:shared-contracts 依赖去掉 `features = ["ts-bindings"]`,继续保留本分支的 ts-rs git 固定
- apps/ai-game-creator-shell/src-tauri/Cargo.lock:按上述依赖变更同步(shared-contracts 指向 git 源 ts-rs)
- docs:同步 5 处绑定生成命令(去掉 `--features ts-bindings`),并在 decision-log 记本次合并的决策、代价与验证
- 其余暂存改动为 origin/master 带入的内容,冲突按两侧目的逐一合并
验证:cargo metadata --locked(server-rs 与 AGC 两个 workspace)、cargo test -p shared-contracts(119 + 5 + 5 + 2 + 2 全绿且无告警)、npm run contracts:model3d:generate 后 packages/shared 零 diff、cargo check -p spacetime-module --target wasm32-unknown-unknown、npm run check:encoding、npm run check:rustfmt、npm run check:spacetime-schema、git diff --check、暂存集 eslint / prettier 全过
2026-09-22 13:12:28 +08:00
k88936
dd8f48bad9
新增api-server Tripo3D提交路由与入队
...
- tripo3d 目录按 job 身份、provider 配置、错误映射、入队与路由拆分小文件
- 两个内部路由要求 Bearer 与 Idempotency-Key,顺序固定为解析、组合校验、查价、入队
- 入队复用编辑器生成队列的幂等 dedupe key,同键同请求返回原 operation,同键不同请求 409
- Tripo job 走既有 editor-canvas 来源与单次尝试口径,不新建队列、不新增状态
- 提交响应返回 operation、job kind 与既有任务查询状态地址,不暴露 provider 信息
- 补齐 ExternalGenerationJobRecord 测试夹具新增的 checkpoint 字段
2026-09-21 13:46:41 +08:00
kdletters
429f991bde
回滚误入 master 的游戏分发 WIP(夹带在 OSS v1 签名提交里)
...
Project CI / AI game creator shell Rust shard 2/4 (push) Failing after 19s
Project CI / AI game creator shell Rust shard 3/4 (push) Failing after 20s
Project CI / AI game creator shell Rust shard 1/4 (push) Failing after 20s
Project CI / AI game creator shell Rust shard 4/4 (push) Failing after 20s
Project CI / Backend tests (push) Failing after 17s
Project CI / AI game creator shell Rust crates (push) Failing after 17s
Project CI / AI game creator shell Rust smoke (push) Failing after 19s
Project CI / Native shell tests (push) Failing after 18s
Project CI / Frontend tests (push) Failing after 8s
Project CI / AI game creator shell web tests (push) Failing after 15s
Project CI / Repository checks (push) Failing after 17s
- 撤销 39aed2e48 夹带的游戏分发前后端、SpacetimeDB 绑定、主站路由、后台审核页、文档与 nginx 改动,master 恢复可编译状态
- 保留该提交自身的 AGC 发号改动:agc-global-version.mjs 与其参数构造单测
- 恢复被误删的 output 产物,避免把无关清理混进该提交
- 补回两篇技术文档在 docs/README.md 的索引(它们属于后续两个补提交文档,不属于游戏分发)
- 游戏分发完整实现保留在 codex/game-distribution 分支继续开发
2026-09-20 20:52:24 +08:00
kdletters
39aed2e486
OSS 写入显式使用 v1 签名
...
Project CI / AI game creator shell Rust shard 1/4 (push) Failing after 18s
Project CI / AI game creator shell Rust shard 4/4 (push) Failing after 18s
Project CI / AI game creator shell Rust shard 2/4 (push) Failing after 19s
Project CI / AI game creator shell Rust shard 3/4 (push) Failing after 19s
Project CI / AI game creator shell Rust crates (push) Failing after 18s
Project CI / Native shell tests (push) Failing after 18s
Project CI / Backend tests (push) Failing after 18s
Project CI / AI game creator shell Rust smoke (push) Failing after 19s
Project CI / Frontend tests (push) Failing after 7s
Project CI / AI game creator shell web tests (push) Failing after 11s
Project CI / Repository checks (push) Failing after 11s
ossutil v2 默认 v4 签名,缺 region 会直接失败\n总号写入与回读统一走 buildOssutilArgs,默认 --sign-version v1,可切 v4 并配合 AGC_OSS_REGION\n补充参数构造单测
2026-09-20 18:33:02 +08:00
kdletters
623e007fae
完善客户端发布渠道并接入模板库灰度
...
Project CI / AI game creator shell Rust shard 2/4 (push) Successful in 7m36s
Project CI / AI game creator shell Rust shard 3/4 (push) Successful in 7m37s
Project CI / AI game creator shell Rust shard 4/4 (push) Successful in 7m42s
Project CI / AI game creator shell Rust shard 1/4 (push) Successful in 7m51s
Project CI / AI game creator shell Rust smoke (push) Successful in 1m55s
Project CI / AI game creator shell Rust crates (push) Successful in 4m15s
Project CI / Repository checks (push) Successful in 4m45s
Project CI / Frontend tests (push) Successful in 7m47s
Project CI / Native shell tests (push) Successful in 9m33s
Project CI / Backend tests (push) Successful in 10m9s
Project CI / AI game creator shell web tests (push) Successful in 4m38s
区分发布渠道与系统,支持 dev、release 和自定义渠道
允许网站通过服务端配置选择客户端下载检测渠道
接入模板库灰度权限并阻断退出和切号后的异步操作
补齐发布、下载、灰度与会话竞态测试及当前规范
2026-09-20 12:12:49 +08:00
kdletters
e3682fd06f
固定客户端dev服务并支持官网多平台下载
...
Project CI / AI game creator shell Rust shard 4/4 (push) Successful in 7m31s
Project CI / AI game creator shell Rust shard 1/4 (push) Successful in 7m32s
Project CI / AI game creator shell Rust shard 3/4 (push) Successful in 7m33s
Project CI / AI game creator shell Rust shard 2/4 (push) Successful in 7m40s
Project CI / AI game creator shell Rust smoke (push) Successful in 2m21s
Project CI / AI game creator shell Rust crates (push) Successful in 3m11s
Project CI / Native shell tests (push) Successful in 16m15s
Project CI / Frontend tests (push) Successful in 14m57s
Project CI / Repository checks (push) Successful in 14m48s
Project CI / Backend tests (push) Successful in 20m7s
Project CI / AI game creator shell web tests (push) Successful in 6m20s
移除服务器选择并按来源隔离登录凭据
新增官网客户端下载入口和匿名平台聚合接口
根据发布清单自动展示Windows与macOS首装包
补齐Mac首装元数据和上传顺序校验
同步定向测试与下载发布规范
2026-09-19 16:19:28 +08:00
kdletters
5bf036bb81
收敛后端依赖装配与鉴权并完善异步追踪 ( #425 )
...
Project CI / AI game creator shell Rust shard 4/4 (push) Has been cancelled
Project CI / AI game creator shell Rust shard 3/4 (push) Has been cancelled
Project CI / AI game creator shell Rust shard 2/4 (push) Has been cancelled
Project CI / AI game creator shell Rust smoke (push) Has been cancelled
Project CI / AI game creator shell Rust crates (push) Has been cancelled
Project CI / Backend tests (push) Has been cancelled
Project CI / Native shell tests (push) Has been cancelled
Project CI / Frontend tests (push) Has been cancelled
Project CI / Repository checks (push) Has been cancelled
Project CI / AI game creator shell web tests (push) Has been cancelled
Project CI / AI game creator shell Rust shard 1/4 (push) Has been cancelled
HTTP 请求取消后,在途计数原先无法释放;项目元数据和 External API 鉴权依赖完整 AppState,相同鉴权和追踪配置也散落在多个入口。本次集中装配这些依赖和横切能力,保持现有公开 API、权限、计费、幂等和事务规则。
## 修改
- 91 个受保护路由集中应用鉴权;保留方法级 404/405/HEAD/Allow、公开入口、MCP、精选缓存头及 2/4 MiB 请求限制。
- 七个项目元数据入口改用缓存的 EditorProjectState,External/MCP 鉴权改用 ExternalApiAuthState;生产实现复用 SpacetimeClient,媒体修复维持原有上传和登记顺序。
- RAII 覆盖请求 Future 取消和 panic unwind 的计数清理;正常与降级服务复用 TraceLayer,指标采用 MatchedPath 模板及固定兜底。
- LLM 普通与流式调用增加跳过参数的异步 span,保持父上下文、流式回调、错误与重试行为;补充替代依赖测试并同步锁文件和文档。
## 验证
| 验证面 | 结果 |
| --- | --- |
| platform-llm 完整本地回归 | 161 个单元测试、3 个集成测试通过;1 个真实 Provider 用例按原配置忽略 |
| api-server 完整回归 | 执行时 1075 通过、12 失败、6 忽略;其中 1 个新增公开读取 fixture 断言已修正,14 个路由契约回归随后全部通过;剩余 11 个是下述既有 Windows 失败 |
| 窄依赖、取消与追踪 | 元数据 owner/幂等/revision、鉴权及 MCP 错误传播、取消/panic/流式响应、追踪父子关系与敏感参数省略均通过 |
| 实际本地服务 | 独立 SpacetimeDB 上 102/102 检查通过,两个动态项目 ID 的路由模板及请求 ID 日志核验 3/3 通过 |
| 编译与边界 | api-server cargo check、AGC 锁文件下 platform-llm cargo check、rustfmt、编码、文档索引、DDD 与 diff 检查通过 |
| 合入最新 master 后 | 后端源码及锁文件保持已测内容;再次通过 14 个路由契约测试、3 个 Provider 追踪测试及编码/文档/DDD/diff 检查 |
实际服务检查覆盖 health/ready、两账号登录、项目 CRUD、幂等重复、跨 owner 拒绝、revision 冲突、External/MCP 读取、Key 撤销及 404/405。使用既有 test 环境的本地 Router 拒绝 fixture,未调用真实付费 Provider;自建服务已关闭,原开发实例保留。
## 已知测试限制
API 全量测试尚未全绿:11 个 wallet_refund_outbox 用例在 Windows 的目录同步处失败。其生产文件与变更前内容一致;标准库隔离复现确认 File::open(目录) 返回 OS 5,而普通文件写入、同步及 hard_link 正常。这个已有的目录持久化问题未混入本次重构,也未通过跳过或弱化相关断言掩盖。
---------
Co-authored-by: kdletters <61648117+kdletters@users.noreply.github.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/425
2026-09-19 12:29:19 +08:00
kdletters
1a7abfd059
AGC 项目定时快照上传(目标 OSS agc-dev) ( #400 )
...
Project CI / AI game creator shell Rust shard 4/4 (push) Has been cancelled
Project CI / AI game creator shell Rust smoke (push) Has been cancelled
Project CI / AI game creator shell Rust crates (push) Has been cancelled
Project CI / Backend tests (push) Has been cancelled
Project CI / Native shell tests (push) Has been cancelled
Project CI / Frontend tests (push) Has been cancelled
Project CI / Repository checks (push) Has been cancelled
Project CI / AI game creator shell web tests (push) Has been cancelled
Project CI / AI game creator shell Rust shard 1/4 (push) Has been cancelled
Project CI / AI game creator shell Rust shard 2/4 (push) Has been cancelled
Project CI / AI game creator shell Rust shard 3/4 (push) Has been cancelled
## 交付内容
- 客户端新增 `project_snapshot` 模块:项目扫描与排除口径、增量索引、差异对比、上传编排、状态查询。
- 触发:工作区窗口存活期间的周期定时器 + 工作区窗口关闭(`CloseRequested`);应用退出只在有界预算内等待在途同步收尾,不重复发起。
- 服务端新增两条登录态路由 `POST /api/agc/project-snapshots/files` 与 `/manifest`,由 api-server 用服务端凭据写入私有前缀 `agc/project-snapshots/v1/{user}/{project}/`;客户端不持有 OSS 凭据、不直连 OSS。
- `platform-oss` 新增内部对象精确写入与探测、项目快照对象键构造;修复 `head_internal_object` 读 HEAD 响应长度恒为 0(会导致服务端"已存在即跳过"永不生效)。
- `shared-contracts` 新增 `agc_project_snapshots` DTO 与项目 ID、相对路径、摘要校验。
- 真实 OSS 存储层冒烟示例 + 客户端真实链路冒烟用例(`#[ignore]`,env 驱动)。
- 登记 `check-config.mjs` 的 native-only 命令白名单,恢复 `npm run agc` 可启动。
## 验证证据
- 存储层:`cargo run -p platform-oss --example agc_project_snapshot_live_smoke` 对真实 `agc-dev` 完成写入 → 读回(contentLength 32)→ 清单写入 → 探针清理。
- HTTP 层:登录态下 7 项校验(401 无 token、400 路径穿越/长度不一致/非法摘要/空正文/重复路径清单)全部符合预期且不写对象。
- 客户端链路(真实项目 gameagent-033b6cf3…):第一次 `synced uploaded=6 uploadedBytes=36694 remoteSkipped=6`,紧接着第二次 `no-op uploaded=0`。
- GUI 触发:`trigger=periodic ... uploaded=6`;把周期设为 600 秒排除干扰、改一个文件后关窗得到 `trigger=project-close ... revision=2 uploaded=1`,索引摘要由 `28d837cd84f8ab62` 推进到 `bff34e2e336d901f`(同步在进程退出前完成)。
- 门禁:AGC `project_snapshot` 14 passed(+1 ignored live)、api-server `project_snapshots` 3 passed、platform-oss 39 passed、shared-contracts 87 passed、`cargo fmt --check`(两处)、`check:encoding`、`check:doc-index`、`git diff --check`、`check-config.mjs` 全部通过。
## 已知未决(不阻塞本里程碑)
- 远端对象只增不减:没有删除路径,也没有 bucket 生命周期规则;要收口需要先定保留语义(清单引用 GC 还是 OSS 生命周期)。
- 部署环境需确认 `GENARRATIVE_AGC_PROJECT_SNAPSHOT_OSS_*` 或回退的 `ALIYUN_OSS_*` 具备目标 bucket 私有前缀的 `PutObject` 权限;未配置时接口返回 503、客户端失败关闭(不推进索引)。
- 缺少按用户/项目的配额与限流(error_reports 有每小时提交上限的先例,本功能没有)。
- 没有界面入口与状态可见性:`read_local_project_snapshot_state` 已注册但未接 UI,失败只写本机日志。
## 不做
- 不做云端下载/恢复、跨设备合并、版本回滚。
- 不改 `/api/external/v1` 与 External OpenAPI,不新增 SpacetimeDB 表。
---------
Co-authored-by: kdletters <61648117+kdletters@users.noreply.github.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/400
2026-09-17 18:34:51 +08:00
kdletters
479120d368
修复刷新轮换竞争被放大成登出
...
- refresh 接口的轮换失败不再下发清空 refresh cookie 的响应,避免删掉并发请求刚写入的有效 cookie
- 缺少 refresh cookie 的失败保持无副作用,cookie 失效只由吊销、过期或身份变更决定
- 网站前端在刷新返回 401 时先用当前 cookie 收敛重试一次,重试仍被拒绝才判权威失效
- 网站前端只在当前鉴权代次未变化时重试刷新,避免旧账号结论污染新代次
- 更新 api-server 与前端断言,覆盖轮换竞争与收敛重试两条路径
2026-09-16 17:08:47 +08:00
k88936
4e1316e272
实现 Raw GPT Image 2 图片编辑代理
...
新增受 Bearer 保护的 /api/raw/v1/images/edit JSON 路由
按单图 image 与可选 mask 转发 GPT Image 2 参数
固定 model 与 n 并返回仅含 data[].b64_json 的响应
复用钱包计费与退款边界并补充单元测试
2026-09-08 10:36:48 +08:00
lhk229
8b4c3792c7
主站对AGC请求头做特殊处理和记录 ( #246 )
...
Project CI / Repository checks (push) Successful in 2m43s
Project CI / Frontend tests (push) Successful in 3m26s
Project CI / Backend tests (push) Successful in 6m23s
Project CI / Native shell tests (push) Successful in 20m45s
Co-authored-by: 段舒康 <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/246
Co-authored-by: Linghong <ink29535@proton.me >
Co-committed-by: Linghong <ink29535@proton.me >
2026-09-03 15:33:26 +08:00
k88936
422c8931d6
Feat/AGC错误报告 ( #240 )
...
Project CI / Repository checks (push) Successful in 2m45s
Project CI / Frontend tests (push) Successful in 3m22s
Project CI / Backend tests (push) Successful in 5m53s
Project CI / Native shell tests (push) Successful in 16m45s
实现:
在rust内存里维护错误事件队列, webview调用tauri command传入, 后台任务agent工具等直接插入
把rust , webview console的日志统一写到AppData文件夹下的(滚动保存的)日志文件.
rust对传入的错误进行筛选,脱敏, 防抖,后通知前端提醒用户.
用户提醒是一个不阻塞的小UI, 展开后可以选择错误上报, 可以附加文字描述
上传时附带最近日志, 错误堆栈等信息
元数据存在数据库, 考虑到字符串信息很难查询, 所以在api server打包成zip存在OSS.
管理页面新增错误报告的查看页面




---------
Co-authored-by: 段舒康 <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/240
Co-authored-by: 王德宇 <kvtodev@outlook.com >
Co-committed-by: 王德宇 <kvtodev@outlook.com >
2026-09-03 10:02:05 +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
k88936
e3d28c50af
修复陶泥儿精选点赞刷新状态 ( #156 )
...
Project CI / Repository checks (push) Successful in 1m12s
Project CI / Frontend tests (push) Successful in 3m25s
Project CI / Backend tests (push) Successful in 3m54s
Project CI / Native shell tests (push) Successful in 15m9s
原实现:
用户对某个精选素材点赞与否, 后端没有发送这部分数据
修复:
后端刷新精选素材列表(校验可选的auth信息, 不影响未登录状态的查看) , 根据这部分信息每个素材多查询一下用户是否点赞
---------
Co-authored-by: 段舒康 <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/156
Co-authored-by: 王德宇 <kvtodev@outlook.com >
Co-committed-by: 王德宇 <kvtodev@outlook.com >
2026-08-12 13:53:30 +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
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
8f19964e3f
加入手动完美像素入口;像素艺术勾选时自动补提示词约束 ( #124 )
...
Project CI / Repository checks (push) Successful in 1m0s
Project CI / Backend tests (push) Successful in 3m52s
Project CI / Native shell tests (push) Successful in 13m8s
Project CI / Frontend tests (push) Successful in 2m43s
Co-authored-by: 段舒康 <kdletters@qq.com >
Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/124
Reviewed-by: 段舒康 <kdletters@qq.com >
Co-authored-by: Linghong <ink29535@proton.me >
Co-committed-by: Linghong <ink29535@proton.me >
2026-08-05 21:28:40 +08: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:

and failed
after:



* 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