Skip to content

ZIP-558: updates the spec file to match the current SDK state#3

Merged
ericlakich merged 1 commit intomainfrom
ZIP-558/spec-update
Jan 22, 2026
Merged

ZIP-558: updates the spec file to match the current SDK state#3
ericlakich merged 1 commit intomainfrom
ZIP-558/spec-update

Conversation

@ericlakich
Copy link
Contributor

This pull request makes significant improvements to the API specification in docs/spec.yaml for the v6.0 models, focusing on better alignment with real API responses, improved field naming (including camelCase aliasing), and enhanced documentation for SDK developers. It also adds actual API response examples and new CI/CD quality requirements to ensure code quality and correctness.

Key changes:

Data Model & Field Mapping Improvements

  • Added detailed implementation notes to clarify the use of Pydantic v2, field aliasing for camelCase API fields, and the optionality of many fields in real responses.
  • Updated multiple model fields to reflect actual API behavior: made several fields optional, added api_field aliases for camelCase mapping, clarified that some fields are strings (not enums), and improved field descriptions and examples for clarity. [1] [2] [3] [4] [5]
  • Replaced the origin_destination model with sourcing_rules to match the real API structure and field naming, including all necessary field aliasing and documentation. [1] [2]

Model Structure & Response Accuracy

  • Refactored V60Metadata to nest response info under a new response object (V60ResponseInfo), accurately reflecting actual API responses.
  • Added a new V60DisplayRate model and updated V60TaxSummary to include a display_rates array, matching the breakdowns in real responses.

Documentation & Testing

  • Added a new section with actual API response examples to validate model structure and guide SDK development.
  • Updated the test structure to require tests for HTTP client utilities and retry logic.

CI/CD & Code Quality

  • Introduced a comprehensive quality_requirements section specifying minimum code coverage, type checking, formatting, linting, and Pydantic usage requirements, including sample configuration and code.

@linear
Copy link

linear bot commented Jan 22, 2026

@ericlakich ericlakich merged commit 00e5af4 into main Jan 22, 2026
17 checks passed
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