3D 产物 content type 只认字节或槽位白名单,去掉兜底
- 删除 fallback_extension 与「未知声明原样放行 + 扩展名兜底」的归一逻辑 - 槽位白名单收敛为唯一映射表(content type ↔ 对象键扩展名),跨槽位类型返回 None - resolve_artifact_content_type 改为返回 Result:字节认不出且声明不在白名单时按 502 失败, 不再把 text/plain 之类的声明连同拼出来的 .glb 扩展名落进 OSS 与 asset_object - 错误体只回显截断到 64 字符的声明值,避免把任意长度的 provider 文本带进响应 - 重写 storage 测试:新增白名单外声明、跨槽位类型与字节认不出三类用例 - 同步技术方案:说明白名单范围与「不做任何兜底」的口径
This commit is contained in:
@@ -7,13 +7,13 @@ import type { Model3dImageToModelParams } from './Model3dImageToModelParams';
|
||||
* image-to-model API 请求:站内图片引用 + provider 生成参数 + 平台字段。
|
||||
*
|
||||
* 结果落点与 text-to-model 同形:平坦的可选 `projectId` / `canvasCompletion` /
|
||||
* `assetFolderId` / `assetLabel`,二选一,不用 tagged enum。
|
||||
* `assetFolderId` / `assetLabel`,至少给一个,不用 tagged enum。
|
||||
*/
|
||||
export type Model3dImageToModelRequest = {
|
||||
source: Model3dGenerationSource;
|
||||
generation: Model3dImageToModelParams;
|
||||
/**
|
||||
* 项目资源落点;与 `assetFolderId` 二选一。
|
||||
* 项目资源落点;与 `assetFolderId` 至少给一个,两个都给合法。
|
||||
*/
|
||||
projectId?: string | null;
|
||||
/**
|
||||
@@ -21,7 +21,7 @@ export type Model3dImageToModelRequest = {
|
||||
*/
|
||||
canvasCompletion?: EditorCanvasGenerationCompletionPayload | null;
|
||||
/**
|
||||
* 素材库落点;与 `projectId` 二选一。
|
||||
* 素材库落点;与 `projectId` 至少给一个,两个都给合法。
|
||||
*/
|
||||
assetFolderId?: string | null;
|
||||
/**
|
||||
|
||||
@@ -10,12 +10,13 @@ import type { Model3dTextToModelParams } from './Model3dTextToModelParams';
|
||||
*
|
||||
* 结果落点与其它生成接口同形:平坦的可选 `projectId` / `canvasCompletion` /
|
||||
* `assetFolderId` / `assetLabel`,不用 tagged enum —— 客户端不必为「落项目还是落素材库」
|
||||
* 多拼一层判别结构。服务端按「二选一」校验:两个都给或都不给都拒绝。
|
||||
* 多拼一层判别结构。服务端按「至少一个落点」校验:两个都不给拒绝,两个都给合法(两条落点都落);
|
||||
* 没有 `projectId` 时结果只落素材库,与其它画布生成工具一致。
|
||||
*/
|
||||
export type Model3dTextToModelRequest = {
|
||||
generation: Model3dTextToModelParams;
|
||||
/**
|
||||
* 项目资源落点;与 `assetFolderId` 二选一。
|
||||
* 项目资源落点;与 `assetFolderId` 至少给一个,两个都给合法。
|
||||
*/
|
||||
projectId?: string | null;
|
||||
/**
|
||||
@@ -23,7 +24,7 @@ export type Model3dTextToModelRequest = {
|
||||
*/
|
||||
canvasCompletion?: EditorCanvasGenerationCompletionPayload | null;
|
||||
/**
|
||||
* 素材库落点;与 `projectId` 二选一。
|
||||
* 素材库落点;与 `projectId` 至少给一个,两个都给合法。
|
||||
*/
|
||||
assetFolderId?: string | null;
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user