Skip to main content

Variable: IDENTIFIER_RESOLVE_PROBLEMS

const IDENTIFIER_RESOLVE_PROBLEMS: readonly ["not_found", "unreadable", "version", "parameters", "hash", "keys", "proof", "identity", "deactivated"]

Defined in: packages/contracts/src/schemas/issuance-resolve.ts:62

Why an identifier did not resolve, as a code the engine maps to a cause. One per thing a resolver checks, in the order it checks them:

  • not_found: no object at the identifier's served key (nothing published yet, or published under another host);
  • unreadable: not one JSON object per line, or a line that is not its own canonical form (for did:web, a did.json that is not a JSON object);
  • version: an entry's number, versionId or versionTime is out of order, malformed or in the future;
  • parameters: the first entry does not declare did:webvh:1.0 and its SCID, an entry changes the SCID or the method, or uses a witness, which this resolver does not verify and the platform never sets;
  • hash: a versionId, or the SCID, is not the hash of its entry;
  • keys: an entry is signed by a key it was not authorised to use, or names update keys the entry before it did not commit to;
  • proof: not exactly one eddsa-jcs-2022 proof, or its signature does not verify;
  • identity: a document's id is not the DID on this host, or not the DID asked for;
  • deactivated: the log verifies and its last entry deactivates the identifier.