 lhmin0604andClaude
|
854ea103a9
|
docs(contract): §5 补记 GET /api/design-list/:id(后端已实现,R3 fetchDesign 消费)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-09-16 20:11:09 +08:00 |
|
lai_hong
|
59e398fcf9
|
feat(catalog): add product catalog APIs
|
2026-09-13 11:17:53 +08:00 |
|
 lhmin0604andClaude
|
2445aef666
|
docs(contract): 实现注记补充 x/y 允许超出画布边界(同步前端钳制撤销决策)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-09-12 20:10:31 +08:00 |
|
 lhmin0604andClaude
|
93f7473ad7
|
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>
|
2026-09-12 18:54:12 +08:00 |
|
 lhmin0604andClaude
|
0a3c8e834d
|
feat(r2): 地址与设计清单完整 CRUD(事务/归属校验/状态机)
addresses:
- 补 PATCH /:id、DELETE /:id(契约 §4 全路由齐备)
- 默认地址唯一性事务:create/update/setDefault 先清旧默认再写入
- 首个地址自动设为默认;删除默认地址事务内补偿最新一条
- 归属校验统一:不存在 404,非本人 403
design-list:
- 补 PATCH /:id、DELETE /:id、POST /batch-delete(宽松语义返回 deleted 数)
- items 强制恰好 1 个元素(一条设计=一条清单,阶段0 决策#1)
- designData 白名单 7 键放行、单条 ≤1MB 校验(400)
- 单向状态机 DRAFT→SUBMITTED→PROCESSING→DONE,回退/跳级 400
- PATCH 部分更新语义,不传 items 不清 designData(R4 wordcloud 保护)
infra:
- main.ts: JSON body 上限 100KB→2MB,使契约 1MB 设计数据可达(>2MB 返回 413)
- exceptions filter: body-parser entity.too.large 映射 413
- api-contract-v1.md §5 补实现说明(非契约变更)
验证:nest build 通过;本地 3091 实例 + mock 登录实测 35 项全过
(CRUD/默认地址补偿/越权 403/404/状态机/1MB 边界/413/未登录 401)
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-09-12 02:37:53 +08:00 |
|
broccoli
|
08bdea2625
|
docs: 冻结 wordcloud WCD 契约(v1.1)与 designData 生产字段
|
2026-08-12 19:08:26 +08:00 |
|
broccoli
|
d39c619c41
|
docs: add API and wordcloud contract v1
|
2026-08-10 02:08:50 +08:00 |
|