docs(openspec): propose 8 tigshop migration changes (P0-P7) + migration plan

This commit is contained in:
Chengdong Zhang
2026-09-23 13:30:36 +08:00
parent 0d0e10b97b
commit 9a749e2551
47 changed files with 1607 additions and 0 deletions
@@ -0,0 +1,19 @@
## ADDED Requirements
### Requirement: Checkout computes per-shop shipping fees
The checkout request SHALL carry the destination address, and in the same transaction that creates the shop orders the server SHALL compute each shop order's shipping fee from the shipping capability's resolution and calculation rules and add it to that order's total. Per-shop fees and their sum SHALL be returned in the checkout response. Client-supplied shipping fees or totals SHALL NOT be persisted.
#### Scenario: two shops pay two fees
- **WHEN** a checkout covers two shops whose templates both charge shipping to the destination
- **THEN** each created order carries its own computed shipping fee and the response reports both plus the sum
#### Scenario: address change recomputes
- **WHEN** the buyer submits the same cart to a destination whose region rule raises the fee
- **THEN** the created orders' shipping fees reflect the new destination rather than any earlier quote
### Requirement: Order shipping and pricing snapshots
Each order SHALL persist its shipping fee in i64 minor units alongside its other amounts, and each order item SHALL snapshot the freight pricing method and template applied at checkout. Order detail, payment, and history views SHALL read these snapshots so later template edits cannot change historical orders.
#### Scenario: detail shows the persisted fee
- **WHEN** a customer or shop user opens an order created before a template's fees changed
- **THEN** the order detail shows the shipping fee and item pricing methods snapshotted at checkout