Skip to content

✨ Implement Python MVP SDK - #5

Merged
nbsp1221 merged 13 commits into
mainfrom
feature/python-mvp
Jun 25, 2026
Merged

nbsp1221 merged 13 commits into
mainfrom
feature/python-mvp

Conversation

@nbsp1221

Copy link
Copy Markdown
Owner

Summary

  • Implement Python tossinvest-openapi 0.1.0 MVP SDK with sync requests.Session transport.
  • Add OAuth2 token management, response unwrapping, with_response=True, SDK error hierarchy, lifecycle handling, and all 20 Toss OpenAPI 1.1.1 business operations.
  • Add Python tests, package metadata, docs, and build verification.
  • Align Python get_orders with the OpenAPI/TypeScript contract by requiring status: Literal["OPEN", "CLOSED"].

QA

  • mise run check
    • OpenAPI spec check passed: 1.1.1, 20 paths
    • TypeScript tests: 37 passed
    • Python tests: 23 passed
    • Python lint/typecheck/build passed
    • TypeScript lint/typecheck/build passed
  • Real read-only API QA via /tmp/tossinvest-python-mvp-qa/run_readonly_qa.py
    • 22 passed, 0 failed, 0 skipped
    • Mutating order APIs were not called
  • Wheel install/import QA
    • Built wheel installed into a /tmp virtualenv and imported successfully

Safety Notes

  • Real API QA used credentials from local .env indirectly.
  • No .env values, OAuth tokens, raw account numbers, raw account payloads, or portfolio values were written into repository files.
  • Order creation, modification, and cancellation were intentionally deferred because they can change live account state.

@nbsp1221 nbsp1221 changed the title Add Python MVP SDK ✨ Add Python MVP SDK Jun 24, 2026
@nbsp1221 nbsp1221 changed the title ✨ Add Python MVP SDK ✨ Implement Python MVP SDK Jun 24, 2026
@nbsp1221
nbsp1221 merged commit 36684f3 into main Jun 25, 2026
1 check passed
@nbsp1221
nbsp1221 deleted the feature/python-mvp branch June 25, 2026 19:22
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