Files
2026-09-16 16:32:08 +08:00

1.6 KiB

ADDED Requirements

Requirement: Change-phone SHALL follow transactional full migration

The system SHALL rely on POST /api/c/v1/auth/change-phone to migrate all valid phone-asset associations in one transaction, and SHALL treat any failure as a rollback of the whole operation.

Scenario: Successful migration

  • WHEN the old-phone code and the new-phone code are valid and no limit or conflict occurs
  • THEN the change request SHALL succeed
  • AND the response SHALL keep the existing shape (phone, changed_at)
  • AND the user SHALL return to the previous page and the homepage SHALL refresh the bound state

Scenario: New number exceeds the association limit

  • WHEN the new number would exceed 10 valid associated assets
  • THEN the whole operation SHALL be rolled back
  • AND the system SHALL display the backend copy: 该手机号最多关联10项有效资产

Scenario: New number conflicts with an existing same-asset relation

  • WHEN the new number already has a valid association with an asset being migrated
  • THEN the whole operation SHALL be rolled back
  • AND the system SHALL display the backend copy: 新手机号已存在与待迁移资产相同的有效关联,换绑已回滚

Requirement: Change-phone failures SHALL keep the user on the page

The system SHALL stay on the change-phone page and show the backend error message when migration fails so the user can correct the input and retry.

Scenario: Migration failure with message

  • WHEN change-phone returns a business error
  • THEN the page SHALL show the returned msg
  • AND the page SHALL NOT navigate away