Repository navigation
fix(contract): align reviewed beta API provenance - #39
Closed
thestephenromano wants to merge 2 commits into
Closed
thestephenromano wants to merge 2 commits into
thestephenromano wants to merge 2 commits into
Conversation
thestephenromano
added a commit
that referenced
this pull request
Nov 4, 2026
Align the Python SDK with deployed API v0.5.0. Existing SDK 0.1.x lacks discovery and standard-five operations, assumes all Greeks are always available, and permits obsolete 1,024-item batches. This update exposes the current contract and preserves server capability errors and unavailable-quantity evidence. - Both clients cover all 14 numerical/discovery/cost operations. Add unauthenticated `pricing_models()`, standard-five single/batch methods and explicit chunk workflows; support quoting and `max_cu` on all 11 execution methods. - Pin API commit `2284d802b5ac0b37b43ee269bbf4bfeec3777776`, schema SHA-256 `e206327e13aee32c02dbfa22e1d8e8a80ea2d549083971a1cc87aa2b67f401e7` (beta wire version remains 0.1.0). - Enforce the 100-item wire ceiling, forward current canonical selectors/aliases, preserve optional Greek values and typed reasons, and retain gaps in pandas output. Protected calls reject missing credentials before transport; public discovery never sends a key. - Update examples, guides and six notebooks. American Greeks/analytics/batches select BS1993 explicitly. No client model substitutions, numerical fallbacks, policy-rate arithmetic, or automatic retries. - Supersedes the contract-pin and batch-limit work in #39 and #40. Release Please retains ownership of package versions and publication. Validation at `ec86a6e`: Ruff lint/format and mypy passed; isolated sdist/wheel installation and all five pandas batch conversions passed; all 18 native integration checks passed against an optimized locked build of API v0.5.0, including a 100-contract standard-five batch, cash-dividend IV and capability errors. Docker startup/authentication, all six notebooks, persistent edits and missing-notebook seeding passed. The clean installed-wheel audit passed **all 555 tests**, including all 18 native integration tests, in a fresh Python 3.14.10 environment with no source-tree imports. Candidate wheel SHA-256: `9613ffa514ccf4ab3ccc8c9980cbdfff1759aea2ff4b9313101e76ea2d1d0452` (development candidate retains version 0.1.1; Release Please owns the next version). Native schema identity and fixture provenance are checked. No production credentials or customer data are used. Compatibility notes and reproducible commands: [API v0.5.0 adoption](https://github.com/MorphIQ-Labs/morphiq-sdk-python/blob/feature/cost-utilities/docs/API_V050_ADOPTION.md).
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.
Superseded by #41, which adopts deployed API v0.5.0 and includes this contract/batch-limit change with current native fixtures and full validation. This branch is retained for history.
Change
Align the SDK's offline contract with the API's reviewed beta baseline: OpenAPI
info.versionchanges from3.0.0to0.1.0. Pin the final source of API MR !183, commitd2eb8d4d05d9c84dc8e9ac4d7b3016d1133d8d4f, and SHA-256d9a746af609cba68d768c4b743061fd3e91cbe04cd4242c954e48c01f286031din contract provenance and all five native fixture headers. Document the producer MR as the immutable source handoff.The contract diff changes only its version label. All fixture requests, numerical results, diagnostics, ordering and response metadata are retained. SDK runtime code, package-release versions, retry behavior and commercial CU semantics are unchanged.
Related: #2.
Merge order
Merge after API MR !183 lands successfully. Its final source has been reviewed and verified locally; the API's required CI and squash merge remain the upstream gate. This SDK PR stays draft until that gate completes.
Validation
git diff --checkpass.python scripts/check_package.pypassed: sdist/wheel, isolated installation, license metadata and optional pandas conversions.Native calls used only
http://127.0.0.1:18083with explicit open admission. No production requests, package publication or API deployment were performed.Checklist