fix: merge conflicting integration ID/name path into one path item#364
Merged
Conversation
The spec declared two separate path items that are identical except for
the path-parameter name:
GET /projects/{projectIdOrName}/integrations/{integrationIdOrName}
DELETE /projects/{projectIdOrName}/integrations/{integrationId}
Per the OpenAPI spec, two paths that differ only by parameter name are
ambiguous and invalid. Older kin-openapi tolerated this; v0.140.0
correctly rejects it ("conflicting paths"), which broke schema
validation in server's builder-mcp openapi tools.
Both operations actually resolve the same way on the server: DeleteIntegration
uses GetIntegrationIdFromCtx, which accepts an ID or a name (covered by
TestDeleteIntegration_ByName). So this merges both operations under a single
path item keyed on {integrationIdOrName} and updates the delete parameter's
name/description to match the real behavior.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
RajatPawar
approved these changes
Jun 16, 2026
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.
Problem
The API spec declared two separate path items that are identical except for the path-parameter name:
Per the OpenAPI specification, two paths that differ only by parameter name are ambiguous and not allowed. Older versions of
kin-openapisilently tolerated this, butv0.140.0correctly rejects it:This broke OpenAPI schema validation in
server's builder-mcp openapi tools oncekin-openapiwas bumped to 0.140.0 (thebuilder-mcp/tools/operationstest suite).Fix
Merge both operations under a single path item keyed on
{integrationIdOrName}.This is also more accurate: both operations resolve identically on the server.
DeleteIntegrationusesGetIntegrationIdFromCtx, which accepts an ID or a name — confirmed by the passingTestDeleteIntegration_ByNametest in server. So the delete parameter is renamedintegrationId→integrationIdOrNameand its description updated to "The integration ID or name."Note on consumers
This changes the
deleteIntegrationpath parameter name in generated SDKs (integrationId→integrationIdOrName). The actual route and behavior are unchanged.🤖 Generated with Claude Code