feat: add oss direct upload adapter
This commit is contained in:
@@ -39,6 +39,7 @@
|
||||
|
||||
1. `editor` 挂载面在历史系统中真实存在,但已被确认为遗留无用能力。
|
||||
2. `editor` 仅保留为历史基线对照,不纳入本轮 `server-rs` 重写验收。
|
||||
3. 当前执行顺序允许在 `M3 / M4 / M5` 前,先前置 `assets / OSS` 的基础设施接入,以便后续 runtime、custom world、agent 统一复用同一资产入口。
|
||||
|
||||
当前后端内部模块也不能“凭感觉重设计”,而要按现有职责做映射:
|
||||
|
||||
@@ -162,6 +163,11 @@ Aliyun OSS
|
||||
3. Axum 保持当前 story / custom-world-agent 的 SSE 体验。
|
||||
4. SpacetimeDB 先做后端内部真相源。
|
||||
|
||||
补充执行口径:
|
||||
|
||||
1. 虽然总体里程碑仍保留 `M6` 编号,但 `OSS` 的平台适配、浏览器直传票据与旧 `/generated-*` 路径兼容能力允许提前于 `M3 / M4 / M5` 落地。
|
||||
2. 提前落地的目标是先收口统一资产入口,不是提前把全部资产业务状态迁完。
|
||||
|
||||
第二阶段再按模块把只读页改成直接订阅 SpacetimeDB。
|
||||
|
||||
### 5.2 命令与读模型分离
|
||||
@@ -593,6 +599,25 @@ workflow-cache/{workflow_type}/{workflow_id}.json
|
||||
- content-length-range
|
||||
- success_action_status
|
||||
|
||||
当前已落地的最小实现补充:
|
||||
|
||||
1. `server-rs/crates/platform-oss` 已提供 `PostObject` 直传签名能力。
|
||||
2. `server-rs/crates/api-server` 已暴露 `POST /api/assets/direct-upload-tickets`。
|
||||
3. 该接口当前输出:
|
||||
- `objectKey`
|
||||
- `legacyPublicPath`
|
||||
- `publicUrl`
|
||||
- `formFields`
|
||||
- `expiresAt`
|
||||
4. 当前签名链路优先兼容旧公开前缀:
|
||||
- `/generated-character-drafts/*`
|
||||
- `/generated-characters/*`
|
||||
- `/generated-animations/*`
|
||||
- `/generated-custom-world-scenes/*`
|
||||
- `/generated-custom-world-covers/*`
|
||||
- `/generated-qwen-sprites/*`
|
||||
5. `STS`、服务端上传 helper、对象确认与业务绑定仍在后续阶段补齐。
|
||||
|
||||
## 11.3 元数据与标签
|
||||
|
||||
建议所有业务对象写入统一元数据:
|
||||
|
||||
Reference in New Issue
Block a user