DID Document Metadata, ECMA-262 citation, CIDv1 bytes, INVALID_DID, DID Resolution pin - #340
Open
jintekc wants to merge 5 commits into
Open
DID Document Metadata, ECMA-262 citation, CIDv1 bytes, INVALID_DID, DID Resolution pin#340jintekc wants to merge 5 commits into
INVALID_DID, DID Resolution pin#340jintekc wants to merge 5 commits into
Conversation
The Resolve operation returns didDocumentMetadata with REQUIRED versionId, confirmations, and deactivated fields, but the DID Document Metadata data structure never defined confirmations and marked versionId OPTIONAL. Define confirmations, mark versionId REQUIRED, and extend the example to match. Also give block_confirmations a defined initial value of 0 in the resolver state, so resolving a never-updated DID no longer reads an unassigned value when returning metadata.
The spec uses encodeURIComponent() in three normative capability URN formats without defining or citing it. Cite ECMA-262, 16th Edition at each site and add the bibliography entry. Per discussion, the whole standard is cited rather than a subsection, for consistency with how other references are cited.
The recipe called 0x00 the multicodec code for raw binary, but 0x00 is identity; raw binary is 0x55, which the Raw Leaves mandate requires. The multihash digest-length byte 0x20 was also missing, so the spec-literal CID was malformed and no IPFS node would recognize it. Correct the bytes and add a worked example (file bytes in, exact CID out) as a test vector. This matches what implementations built on multiformats libraries already emit.
INVALID_DID was raised in four places but never resolvably linked: the resolve chapter's references rendered as literal brackets and the algorithms chapter linked ./errors.html, which has no such section. Per the issue discussion, DID Resolution already defines the resolution errors and we should not recreate them, so the link registry now points INVALID_DID at that spec's errors section and both identifier algorithms use the reference.
The spec cited DID Resolution v0.3, a version label upstream has already moved past (the draft became v1 on 23 July 2026). Per the issue discussion, cite https://www.w3.org/TR/did-resolution/, which always points at the latest published version, and say "latest version" in prose instead of naming one. The errors chapter names the Errors section instead of a section number for the same reason. Also state the resolver content types: DID Core v1.1 consolidated the DID document media type to application/did, and DID Resolution defines application/did-resolution for the full resolution result. The prose example previously said application/ld+json while the example file said application/did+ld+json; neither exists in the current references, so both now say application/did, and the contentType property is clarified to always record the DID document's own media type.
jintekc
force-pushed
the
spec-change/bundle-1-small-fixes
branch
from
August 3, 2026 23:44
f88d425 to
49e8a12
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
One commit per issue, none of the changes overlap. Bundled so it is one review pass instead of five.
confirmationsin DID Document Metadata, makesversionIdREQUIRED, and startsblock_confirmationsat0so a never-updated DID returns a defined value.encodeURIComponent()sites (whole standard, per the issue thread).0x01, 0x55, 0x12, 0x20, <digest>and adds a worked example as a test vector.INVALID_DIDerror and fix its broken references #339: per the discussion there, DID Resolution already defines the resolution errors, so the four brokenINVALID_DIDreferences now link straight to its errors section instead of a new local definition.https://www.w3.org/TR/did-resolution/) per the issue thread, saying "latest version" instead of naming one, and states the resolver content types:application/didandapplication/did-resolution, notapplication/did+ld+jsonas the issue suggested. DID Core v1.1 consolidated the media type toapplication/did.