Regenerate the client from the latest OpenAPI specification - #95
Open
splch wants to merge 1 commit into
Open
Conversation
Syncs openapi.json with the live spec at api.ionq.co/v0.4/api-docs
(59 new generated files, 16 deleted, 37 changed). User-visible changes
are itemized in the CHANGELOG; the notable ones:
- get_job now returns SingleCircuitJob | MultiCircuitJob | QaoaJob |
QuantumFunctionJob instead of the removed GetJobResponse; polling's
annotations follow. QuantumFunctionJobResults now types value and
variance, closing a known upstream gap.
- New endpoints: move_job (POST /jobs/{UUID}/move) and get_format_schema
(GET /schemas/formats/{format}). Removed upstream: the three
variant-results endpoints and several restructured models.
- The backend parameter enum narrowed upstream to qpu.forte-1 and
qpu.forte-enterprise-1 (aria-1/2 and forte-enterprise-2/3 removed).
- The Q-CTRL api_credentials field is unchanged upstream; the repr
post-hook still applies, verified by the existing masking tests.
- Tests and docs that referenced the removed variant endpoints now use
get_characterization as the multi-path-param example; the security
path-traversal tests keep their second-position-parameter coverage.
All security post-hooks applied to the regenerated tree (path-param
routing in every endpoint module including the new ones, header and
credential repr hygiene, SPDX + EOF normalization).
natestemen
requested changes
Aug 25, 2026
natestemen
left a comment
Contributor
There was a problem hiding this comment.
IMO the PR is too large to give an effective review of, especially since it is raising and addressing security issues. Lots of important cleanup here (e.g. 3f6d926) but not sure it belongs all in one PR.
Since this repo is not being used AFAIK, fine with merging it to move quickly, but I do believe it would be better practice to break it up.
(I wrote this even before the latest commit got added which expanded the PR by 6k+ lines).
Contributor
|
Given #90 already got a review, and addresses some of the issues here, why not start there? |
This was referenced Aug 25, 2026
Contributor
|
@splch is this entirely auto-generated? |
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.
Summary
Part 4 (top) of the stack #96 -> #97 -> #98 -> #95; merge bottom-up. Regenerates the client from the latest upstream spec at
api.ionq.co/v0.4/api-docs(59 new generated files, 16 deleted, 37 changed). User-visible changes are itemized in the CHANGELOG; the notable ones:get_job(and thereforewait_for_job/async_wait_for_job) returnsSingleCircuitJob | MultiCircuitJob | QaoaJob | QuantumFunctionJobinstead of the removedGetJobResponse.QuantumFunctionJobResultsnow typesvalueandvariance, closing a known upstream gap.move_job(POST /jobs/{UUID}/move) andget_format_schema(GET /schemas/formats/{format}); the three variant-results endpoints and several restructured models were removed upstream.backendparameter enum narrowed upstream toqpu.forte-1andqpu.forte-enterprise-1- aria-1/2 and forte-enterprise-2/3 are no longer accepted by the typed endpoints that validate it.get_characterizationas the multi-path-param example, preserving the security suite's second-position-parameter traversal coverage.api_credentialsfield is unchanged upstream and its repr masking still holds.Test plan
uv run pytestat this head: 275 passed, 100% branch coverage, warnings-as-errors - including the endpoint-level traversal tests against the regenerated modules and the Q-CTRL repr-masking tests.uv run ruff check,uv run ruff format --check,uv run ty check ionq_core/: clean.pdocbuilds.generated.ymlgate).Important
Most code in
ionq_core/is auto-generated and overwritten on regeneration.See CONTRIBUTING.md for which files are safe to edit.