Skip to content

fix: strip component-level servers blocks before OpenAPI merge#1992

Closed
gfyrag wants to merge 17 commits into
release/v3.0from
fix/strip-component-servers
Closed

fix: strip component-level servers blocks before OpenAPI merge#1992
gfyrag wants to merge 17 commits into
release/v3.0from
fix/strip-component-servers

Conversation

@gfyrag
Copy link
Copy Markdown
Contributor

@gfyrag gfyrag commented Jun 1, 2026

Summary

  • Component specs (auth, ledger, orchestration, wallets, webhooks) declare their own servers block (http://localhost:8080/) which conflicts with base.yaml during the Speakeasy merge
  • This caused all 249 operations to inherit an operation-level servers block while the root-level servers from base.yaml were lost
  • Adds a strip-servers step in the Justfile that removes servers from all component specs before merge, using a glob so any new component is automatically handled

Test plan

  • Ran just build-openapi — root-level servers from base.yaml now present, 0/249 operations have operation-level servers

🤖 Generated with Claude Code

flemzord and others added 17 commits October 20, 2025 21:45
Replace IMPORT statements with direct downloads from GitHub releases.
This simplifies the build process by fetching OpenAPI specs directly
from release artifacts instead of importing entire project repositories.

Changes:
- Remove project IMPORT statements (ledger, payments, wallets, etc.)
- Add ARG variables for each project version
- Use curl to download openapi.yaml files from GitHub releases
- Maintain same directory structure for downloaded specs
- Ledger v2.3.1 → v2.4.0
- Payments v3.0.18 → v3.2.0
- Auth v2.4.0 → v2.4.3
- Orchestration v2.4.0 → v2.4.1
- Reconciliation v2.2.1 → v2.2.2
- Gateway v2.1.0 → v2.2.0
Remove NoAuthorization security scheme from base.yaml and add a shared
overlay to clean up the merged spec (remove requestBody on GET/HEAD,
fix /versions security). Publish the overlaid spec to the Speakeasy
Registry via a new workflow job so all SDK repos consume a single
corrected source.
- Replace Earthly with Nix dev shell (flake.nix) and Just task runner
- Use Speakeasy CLI v1.759.2 for OpenAPI spec merging with modelNamespace
  support, replacing openapi-merge-cli (npm)
- Path prepending handled by yq-go instead of openapi-merge-cli
- Consolidate overlays into shared.overlay.yaml (Speakeasy overlay format)
- Fix Speakeasy registry publish: specs are now properly published and
  tagged (previously only tagging an old registry image)
- Add LATEST_RELEASE tag alongside version tag on registry publish
- Remove Earthly, Docker/QEMU setup action, and npm build dependencies
- Add .envrc for direnv integration
Component specs (auth, ledger, orchestration, wallets, webhooks) declare
their own servers block (http://localhost:8080/) which conflicts with
base.yaml during the Speakeasy merge. This caused every operation in the
generated spec to inherit an operation-level servers block, while the
root-level servers from base.yaml were lost.

Add a strip-servers step that removes servers from all component specs
before the merge, so only base.yaml servers survive at root level.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Jun 1, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 8f3d7a19-cf7e-4d57-b7dd-9f8e424b199b

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/strip-component-servers

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions Bot added the libs label Jun 1, 2026
@gfyrag gfyrag closed this Jun 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants