Repository navigation
chore: migrate development type checking to ty - #4202
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
jbeckwith-oai
left a comment
There was a problem hiding this comment.
Approved the public promotion at ee090b0 after an independent static pass. Both reviewers verified all 2,634 file paths and blob hashes match the approved internal 69c2412 tree exactly, including source, tests, tooling and metadata. Existing review coverage therefore carries across this squash without promotion differences. Current code-quality feedback was checked: the Azure initializer warning overlooks inherited MRO dispatch; the remaining comments do not identify a correctness regression. No actionable findings.
All executed hosted checks pass, including Python 3.10/3.14, lint/build, provider typing, CodeQL and OkTest; examples and compatibility jobs are skipped. No candidate code or tests executed locally. The author-stated Castiron/final-regeneration merge hold remains separate from this source approval.
markstuart-oai
left a comment
There was a problem hiding this comment.
Reviewed ee090b05c8f8be6b9cc4b7ba7849a049450cdae2. No changes requested.
The repository checker migration preserves runtime dependencies, supported Python versions, public type contracts and custom pagination's Iterable behavior. The remaining differences retain the existing wrapper calls and remove obsolete suppressions and runtime-no-op casts. The current automated review comments do not establish a new defect in the changed code.
Source-only review with an independent pass across all 174 changed files, reusing prior review only where the captured files match exactly. No candidate code, tests or builds ran locally. The reported wheel, consumer and editor checks remain author-reported; hosted CI is checked separately before publication. The stated tooling and final-regeneration merge hold remains in place.
ee090b0 to
1503fb5
Compare
jbeckwith-oai
left a comment
There was a problem hiding this comment.
Re-reviewed 1503fb5 with an independent static pass. The complete 2,634-file tree matches the approved internal 626fab14 tree exactly, including file modes. Compared with the previously approved public head, only .castiron.stats.yml generation/compiler identifiers changed; source, tests and configuration are unchanged. No new actionable findings. All executed hosted checks pass; examples and compatibility jobs are skipped. No candidate code or tests ran locally. The author-stated tooling/final-regeneration merge hold remains separate from this approval.
Automated Release PR --- ## [3.41.0](openai/openai-python@v3.40.0...v3.41.0) (2026-10-28) ### Features * **api:** accept typed references in Realtime response inputs ([openai#4189](openai#4189)) ([8ecb487](openai@8ecb487)) * **api:** add response tool usage models ([openai#4201](openai#4201)) ([55fc500](openai@55fc500)) * **api:** filter agent sessions by metadata ([openai#4200](openai#4200)) ([77fd116](openai@77fd116)) * **websocket:** recover queued binary frames after reconnect ([openai#4191](openai#4191)) ([f079868](openai@f079868)) ### Bug Fixes * **examples:** detect incomplete WebSocket responses ([openai#4187](openai#4187)) ([8559299](openai@8559299)) * **examples:** handle interruptions and disconnects in push-to-talk ([openai#4192](openai#4192)) ([35fc9f3](openai@35fc9f3)) * keep consumer fixtures clean under strict Pyright ([openai#4204](openai#4204)) ([5012565](openai@5012565)) ### Chores * **api:** document upcoming model shutdowns ([openai#4199](openai#4199)) ([5b43cce](openai@5b43cce)) * **api:** update image-model documentation ([openai#4198](openai#4198)) ([fa67521](openai@fa67521)) * enforce generated-file ownership ([openai#4193](openai#4193)) ([1b37b9a](openai@1b37b9a)) * migrate development type checking to ty ([openai#4202](openai#4202)) ([45b9531](openai@45b9531)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: openai-sdks[bot] <284451331+openai-sdks[bot]@users.noreply.github.com>
Switch repository development type checking to ty 0.0.87. Consumers keep their choice of type checker; this change preserves public SDK signatures, runtime dependencies, supported Python versions, and the
py.typedmarker.Validation compared installed baseline and candidate wheels with Pydantic v1 and v2: 18,020 and 18,036 runtime tests passed respectively for each version, with matching baseline results. Unchanged consumer programs and all 104 wrapper type contracts passed mypy and Pyright; the candidate also passed ty. Public signatures, model schemas, exports, and package metadata matched the baseline. VS Code/Pylance completion, hover, navigation, signatures, and diagnostics were checked. Repository lint, build, and Python 3.10/3.14 CI passed on the source tree.
The prerequisite tooling changes have landed. Regeneration produced identical SDK source and wheel contents; only generation metadata changed. The installed-wheel consumer checks, wrapper contracts, pagination behavior, public signatures, and model-schema comparisons were rerun successfully. Fresh CI passes for this revision, including the previous-version consumer compatibility check and Python 3.10/3.14 runtime tests.