geometry_quality 预检只拒绝 detailed,standard 按不传处理
- validate_generation_options 对非 v3.1 / v3.0 家族只在取值 detailed 时拒绝, 与 quad / smart_low_poly / generate_parts「只拒绝启用值」的处理对称 - 新增 wire_geometry_quality:不支持的家族把 standard 收敛成不发(等价于 provider 默认档), 三个 endpoint 的请求映射都过这一层,避免 provider 因「不支持该字段」整单拒绝 - 新增两组表驱动用例:非 v3 家族 standard 放行 / detailed 拒绝,以及映射层的收敛结果 - 同步技术方案:写明「预检只拒绝启用值」与映射层收敛 standard 的口径
This commit is contained in:
@@ -66,7 +66,8 @@ canvasCompletion? 画布占位框回填,只在项目资源落点下生效
|
||||
|
||||
**归一在预检之前完成并写回请求**:项目 ID 与素材夹 ID 都 trim,`project` / 旧 `folder-*` 走与图片画布同一个 `normalize_generated_asset_folder_id` 映射到当前 owner 的默认素材夹,素材名走同一个 `resolve_editor_generated_asset_label`(trim + 截断 + 缺省「3D 模型」)。入队的就是归一后的请求,因此预检值 = 队列载荷 = 落库值;模块侧落库原有的 `normalize_editor_generation_default_asset_folders` 继续兜底老队列载荷里的 `project`。
|
||||
|
||||
**定价相关参数在 API 层做组合校验**:`texture`、`quad`、`smartLowPoly`、`generateParts` 必须显式给出;`geometryQuality` 与 `textureQuality` 允许缺省,缺省按 `standard` 计价 —— provider 对 v2.5 不支持 `geometry_quality`、并拒绝任何 `texture_quality`,v3.x 的缺省档也是 `standard`,两边同价,因此只有显式 `detailed` / `extreme` 才命中 `hdGeometry` / `hdTexture` / `ultraTexture` 加价(把这两个字段写死必填只会让定价表里已有的 v2.5 / P1 / P2 永远不可达,或让 `texture=true` 的 v2.5 无论填什么都被 provider 预检拒绝)。`texture=false` 时禁止出现 `textureQuality`,且 `pbr` 必须显式 `false`。其余会改价的参数仍必须显式给出:provider 的隐式默认值会直接改变价格,一旦依赖默认值,报价与扣费会在“调用方少传字段”时分叉。
|
||||
**定价相关参数在 API 层做组合校验**:`texture`、`quad`、`smartLowPoly`、`generateParts` 必须显式给出;`geometryQuality` 与 `textureQuality` 允许缺省,缺省按 `standard` 计价 —— provider 对 v2.5 不支持 `geometry_quality`、并拒绝任何 `texture_quality`,v3.x 的缺省档也是 `standard`,两边同价,因此只有显式 `detailed` / `extreme` 才命中 `hdGeometry` / `hdTexture` / `ultraTexture` 加价(把这两个字段写死必填只会让定价表里已有的 v2.5 / P1 / P2 永远不可达,或让 `texture=true` 的 v2.5 无论填什么都被 provider 预检拒绝)。`texture=false` 时禁止出现 `textureQuality`,且 `pbr` 必须显式 `false`。**provider 预检只拒绝会启用能力的取值**:`geometry_quality` 对非 v3.1 / v3.0 家族只在取值 `detailed` 时拒绝,`standard` 放行;并且 `platform-tripo` 的请求映射会把「不支持的家族 + standard」收敛成「不发该字段」——不支持的家族传 `standard` 与不传等价(provider 默认档就是它,定价也同价),发出去只会换来「不支持该字段」的整单拒绝。
|
||||
其余会改价的参数仍必须显式给出:provider 的隐式默认值会直接改变价格,一旦依赖默认值,报价与扣费会在“调用方少传字段”时分叉。
|
||||
|
||||
两个 submit 都必须携带 `Idempotency-Key`,复用现有头部校验;缺失或格式非法直接 400,不静默生成键。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user