Skip to content

refactor: extract _content_fields ClassVar to eliminate duplicate _build_metadata() overrides#160

Merged
Kamilbenkirane merged 2 commits into
mainfrom
refactor/extract-content-fields-classvar
Feb 21, 2026
Merged

refactor: extract _content_fields ClassVar to eliminate duplicate _build_metadata() overrides#160
Kamilbenkirane merged 2 commits into
mainfrom
refactor/extract-content-fields-classvar

Conversation

@Kamilbenkirane

Copy link
Copy Markdown
Member

Summary

  • Add _content_fields: ClassVar[set[str]] to APIMixin with centralized filtering in ModalityClient._build_metadata()
  • Replace 20 identical _build_metadata() method overrides across providers/protocols with one-line ClassVar declarations
  • Delete 3 dead no-op _build_metadata() pass-throughs (OpenAI audio, Gradium TTS, ElevenLabs TTS)
  • Simplify BytePlus images client to only keep its custom seed extraction logic

25 files changed, 75 insertions, 215 deletions.

Closes #155

Test plan

  • pytest tests/unit_tests/test_provider_api_templates.py — template contract validation passes
  • pytest tests/unit_tests/ — all 472 unit tests pass
  • All pre-commit hooks pass (ruff lint, ruff format, mypy, bandit)

…ild_metadata() overrides

Replace 20 identical _build_metadata() method overrides with a single
_content_fields ClassVar on APIMixin. Filtering logic is centralized in
ModalityClient._build_metadata(). Net reduction of ~140 lines.

Closes #155
@claude

claude Bot commented Feb 21, 2026

Copy link
Copy Markdown

Code review

No issues found. Checked for bugs and CLAUDE.md compliance.

@Kamilbenkirane Kamilbenkirane merged commit 397b78c into main Feb 21, 2026
10 of 11 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.

refactor: extract _content_fields ClassVar to eliminate duplicate _build_metadata() overrides

1 participant