feat(protocol): return owner-selected source identity - #34
Conversation
Teakowa
left a comment
There was a problem hiding this comment.
spec/lpp-v1.md / sourceIdentity: this silently changes already released LPP 1.1/1.2 behavior without a negotiable contract. Fixtures 36/40 now require the field for 1.1 and fixture 41 requires it for 1.2, while the spec calls it OPTIONAL and says the provider MUST return it only “when the client requires” it; there is no request field or advertised capability for that requirement. Section 19 also says clients must not depend on optional fields that were not advertised, but Wright #318 rejects a directory compile when this field is absent. A provider conforming to v1.2.0 can therefore fail the new consumer path. Version/negotiate this addition (for example, a new protocol minor with explicit mandatory/advertised source-identity semantics) and keep the released 1.1/1.2 contracts compatible.
Preserve the released LPP 1.1 and 1.2 compile response shapes while adding an advertised sourceIdentity capability for LPP 1.3 entry-based compilation.
Return an optional
sourceIdentitySHA-256 field from entry-basedlpp/compileresults so consumers can preserve source identity for provider-owned directory targets. Update the conformance mock, fixtures, and protocol specification.Refs wrightkit/wright#317