Generate missing fulfillment.change notification event#298
Open
markmur wants to merge 1 commit into
Open
Conversation
fulfillment.change notification event
971b869 to
192919f
Compare
192919f to
f6129dc
Compare
kiftio
reviewed
Jun 18, 2026
| cd protocol/languages/swift | ||
| echo "Running tests for Swift..." | ||
| swift test | ||
| cd $root/protocol |
Contributor
There was a problem hiding this comment.
Is the description still accurate? Seems like we're testing a bit more than swift
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.
The TypeScript notification generator matched schema
$refs by hard-coded relative-path strings, which had two consequences:ec.fulfillment.changewas never emitted intoProtocolNotifications.ts, and the generator threw outright onceerror_response.jsonmoved toschemas/common/types/, so the committed output had silently drifted from the schema. This switches ref handling to path-based resolution — every$ref(method-level and param-schema) is resolved relative to its referring file to an absolute path, keyed against the schema locations — which generates the missing fulfillment decoder and makes codegen resilient to future schema reorganization. The generator body was also split into purecollectNotifications/renderModulefunctions so the resolver can be unit-tested without writing files.