Description
Twin: synonymdev/bitkit-android#1672
What happened?
When the allowee's wallet accepts an allowance offer automatically and the app is terminated, or its refresh task is cancelled, after the SDK commits the accept but before the announcement, the allowance becomes Active but "Allowance Added" is never shown. PaykitAllowanceManager.acceptOffersFromAllowers only returns accepted offers in memory, and AppScene announces from that return value; nothing records an accepted offer as not announced yet. Later refreshes see the allowance as already accepted, so the notice is lost for good.
Expected behavior
Every offer accepted automatically is announced once, on a later refresh if the one that accepted it did not finish.
Steps to Reproduce
- Payer sets an allowance for the payee (
journeys/allowances/set-and-accept.xml). - On the payee, terminate Bitkit right as the offer is being accepted.
- Reopen Bitkit: the allowance is Active, and no "Allowance Added" notification or toast ever appears.
Logs / Screenshots / Recordings
Found while reviewing the Android twin, synonymdev/bitkit-android#1385. The journey wording follow-ups listed in the Android issue apply to the shared journeys here too (monthly-cap-reached.xml, end-stops-auto-pay.xml, pin-gates-allowance-changes.xml).
Bitkit Version
Allowances, #841 (not released yet).
Device / OS
Any iOS device.
Reproducibility
Timing-dependent: only when the app stops while an automatic accept is in flight.
Activity