feat(reviews): order-line reviews with merchant reply and platform moderation (add-product-reviews)
This commit is contained in:
@@ -278,3 +278,29 @@ Checkout SHALL show each shop group's delivery fee and the combined shipping tot
|
||||
- **WHEN** the shipping surface is configured to fixed data
|
||||
- **THEN** checkout renders deterministic per-shop delivery fees through the same shared client methods
|
||||
|
||||
### Requirement: Live product review area
|
||||
The mall SHALL render product reviews from the shared selected API adapter instead of display-only comment fixtures. Product detail SHALL show the rating summary (average, count, star distribution) and a paginated list of visible reviews with images and merchant replies, with totals from the API and no invented reviewers or ratings.
|
||||
|
||||
#### Scenario: detail page shows real reviews
|
||||
- **WHEN** a shopper opens a product whose reviews were posted through completed orders
|
||||
- **THEN** the review area shows the aggregated summary and those reviews with their merchant replies
|
||||
|
||||
#### Scenario: detail page without reviews
|
||||
- **WHEN** a shopper opens a product with no visible reviews
|
||||
- **THEN** the review area shows an empty state and a zeroed summary instead of fixture comments
|
||||
|
||||
### Requirement: Buyer-center pending review and submission
|
||||
The buyer center SHALL expose a "pending review" entry counting completed order lines awaiting review and a submission form posting rating, text, and optional image URLs through the shared API contract. Submission SHALL require the customer's own unreviewed completed order line, and the pending list SHALL refresh after a successful submission.
|
||||
|
||||
#### Scenario: submit a review from the buyer center
|
||||
- **WHEN** a shopper submits a review for a pending order line and it succeeds
|
||||
- **THEN** the pending list and count drop that line and the review appears on the product detail page
|
||||
|
||||
#### Scenario: anonymous submission requires sign-in
|
||||
- **WHEN** a signed-out shopper opens the pending review entry or submission form
|
||||
- **THEN** the mall sends the shopper to sign in with the current URL as the return destination
|
||||
|
||||
#### Scenario: fixed adapter remains functional
|
||||
- **WHEN** the reviews domain is configured to fixed data
|
||||
- **THEN** the review area, pending-review entry, and submission flows behave deterministically through the same shared client methods
|
||||
|
||||
|
||||
Reference in New Issue
Block a user