Skip to content

fix: avoid duplicate inline OpenAPI model names - #62

Merged
wini83 merged 1 commit into
mainfrom
fix/openapi-model-name-collision
Oct 17, 2026
Merged

wini83 merged 1 commit into
mainfrom
fix/openapi-model-name-collision

Conversation

@wini83

@wini83 wini83 commented Oct 17, 2026

Copy link
Copy Markdown
Contributor

Ledger v0.20.2 defines inline Params objects in both ApiErrorResponse and IntegrationConflictResponse. Without path prefixes, openapi-python-client reports duplicate models and drops the conflict schema and the start/finish run 409 responses, causing the update workflow to fail.

Enable path prefixes for inline model names and add a regression test that generates the client with --fail-on-warning, round-trips both error models, and verifies typed 409 parsing for both run endpoints. Keep generated sources and the checked-in contract unchanged; the update workflow will regenerate them after this fix is merged.

Validation: 64 tests passed; Ruff check/format, strict documentation build, and compileall passed. The regression test fails with the original configuration. The full Ledger v0.20.2 contract generates without warnings with workflow-pinned openapi-python-client 0.29.0 and locked development version 0.29.1.

After merging, manually run Update client from Oblidog Ledger with release_tag=v0.20.2 to use the updated configuration (re-running the old run would use its original commit).

@wini83
wini83 merged commit 557ad8c into main Oct 17, 2026
5 checks passed
@wini83
wini83 deleted the fix/openapi-model-name-collision branch October 17, 2026 06:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant