fix(python): tighten SDK type annotations#868
Conversation
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
PR Review: PASS (NOT VERIFIED)What This DoesTightens Python SDK type annotations and generated exchange/client hints without intending runtime behavior changes. Blast RadiusPython SDK annotations/exports/router/client/server manager/ws client plus generator script. Consumer VerificationBefore (base branch): After (PR branch): Test Results
FindingsNo blocking findings. PMXT Pipeline Check
Semver Impactpatch -- bug fix/internal compatibility change unless SDK consumers rely on newly added APIs RiskThe branch was built, core-tested, and authenticated-smoke-tested through the sidecar. Full live-exchange before/after behavior remains unverified for this daily batch; credentialed venue calls and venue API drift should be treated as residual risk unless covered by tests in this PR. |
PR Review Update: NOT VERIFIEDI attempted the requested post-PR verification, but this PR is not merged. Blocking result
Evidence
No approval/label was added; no merge was performed. |
PR Review Update: NOT VERIFIEDFollow-up verification still did not succeed, so I did not merge this PR. Blocking result
Evidence
No approval/label was added; no merge was performed. |
PR Review Update: VERIFIEDThis PR is now VERIFIED through the consumer path and has no blocking findings remaining. Evidence
Note: Python-specific pytest execution was not used for merge gating in this runner because the local cron environment lacks a committed/generated Proceeding with the user-approved squash merge for this target PR only. |
Summary\n- Add explicit
-> Nonereturn annotations to Python SDK constructors and helpers flagged by the type audit\n- Tighten a few loose Python annotations in the client/router layers\n- Regenerate the generated exchange wrappers so the constructor annotations andsignature_typetype stay in sync with the generator\n\n## Tests\n-python3 -m py_compile sdks/python/pmxt/__init__.py sdks/python/pmxt/errors.py sdks/python/pmxt/server_manager.py sdks/python/pmxt/ws_client.py sdks/python/pmxt/router.py sdks/python/pmxt/client.py sdks/python/pmxt/_exchanges.py\n-node --check core/scripts/generate-python-exchanges.js\n\nFixes #733\nFixes #732\nFixes #731\nFixes #730\nFixes #729\nFixes #728\nFixes #691\nFixes #692\nFixes #564