MAKITTHandoff
Handoff Boards
ongoingpromotions-revamp

Promotions Revamp — Handoff Board

Promotions Revamp — Handoff Board

본 spec 의 AI ↔ Human 핸드오프 인박스. 작업자가 진척 / 차단 / 검증 요청을 여기에 적는다.

신규 entity (4 + 5 enum)

  • GiftCard + GiftCardStatus (ACTIVE/REDEEMED/EXPIRED/DISABLED) — 충전 1회용 코드
  • RewardRule + RewardRuleTrigger (CUSTOMER_SIGNED_UP/ORDER_PAID_FIRST/ORDER_DELIVERED/REVIEW_CREATED/CUSTOMER_BIRTHDAY) + RewardRuleStatus
  • ShopStackingPolicy — mall-level 4 토글
  • RewardPointTransactionType (EARN/USE/CANCEL) + RewardPointTransactionReason (ORDER_REWARD/REVIEW_REWARD/SIGNUP_BONUS/EVENT/GIFT_CARD_REDEMPTION/REWARD_RULE/ORDER_USE/REFUND_CANCEL/EXPIRED)
  • PromotionApplyBase (BEFORE_OTHER_DISCOUNTS/AFTER_OTHER_DISCOUNTS)
  • OrderRefundedEvent (Spring application event)

확장 entity

  • Promotion (+ exclusive, applyBase, targetCollectionIds, targetCategoryNames, targetTags)
  • Coupon (+ exclusive, applyBase, priority, targetProductIds, targetCollectionIds, targetCategoryNames, targetTags)
  • AppliedCoupon (+ exclusive snapshot)
  • RewardPointTransaction (type/reason String → enum)

신규 application / listener

  • GiftCardApplication (create/redeem/disable)
  • RewardRuleApplication (dispatch)
  • RewardRuleSignupListener (@EventListener)
  • RewardLifecycleListener (@EventListener — OrderPaid + OrderRefunded)

신규 admin REST (makitt-api)

  • /api/v1/shops/{shopId}/gift-cards (CRUD + disable)
  • /api/v1/shops/{shopId}/reward-rules (CRUD)
  • /api/v1/admin/developer/coupons/issue, /reward-points/grant (dev infra)

신규 customer REST (shop-api)

  • POST /shop/{shopId}/gift-cards/redeem

Admin web UI

  • apps/web/src/features/coupon-settings + promotion-settings — 새 필드 form 입력 surface 박힘 (Switch/Select/Textarea)

위 "Inbox to Human" 의 7개 후속 spec 후보 참조. 운영 진입 시 또는 marketing scale 시점에 누적식 승격.

비어 있음

당신이 처리할 항목

docs / spec / ongoing / promotions-revamp / e2e.md