Files
junhong_cmp_fiber/.scratch/ur40-off-shelf-package-renewal/issues/06-non-personal-entrypoint-shelf-enforcement.md
2026-07-22 17:49:25 +09:00

2.1 KiB
Raw Blame History

06 — 封堵后台代购与自动购包的下架绕过

What to build: 平台后台订单、代理代购和充值后自动购包等现有非个人续费入口,都会使用统一套餐可售策略按写时事实校验。它们可以继续购买符合原有规则的正常在售套餐,但遇到下架套餐时固定拒绝,不能借用个人客户的历史续费资格。

Blocked by: 01 — 建立统一套餐可售决策与真实历史资格

Status: ready-for-agent

架构通道: 主通道为复杂写,辅助通道为 Infrastructure Worker。

完整业务边界: 本票只改造仓库中已经存在的平台后台普通订单、代理代购和自动购包入口,使其消费同一策略并关闭下架绕过。明确不实现 UR#36 批量订购、不迁移其他订单、钱包或佣金用例、不允许非个人主体进入 renew_only

  • 后台单笔、平台代购、代理代购和自动购包使用显式 actor 与 operation context 调用统一策略,不再通过绕过代理渠道校验、强制平台渠道或只加载套餐价格的方式跳过上下架规则。
  • 所有非个人续费场景遇到当前渠道下架套餐固定返回 disabled;即使资产存在同套餐有效历史,也不能获得 renew_only
  • 套餐全局禁用、代理分配缺失/禁用/软删除、价格异常、赠送限制及现有主套餐/加油包组合规则在各入口得到一致执行。
  • 正常上架的平台和代理渠道后台购买、代购及自动购包保持原业务语义、结算方式和价格来源,不因本需求扩大迁移范围。
  • 自动购包任务在实际扣款和创建订单前按最新资产、generation、渠道、套餐及价格重新校验不能使用充值单创建时的旧资格快照放行。
  • 各入口返回或记录统一安全业务原因Handler、Worker 和 Service 不向客户端或日志直接暴露底层数据库错误。
  • 测试形成入口矩阵,验证个人 C 端下架续费可通过,而平台后台、平台代理、代理代购和自动购包对同一下架套餐全部拒绝,同时正常上架路径不回归。