修复抠图幂等重放与动画轮询结果契约不一致 #676

Merged
lhk229 merged 4 commits from fix/495 into master 2026-10-07 21:48:48 +08:00
Member

修复 #495 的抠图幂等重放误报 409,并统一动画轮询精简结果的文档与测试。

抠图同一请求、同一幂等键重试时,旧读取路径把完整任务转换为摘要兼容快照,丢失 dedupe_key 和原始请求指纹,导致身份校验误判。本次按任务主键和账号读取原始记录,保留同键不同参数返回 409 与跨账号隔离。

动画轮询维持现有精简结果:顶层 frames / durationSeconds 提供有序帧与秒级时长,resource / asset 只提供精简引用;完整 imageSequenceFrames / imageSequenceDurationMs 从项目或素材库读取。删除未被接口引用的旧响应定义,修正 Skill 和 Python 自测,并补充真实精简函数的回归测试。动画生成与持久化行为、数据库 schema 和公开接口行为均未调整。

验证:

  • SpacetimeDB release WASM 构建通过;隔离运行时 smoke 验证 pending、running、completed 的身份保留、同键重放及跨账号拒绝,不调用 Provider。
  • 抠图相关 Rust 测试 7 项、smoke 脚本测试 4 项通过。
  • 动画精简、正式序列字段、OpenAPI 和 Skill 打包 Rust 测试共 16 项通过;Python helper 自测和 Skill 校验通过。
  • OpenAPI JSON 解析及 264 个本地引用解析通过;编码、文档索引、SpacetimeDB runtime access、Rust 格式和 diff 检查通过。
  • 全文件 Prettier 检查仍有原有支付等段落的格式问题,未扩大修改范围。

未进行真实 Provider 生成、完整 HTTP 联调或线上部署验证。

Closes #495

修复 #495 的抠图幂等重放误报 409,并统一动画轮询精简结果的文档与测试。 抠图同一请求、同一幂等键重试时,旧读取路径把完整任务转换为摘要兼容快照,丢失 dedupe_key 和原始请求指纹,导致身份校验误判。本次按任务主键和账号读取原始记录,保留同键不同参数返回 409 与跨账号隔离。 动画轮询维持现有精简结果:顶层 frames / durationSeconds 提供有序帧与秒级时长,resource / asset 只提供精简引用;完整 imageSequenceFrames / imageSequenceDurationMs 从项目或素材库读取。删除未被接口引用的旧响应定义,修正 Skill 和 Python 自测,并补充真实精简函数的回归测试。动画生成与持久化行为、数据库 schema 和公开接口行为均未调整。 验证: - SpacetimeDB release WASM 构建通过;隔离运行时 smoke 验证 pending、running、completed 的身份保留、同键重放及跨账号拒绝,不调用 Provider。 - 抠图相关 Rust 测试 7 项、smoke 脚本测试 4 项通过。 - 动画精简、正式序列字段、OpenAPI 和 Skill 打包 Rust 测试共 16 项通过;Python helper 自测和 Skill 校验通过。 - OpenAPI JSON 解析及 264 个本地引用解析通过;编码、文档索引、SpacetimeDB runtime access、Rust 格式和 diff 检查通过。 - 全文件 Prettier 检查仍有原有支付等段落的格式问题,未扩大修改范围。 未进行真实 Provider 生成、完整 HTTP 联调或线上部署验证。 Closes #495
lhk229 added 2 commits 2026-10-07 21:39:00 +08:00
按主键和账号读取原始生成任务,保留幂等键与请求指纹
保留同键不同参数冲突校验和跨账号隔离
补充隔离数据库中三个任务状态的读取与重放回归
同步外部生成读取契约和项目排障记忆
关联 #495 第一项
修正动画轮询精简结果的文档与测试
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust crates (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / AI game creator shell web tests (pull_request) Has been cancelled
a948722d1a
删除未被接口引用的旧动画生成响应定义
明确顶层帧与秒级时长及正式序列记录读取路径
修正 Python 自测并补充动画精简结果回归
同步外部生成方案与共享排障记忆
关联 #495 第二项
lhk229 added 1 commit 2026-10-07 21:39:51 +08:00
merge latest master
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / AI game creator shell web tests (pull_request) Has been cancelled
Project CI / AI game creator shell Rust crates (pull_request) Has been cancelled
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Has been cancelled
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Has been cancelled
47b517fe27
lhk229 added 1 commit 2026-10-07 21:46:29 +08:00
Merge branch 'master' into fix/495
Project CI / AI game creator shell Rust crates (pull_request) Successful in 5m55s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 7m32s
Project CI / Native shell tests (pull_request) Failing after 2m20s
Project CI / Backend tests (pull_request) Successful in 8m8s
Project CI / Frontend tests (pull_request) Successful in 2m8s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Failing after 10m2s
Project CI / AI game creator shell web tests (pull_request) Failing after 59s
Project CI / Repository checks (pull_request) Successful in 7m10s
69585deabd
lhk229 merged commit 5eab1660aa into master 2026-10-07 21:48:48 +08:00
lhk229 deleted branch fix/495 2026-10-07 21:48:48 +08:00
Sign in to join this conversation.