-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Decision Proposal 119 - Enhanced Error Handling Payload Conventions #119
Comments
The draft decision proposal for this issue has been posted in the issue description. A working group meeting series to cover this and the other aspects of Enhanced Error Handling will be set up to walk through the decision proposals. Details will be posted in this issue thread when they are available. |
After review of the Error Handling – Data Structure proposal, the following feedback is offered: Error Codes: Generally support the intent behind Option 3 (Enumerated error codes), with the following recommendations:
A URN structure not unlike the one already used for the ACR in the identity token may be another format to consider. Error Data Model: Supportive of Option 1, or a simplified implementation of Option 2 that is not tightly integrated to the request structure. Whilst recognising the better developer experience that error pointers provide, there is concern that the investment required to develop and test this feature for each API now and into the future will be substantial. It is questionable whether the proposal for a source and particularly a JSON Path pointer will be used by data recipients to respond and self-heal, or whether it will simply be logged for triage at a later point. If the latter, then a good error standard will not require this in the response. Error Code Discovery: The preference is that participant specific error codes are not part of the specification at all, thus eliminating the need for such a service because all error codes are defined. Option 2 calls for several infrastructure pieces – a way to publish, a way to consume and presumably a way to classify error codes in some way for each data holder. If error codes need to be published, then Option 2 offers a superior solution to Option 3 but several details would need to be worked through to ensure a satisfactory outcome for all parties, including the change management approach. |
Hi @ryderwj, thanks for the feedback. Comments below: Error Codes
Error Data Model Error Code Discovery |
As part of the Enhanced Error Handling consultation a Working Group workshop series has now been set up. To register for the first workshop, please register your interest here: https://dsb_enhancederrors_workshop01.eventbrite.com.au |
The first in a series of workshops covering enhanced error handling was held on Tuesday 09/06/2020 covering the options proposed in this Decision Proposal. A link to the public workshop whiteboard and collaboration artefacts is available here. The workshop was well attended and included over 30 participants. Based on the discussion there were some new options identified and good consensus on many aspects. This is summarised below. The next workshop is being held on Tuesday 16/06/2020 and is free to register. Error Code StructureFeedback
Outcomes
Error Data ModelFeedback
Outcomes
Discovery serviceFeedback
Outcomes
|
Commonwealth Bank requests that the decision proposal remain open for feedback until July 7th. Given our engineers are busy with go-live activities, we have had little time to review the proposal and cannot provide feedback at this point. |
In light of go-live activities in preparation for July 1st CDR obligations and community feedback this decision proposal has been extended until COB July 7th |
NAB supports the above outcomes in relation to Error Code Structure and the Discovery Service (ie. option 4). |
Feedback from Origin Energy on DP-119
|
Westpac welcomes the current consultations on error handling. We think that it is important to articulate a set of scenarios where further specification of errors will result in improved customer experiences. Doing this collectively before finalisation of decisions will help to ensure that we take an approach which is fit for the intended purpose. Consideration will need to be given in terms of the transition to any new error handling approach. In particular, Data Recipients may have already implemented error handling for existing data holder implementations. Specification of new error structures will be a breaking change across the standard holistically and may require a new major version number (changes are also likely to be breaking for each endpoint). Flexibility should be given to allow for differences in vendor implementations, particularly where conformity would require customisation of certified vendor implementations against the normative references in the information security profile. Customisation of these products creates delivery risk and cost and security risks. An approach to allow this flexibility where needed would be to make use of RFC2119 in the specification of error scenarios. For example, (e.g. “In the case of xyz error scenario, then the server MUST return a 4xx HTTP response code and SHOULD return a 415 HTTP response code…”). We also remark that providing too much information to customers through error codes to data recipients may in itself create a risk of harm in some instances. Care should be taken to allow data recipients to provide our common customers with good experiences without creating these risks. Error codes
Error data model
Error discovery
|
Hi @mannharleen thanks for your feedback. Regarding error code discovery, can you please confirm your expectations.
Are you suggesting that DHs should only host the set of custom error codes not defined by the Consumer Data Standards? In other words, DHs would not publish the core CDR error codes they support? If so, this would seem reasonable. |
Hi @mannharleen
This feedback was received in the workshop as well: to specify the hierarchy consistently. The primary intention is that errors can be conveyed with increasing granularity and there is a deterministic and parseable way for API clients to interpret both CDR error codes and custom error codes across the CDR (including any sector or DH specific nuances). |
Hi @commbankoss thank you for the confirmation of your positions. Re: Data Model
Can you explain how this is different to applying a SHOULD or MAY to the use of the |
Hi @commbankoss Re: Error Code Discovery
|
Hi @WestpacOpenBanking thanks for you feedback and comments.
Are there any recommendations you have to support the transition? One option would be transitionary fields in the error payload where they are currently used (e.g. These could be provided for a period of time before retirement of the transition fields. However this would not accomodate changes in the HTTP status codes if DHs have currently chosen to use a different status code. |
This may also indicate that the DH has built competitive extensions to the CDR. It is envisaged that core CDR error codes should be representative of the CDR APIs defined in the Consumer Data Standards. That said, feedback on the current proposed catalogue #120 is welcomed to understand whether there are scenarios not covered which ADRs and DHs deem important. |
This consultation is now being closed. Feedback received will be considered and an initial position will be drafted and published in due course. |
This issue is for consultation on Error payload structure and payload conventions to cater for Enhanced Error Handling.
Specifically, this decision proposal is seeking to address the taxonomy and structural elements for enhanced error handling currently represented in the ResponseErrorList.
The consultation draft Decision Proposal has been attached below:
Decision Proposal 119 - Enhanced Error Handling - Data Structure.pdf
Feedback is currently closed for this proposal. Feedback is being considered in an updated decision proposal.
As part of the Enhanced Error Handling consultation a Working Group workshop series has now been set up. To register for the first workshop, please register your interest here: https://dsb_enhancederrors_workshop01.eventbrite.com.au
The text was updated successfully, but these errors were encountered: