收口七月卡状态回调与系列授权兼容契约
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Has been cancelled
Some checks failed
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Has been cancelled
完成运营商实名回调、业务事件观测序列与受控配置装配,同时恢复 UR43 已交付的 packages[].remove 字段及旧响应兼容,统一更新 OpenSpec、OpenAPI 和交付文档。 Constraint: 七月测试环境里程碑不新增或运行自动化测试 Rejected: 以必填 operation_type 替换 packages[].remove | 会破坏已交付前端契约 Confidence: high Scope-risk: broad Directive: 后续修改系列套餐管理接口必须保持 packages[].remove 和 ShopSeriesGrantResponse 兼容 Tested: go run ./cmd/gendocs;go build -buildvcs=false ./...;openspec validate complete-july-iteration-test-release --strict;git diff --check Not-tested: 按本 Change 约定未运行 go test,真实运营商与 Gateway 联调延期
This commit is contained in:
@@ -1019,7 +1019,7 @@
|
||||
接口约定:
|
||||
- 首次授权复用GET /api/admin/packages?series_id=...和POST /api/admin/shop-series-grants,POST必须同时提交至少一个packages项。
|
||||
- 后续管理复用GET /api/admin/packages?series_id=...与GET /api/admin/shop-series-grants/{id}。
|
||||
- PUT /api/admin/shop-series-grants/{id}/packages,body={operation_type:authorize|update_cost|remove,packages:[{package_id,cost_price?}]}。
|
||||
- PUT /api/admin/shop-series-grants/{id}/packages,body={packages:[{package_id,cost_price?,remove?}]};`remove=true` 表示软删除,必须保持既有字段兼容。
|
||||
|
||||
交互规则:三类价格按分转元;提交成功后重新加载候选列表;空候选和全部已授权状态有明确提示。
|
||||
|
||||
@@ -1037,7 +1037,7 @@
|
||||
**描述**
|
||||
|
||||
```markdown
|
||||
目标:首次授权继续同时创建系列与套餐;后续复用现有批量接口,并把新增、调价、移除拆成明确命令;不新增候选Query。
|
||||
目标:首次授权继续同时创建系列与套餐;后续复用现有批量接口并保留 `packages[].remove` 已交付契约;不新增候选Query。
|
||||
|
||||
预计工时:后端0.5~1小时。
|
||||
|
||||
@@ -1045,11 +1045,11 @@
|
||||
|
||||
首次授权:POST中的packages改为必填且至少1项,系列与套餐在同一事务全成全败,不允许空系列授权。
|
||||
|
||||
后续规则:PUT必须提交operation_type=authorize|update_cost|remove,一次只执行一种命令、最多100项、事务内全成全败;authorize同价重复幂等、不同价重复冲突,不能静默改价;所有系列、套餐、直属下级与价格边界由后端校验。
|
||||
后续规则:PUT继续提交packages数组,`remove=true` 表示软删除,其他项按当前授权状态新增或改价;最多100项、事务内全成全败。不得要求必填operation_type或改变既有响应结构;所有系列、套餐、直属下级与价格边界由后端校验。
|
||||
|
||||
读取:前端组合现有套餐列表和授权详情;已授权但当前不在普通列表中的存量项仍从详情只读展示。成本字段按操作者视角准确命名。
|
||||
|
||||
完成标准:首次授权不会产生空系列;新增、调价和移除无语义混用;重复提交不生成重复关系或静默覆盖并发价格;前后端同批切换。
|
||||
完成标准:首次授权不会产生空系列;`packages[].remove` 兼容保留;重复提交不生成重复关系;旧前端无需切换新命令字段即可继续工作。
|
||||
```
|
||||
|
||||
## UR#42 导出功能
|
||||
|
||||
Reference in New Issue
Block a user