收口七月卡状态回调与系列授权兼容契约
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:
@@ -12,7 +12,7 @@
|
||||
- [x] 0.8 `JULY-UR38` 代理主钱包信用额度|来源 `.scratch/ur38-agent-main-wallet-credit/`(10 Tickets)|状态:后端代码与测试环境切换契约完成、自动化/真实资金验证延期|主通道复杂写,辅助简单写/Query|依赖:0.1。
|
||||
- [ ] 0.9 `JULY-UR40` 下架套餐历史用户续费|来源 `.scratch/ur40-off-shelf-package-renewal/`(8 Tickets)|状态:未开始|主通道 Domain Policy,辅助 Query|依赖:0.1。
|
||||
- [ ] 0.10 `JULY-UR42` 统一导出与字段权限|来源 `.scratch/ur42-unified-export-field-permissions/PRD.md`|状态:未开始|主通道 Query/DataSource,辅助简单写 Application|依赖:0.3、0.4、0.5、0.12、0.14。
|
||||
- [ ] 0.11 `JULY-UR43` 系列套餐批量授权|来源 `.scratch/ur43-series-package-bulk-authorization/`(3 Tickets)|状态:未开始|主通道复杂写,辅助 Query|依赖:0.1。
|
||||
- [ ] 0.11 `JULY-UR43` 系列套餐批量授权|来源 `.scratch/ur43-series-package-bulk-authorization/`(3 Tickets)|状态:首次授权后端已完成,后续管理兼容契约修正待完成|主通道复杂写,辅助 Query|依赖:0.1。
|
||||
- [ ] 0.12 `JULY-UR44` 列表提交人与审批摘要|来源 `.scratch/ur44-list-submitter-approval-summary/PRD.md`|状态:未开始|主通道 Query,辅助简单写/迁移|依赖:4.6、4.11、2.10、4.W9;业务列表基础字段不依赖企微专属投影。
|
||||
- [x] 0.13 `JULY-UR45` 换货快照与新旧独立搜索|来源 `.scratch/ur45-exchange-asset-search/`(2 Tickets)|状态:后端完成、前端/人工待验收|主通道复杂写 + Query。
|
||||
- [x] 0.14 `JULY-UR46` 预计最终到期时间|来源 `.scratch/ur46-estimated-final-expiry/`(4 Tickets)|状态:后端完成、前端/人工未完成|主通道 Query|依赖 0.19 已满足。
|
||||
@@ -26,7 +26,7 @@
|
||||
- [ ] 0.22 `JULY-UR62` H5 购买与实名顺序配置|来源 `.scratch/ur62-h5-realname-order/PRD.md`|状态:未开始|主通道 Domain/Application,辅助简单写/Query|依赖:0.25。
|
||||
- [ ] 0.23 `JULY-UR73` 按运营商实名能力控制复机|来源 `.scratch/ur73-resume-realname-policy/PRD.md`|状态:未开始|主通道复杂写,辅助 Gateway/Outbox|依赖:0.25。
|
||||
- [x] 0.24 `JULY-UR86` 资产前代/后代换货链|来源 `.scratch/ur86-asset-exchange-trace/`(2 Tickets)|状态:后端完成、前端验收与历史抽样未完成|主通道 Query。
|
||||
- [ ] 0.25 `JULY-UR94` 卡状态公共写入与运营商回调|来源 `.scratch/ur94-card-state-events-callbacks/`(13 Tickets)|状态:未开始|主通道复杂写,辅助 Adapter/Query|依赖:0.1。
|
||||
- [x] 0.25 `JULY-UR94` 卡状态公共写入与运营商回调|来源 `.scratch/ur94-card-state-events-callbacks/`(13 Tickets + 新增联通实名真实样例)|状态:后端代码与测试环境装配完成、真实运营商/Gateway 验证延期|主通道复杂写,辅助 Adapter/Query|依赖:0.1。
|
||||
- [x] 0.26 `JULY-UR96` 店铺业务员归属|来源 `.scratch/ur96-shop-business-owner/`(6 Tickets)|状态:后端代码完成、验证延期|主通道简单写,辅助 Query/Port|依赖:0.1。
|
||||
- [ ] 0.27 `JULY-UR97` 钱包低余额预警|来源 `.scratch/ur97-wallet-low-balance-alert/PRD.md`|状态:未开始|主通道复杂写,辅助 Query/Outbox/Notification|依赖:0.2、0.8、0.26。
|
||||
- [ ] 0.28 `JULY-UR98` 换货新资产继承店铺|来源 `.scratch/ur98-exchange-inherit-shop/`(4 Tickets)|状态:未开始|主通道复杂写,辅助 Query/Infrastructure|依赖:0.1。
|
||||
@@ -84,20 +84,21 @@
|
||||
- [x] 2.35 映射原 UR94-03:将流量观测收口到同一公共写入用例并保持已有周期/资格语义。【主:复杂写 Domain|不迁移:套餐轮询|依赖:2.34】
|
||||
- [x] 2.36 映射原 UR94-04:将网络状态观测收口到同一用例并保持停复机业务边界。【主:复杂写 Domain|不迁移:复机资格(由 3.2 负责)|依赖:2.34】
|
||||
- [x] 2.37 映射原 UR94-05:一次性切换三个现有轮询结果写入口到公共用例,保持 PostgreSQL 配置、Redis 分片、间隔、开关和失败重排不变。【主:Application/Infrastructure|不迁移:轮询调度|依赖:2.34-2.36】
|
||||
- [ ] 2.38 映射原 UR94-06:交付同场景可合并的立即/3/5 分钟观测序列、单次请求互斥、最小间隔与 Integration Log。【主:Application|辅:Asynq/Adapter|不迁移:自动退避状态|依赖:2.34-2.36】
|
||||
- [ ] 2.39 映射原 UR94-07:在查询资产、获取实名链接等成功边界接入观测序列,不新增显式同步 API。【主:Application Adapter|不迁移:读取 Query 业务|依赖:2.38】
|
||||
- [ ] 2.40 映射原 UR94-08:在停复机、购包和套餐激活成功边界接入观测序列,仅负责触发不复制业务资格。【主:Application Adapter|不迁移:UR73/套餐规则|依赖:2.38】
|
||||
- [ ] 2.41 映射原 UR94-09:在切卡、重启等设备控制成功边界接入观测序列并解析最终卡。【主:Application Adapter|不迁移:设备控制规则|依赖:2.38】
|
||||
- [ ] 2.42 映射原 UR94-10:交付电信实名回调 Translator、19/20 位精确路由、幂等入站 Integration Log 和成功应答。【主:Infrastructure Adapter|辅:Application|依赖:2.33、2.34、2.38】
|
||||
- [ ] 2.43 映射原 UR94-11:交付移动实名成功回调的对应防腐层与公共写入接入。【主:Infrastructure Adapter|依赖:2.33、2.34、2.38】
|
||||
- [ ] 2.44 映射原 UR94-12:交付联通解除实名回调的留痕与约定成功应答,不修改本地实名状态。【主:Infrastructure Adapter|边界:Integration Log only|依赖:2.33】
|
||||
- [ ] 2.45 映射原 UR94-13 为测试环境发布检查:装配回调 Handler/路由/文档生成器、观测 Worker、Gateway Adapter 与配置,执行格式化、必要生成、构建和部署检查;真实运营商/Gateway验证转 6.4。【主:Infrastructure|依赖:2.37-2.44】
|
||||
- [x] 2.38 映射原 UR94-06:交付同场景可合并的立即/3/5 分钟观测序列、单次请求互斥、最小间隔与 Integration Log。【主:Application|辅:Asynq/Adapter|不迁移:自动退避状态|依赖:2.34-2.36】
|
||||
- [x] 2.39 映射原 UR94-07:在查询资产、获取实名链接等成功边界接入观测序列,不新增显式同步 API。【主:Application Adapter|不迁移:读取 Query 业务|依赖:2.38】
|
||||
- [x] 2.40 映射原 UR94-08:在停复机、购包和套餐激活成功边界接入观测序列,仅负责触发不复制业务资格。【主:Application Adapter|不迁移:UR73/套餐规则|依赖:2.38】
|
||||
- [x] 2.41 映射原 UR94-09:在切卡、重启等设备控制成功边界接入观测序列并解析最终卡。【主:Application Adapter|不迁移:设备控制规则|依赖:2.38】
|
||||
- [x] 2.42 映射原 UR94-10:交付电信实名回调 Translator、19/20 位精确路由、幂等入站 Integration Log 和成功应答。【主:Infrastructure Adapter|辅:Application|依赖:2.33、2.34、2.38】
|
||||
- [x] 2.43 映射原 UR94-11:交付移动实名成功回调的对应防腐层与公共写入接入。【主:Infrastructure Adapter|依赖:2.33、2.34、2.38】
|
||||
- [x] 2.44 映射原 UR94-12:交付联通解除实名回调的留痕与约定成功应答,不修改本地实名状态。【主:Infrastructure Adapter|边界:Integration Log only|依赖:2.33】
|
||||
- [x] 2.44A 根据新增来源材料 `docs/7月迭代/来源材料/realname.go` 补充联通实名成功回调:解析与解除实名一致的双层 JSON,按 19/20 位精确定位并接入公共实名观测;禁止 20 位截断、旧 `inner_callback`、第三方推送和 Gateway 二次确认。【主:Infrastructure Adapter|辅:Application|依赖:2.33、2.34、2.38】
|
||||
- [x] 2.45 映射原 UR94-13 为测试环境发布检查:通过受控 `system_config` 为电信实名、移动实名、联通实名及联通解除实名提供默认关闭的独立开关;装配四个回调 Handler/路由/文档生成器、观测 Worker、Gateway Adapter 与配置,执行格式化、必要生成、构建和部署检查;真实运营商/Gateway验证转 6.4。【主:Infrastructure|依赖:2.37-2.44A】
|
||||
|
||||
### B1-05~B1-09 独立 frontier
|
||||
|
||||
- [ ] 2.46 `JULY-UR43` 映射原 Ticket 01:首次系列授权在同一事务创建系列授权和至少一条套餐授权,复用现有套餐 Query,已授权项置灰。【主:复杂写;辅:Query|不迁移:授权模型/候选 API|依赖:1.1】
|
||||
- [ ] 2.47 `JULY-UR43` 映射原 Ticket 02:`operation_type=authorize|update_cost|remove` 三类原子命令,最多 100 项、同价幂等、异价冲突。【主:复杂写|不迁移:混合命令兼容|依赖:2.46】
|
||||
- [ ] 2.48 `JULY-UR43` 映射原 Ticket 03:交付首次/后续管理前端契约、三类价格语义、OpenAPI/文档生成器与同批切换部署检查。【主:API/Query 契约|依赖:2.46、2.47】
|
||||
- [x] 2.46 `JULY-UR43` 映射原 Ticket 01:首次系列授权在同一事务创建系列授权和至少一条套餐授权,复用现有套餐 Query,已授权项置灰。【主:复杂写;辅:Query|不迁移:授权模型/候选 API|依赖:1.1】
|
||||
- [ ] 2.47 `JULY-UR43` 映射原 Ticket 02:在保留已交付 `packages:[{package_id,cost_price,remove}]` 契约的前提下,完成最多 100 项的原子批量新增、改价与移除;`remove=true` 继续表示软删除,禁止以必填 `operation_type` 替代或移除该字段,并补齐同价幂等、异价冲突和下级授权保护。【主:复杂写|不迁移:既有请求字段与响应结构|依赖:2.46】
|
||||
- [ ] 2.48 `JULY-UR43` 映射原 Ticket 03:交付首次/后续管理前端契约、`packages[].remove` 删除语义、OpenAPI/文档生成器与兼容部署检查;旧前端请求必须继续可用,不得要求与后端同批切换到新命令字段。【主:API/Query 契约|依赖:2.46、2.47】
|
||||
- [ ] 2.49 `JULY-UR47` 映射原 Ticket 01:修复同一设备多当前卡并建立部分唯一约束,异常数据先入清单。【主:Infrastructure|不迁移:绑定历史|依赖:1.1】
|
||||
- [ ] 2.50 `JULY-UR47` 映射原 Ticket 02:交付语义化 `speed_level` 到账号/运营商渠道 `code` 的 Gateway Adapter、能力校验与 Integration Log。【主:Port/Adapter|不迁移:自动限速|依赖:2.49】
|
||||
- [ ] 2.51 `JULY-UR47` 映射原 Ticket 03:交付统一资产手动限速 API,设备解析当前卡,区分不限速与 0kbps,外部结果未知可恢复;Audit Event 不属于本 Change 且不阻塞上线。【主:Application|辅:Adapter|不迁移:套餐限速|依赖:2.49、2.50】
|
||||
|
||||
Reference in New Issue
Block a user