2026-05-18 11:10:52 +08:00

2.4 KiB

ADDED Requirements

Requirement: Display SMS permission state

The app SHALL display whether the SMS receive permission is granted, denied, or blocked by system settings.

Scenario: Permission is granted

  • WHEN RECEIVE_SMS permission is granted
  • THEN the app MUST show that the primary SMS capture path can be attempted

Scenario: Permission is denied

  • WHEN RECEIVE_SMS permission is denied
  • THEN the app MUST show that incoming SMS cannot be captured through the primary path until permission is granted

Requirement: Explain capture path status

The app SHALL expose diagnostic state for each supported SMS capture path.

Scenario: Primary path receives an SMS

  • WHEN the system broadcast path receives and parses an SMS
  • THEN the app MUST show the latest receive time, source path, sender summary, parsed code, and parse strategy

Scenario: Primary path fails before parsing

  • WHEN the app cannot receive or parse an SMS through the primary path
  • THEN the app MUST show a specific reason such as missing permission, no broadcast received, empty body, or parser failure

Scenario: Optional Google API path fails

  • WHEN SMS User Consent or SMS Retriever cannot complete
  • THEN the app MUST show whether the failure came from unavailable Google Play services, timeout, user cancellation, or unmatched SMS format

Requirement: Avoid unnecessary SMS content retention

The app SHALL minimize retention and logging of full SMS content.

Scenario: Verification code is parsed successfully

  • WHEN the app extracts a verification code from an SMS
  • THEN the app MUST display or retain the code, sender summary, timestamp, and parse metadata without requiring persistent storage of the full SMS body

Scenario: Debug body visibility is enabled

  • WHEN a debug-only setting enables full body visibility
  • THEN the app MUST keep that behavior local to the device and clearly separate it from normal display state

Requirement: Provide recovery actions for permission problems

The app SHALL provide a clear recovery path when Android or HyperOS blocks SMS capture permissions.

Scenario: Permission cannot be granted in normal prompt

  • WHEN the runtime permission prompt does not grant usable SMS access
  • THEN the app MUST provide an action to open the system application details or permission settings page