Change Credential sfSubjectNode from required to optional
#5936
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.
High Level Overview of Change
Fix object template for Credential object.
Context of Change
Field
sfSubjectNodeis not populated byCredentialCreatein self-issued credentials. Rather than fixup the Credentials already on the ledger, we can in this case safely change the object template for this field fromsoeREQUIREDtosoeOPTIONAL.We know that this is safe (despite no amendment) because:
sfAuthorizein DepositPreauth in XLS-70d Credentials #5103If we don't do it, the only safe way to refer to
sfSubjectNodewill be by comparingsfIssueragainstsfSubjectbeforehand, as currently done inCredentialDeletetransaction. Although in this specific context this is fine, such approach in general is unsafe.Type of Change