didwebvh
didwebvh copied to clipboard
List of resolver verification errors and error codes
I thought it would be useful to add a ticket where we can track a list of error conditions in the resolver that are possible and what error codes (or other technique) we can use to surface the error to the caller.
- Log not found.
- etc.
So far the Python implementation just uses notFound if the DID log cannot be resolved (404 or other HTTP error), and invalidDid if the processing of the log fails for any reason. The resolution result has both an error code and a message, so the message can be used for additional information.
Need help from implementers to get a list that we can then enumerate into Codes and Text.
@brianorwhatever @andrewwhitehead -- can you extract a list of error codes that get returned from your implementations. Assuming we agree that they should go into the spec.
@peacekeeper -- looking at the DID Resolution Metadata in the DID Resolution spec. and DID Resolution Extensions repos. There is really not much there -- just a reference to an error item and a handful of error codes. From what I can tell, the only two errors applicable to did:webvh are notFound and invalidDid , where the latter is the catch all for any DID Resolution error that occurs.
Is there a convention (or standard) that defines a string that can be added beside the error item where the resolver could put additional information about the cause of the error? For example, I'm proposing adding this to the did:webvh spec -- but if others have done this before, I'd like to be consistent:
A resolver SHOULD include a
reasonitem in the DID Resolution Metadata that provides additional information about why the error occurred. A non-normative document on the did:webvh Information Site provides a list of reasons defined by resolver implementers to aid in debugging DID resolution errors.
What do you think? Any other guidance on how to document the resolution errors? Any other DID Methods that cover this that I should look at and copy?
Resolved in #193