diff --git a/docs/project-memory/plans/【实施计划】Tripo生成Worker执行链路与API路由-2026-09-21.md b/docs/project-memory/plans/【实施计划】Tripo生成Worker执行链路与API路由-2026-09-21.md index e124de920..e56bbdd22 100644 --- a/docs/project-memory/plans/【实施计划】Tripo生成Worker执行链路与API路由-2026-09-21.md +++ b/docs/project-memory/plans/【实施计划】Tripo生成Worker执行链路与API路由-2026-09-21.md @@ -75,6 +75,7 @@ Milestone Spec: `docs/project-memory/plans/【里程碑】Tripo生成Worker执 - 默认配置里的 `model3d` 泥点定价数值仍未确认,缺段时提交按 fail closed 拒绝。 - worker 的纯逻辑部分已补定向用例:checkpoint 只在 provider task id 非空时才算存在、完成结果按端点严格区分且不含 provider 事实、预览图尺寸必须能真实解码;全量 `cargo test -p api-server` 1092 通过。 +- `npm run check:spacetime-schema` 通过(144 张表,锚点 `6f161a6b3626588a197208ea6dd68316815c01b5`),`external_generation_job` 的 provider checkpoint 追加字段没有破坏 schema guard。 - 没有跑过端到端真实调用(提交 → worker → OSS → 资源登记),现有证据只到上述单元与应用级用例,缺少真实 provider 与 SpacetimeDB / OSS 的联调证据。 - 新增的 `tripo3d/` 文件里,`storage.rs` 的完整字节写入、`artifacts.rs` 的完整字节读取都留着流式 TODO。 diff --git a/docs/【编辑器】模型定价配置管理方案-2026-06-22.md b/docs/【编辑器】模型定价配置管理方案-2026-06-22.md index 671196db6..69ca109ff 100644 --- a/docs/【编辑器】模型定价配置管理方案-2026-06-22.md +++ b/docs/【编辑器】模型定价配置管理方案-2026-06-22.md @@ -14,6 +14,26 @@ ## 配置结构 +### 3D 生成定价(`model3d` 段,2026-09-21 增补) + +Tripo 3D 生成的计费形态是「底价 + 可叠加 add-on」,现有「模型 → 档位 → 单价」的 `models` 记录形状表达不了,因此在同一份定价文件里新增并列的 `model3d` 段,形状与 `models` 无关: + +```json +"model3d": { + "basePrices": { + "text-to-model": { "": { "noTexture": 泥点, "texture": 泥点 } }, + "image-to-model": { "": { "noTexture": 泥点, "texture": 泥点 } } + }, + "addOnPrices": { "hdTexture": 泥点, "ultraTexture": 泥点, "hdGeometry": 泥点, "quadMesh": 泥点, "smartLowPoly": 泥点, "generateParts": 泥点 } +} +``` + +- 事实源仍是同一份文件配置(默认 JSON 与旧 override 种子),但**不写入 SpacetimeDB `models` 记录**:`editor_generation_pricing_to_records` 只序列化 `models`,运行时读取时由 `editor_generation_pricing_from_record` 用本地文件配置补回 `model3d`。因此后台「模型定价」页面改价**不会覆盖** 3D 段,改 3D 价格必须改文件并重启进程。 +- `model3d` 段存在时按强校验解析:两个端点 × 契约支持的全部模型版本都必须给出 `noTexture` / `texture` 两个底价键,缺键即启动失败;段缺失则 3D 提交一律 fail closed,不扣费也不调用 provider。 +- 泥点数值是产品定价,不是 provider 的 credit 数值;未确认前保持段缺失,禁止写入猜测值或用 provider 计费数字顶替。 +- 后续把 `models` 记录形状扩展成能表达「端点 × 模型版本 × 是否有贴图 + add-on」后,再把 3D 段迁入 SpacetimeDB 并接后台编辑,届时删除本节的例外说明。 +- 关联规范:[技术方案 Tripo 3D生成API集成](technical/【技术方案】Tripo 3D生成API集成-2026-09-21.md)、[后端架构 server-rs与SpacetimeDB数据契约](【后端架构】server-rs与SpacetimeDB数据契约-2026-05-15.md)。 + 定价只按模型区分,不按用途区分。同一个模型用于多个入口时必须读取同一条模型配置: - `gpt-image-2` 同时用于普通图片、规范、UI 设计等图片类入口。