[WAL-1078] follow-up: add OpenID4VP rejection scenario#1892
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
98c93c9 to
a089be2
Compare



Summary
Adds the WAL-1078 OpenID4VP rejection path as a follow-up stacked on #1882. The mobile wallet can now send a protocol-level rejection response instead of treating Decline as a purely local cancel action.
The branch reuses the existing core
walletRejectHandling(...)behavior and exposes a small Swift-friendly API through the KMP mobile SDK, Swift SDK facade, Compose demo, and native iOS demo.What Changed
Mobile SDK and Handler
RejectPresentationRequestandWalletPresentationHandler.rejectPresentation(...).MobileWallet.rejectPresentation(...).MobileWalletPresentationRejectionReasonwith the rejection codes already supported by the core OpenID4VP wallet implementation.Swift Parity
Wallet.rejectPresentation(request:reason:errorDescription:).PresentationRejectionReasonin the Swift SDK.Demo Apps
Declineaction to protocol rejection.WalletClient.Tests
Architecture Notes
Caveats and Follow-Ups
Validation
./gradlew :waltid-libraries:protocols:waltid-openid4vc-wallet-mobile:updateKotlinAbi -PenableIosBuild=true./gradlew :waltid-libraries:protocols:waltid-openid4vc-wallet-mobile:checkKotlinAbi :waltid-libraries:protocols:waltid-openid4vc-wallet-mobile:allTests :waltid-applications:waltid-wallet-demo-compose:sharedLogic:allTests :waltid-applications:waltid-wallet-demo-compose:sharedUI:testAndroidHostTest -PenableIosBuild=truexcodebuildmcp simulator test ... -only-testing:iosAppTests/CredentialDisplayNormalizerTestsxcodebuildmcp simulator test ... -only-testing:iosAppUITests/MockWalletUITests/testTabbedReceiveAndPresentFlowUsesMockWalletBreaking