docs(contract): §5 修正贴纸 src 措辞矛盾 + 补 DIY 修正实现注记
- 引用块原写「禁止 wxfile://」与 design-data-contract-v1 约束#1/决策#4 (R2 允许暂存本地图,R4 派单前持久化回写)矛盾,按冻结决策对齐 - 新增实现补充:stickers[].width/height 语义 = 画布显示像素(DIY 修正, 非契约变更,不升版本) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -176,14 +176,21 @@
|
||||
|
||||
> **designData 结构遵循 `wechat_wc/docs/design-data-contract-v1.md`(R2/R4 冻结契约)。**
|
||||
> 该契约保证 R4 下单后能据此构造 `.wcd` 投递到词云平台。要点:
|
||||
> 贴纸图 `src` 必须为 COS 持久 URL(禁止 `wxfile://`/`tmp`)、保留 `wordcloud` 分组、
|
||||
> 保留 `category.mask`;后端该 JSON 白名单须放行 `version/background/wordcloud/rotation/zIndex`。
|
||||
> 贴纸图 `src` 在**派单前**必须为 COS 持久 URL;R2 保存/更新清单时允许暂存
|
||||
> `wxfile://`/`tmp` 本地路径,由 R4 在下单/派单前上传 COS 并回写
|
||||
> (design-data-contract-v1.md 约束#1、决策#4,2026-08-12 冻结);
|
||||
> 保留 `wordcloud` 分组、保留 `category.mask`;后端该 JSON 白名单须放行
|
||||
> `version/background/wordcloud/rotation/zIndex`。
|
||||
>`items` 为服务端 JSON,需做结构白名单与大小校验(单条 ≤ 1MB)。
|
||||
>
|
||||
> **实现补充(R2,非契约变更)**:服务端 JSON body 传输上限为 **2MB**(`main.ts`,Nest 默认 100KB
|
||||
> 会使 1MB 业务限制不可达)。三层边界:≤1MB 正常受理;1MB~2MB 由 design-list service 返回
|
||||
> 400「单条设计数据超过 1MB 上限」;>2MB 返回 413「请求体过大」。文件上传(R4 multipart)
|
||||
> 不走此限制,沿用各模块独立校验(如底图 ≤10MB)。
|
||||
>
|
||||
> **实现补充(DIY 修正,非契约变更)**:`stickers[].width/height` 语义为「画布显示像素」
|
||||
> (画布坐标空间 = `category.mask` 尺寸),渲染、碰撞检测、WCD 打包三方按同一语义消费;
|
||||
> 历史数据中的原始像素值由读取端按 mask 归一化兼容。详见 design-data-contract-v1.md 注记。
|
||||
|
||||
### PATCH /api/design-list/:id
|
||||
|
||||
|
||||
Reference in New Issue
Block a user