Files
junhong_cmp_fiber/openspec/changes/archive/2026-09-14-fix-depleted-package-display/proposal.md
break 48c85a4916
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 8m35s
docs(归档): 归档已用完套餐展示与支付购包即时复机两个变更
- fix-depleted-package-display → archive/2026-09-14-fix-depleted-package-display;
  补记验证:`GetCurrentMainPackage`(package_usage_store.go:63-66)按 status IN (1,2) 读取主套餐,
  资产信息 `fillPackageInfo`(service/asset/service.go:348-349)复用该读取,
  已用完主套餐返回名称、使用记录、时间与流量指标,待生效/已过期/已失效仍不作为当前套餐;
  实现提交 ff25586,4 项任务全部完成。
- fix-immediate-package-payment-resume → archive/2026-09-14-fix-immediate-package-payment-resume;
  补记八月迭代同步验证:定点同步提交 b38b2b3 已是 Iteration/8-11 的 HEAD 祖先,
  在途支付商户装配保留(98c145f);services.go:277 `orderService.SetResumeCallback(stopResumeService)`
  在位,`go build ./cmd/api ./cmd/worker` 通过;2.1/2.2 据此勾选。
- 主 Spec 同步:personal-customer 新增「资产信息展示当前可用或已用完主套餐」;
  package-lifecycle 修改为支付成功后已生效主套餐触发一次即时自动复机检查。

openspec validate --all 为 38 passed / 0 failed;doctor healthy。
2026-09-14 09:49:03 +08:00

1.2 KiB

Why

C 端资产信息接口将已用完的主套餐当作“无套餐”返回,导致用户无法查看已用量、套餐名称和到期时间。已用完仍是当前世代中可展示且未到期的套餐状态,必须与生效中套餐一致投影其使用信息。

What Changes

  • 调整 GET /api/c/v1/asset/info 的当前主套餐选择范围:除生效中主套餐外,也选择已用完主套餐。
  • 已用完主套餐命中时,接口返回套餐名称、使用记录 ID、开始/到期时间及真/虚流量指标,不再返回套餐字段零值。
  • 保持待生效、已过期、已失效主套餐不作为当前套餐展示;不改变套餐耗尽阈值、状态流转、续费价格或套餐历史接口。

Capabilities

New Capabilities

  • 无。

Modified Capabilities

  • personal-customer: C 端资产信息必须展示当前已用完主套餐的使用信息。

Impact

  • 影响 internal/service/asset 的当前主套餐读取,以及 internal/store/postgres 的主套餐状态筛选。
  • GET /api/c/v1/asset/info 对已用完套餐由零值摘要改为完整套餐摘要;不涉及 Schema、迁移、外部调用或写操作。