feat: add invite rewards and redeem codes #10

Merged
qzl merged 4 commits from dev into main 2026-05-21 16:27:39 +08:00
Owner

Summary

  • restore web invite page with bind-once invite code flow and reward status
  • grant invite binding rewards on the invitee's first recharge after binding
  • add redeem code tables, generation script, redemption endpoint, ledgers, and audit logs
  • add web redeem-code modal and invite mechanism card

Verification

  • uv run ruff check backend/src/v1/invite backend/src/v1/points backend/tests/unit/test_invite_redeem_points.py
  • uv run --extra dev pytest backend/tests/unit/test_invite_redeem_points.py
  • npm run build
## Summary - restore web invite page with bind-once invite code flow and reward status - grant invite binding rewards on the invitee's first recharge after binding - add redeem code tables, generation script, redemption endpoint, ledgers, and audit logs - add web redeem-code modal and invite mechanism card ## Verification - uv run ruff check backend/src/v1/invite backend/src/v1/points backend/tests/unit/test_invite_redeem_points.py - uv run --extra dev pytest backend/tests/unit/test_invite_redeem_points.py - npm run build
qzl added 4 commits 2026-05-21 16:27:18 +08:00
- Add validation for question text in ManualDivinationPage and AutoDivinationPage
- Fix logout flow to call backend API before clearing local auth
- Show error message when question is empty before starting interpretation
qzl merged commit e17afac339 into main 2026-05-21 16:27:39 +08:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: qzl/eryao#10