fix(webapp-graphql-relay)!: require one Relay peer runtime - #2
Merged
Conversation
Add independent implementation plans for the Relay peer-runtime packaging bug and the TanStack route-query lifecycle matrix. Define scope, decision gates, fixture architecture, CI coverage, documentation, release guidance, and acceptance criteria for each effort.
Move react-relay and relay-runtime to an exact required peer pair with matching development dependencies. Add a publish-equivalent npm/pnpm consumer matrix, singleton identity checks, migration documentation, CI coverage, and a major Rush change. BREAKING CHANGE: Applications must directly install react-relay@20.1.1 and relay-runtime@20.1.1 when using @omgjs/labkit-webapp-graphql-relay.
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.
Summary
react-relayandrelay-runtimefrom private production dependenciesto the exact required
20.1.1peer pairinstall and 2.x migration contract
provenance, singleton identity, CJS/ESM/Vite, strict types, Relay compiler,
and real provider/hook rendering
@omgjs/labkit-webapp-graphql-relayRoot cause
The package created Relay environments and preloaded query references using
private Relay dependencies while application-owned providers and hooks could
resolve another Relay graph. Stateful Relay objects could therefore cross an
implementation boundary that the package metadata allowed but the library
architecture does not support.
Breaking change
Consumers must directly install the supported pair:
The Rush release preview resolves the package from
2.0.0to3.0.0.Validation
npm run test:relay-consumer-contractnpm run rush:installnpm run rush:buildnpm run rush:lintnpm run site:docusaurus:checkorigin/mainThe full-repository Trunk scan still reports pre-existing Dockerfile, older
workflow-action, generated changelog, and dependency-advisory findings; no
task-scoped Trunk issue remains.