fix(admin): review 加固——超管防自锁/时区/并发发钱/审计 #50

Closed
Ghost wants to merge 1 commits from fix/admin-review-hardening into main

代码 review 后端运营后台后修复 7 项:

  • admins: 降级/禁用 super_admin 前校验仍≥1 个 active 超管,防零超管死局;审计记 before/after
  • queries: 时间筛选统一 tz-aware(列为 timestamptz),比较绝对时刻、不再依赖 DB 会话时区
  • price_report: approve/reject 加行锁,防并发/连点双倍发奖
  • users/wallet: get_or_create_account 增可选 lock 参(默认关,不动 C 端);调金币/现金读余额加行锁防双写错位
  • ad_audit: 复算排序补 id 次级键,时间戳并列时顺序确定
  • withdraw: health-check 限 finance/super,不暴露密钥路径给全员
  • schemas: 调账/拒绝 reason 加 trim 校验,拒纯空白

测试: admin 套件 37 passed,全量 140 passed,无新增失败。

Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

代码 review 后端运营后台后修复 7 项: - admins: 降级/禁用 super_admin 前校验仍≥1 个 active 超管,防零超管死局;审计记 before/after - queries: 时间筛选统一 tz-aware(列为 timestamptz),比较绝对时刻、不再依赖 DB 会话时区 - price_report: approve/reject 加行锁,防并发/连点双倍发奖 - users/wallet: get_or_create_account 增可选 lock 参(默认关,不动 C 端);调金币/现金读余额加行锁防双写错位 - ad_audit: 复算排序补 id 次级键,时间戳并列时顺序确定 - withdraw: health-check 限 finance/super,不暴露密钥路径给全员 - schemas: 调账/拒绝 reason 加 trim 校验,拒纯空白 测试: admin 套件 37 passed,全量 140 passed,无新增失败。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Ghost added 1 commit 2026-06-14 12:08:56 +08:00
代码 review 后端运营后台后修复 7 项:
- admins: 降级/禁用 super_admin 前校验仍≥1 个 active 超管,防零超管死局;审计记 before/after
- queries: 时间筛选统一 tz-aware(列为 timestamptz),比较绝对时刻、不再依赖 DB 会话时区
- price_report: approve/reject 加行锁,防并发/连点双倍发奖
- users/wallet: get_or_create_account 增可选 lock 参(默认关,不动 C 端);调金币/现金读余额加行锁防双写错位
- ad_audit: 复算排序补 id 次级键,时间戳并列时顺序确定
- withdraw: health-check 限 finance/super,不暴露密钥路径给全员
- schemas: 调账/拒绝 reason 加 trim 校验,拒纯空白

测试: admin 套件 37 passed,全量 140 passed,无新增失败。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

已合并入 #51(本分支 fix/admin-review-hardening 的加固提交已包含在 #51 的 feat/feedback-iteration 分支中),关闭本 PR 以去重。

已合并入 #51(本分支 fix/admin-review-hardening 的加固提交已包含在 #51 的 feat/feedback-iteration 分支中),关闭本 PR 以去重。
Ghost closed this pull request 2026-06-14 15:54:12 +08:00

Pull request closed

Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: WonderableAI/shaguabijia-app-server#50