From 2df44d8e3ccdd74f8a85127ed301a04423885cd6 Mon Sep 17 00:00:00 2001 From: break Date: Thu, 23 Jul 2026 12:20:41 +0900 Subject: [PATCH] =?UTF-8?q?ur43=20issues=E5=88=9B=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../issues/01-initial-bulk-authorization.md | 13 +++++++++++++ .../issues/02-atomic-package-commands.md | 13 +++++++++++++ .../issues/03-management-ui-and-release.md | 13 +++++++++++++ 3 files changed, 39 insertions(+) create mode 100644 .scratch/ur43-series-package-bulk-authorization/issues/01-initial-bulk-authorization.md create mode 100644 .scratch/ur43-series-package-bulk-authorization/issues/02-atomic-package-commands.md create mode 100644 .scratch/ur43-series-package-bulk-authorization/issues/03-management-ui-and-release.md diff --git a/.scratch/ur43-series-package-bulk-authorization/issues/01-initial-bulk-authorization.md b/.scratch/ur43-series-package-bulk-authorization/issues/01-initial-bulk-authorization.md new file mode 100644 index 0000000..f83d1e8 --- /dev/null +++ b/.scratch/ur43-series-package-bulk-authorization/issues/01-initial-bulk-authorization.md @@ -0,0 +1,13 @@ +# 01 — 首次批量授权与候选套餐选择 + +**What to build:** 授权人员可以从现有系列套餐列表一次选择多个套餐,并在创建系列授权时原子地完成首次套餐授权。界面清楚区分当前上级成本价、目标代理授权成本价和建议零售价;后端拒绝空套餐、重复套餐、跨系列、赠送套餐、非法价格及越权请求,任一项失败均不留下系列授权、套餐授权、价格历史或成功审计。 + +**适用架构通道:** 主通道为 Application 事务脚本;辅助通道为 Query 与前端。完整业务边界为“创建系列授权并首次授权套餐”;不迁移既有佣金、强充、零售价继承逻辑,不新增候选读取接口。 + +**Blocked by:** None — can start immediately. + +**Status:** ready-for-agent + +- [ ] 现有套餐列表可支撑首次多套餐选择,并按调用者视角准确标注成本价与建议零售价,不扩大数据或字段权限。 +- [ ] 创建请求要求 1 至 100 个唯一套餐;所有套餐通过系列、赠送、状态、上级授权、价格及直属下级权限校验后,才在同一事务创建系列与套餐授权。 +- [ ] 通过 HTTP 集成测试同时验证响应与数据库状态,覆盖成功、多项失败回滚、参数错误和越权;首次授权界面可完成提交并显示结果。 diff --git a/.scratch/ur43-series-package-bulk-authorization/issues/02-atomic-package-commands.md b/.scratch/ur43-series-package-bulk-authorization/issues/02-atomic-package-commands.md new file mode 100644 index 0000000..9393b98 --- /dev/null +++ b/.scratch/ur43-series-package-bulk-authorization/issues/02-atomic-package-commands.md @@ -0,0 +1,13 @@ +# 02 — 后续套餐授权的原子命令契约 + +**What to build:** 后续套餐管理接口以必填的操作类型明确区分新增授权、修改成本价和移除授权。每次请求只执行一种命令且整批原子:同价新增安全幂等、不同价新增明确冲突;调价和移除遇到下级授权等前置条件时整批拒绝。成功操作记录价格历史和审计,权限、并发和幂等行为不会泄露底层唯一约束错误。 + +**适用架构通道:** Application 事务脚本。完整业务边界为“系列授权下套餐授权的后续批量命令”,包括命令解析、批量加载、权限与业务校验、条件写入、价格历史及审计;不迁移现有整店/系列批量调价,不自动回收下级授权,也不修改订单、套餐使用或零售价。 + +**Blocked by:** None — can start immediately. + +**Status:** ready-for-agent + +- [ ] 后续管理请求必须携带 `authorize`、`update_cost` 或 `remove` 之一,套餐数量限制为 1 至 100 且 ID 唯一;旧的混合新增、改价、移除语义不再生效。 +- [ ] 三种命令均在一个 PostgreSQL 事务内完成批量校验与写入,正确处理权限、赠送套餐、跨系列、绝对成本价、下级依赖、同价幂等及不同价冲突。 +- [ ] 集成测试覆盖并发新增、全量回滚、价格历史、审计、错误码和越权安全语义,并验证响应包含实际操作数、幂等数与相关套餐标识。 diff --git a/.scratch/ur43-series-package-bulk-authorization/issues/03-management-ui-and-release.md b/.scratch/ur43-series-package-bulk-authorization/issues/03-management-ui-and-release.md new file mode 100644 index 0000000..77d2a00 --- /dev/null +++ b/.scratch/ur43-series-package-bulk-authorization/issues/03-management-ui-and-release.md @@ -0,0 +1,13 @@ +# 03 — 后续授权管理批量界面与发布验收 + +**What to build:** 授权人员在同一批量表格中管理既有系列授权:套餐列表与授权详情按套餐标识合并,已授权项在新增模式置灰,授权详情独有的存量项仍只读展示;调价和移除只允许选择已授权套餐。界面提交明确命令,提供批量摘要、空态、失败态及并发冲突后的刷新提示,并具备可安全发布和回滚的验收材料。 + +**适用架构通道:** 主通道为 Query 与前端;辅助通道为 Application API 集成。完整业务边界为“后续授权管理的读取组合、命令交互与上线验收”;不新增候选读取接口,不扩大现有数据或价格字段权限,不重构未触碰的套餐列表。 + +**Blocked by:** 01 — 首次批量授权与候选套餐选择; 02 — 后续套餐授权的原子命令契约. + +**Status:** ready-for-agent + +- [ ] 后续管理页面并行复用现有套餐列表和授权详情,准确展示三类价格、授权状态及受权限变化影响的存量只读项。 +- [ ] 新增、调价、移除三种模式只提交对应命令;提交期间防重,冲突时保留输入并要求刷新确认,且响应与失败状态对用户清晰可见。 +- [ ] 完成 Fiber 到 PostgreSQL 的端到端验收、前后端同批切换核查、上线前数据异常核查和保留业务事实的回滚说明。