Skip to content
This repository was archived by the owner on Jul 27, 2026. It is now read-only.

feat: add supertonic_api_3 model (31 languages)#54

Merged
pillip merged 1 commit into
mainfrom
feat/supertonic-api-3
May 21, 2026
Merged

feat: add supertonic_api_3 model (31 languages)#54
pillip merged 1 commit into
mainfrom
feat/supertonic-api-3

Conversation

@pillip

@pillip pillip commented May 21, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Bump supertone SDK floor from >=0.2.1,<0.3 to >=0.2.2,<0.3 to expose the new supertonic_api_3 model and 8 additional languages (hr, lt, lv, sk, sl, sv, tr, uk — total now 31).
  • Add supertonic_api_3 to CLI VALID_MODELS and extend the speed-only parameter guard so supertonic_api_1 and supertonic_api_3 share the same constraints.
  • Fix a pre-existing flag mismatch in tests/integration/test_smoke.py (used --json while the CLI takes --format json) discovered while verifying integration tests against the upgraded SDK.

Notes

  • Languages are pulled from the SDK enum dynamically, so the 8 new locales become available automatically once the SDK is upgraded — no per-language code change.
  • supertonic_api_3 accepts --speed only; passing --pitch, --similarity, --text-guidance, etc. fails fast with exit code 3 (same behavior as supertonic_api_1).
  • Docs (README.md, PRD.md, docs/requirements.md, docs/data_model.md) and CHANGELOG.md (Unreleased) updated accordingly.

Test plan

  • uv run python -m pytest -q -m "not integration"153 passed
  • uv run python -m pytest tests/test_tts_params.py -v11 passed (incl. 2 new supertonic_api_3 cases)
  • ruff check src tests → All checks passed
  • SUPERTONE_API_KEY=… pytest -m integration1 passed (after --json fix)
  • Live API end-to-end with supertonic_api_3: English + Swedish (new 0.2.2 locale) + --speed 1.3 all produced valid 44.1 kHz mono WAV files; --pitch correctly rejected with exit 3.

🤖 Generated with Claude Code

- Bump supertone SDK to >=0.2.2 to expose the new supertonic_api_3
  model and 8 additional languages (hr, lt, lv, sk, sl, sv, tr, uk;
  total now 31).
- Add supertonic_api_3 to VALID_MODELS and extend the speed-only
  parameter guard so it applies to both supertonic_api_1 and
  supertonic_api_3.
- Add validation test cases for supertonic_api_3 (pitch rejected,
  speed-only accepted).
- Fix pre-existing flag mismatch in tests/integration/test_smoke.py:
  the CLI uses --format json, not --json.
- Update README, PRD, docs/requirements.md, docs/data_model.md, and
  CHANGELOG (Unreleased) to document the new model.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@pillip
pillip merged commit 9d8749f into main May 21, 2026
6 checks passed
pillip added a commit that referenced this pull request May 21, 2026
- src/supertone_cli/__init__.py: bump __version__ to 0.2.0
- CHANGELOG.md: cut [0.2.0] - 2026-05-21
  - Added: supertonic_api_3 model with 31 languages (hr, lt, lv,
    sk, sl, sv, tr, uk added on top of the prior 23); --speed-only
    parameter constraints shared with supertonic_api_1
  - Changed: supertone>=0.2.2 floor bump (PR #54)
  - Fixed: tests/integration/test_smoke.py used a non-existent
    --json flag; corrected to --format json

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant