Conversation
Shared and multiple provider connections need request and response contracts that stay consistent end to end. Keep SDK-side corrections while the generator and source-schema fixes are handled upstream. BREAKING CHANGE: Credential responses now use discriminated unions. Narrow on active and authMethod before reading variant-specific fields.
The merged credential schema can replace handwritten decoding, but regeneration must not remove published names or revive the DELETE query bug. Keep the compatibility boundaries explicit while the remaining emitter fixes are handled upstream.
Contributor
|
Add a provider-list regression with distinct compatibility and standard connections, plus a provider with only a standard connection, so the plural-list deserialization cannot silently drop peers. Remove the DataIntegrationCredentialsResponseCredential alias interface, serializer, and fixture from .oagen-manifest.json: they are hand-maintained compatibility shims (@oagen-ignore-file) whose paths the current spec no longer emits, so listing them as generated made them prune candidates. Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Pipes now returns provider routing config and distinguishes creating a connection from reauthorizing one. Expose that contract without losing the SDK's compatibility aliases, reviewed plural-list coverage, or the local DELETE and PUT serialization fixes.
thompsongl
approved these changes
Sep 25, 2026
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
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.
Description
Bring Pipes up to date with organization-owned connections, multiple connections per provider, and API-key/client-credentials integrations without letting regeneration undo existing SDK behavior.
Compatibility and release impact
This is intentionally marked as a breaking SDK type change, not an HTTP wire-contract change:
DataIntegration.credentialscan benullfor non-OAuth integrations; consumers must check it before reading OAuth application credentials.Existing method names, published DTOs, and credential type/serializer imports remain available. Reads such as
result.errorandresult.credential?.valuestill compile. The new organization integration methods were not previously released.Plural connections remain opt-in: omitted/false
supportsMultipleConnectionskeeps compatibility-slot behavior. Legacy providerownership: 'userland_user'remains available; new code can useconnectionOwner: 'user'. See Pipes compatibility and migration notes.Keep the breaking-change marker when squash-merging. With the repository's default release-please configuration, this requests a major release. No changelog or package-version files are manually changed here.
Validation
Rebased onto current
main(4c12d5a1, release 10.14.0) and ran locally:npm run typechecknpm run lintnpm run prettier, plus formatting checks for changed JSON/Markdown filesnpm run build(including the package type/export checks)npm test -- --runInBand: 1,112 passed, 12 skipped, 17 snapshots passedCoverage includes request bodies/query parameters, true/false/omitted plural opt-ins, pagination filters, credential variants, metadata, date conversion, and compatibility aliases. A temporary regeneration also preserved the protected DELETE methods and credential compatibility shims. The old package tarball and build-generated metadata changes are excluded.
Documentation
docs/PIPES_COMPATIBILITY.md.BREAKING CHANGE: Integration credentials may be null, and credential responses now reflect active/inactive and authentication-method variants. Consumers relying on non-null OAuth credentials, unconditional token fields, or the former flat credential interfaces must update their types and guards as described in the compatibility guide.