Skip to content

fix: preserve OpenAPI query names and omitted defaults - #95

Open
kriptoburak wants to merge 1 commit into
cnoe-io:mainfrom
kriptoburak:codex/add-xquik-wire-name-fixture
Open

fix: preserve OpenAPI query names and omitted defaults#95
kriptoburak wants to merge 1 commit into
cnoe-io:mainfrom
kriptoburak:codex/add-xquik-wire-name-fixture

Conversation

@kriptoburak

@kriptoburak kriptoburak commented Jun 29, 2026

Copy link
Copy Markdown

Summary

  • preserve original OpenAPI query wire names while exposing Python-safe parameter names
  • omit optional boolean query parameters until callers explicitly provide them
  • add an Xquik search fixture covering camelCase names, enums, timestamps, and booleans
  • repair the stale Petstore fixture path and exercise the real generate-mcp CLI command

Independent Repository Fixes

The optional boolean generator previously defaulted omitted values to false. Generated clients therefore sent false even when callers omitted the parameter, overriding API defaults. Optional booleans now default to None and are transmitted only when supplied.

The existing generator tests also referenced a missing Petstore filename and invoked the command function as though it were the CLI group. Both tests now exercise the tracked fixture and public subcommand.

Validation

  • 25 generator tests passed
  • Ruff check passed
  • JSON parsing passed
  • Python compile check passed
  • diff and prohibited-dash checks passed

I maintain Xquik. Xquik is an independent third-party service. Not affiliated with X Corp. "Twitter" and "X" are trademarks of X Corp.

@kriptoburak
kriptoburak force-pushed the codex/add-xquik-wire-name-fixture branch from bc678d1 to 7388bd0 Compare June 29, 2026 03:17
@kriptoburak kriptoburak changed the title fix: preserve OpenAPI query wire names fix: preserve OpenAPI query names and omitted defaults Jul 18, 2026
@kriptoburak

Copy link
Copy Markdown
Author

Published repair commit 4d5ab46.

This update keeps explicit false values working while preventing omitted optional booleans from overriding API defaults. It also repairs the stale Petstore fixture path and makes the CLI smoke test invoke the real generate-mcp subcommand.

Validation: 25 generator tests passed, Ruff passed, JSON parsing passed, Python compilation passed, and the diff checks are clean. No unresolved review feedback remains.

@kriptoburak

Copy link
Copy Markdown
Author

Maintainer action needed: GitHub has held all 4 repository workflows for approval because this PR comes from a fork. Each run is action_required and has created zero jobs:

I reproduced the contributor-side checks at head 4d5ab46001ca64eee52983b8b1ea97d262037a41 with the workflow runtime: 25 tests pass on Python 3.13, both changed Python files pass Ruff, JSON parsing and Python compilation pass, and git diff --check passes. DCO is already green and there are no unresolved review threads.

The repository-wide Ruff command still reports the existing upstream baseline; the latest main Ruff run also failed. This PR does not add any Ruff finding in its changed Python files. Please approve the fork workflows when convenient.

Signed-off-by: Burak <8755484+kriptoburak@users.noreply.github.com>
@kriptoburak
kriptoburak force-pushed the codex/add-xquik-wire-name-fixture branch from 4d5ab46 to 873e9b0 Compare July 19, 2026 05:51
@kriptoburak

Copy link
Copy Markdown
Author

Repair consolidated in GitHub-verified signed commit 873e9b0.

  • Preserves original OpenAPI query wire names while keeping Python-safe argument names.
  • Omits optional booleans until callers provide them, so generated clients preserve API defaults.
  • Keeps the Xquik search fixture covering camelCase names, enums, timestamps, and booleans.
  • Repairs the stale Petstore fixture path and exercises the public generate-mcp CLI subcommand.
  • Removes the prior unsigned commit chain.

Validation on Python 3.13: 25 tests passed, changed Python files pass Ruff, JSON parsing passed, Python compilation passed, and git diff --check passed. DCO is green. There are no review comments or unresolved threads.

The 4 fork workflows still require maintainer approval and created zero jobs:

Please approve the fork workflows when convenient.

Xquik is an independent third-party service. Not affiliated with X Corp. "Twitter" and "X" are trademarks of X Corp.

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