Files
vmall/openspec/changes/add-points-mall/proposal.md
T
Chengdong ZhangandCursor 53548196f8 docs(openspec): plan shop coupons, accounts, points, flash sales, and group buying
Capture exclusive promotion composition, empty-group cancel, and mall surface scope so the five marketing changes can be implemented without stacking or lifecycle ambiguity.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-18 17:32:08 +08:00

1.5 KiB

Why

The mall exposes a fixed points-store page and a fixed points balance. A real points mall needs a dedicated redemption order lifecycle and must consume the customer-account ledger rather than treat points as an unguarded profile field.

What Changes

  • Add platform-managed points products with localized catalog content, integer point price, stock, availability, and images.
  • Add points redemption orders and immutable redemption-line snapshots, separate from cash orders and payments.
  • Debit points and decrement redemption stock atomically; reject insufficient points, inactive products, and unavailable stock.
  • Seed demo spendable points only through the archived customer-accounts credit path (immutable entry); do not treat seed as an earning campaign.
  • Add customer browsing, redemption, and redemption-history APIs; add platform product and redemption-order management; replace mall fixtures.

Capabilities

New Capabilities

  • points-mall: Points product catalog and atomic customer redemption orders.

Modified Capabilities

  • frontend-mall: Points mall and balance surfaces use live APIs.
  • frontend-admin: Platform operators manage points products and redemption fulfillment.

Non-goals

This change does not grant points, accept cash co-payments, share normal SKU inventory, add coupons to redemptions, or add customer withdrawals.

Impact

Depends on archived customer-accounts; adds Rust points module/migrations, shared contract/locales, mall and admin routes, and points-redemption integration tests.