feat: 会员+积分系统后端 (#1895) #1919
Merged
auto-approve-bot
merged 7 commits from 2026-09-15 09:23:26 +08:00
feature/1895-membership-points into develop
7 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
10a8d76052 |
style: auto-format with black + isort + ruff + prettier [skip ci-format-check]
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 1s
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 2s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 46s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 48s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m10s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m15s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 2m44s
CI/CD Pipeline / Validate - Style (pull_request) Successful in 3m4s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m7s
CI/CD Pipeline / Validate - Security (pull_request) Successful in 5m49s
AI Code Review / AI Code Review (pull_request) Successful in 7m51s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 7m56s
CI/CD Pipeline / CI Gate (pull_request) Successful in 2s
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 5m35s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 30s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 36s
CI/CD Pipeline / Deploy Production (pull_request) Failing after 30h1m0s
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Failing after 30h8m55s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 30h8m59s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 30h9m1s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 30h8m24s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 30h8m24s
CI/CD Pipeline / PR Build Web Image (pull_request) Failing after 30h8m25s
CI/CD Pipeline / Build Production Worker Image (pull_request) Failing after 30h0m27s
CI/CD Pipeline / Build Production Web Image (pull_request) Failing after 30h0m27s
CI/CD Pipeline / Build Production API Image (pull_request) Failing after 30h0m27s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 30h8m13s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Failing after 30h8m23s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 30h8m26s
CI/CD Pipeline / Canary Release to Production (pull_request) Failing after 30h0m25s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 30h8m14s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 30h8m19s
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Failing after 30h8m21s
CI/CD Pipeline / Check push changed paths (pull_request) Failing after 30h8m29s
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 30h43m47s
|
||
|
|
f69752024a |
test: add comprehensive unit tests for repositories and points_gate (#1895)
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 1s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 1s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 37s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 39s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m6s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m12s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 2m53s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 3m3s
CI/CD Pipeline / Validate - Security (pull_request) Successful in 6m9s
CI/CD Pipeline / Validate - Style (pull_request) Has been cancelled
CI/CD Pipeline / Unit Tests (pull_request) Has been cancelled
CI/CD Pipeline / Build Production API Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Web Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been cancelled
CI/CD Pipeline / Deploy Production (pull_request) Has been cancelled
CI/CD Pipeline / Production Browser E2E (pull_request) Has been cancelled
CI/CD Pipeline / Canary Release to Production (pull_request) Has been cancelled
CI/CD Pipeline / CI Gate (pull_request) Has been cancelled
AI Code Review / AI Code Review (pull_request) Has been cancelled
PR Automation / Auto Merge on CI Green + Approved (pull_request) Has been cancelled
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 30h16m54s
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Failing after 30h17m2s
CI/CD Pipeline / PR Build Web Image (pull_request) Failing after 30h17m5s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 30h16m24s
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Failing after 30h16m27s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Failing after 30h16m27s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 30h16m29s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 30h16m29s
CI/CD Pipeline / Check push changed paths (pull_request) Failing after 30h16m34s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 30h16m19s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 30h16m30s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 30h16m18s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 30h16m31s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 30h52m2s
- test_points_repositories.py: 18 tests covering all 4 SA repository implementations - test_points_gate.py: 10 tests covering points_gate decorator sync/async/edge cases - Total unit tests: 68 (was 40) |
||
|
|
0a4bf5c856 |
fix: resolve ruff B904 lint error in points routes
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 1s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 2s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 41s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 43s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m12s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m29s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m1s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 3m1s
CI/CD Pipeline / Validate - Style (pull_request) Successful in 3m15s
AI Code Review / AI Code Review (pull_request) Successful in 6m38s
CI/CD Pipeline / Validate - Security (pull_request) Successful in 6m39s
CI/CD Pipeline / Unit Tests (pull_request) Failing after 9m2s
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / CI Gate (pull_request) Failing after 1s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 6m11s
CI/CD Pipeline / Deploy Production (pull_request) Failing after 30h24m34s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 30h33m28s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 30h33m39s
CI/CD Pipeline / PR Build Web Image (pull_request) Failing after 30h33m40s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 30h32m57s
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Failing after 30h32m59s
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Failing after 30h33m0s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Failing after 30h33m2s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 30h33m6s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 30h33m6s
CI/CD Pipeline / Check push changed paths (pull_request) Failing after 30h33m12s
CI/CD Pipeline / Build Production Worker Image (pull_request) Failing after 30h24m3s
CI/CD Pipeline / Build Production Web Image (pull_request) Failing after 30h24m3s
CI/CD Pipeline / Build Production API Image (pull_request) Failing after 30h24m3s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 30h32m54s
CI/CD Pipeline / Canary Release to Production (pull_request) Failing after 30h23m59s
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 30h32m54s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 30h33m7s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 30h33m7s
|
||
|
|
78d96c5d2b |
style: auto-format with black + isort + ruff + prettier [skip ci-format-check]
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 2s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 2s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 40s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 40s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m13s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m17s
CI/CD Pipeline / Validate - Style (pull_request) Failing after 2m34s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 2m45s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 2m58s
CI/CD Pipeline / Validate - Security (pull_request) Has been cancelled
CI/CD Pipeline / Unit Tests (pull_request) Has been cancelled
CI/CD Pipeline / Build Production API Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Web Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been cancelled
CI/CD Pipeline / Deploy Production (pull_request) Has been cancelled
CI/CD Pipeline / Production Browser E2E (pull_request) Has been cancelled
CI/CD Pipeline / Canary Release to Production (pull_request) Has been cancelled
CI/CD Pipeline / CI Gate (pull_request) Has been cancelled
AI Code Review / AI Code Review (pull_request) Has been cancelled
PR Automation / Auto Merge on CI Green + Approved (pull_request) Has been cancelled
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 30h37m14s
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Failing after 30h37m19s
CI/CD Pipeline / PR Build Web Image (pull_request) Failing after 30h37m58s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 30h38m6s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 30h36m44s
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Failing after 30h36m45s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Failing after 30h36m45s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 30h37m32s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 30h37m32s
CI/CD Pipeline / Check push changed paths (pull_request) Failing after 30h37m33s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 30h36m40s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 30h36m40s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 30h37m25s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 30h37m25s
|
||
|
|
d60fa86d70 |
feat: add Alembic migration 076 for membership & points system (#1895)
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 2s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 1s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m37s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 16s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 36s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m4s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 2m57s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m50s
CI/CD Pipeline / Validate - Style (pull_request) Failing after 3m36s
CI/CD Pipeline / Validate - Security (pull_request) Has been cancelled
CI/CD Pipeline / Unit Tests (pull_request) Has been cancelled
CI/CD Pipeline / Build Production API Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Web Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been cancelled
CI/CD Pipeline / Deploy Production (pull_request) Has been cancelled
CI/CD Pipeline / Production Browser E2E (pull_request) Has been cancelled
CI/CD Pipeline / Canary Release to Production (pull_request) Has been cancelled
CI/CD Pipeline / CI Gate (pull_request) Has been cancelled
AI Code Review / AI Code Review (pull_request) Has been cancelled
PR Automation / Auto Merge on CI Green + Approved (pull_request) Has been cancelled
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 30h39m43s
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Failing after 30h39m53s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 30h41m44s
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Failing after 30h39m19s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Failing after 30h39m20s
CI/CD Pipeline / PR Build Web Image (pull_request) Failing after 30h39m32s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 30h41m10s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 30h41m11s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 30h39m5s
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 30h39m7s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 30h39m14s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 30h39m36s
CI/CD Pipeline / Check push changed paths (pull_request) Failing after 30h41m12s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 31h15m8s
- Add is_member, member_type, member_expires_at, points_balance to users table - Create points_accounts, points_transactions, points_orders, daily_usage_records tables - Include proper indexes, constraints and downgrade path |
||
|
|
c480bf1b44 |
style: auto-format with black + isort + ruff + prettier [skip ci-format-check]
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 7s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 22s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 53s
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Has been cancelled
CI/CD Pipeline / Validate - Style (pull_request) Has been cancelled
CI/CD Pipeline / Validate - Security (pull_request) Has been cancelled
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Has been cancelled
CI/CD Pipeline / Unit Tests (pull_request) Has been cancelled
CI/CD Pipeline / Integration Tests (pull_request) Has been cancelled
CI/CD Pipeline / Frontend Lint (pull_request) Has been cancelled
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been cancelled
CI/CD Pipeline / PR Build Worker Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production API Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Web Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been cancelled
CI/CD Pipeline / Deploy Production (pull_request) Has been cancelled
CI/CD Pipeline / Production Browser E2E (pull_request) Has been cancelled
CI/CD Pipeline / Canary Release to Production (pull_request) Has been cancelled
CI/CD Pipeline / CI Gate (pull_request) Has been cancelled
AI Code Review / AI Code Review (pull_request) Has been cancelled
PR Automation / Auto Approve on CI Green (pull_request) Has been cancelled
PR Automation / Auto Merge on CI Green + Approved (pull_request) Has been cancelled
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 30h43m43s
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Failing after 30h43m52s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 30h43m58s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 30h43m14s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Failing after 30h43m18s
CI/CD Pipeline / PR Build Web Image (pull_request) Failing after 30h43m24s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 30h43m24s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 30h43m24s
CI/CD Pipeline / Check push changed paths (pull_request) Failing after 30h43m29s
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Failing after 30h43m18s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 30h43m9s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 30h43m13s
|
||
|
|
c3e1ab62ed |
feat: add membership & points system backend (#1895)
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 1s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 1s
CI/CD Pipeline / Integration Tests (pull_request) Failing after 1m57s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 2m26s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 2m51s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 3m17s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 3m18s
CI/CD Pipeline / Validate - Style (pull_request) Has been cancelled
CI/CD Pipeline / Validate - Security (pull_request) Has been cancelled
CI/CD Pipeline / Unit Tests (pull_request) Has been cancelled
CI/CD Pipeline / Build Production API Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Web Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been cancelled
CI/CD Pipeline / Deploy Production (pull_request) Has been cancelled
CI/CD Pipeline / Production Browser E2E (pull_request) Has been cancelled
CI/CD Pipeline / Canary Release to Production (pull_request) Has been cancelled
CI/CD Pipeline / CI Gate (pull_request) Has been cancelled
AI Code Review / AI Code Review (pull_request) Has been cancelled
PR Automation / Auto Approve on CI Green (pull_request) Has been cancelled
PR Automation / Auto Merge on CI Green + Approved (pull_request) Has been cancelled
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 30h47m23s
CI/CD Pipeline / PR Build Web Image (pull_request) Failing after 30h47m29s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 30h47m31s
CI/CD Pipeline / Check push changed paths (pull_request) Failing after 30h46m59s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 30h46m57s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 30h46m49s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 30h46m54s
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Failing after 30h46m54s
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Failing after 30h46m54s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Failing after 30h46m55s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 30h46m55s
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 30h46m49s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 30h46m56s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 30h46m57s
- Add migration 008_membership_points.sql: users table new fields + 4 new tables - Add domain objects: PointsAccount, PointsTransaction, PointsOrder, DailyUsageRecord - Add repository ports & SQLAlchemy adapter implementations - Add PointsService with balance/charge/refund/recharge/daily-usage logic - Add points_rules configuration (9 scenes, packages, membership pricing) - Add points_gate middleware decorator for AI feature entry points - Add API routes: points balance/transactions/rules/packages/check/deduct/refund/recharge - Add API routes: membership status, daily usage - Add unit tests for points_rules (20 tests) and points_service (20 tests) |