feat(openid4vc): retry logic for chained authorization - #2912
feat(openid4vc): retry logic for chained authorization#2912rmlearney-digicatapult wants to merge 6 commits into
Conversation
Signed-off-by: rmlearney-digicatapult <robert.learney@digicatapult.org.uk>
Signed-off-by: rmlearney-digicatapult <robert.learney@digicatapult.org.uk>
Signed-off-by: rmlearney-digicatapult <robert.learney@digicatapult.org.uk>
🦋 Changeset detectedLatest commit: 863863d The changes in this PR will be included in the next version bump. This PR includes changesets to release 18 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
There's quite some other states which i think would also be final. Isn't it common in this case to create a new offer? Should we limit it to a slimmer set of errors? Do you have an example where you encountered this? |
|
Hi @TimoGlastra the use case for this was more narrow. Credo currently persists an issuance session with This change is designed to unblock the case where the IdP goes down temporarily by moving the state to |
|
okay, so it's twofold:
|
|
We could change to error and drop/clear state and make the user go back to the start, also a viable option |
Discovered on testing chained authorization when upstream IdP fails during callback processing
Add
AuthorizationRetryablestate for existing issuance sessions & reset logic insideOpenId4VcIssuanceSessionRecordHolder now able to retry authorization from same offer with stale authorization data cleared and fresh upstream authorization state and PKCE material generated.
Added test covering upstream failure & recovery