Skip to content

Refresh OAS baseline (Jun 2026 audit) — Etsy numeric format annotations, no SDK impact#29

Merged
amitray007 merged 1 commit into
masterfrom
release/sdk-audit-2026-06-02
Jun 2, 2026
Merged

Refresh OAS baseline (Jun 2026 audit) — Etsy numeric format annotations, no SDK impact#29
amitray007 merged 1 commit into
masterfrom
release/sdk-audit-2026-06-02

Conversation

@amitray007

@amitray007 amitray007 commented Jun 2, 2026

Copy link
Copy Markdown
Owner

Summary

Full SDK audit against the live Etsy OAS spec (fetched 2026-06-02).

Result: 0 Must Fix, 0 Should Fix — the SDK is fully in sync.

  • 103/103 operations mapped, 100% effective coverage
  • No query/path parameter drift, no request-body drift
  • No missing exports, no unimplemented stubs

The only real change since the last baseline is 252 int64 format annotations that Etsy added to integer fields (every one of the 252 additions is int64; pre-existing float/string formats elsewhere in the spec are unchanged). No SDK code impact — Python int is arbitrary-precision and the affected fields are already typed int. This PR refreshes specs/baseline.json to the reviewed spec so the weekly maintenance check stops re-flagging these changes.

Audit flags reviewed — all non-actionable

Flag Verdict
CA_HOLIDAYS "missing" IDs 1–105 By design — SDK splits US (1–11) / CA (12–23) enums and documents integer passthrough for 24–105
State.REMOVED "extra" vs spec Intentional backward-compat value, documented inline
4 "extra" SDK methods Intentional deprecated aliases (delegate + DeprecationWarning)
8 "implicit string concatenation" issues Intentional parenthesized multi-line message strings
createDraftListing/updateListing personalization fields deprecated Already handled by _warn_if_personalization_used

Test plan

  • pytest306 passed, 7 warnings (intentional DeprecationWarnings from alias-method tests)
  • python scripts/audit_sdk.py --spec specs/latest.json → 100% effective coverage, no drift
  • Verified the baseline diff is purely additive format keys (252 additions; the 25 textual deletions are trailing-comma flips, no semantic removals)

Note on versioning

specs/baseline.json is a maintenance input, not part of the published package. To avoid a spurious patch bump + identical PyPI republish, add [skip ci] to the squash-merge commit.

🤖 Generated with Claude Code

Copilot AI review requested due to automatic review settings June 2, 2026 09:04
@amitray007 amitray007 added api-drift Auto-created when Etsy API spec changes are detected by weekly maintenance check severity: low Low severity — cosmetic or informational only labels Jun 2, 2026
@amitray007 amitray007 self-assigned this Jun 2, 2026
@github-actions

github-actions Bot commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

Test Coverage Report

Overall: 100% (1672/1672 statements covered)

Coverage by file
File Statements Missing Coverage
etsy_python/__init__.py 2 0 100%
etsy_python/_version.py 1 0 100%
etsy_python/v3/auth/OAuth.py 33 0 100%
etsy_python/v3/auth/__init__.py 1 0 100%
etsy_python/v3/common/Env.py 10 0 100%
etsy_python/v3/common/Request.py 3 0 100%
etsy_python/v3/common/Utils.py 31 0 100%
etsy_python/v3/enums/HolidayPreferences.py 29 0 100%
etsy_python/v3/enums/Language.py 12 0 100%
etsy_python/v3/enums/Listing.py 78 0 100%
etsy_python/v3/enums/ListingInventory.py 6 0 100%
etsy_python/v3/enums/ProcessingProfile.py 7 0 100%
etsy_python/v3/enums/ShippingProfile.py 261 0 100%
etsy_python/v3/enums/ShopReceipt.py 12 0 100%
etsy_python/v3/exceptions/BaseAPIException.py 10 0 100%
etsy_python/v3/exceptions/RequestException.py 8 0 100%
etsy_python/v3/exceptions/__init__.py 2 0 100%
etsy_python/v3/models/FileRequest.py 7 0 100%
etsy_python/v3/models/HolidayPreferences.py 8 0 100%
etsy_python/v3/models/Listing.py 150 0 100%
etsy_python/v3/models/Miscellaneous.py 8 0 100%
etsy_python/v3/models/ProcessingProfile.py 21 0 100%
etsy_python/v3/models/Product.py 7 0 100%
etsy_python/v3/models/Receipt.py 39 0 100%
etsy_python/v3/models/Request.py 22 0 100%
etsy_python/v3/models/ShippingProfile.py 85 0 100%
etsy_python/v3/models/Shop.py 24 0 100%
etsy_python/v3/models/ShopReturnPolicy.py 25 0 100%
etsy_python/v3/models/Utils.py 19 0 100%
etsy_python/v3/models/__init__.py 10 0 100%
etsy_python/v3/resources/HolidayPreferences.py 19 0 100%
etsy_python/v3/resources/Listing.py 81 0 100%
etsy_python/v3/resources/ListingFile.py 22 0 100%
etsy_python/v3/resources/ListingImage.py 22 0 100%
etsy_python/v3/resources/ListingInventory.py 20 0 100%
etsy_python/v3/resources/ListingOffering.py 12 0 100%
etsy_python/v3/resources/ListingProduct.py 12 0 100%
etsy_python/v3/resources/ListingTranslation.py 19 0 100%
etsy_python/v3/resources/ListingVariationImages.py 16 0 100%
etsy_python/v3/resources/ListingVideo.py 22 0 100%
etsy_python/v3/resources/Miscellaneous.py 16 0 100%
etsy_python/v3/resources/Payment.py 23 0 100%
etsy_python/v3/resources/PaymentLedgerEntry.py 15 0 100%
etsy_python/v3/resources/ProcessingProfile.py 26 0 100%
etsy_python/v3/resources/Receipt.py 25 0 100%
etsy_python/v3/resources/ReceiptTransactions.py 27 0 100%
etsy_python/v3/resources/Response.py 9 0 100%
etsy_python/v3/resources/Review.py 16 0 100%
etsy_python/v3/resources/Session.py 94 0 100%
etsy_python/v3/resources/ShippingProfile.py 58 0 100%
etsy_python/v3/resources/Shop.py 23 0 100%
etsy_python/v3/resources/ShopProductionPartner.py 11 0 100%
etsy_python/v3/resources/ShopReturnPolicy.py 28 0 100%
etsy_python/v3/resources/ShopSection.py 25 0 100%
etsy_python/v3/resources/Taxonomy.py 23 0 100%
etsy_python/v3/resources/User.py 14 0 100%
etsy_python/v3/resources/UserAddress.py 19 0 100%
etsy_python/v3/resources/__init__.py 29 0 100%
etsy_python/v3/resources/enums/RateLimit.py 8 0 100%
etsy_python/v3/resources/enums/Request.py 7 0 100%

Updated by PR Tests

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR refreshes specs/baseline.json to match the current Etsy OpenAPI spec snapshot (Jun 2026 audit), primarily by incorporating newly added numeric format annotations (e.g., int64, a few float) so that ongoing drift checks stop flagging non-semantic spec changes.

Changes:

  • Updated the OpenAPI baseline to include Etsy’s newly added numeric format metadata on integer/number fields.
  • Adjusted JSON formatting where required (commas/ordering) to accommodate the new keys.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread specs/baseline.json
Comment thread specs/baseline.json
Comment thread specs/baseline.json
Comment thread specs/baseline.json
@amitray007 amitray007 force-pushed the release/sdk-audit-2026-06-02 branch from c35483e to 9cfc8cc Compare June 2, 2026 09:30
Sync specs/baseline.json with the live Etsy OAS spec. The only changes are
252 `int64` format annotations that Etsy added to integer fields. No SDK
code impact: Python int is arbitrary-precision and the affected fields are
already typed int.

Audit result: 103/103 operations mapped, 100% effective coverage, no
parameter/body drift, no missing exports, no stubs. Every audit flag was
reviewed and confirmed a false positive or an already-handled deprecation
(personalization fields, deprecated method aliases, country-split holiday
enums, backward-compat State.REMOVED, intentional multi-line message strings).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@amitray007 amitray007 force-pushed the release/sdk-audit-2026-06-02 branch from 9cfc8cc to 8ebf9e2 Compare June 2, 2026 09:58
@amitray007 amitray007 merged commit 6e3da2c into master Jun 2, 2026
3 checks passed
@amitray007 amitray007 linked an issue Jun 2, 2026 that may be closed by this pull request
@amitray007 amitray007 deleted the release/sdk-audit-2026-06-02 branch June 2, 2026 10:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api-drift Auto-created when Etsy API spec changes are detected by weekly maintenance check severity: low Low severity — cosmetic or informational only

Projects

None yet

Development

Successfully merging this pull request may close these issues.

audit: Spec Drift [2026-06-01] — low

2 participants