tempest-fastapi-sdk 0.303.0__tar.gz → 0.303.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/CHANGELOG.md +42 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/PKG-INFO +1 -1
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/SHIPPED.md +3 -1
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/genai-examples.en.md +2 -2
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/genai-examples.md +2 -2
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/genai.en.md +60 -4
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/genai.md +63 -4
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/models.en.md +2 -1
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/models.md +2 -2
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/pyproject.toml +1 -1
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/__init__.py +1 -1
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/hardware.py +85 -22
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/text.py +13 -4
- tempest_fastapi_sdk-0.303.1/tests/genai/test_hardware.py +214 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_text.py +86 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/uv.lock +1 -1
- tempest_fastapi_sdk-0.303.0/tests/genai/test_hardware.py +0 -117
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/.github/ISSUE_TEMPLATE/docs.yml +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/.github/ISSUE_TEMPLATE/question.yml +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/.github/workflows/ci.yml +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/.github/workflows/docs.yml +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/.github/workflows/nightly-model.yml +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/.github/workflows/release-pypi.yml +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/.gitignore +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/.python-version +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/CLAUDE.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/LESSONS.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/Makefile +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/README.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/CLAUDE.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/admin-showcase.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/admin-showcase.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/architecture.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/architecture.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/changelog.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/changelog.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/contributing.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/contributing.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/fullstack-web.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/fullstack-web.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/getting-started/first-project.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/getting-started/first-project.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/getting-started/python-versions.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/getting-started/python-versions.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/getting-started/references.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/getting-started/references.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/getting-started/uv.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/getting-started/uv.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/index.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/index.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/installation.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/installation.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/integrated.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/integrated.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/learning/index.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/learning/index.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/learning/marketplace/api.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/learning/marketplace/api.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/learning/marketplace/business-rules.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/learning/marketplace/business-rules.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/learning/marketplace/domain.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/learning/marketplace/domain.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/learning/marketplace/flows.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/learning/marketplace/flows.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/learning/marketplace/index.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/learning/marketplace/index.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/marketplace-local.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/marketplace-local.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/migration.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/migration.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/admin-sql-console.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/admin-sql-console.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/admin.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/admin.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/agents-advanced.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/agents-advanced.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/agents-architecture.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/agents-architecture.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/agents-concepts.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/agents-concepts.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/agents-db.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/agents-db.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/agents-testing.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/agents-testing.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/agents.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/agents.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/app-errors.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/app-errors.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/artifact-registry.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/artifact-registry.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/asyncapi-client.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/asyncapi-client.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/audit-trail.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/audit-trail.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/auth-flow.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/auth-flow.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/authz.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/authz.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/br-helpers.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/br-helpers.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/cache.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/cache.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/chat.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/chat.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/cli.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/cli.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/database.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/database.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/deploy-safety.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/deploy-safety.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/downloads.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/downloads.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/email.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/email.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/enum-columns.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/enum-columns.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/faces.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/faces.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/fakes.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/fakes.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/feature-flags.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/feature-flags.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/fields.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/fields.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/file-store.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/file-store.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/firebase-auth.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/firebase-auth.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/geo.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/geo.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/hostbridge.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/hostbridge.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/http-client.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/http-client.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/http.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/http.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/idempotency.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/idempotency.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/image-generation.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/image-generation.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/index.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/index.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/introspection-auth.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/introspection-auth.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/jobs.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/jobs.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/logging.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/logging.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/management-commands.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/management-commands.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/mercado-pago.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/mercado-pago.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/metrics.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/metrics.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/mfa.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/mfa.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/migrations.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/migrations.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/model-weights.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/model-weights.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/modelops.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/modelops.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/multi-tenant.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/multi-tenant.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/oauth.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/oauth.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/observability.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/observability.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/offline-sync.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/offline-sync.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/openapi-client.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/openapi-client.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/openapi-errors.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/openapi-errors.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/openpix-subscriptions.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/openpix-subscriptions.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/openpix.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/openpix.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/outbox.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/outbox.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/pdf.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/pdf.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/permission-guards.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/permission-guards.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/pix-protocol.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/pix-protocol.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/push.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/push.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/query-plans.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/query-plans.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/queue-tasks.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/queue-tasks.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/react-spa.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/react-spa.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/realtime.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/realtime.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/refresh-tokens.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/refresh-tokens.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/reviews.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/reviews.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/security.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/security.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/sessions.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/sessions.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/spreadsheets.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/spreadsheets.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/sse.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/sse.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/ssr-actions.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/ssr-actions.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/storage.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/storage.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/stored-files.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/stored-files.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/stripe.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/stripe.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/system-checks.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/system-checks.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/tempestweb-frontend.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/tempestweb-frontend.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/testing.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/testing.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/text-search.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/text-search.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/transactions.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/transactions.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/transcription-pipeline.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/transcription-pipeline.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/typing.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/typing.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/ui-css.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/ui-css.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/ui-forms.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/ui-forms.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/ui.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/ui.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/uploads.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/uploads.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/utilities.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/utilities.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/vision.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/vision.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/webauthn.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/webauthn.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/webpush.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/webpush.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/websocket.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/websocket.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/zap-inbound.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/zap-inbound.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/zap.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/recipes/zap.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/reference.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/reference.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/roadmap.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/roadmap.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/ssr.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/ssr.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/tutorial.en.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/docs/tutorial.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/mkdocs.yml +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/mkdocs_hooks/llmstxt.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/planning/genai/README.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/planning/genai/manual-validation.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/planning/genai/phase-0.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/planning/genai/phase-1.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/planning/genai/phase-2.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/planning/genai/phase-3.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/planning/genai/validation-strategy.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/scripts/export_order.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/scripts/extract_recipe.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/scripts/face_separation.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/scripts/mercadopago_diff.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/scripts/mercadopago_overlay.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/scripts/openpix_diff.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/scripts/openpix_overlay.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/scripts/regen_mercado_pago.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/scripts/regen_openpix.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/scripts/regen_stripe.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/scripts/regen_zap.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/scripts/regen_zap_ws.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/actions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/auth.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/config.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/dashboard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/discovery.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/forms.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/permissions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/session.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/site.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/sql_shell.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/static/admin.css +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/tasks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/templates/autocomplete.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/templates/base.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/templates/dashboard.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/templates/detail.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/templates/form.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/templates/import.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/templates/list.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/templates/login.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/templates/logs.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/templates/mfa.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/templates/sql_shell.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/templates/task_detail.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/templates/tasks.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/admin/theme.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/agent.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/builtin.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/fact_stores.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/loop.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/memory.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/multi.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/protocols.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/skills.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/storage.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/structured.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/testing.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/tools.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/agents/typed.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/cookies.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/dependencies/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/dependencies/auth.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/dependencies/signed_url.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/error_docs.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/handlers.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/_exempt.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/_streaming.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/access_log.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/body_size.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/cors.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/csrf.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/error_envelope.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/graceful.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/honeypot.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/idempotency.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/quota.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/rate_limit.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/request_id.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/middlewares/response_cache.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/oauth.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/oidc_verifier.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/redaction.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/routers/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/routers/health.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/routers/logs.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/routers/metrics.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/routers/tool_spec.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/server.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/spa.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/static.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/tracing.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/api/webhooks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/app_errors/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/app_errors/constants.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/app_errors/models.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/app_errors/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/app_errors/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/app_errors/service.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/artifacts/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/artifacts/actions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/artifacts/digest.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/artifacts/model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/artifacts/registry.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/asyncapi/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/asyncapi/emit_stream.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/asyncapi/generate.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/asyncapi/ir.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/asyncapi/loader.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/asyncapi/parse.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/exceptions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/firebase.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/guards.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/introspection.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/locale.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/page_renderer.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/service.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/en-US/activation.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/en-US/activation_error.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/en-US/activation_success.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/en-US/email_change.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/en-US/email_change_error.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/en-US/email_change_success.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/en-US/email_changed_notice.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/en-US/email_verification.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/en-US/email_verification_error.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/en-US/email_verification_success.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/en-US/password_reset.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/en-US/password_reset_error.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/en-US/password_reset_form.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/en-US/password_reset_success.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/pt-BR/activation.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/pt-BR/activation_error.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/pt-BR/activation_success.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/pt-BR/email_change.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/pt-BR/email_change_error.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/pt-BR/email_change_success.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/pt-BR/email_changed_notice.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/pt-BR/email_verification.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/pt-BR/email_verification_error.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/pt-BR/email_verification_success.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/pt-BR/password_reset.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/pt-BR/password_reset_error.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/pt-BR/password_reset_form.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/templates/pt-BR/password_reset_success.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/token_delivery.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/auth/webauthn.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/authz/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/authz/dependencies.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/authz/permissions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/authz/requires.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cache/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cache/decorator.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cache/invalidation.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cache/redis_manager.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/chat/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/chat/constants.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/chat/models.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/chat/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/chat/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/chat/service.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/checks/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/checks/builtins.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/checks/messages.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/checks/registry.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/CLAUDE.md.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/Dockerfile.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/README.md.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/dockerignore.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/env.example.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/gitignore.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/main.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/pyproject.toml.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/__init__.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/api/__init__.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/api/app.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/api/dependencies/__init__.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/api/dependencies/auth.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/api/dependencies/resources.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/api/routers/__init__.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/controllers/__init__.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/core/__init__.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/core/exceptions.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/core/settings.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/db/__init__.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/db/configs/__init__.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/db/configs/names.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/db/models/__init__.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/db/models/user.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/db/repositories/__init__.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/schemas/__init__.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/server.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/services/__init__.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/src/utils/__init__.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/tests/__init__.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/_templates/tests/test_smoke.py.tmpl +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/agents.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/cache.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/commands.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/config.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/db.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/docker_compose.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/doctor.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/email.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/flags.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/generate.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/integrations.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/lint.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/main.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/new.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/openapi_errors.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/openapi_export.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/openapi_fix.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/pdf.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/permissions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/pr_prompt.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/project.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/queue.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/routes.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/secrets.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/serve.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/shell.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/src_layers.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/storage.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/tasks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/user.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/cli/voice.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/controllers/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/controllers/base.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/core/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/core/context.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/core/enums.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/core/logging.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/core/typed.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/_alembic_templates/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/_alembic_templates/env.py.template +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/alembic_hooks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/audit.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/backup.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/connection.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/datetime_type.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/device_token_model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/enum_migrations.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/enums.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/explain.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/expressions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/integrity.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/migrations.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/mixins.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/naming.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/outbox.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/repository.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/search.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/signals.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/slow_query.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/tenant.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/transaction.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/user_model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/user_oauth_account_model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/user_recovery_code_model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/user_refresh_token_model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/user_token_model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/user_webauthn_credential_model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/voice_profile_model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/db/webpush_subscription_model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/base.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/conflict.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/factories.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/forbidden.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/i18n.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/jwt.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/not_found.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/oauth.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/signed_url.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/too_many_requests.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/unauthorized.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/upload.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/validation.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/exceptions/value_errors.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/faces/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/faces/detector.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/faces/geometry.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/faces/models.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/faces/recognizer.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/faces/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/flags/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/flags/backends.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/flags/dependencies.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/flags/service.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/admin.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/audio/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/audio/conversation.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/audio/diarization.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/audio/language.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/audio/profiles.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/audio/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/audio/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/audio/speaker_count.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/audio/stt.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/audio/tts.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/audio/voiceprint.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/batching.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/catalog.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/embeddings.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/generation_cache.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/hub.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/image.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/inventory.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/metrics.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/moderation.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/ollama.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/onnx_embed.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/openai_compat.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/pipeline.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/rag/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/rag/chroma.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/rag/chunking.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/rag/context.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/rag/extract.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/rag/fusion.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/rag/hybrid.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/rag/pdf.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/rag/rerank.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/rag/retriever.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/rag/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/rag/search.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/rag/vectorstore.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/registry.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/structured.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/tokens.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/tracing.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/usage.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/vision_text.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/geo/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/geo/br.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/geo/db.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/geo/distance.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/geo/enums.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/geo/estimate.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/geo/geocoding.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/geo/geometry.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/geo/polyline.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/geo/routing.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/geo/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/hostbridge/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/hostbridge/bridge.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/hostbridge/config.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/hostbridge/exceptions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/hostbridge/paths.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/hostbridge/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/hostbridge/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/hostbridge/shell.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/CLAUDE.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/messaging/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/messaging/zap/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/messaging/zap/client.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/messaging/zap/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/messaging/zap/webhooks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/messaging/zap_ws/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/messaging/zap_ws/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/messaging/zap_ws/stream.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/adapters/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/adapters/openpix.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/base.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/mercado_pago/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/mercado_pago/client.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/mercado_pago/environment.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/mercado_pago/events.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/mercado_pago/money.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/mercado_pago/pix.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/mercado_pago/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/mercado_pago/webhooks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/openpix/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/openpix/client.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/openpix/environment.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/openpix/events.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/openpix/money.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/openpix/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/openpix/webhooks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/stripe/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/stripe/client.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/stripe/environment.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/stripe/events.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/stripe/money.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/stripe/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/integrations/payment/stripe/webhooks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/_fs.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/bench.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/compact.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/compose.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/edge.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/energy.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/export.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/monitoring.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/pickled.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/quantize.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/ranking.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/serving.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/sklearn.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/modelops/static.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/openapi/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/openapi/emit_client.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/openapi/emit_schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/openapi/generate.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/openapi/ir.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/openapi/loader.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/openapi/naming.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/openapi/parse.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/openapi/source.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/assets.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/documents.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/formatting.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/pages.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/qr.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/reader.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/renderer.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/templates/_base.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/templates/_party.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/templates/_styles.css +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/templates/contract.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/templates/quote.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/templates/receipt.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/templates/report.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/pdf/templates/voucher.html +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/push/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/push/dispatcher.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/push/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/push/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/push/service.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/push/transports/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/push/transports/fcm.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/push/transports/webpush.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/py.typed +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/queue/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/queue/broker.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/queue/consumer.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/queue/dedup.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/queue/manager.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/queue/publisher.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/queue/reliability.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/queue/topology.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/queue/tracing.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/reviews/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/reviews/models.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/reviews/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/reviews/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/reviews/service.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/schemas/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/schemas/base.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/schemas/errors.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/schemas/link_headers.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/schemas/logs.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/schemas/pagination.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/schemas/response.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/services/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/services/base.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/services/file_mixin.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/sessions/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/sessions/authenticator.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/sessions/dependencies.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/sessions/middleware.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/sessions/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/sessions/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/sessions/service.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/sessions/store.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/settings/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/settings/base.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/settings/mixins.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/spreadsheet/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/spreadsheet/formats.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/spreadsheet/google.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/spreadsheet/styles.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/spreadsheet/writer.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/sse/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/sse/broker.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/sse/event_stream.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ssr/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ssr/_static/confirm.js +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ssr/_static/htmx.min.js +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ssr/assets.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ssr/attributes.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ssr/errors.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ssr/flashes.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ssr/page.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ssr/redirects.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ssr/response.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ssr/webapp.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/storage/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/storage/minio_client.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/tasks/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/tasks/cancellation.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/tasks/cron.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/tasks/dead_letter.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/tasks/jobs.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/tasks/lock.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/tasks/manager.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/tasks/observability.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/tasks/oop.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/tasks/progress.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/tasks/queue.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/tasks/scheduler.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/tasks/stages.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/testing/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/testing/database.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/testing/factories.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/testing/fakes/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/testing/fakes/_control.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/testing/fakes/email.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/testing/fakes/genai.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/testing/fakes/geo.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/testing/fakes/payment.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/testing/fakes/push.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/testing/fakes/search.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/_core.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/components/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/components/alert.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/components/card.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/components/classes.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/components/empty.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/components/flash.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/components/nav.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/components/pagination.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/components/styles.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/components/table.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/css/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/css/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/css/rules.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/css/tokens.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/forms/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/forms/introspect.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/forms/parse.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/forms/render.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/forms/spec.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/forms/styles.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/layout/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/layout/grid.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/layout/shell.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/pages/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/pages/error.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/pages/page.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/ui/stylesheet.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/_http_cache.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/_lifecycle.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/client_ip.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/currency.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/data/br_locations.json +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/datetime.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/dict.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/download.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/email.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/fields.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/file_store.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/forms.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/http_client.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/jwt.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/locations.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/log.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/media_types.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/metrics.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/naming.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/opaque_token.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/password.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/regex.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/retry.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/signed_url.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/storage_backends.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/throttle.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/token_types.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/totp.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/utils/upload.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/vision/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/vision/mapping.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/vision/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/vision/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/webpush/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/webpush/dispatcher.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/webpush/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/webpush/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/webpush/service.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/websockets/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/websockets/heartbeat.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/websockets/hub.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/websockets/router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/websockets/schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/CLAUDE.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_actions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_audit_viewer.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_auth.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_autocomplete_fk.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_csv_import.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_dashboard_cards.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_discovery.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_display_timezone.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_exclude_fields.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_form_error_rollback.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_forms.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_inlines.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_lenses.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_logs_nav.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_logs_traceback_export.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_mfa.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_password_field.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_rbac.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_rich_filters.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_site.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_sql_shell.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_sql_shell_page.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_tasks_panel.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_theme.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_upload_field.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_user_model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/admin/test_widgets_json_time.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/agents/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/agents/test_agent.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/agents/test_agent_limits.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/agents/test_agent_router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/agents/test_builtin_tools.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/agents/test_fact_stores.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/agents/test_loop.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/agents/test_memory.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/agents/test_multi_agent.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/agents/test_skills.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/agents/test_structured.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/agents/test_typed_tools.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_access_log.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_body_size.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_business_metrics.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_client_error_envelope.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_cookies.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_cors.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_csrf.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_dependencies_auth.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_error_docs.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_error_envelope.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_error_field.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_graceful.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_handlers.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_health_router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_honeypot.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_idempotency.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_jwt_dependency.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_log_redaction.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_logs_router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_middleware_exempt_semantics.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_oauth.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_oidc_introspection.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_oidc_verifier.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_outbound_webhooks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_prometheus.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_quota.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_quota_redis_live.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_rate_limit.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_rate_limit_envelope.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_rate_limit_extras.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_rate_limit_fail_open.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_rate_limit_redis_proxy.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_request_id_middleware.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_response_cache.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_role_dependency.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_server.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_server_error_notify.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_signed_path_dependency.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_spa.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_static.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_streaming_passthrough.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_token_type_strict.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_tool_spec.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_tracing.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_validation_envelope.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_webhooks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/api/test_webhooks_rsa.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/app_errors/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/app_errors/test_app_errors.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/artifacts/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/artifacts/support.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/artifacts/test_actions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/artifacts/test_digest.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/artifacts/test_registry.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/asyncapi/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/asyncapi/conftest.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/asyncapi/test_generate.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/asyncapi/test_loader.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/asyncapi/test_parse.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_activation_resend.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_backend_links_dependencies.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_cookie_delivery.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_email_change.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_expire_on_commit.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_firebase.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_guards.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_introspection.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_locale.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_me.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_mfa.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_oauth_login.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_oauth_token_login.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_refresh.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_refresh_db.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_router_session_sharing.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_service.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_signup_extension.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_signup_mounting.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_token_supersede.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/test_webauthn.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/auth/webauthn_authenticator.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/authz/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/authz/test_dependencies.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/authz/test_permissions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/authz/test_requires.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cache/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cache/test_decorator.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cache/test_invalidation.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cache/test_redis_manager.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/chat/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/chat/test_attachment_uploader_migration.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/chat/test_chat.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/chat/test_messenger.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/chat/test_messenger_router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/chat/test_router_stream.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/checks/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/checks/test_check_config_cli.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/checks/test_checks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_agents.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_config.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_db.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_db_alembic_errors.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_db_resolution.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_db_seed.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_docker_compose.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_docker_compose_live.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_dockerfile_spa.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_doctor.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_email_storage.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_flags_cache.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_generate.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_integrations.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_main.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_management_commands.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_new_required_extras.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_openapi_errors.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_openapi_errors_bare_calls.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_openapi_errors_callgraph.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_openapi_errors_configured.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_openapi_errors_delegation.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_openapi_export.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_openapi_fix.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_permissions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_project_claude_md.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_quality_gate_integration.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_queue_tasks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_routes.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_scaffold_placeholders.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_scaffold_runtime.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_secrets.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_serve.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_shell.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_src_layers_import.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/cli/test_user.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/conftest.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/controllers/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/controllers/test_base.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/controllers/test_controller.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/controllers/test_generic_bounds.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/core/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/core/test_context.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/core/test_enums.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/core/test_logging.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/core/test_typed.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_alembic_hooks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_audit.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_backup.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_bulk_ops.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_connection.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_cursor_types.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_eager_load.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_enum_column.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_enum_migrations.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_explain.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_expressions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_integrity.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_integrity_live.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_integrity_sqlalchemy_matrix.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_migrations.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_migrations_async.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_mixins.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_model.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_naming.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_naming_live.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_none_filter_is_null.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_outbox.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_repository.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_repository_conflict_exceptions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_repository_order_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_safe_upgrade.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_schema_sync.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_search.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_session_helpers.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_signals.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_slow_query.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_sqlite_wal.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_table_name.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_tenant.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_transaction.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/db/test_utc_datetime.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/exceptions/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/exceptions/test_exceptions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/exceptions/test_factories.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/exceptions/test_i18n.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/exceptions/test_inherited_code_warning.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/exceptions/test_value_error_codes.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/faces/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/faces/test_faces.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/flags/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/flags/test_flags.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/_eval/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/_eval/corpus.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/audio/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/audio/test_audio.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/audio/test_audio_runtime_extra.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/audio/test_concurrency.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/audio/test_diarization.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/audio/test_diarization_models.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/audio/test_language.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/audio/test_profiles.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/audio/test_speaker_count.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/audio/test_stt_loading.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/audio/test_tts_tempfile.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/audio/test_voice_router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/conftest.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_batching.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_chat_memory.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_chat_memory_ranking.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_embedding_cache_redis.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_embeddings.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_env_defaults.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_eval_harness.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_genai_metrics.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_genai_observability.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_generation_cache.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_generation_config.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_generator_defaults.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_gpu_validation.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_hardware_nvml.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_hub.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_hybrid.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_image.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_inventory.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_lifecycle.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_moderation.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_ollama.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_onnx_embed.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_openai_compat.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_pipeline.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_pipeline_integration.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_precision_kwarg.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_rag.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_rag_extract_pinning.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_rag_identity.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_refinements.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_registry.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_rerank.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_router_limits.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_structured.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_structured_extraction.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_structured_parity.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_structured_retry.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_text_cancellation.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_text_concurrency.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_text_lifecycle.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_text_seed.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_textgen_embed_metrics.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_tokens.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_tracing.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_usage.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_usage_cache_hit.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_vectorstore.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_vectorstore_ann.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_vectorstore_pg_live.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_vision_text.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/genai/test_vision_text_config.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/geo/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/geo/test_br.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/geo/test_db.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/geo/test_db_postgres_live.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/geo/test_distance.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/geo/test_estimate.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/geo/test_geocoding.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/geo/test_geometry.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/geo/test_polyline.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/geo/test_routing.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/geo/test_routing_extra.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/hostbridge/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/hostbridge/conftest.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/hostbridge/test_bridge_files.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/hostbridge/test_bridge_host.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/hostbridge/test_messages.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/hostbridge/test_paths.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/hostbridge/test_router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/hostbridge/test_shell.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/messaging/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/messaging/zap/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/messaging/zap/test_generated_drift.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/messaging/zap/test_webhooks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/messaging/zap_ws/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/messaging/zap_ws/test_generated_drift.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/adapters/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/adapters/test_openpix_adapter.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/adapters/test_openpix_adapter_wire.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/mercado_pago/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/mercado_pago/test_generated_drift.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/mercado_pago/test_mercado_pago.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/mercado_pago/test_overlay.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/mercado_pago/test_pix.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/mercado_pago/test_provenance.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/mercado_pago/test_sdk_coverage.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/openpix/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/openpix/test_generated_drift.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/openpix/test_openpix.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/openpix/test_overlay.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/openpix/test_real_payload_shapes.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/openpix/test_request_body_shape.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/openpix/test_spec_type_conflicts.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/stripe/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/stripe/test_client.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/stripe/test_generated_drift.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/stripe/test_money.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/stripe/test_webhooks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/integrations/payment/test_contract.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/conftest.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/test_bench.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/test_compact.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/test_compose.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/test_edge.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/test_energy.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/test_export.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/test_monitoring.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/test_pickled.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/test_quantize.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/test_ranking.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/test_router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/test_serving.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/test_sklearn_export.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/modelops/test_static.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/openapi/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/openapi/conftest.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/openapi/test_divergent_success.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/openapi/test_form_bodies.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/openapi/test_generate.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/openapi/test_hostile_spec.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/openapi/test_loader.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/openapi/test_multipart_bodies.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/openapi/test_naming.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/openapi/test_nested_capture.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/openapi/test_parse.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/openapi/test_payload_arrays.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/openapi/test_raw_responses.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/pdf/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/pdf/test_assets.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/pdf/test_formatting.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/pdf/test_pages.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/pdf/test_qr.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/pdf/test_reader.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/pdf/test_renderer.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/pdf/test_router_and_cli.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/push/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/push/test_router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/push/test_service.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/push/test_transports.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/queue/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/queue/test_broker.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/queue/test_consumer.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/queue/test_dedup.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/queue/test_manager.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/queue/test_prefetch.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/queue/test_publisher.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/queue/test_reliability.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/queue/test_topology.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/queue/test_tracing.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/reviews/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/reviews/test_reviews.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/schemas/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/schemas/test_base.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/schemas/test_cursor_pagination.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/schemas/test_errors.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/schemas/test_link_headers.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/schemas/test_pagination.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/schemas/test_pagination_order_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/schemas/test_response.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/services/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/services/test_base.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/services/test_file_mixin.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/sessions/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/sessions/test_credentials_html.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/sessions/test_session_dependency_factory.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/sessions/test_sessions.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/settings/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/settings/test_base.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/settings/test_mixins.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/settings/test_session_cookie_kwargs.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/spreadsheet/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/spreadsheet/test_formats.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/spreadsheet/test_google.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/spreadsheet/test_writer.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/sse/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/sse/test_broker.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/sse/test_event_stream.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ssr/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ssr/test_attributes.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ssr/test_confirm.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ssr/test_flashes.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ssr/test_html_errors.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ssr/test_integration.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ssr/test_page.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ssr/test_page_document.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ssr/test_redirects.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ssr/test_response.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ssr/test_web_app_theme.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ssr/test_webapp.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/storage/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/storage/test_accel_redirect_live.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/storage/test_download_live.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/storage/test_minio_client.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/storage/test_signed_url_live.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_cancellation.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_cron.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_dead_letter.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_jobs.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_jobs_cancellation.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_manager.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_observability.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_oop.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_progress.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_queue.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_queue_from_settings.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_queue_lifecycle_hooks.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_scheduler.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_scheduler_lease.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/tasks/test_stages.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_agent_docs_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_alias_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_constraint_shape_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_docs_api_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_docs_examples_compile.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_docs_examples_names.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_docs_method_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_docs_organization.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_docs_signature_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_docs_type_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_docstring_example_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_enum_schema_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_i18n_coverage_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_kwargs_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_llmstxt.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_lock_version_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_protocol_shape_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_pydantic_error_types_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_pydantic_mypy_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_reexport_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_reference_coverage.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_schedule_projection_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_sdist_payload.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_settings_passthrough_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_testclient_httpx2_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_timeout_method_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_vacuous_guard.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_version_agreement.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/test_wheel_payload.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/testing/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/testing/test_database.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/testing/test_factories.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/testing/test_fakes_behaviour.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/testing/test_fakes_contract.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/test_components.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/test_core_contract.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/test_css.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/test_css_router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/test_forms_dependency.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/test_forms_file.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/test_forms_help_text.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/test_forms_hidden.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/test_forms_introspect.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/test_forms_parse.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/test_forms_render.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/test_integration.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/test_layout_and_pages.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/ui/test_stylesheet.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_client_ip.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_currency.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_datetime.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_dict.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_download.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_email.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_fields.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_file_store.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_forms.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_http_client.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_jwt.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_lazy_extras.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_locations.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_log.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_media_types.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_metrics.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_opaque_token.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_password.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_regex.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_retry.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_signed_url.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_storage_backends.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_throttle.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_token_types.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_upload.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/utils/test_upload_signature_policy.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/vision/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/vision/test_detect_classify.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/vision/test_router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/vision/test_vision.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/webpush/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/webpush/test_dispatcher.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/webpush/test_router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/webpush/test_schemas.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/webpush/test_service.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/websockets/__init__.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/websockets/test_heartbeat.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/websockets/test_hub_and_router.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tests/websockets/test_router_live.py +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/vendor/PROVENANCE.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/vendor/mercadopago-evidence.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/vendor/mercadopago-openapi.yaml +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/vendor/openpix-evidence.md +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/vendor/openpix-openapi.json +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/vendor/stripe-api-facts.yaml +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/vendor/zap-asyncapi.yaml +0 -0
- {tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/vendor/zap-openapi.yaml +0 -0
|
@@ -7,6 +7,48 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.303.1] — 2026-10-04
|
|
11
|
+
|
|
12
|
+
O planejador de hardware passa a dimensionar CPU na precisão que o gerador
|
|
13
|
+
de fato carrega (`float32`), e o offload quantizado que ele sugere fica na
|
|
14
|
+
CPU mesmo com GPU visível.
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
|
|
18
|
+
- **`can_run(dtype=...)` agora tem default `None`**, que dimensiona na
|
|
19
|
+
precisão que o `TextGenerator(dtype="auto")` carrega no device escolhido:
|
|
20
|
+
`bfloat16` em CUDA/MPS (igual a antes), **`float32` em CPU** (antes
|
|
21
|
+
`bfloat16`). `dtype=` explícito continua valendo. `recommend()` tenta a
|
|
22
|
+
precisão nativa → `int8` → `int4`; em GPU a ordem é a mesma de antes. O
|
|
23
|
+
`CapacityReport` não mudou de forma; muda o `dtype`/`estimated_bytes`
|
|
24
|
+
que ele traz para CPU.
|
|
25
|
+
- A `suggestion` de quantizar em CPU acrescenta que o bitsandbytes em CPU
|
|
26
|
+
decodifica mais devagar que `float32` e aponta o `OllamaGenerator`
|
|
27
|
+
(GGUF) como o caminho de CPU. Medido no Qwen2.5-3B: `generate()` de até
|
|
28
|
+
16 tokens em ~9 s com int8/int4 contra ~3 s em `float32`.
|
|
29
|
+
|
|
30
|
+
### Fixed
|
|
31
|
+
|
|
32
|
+
- **O planejador subdimensionava CPU pela metade.** Sem `dtype=`,
|
|
33
|
+
`can_run`/`recommend` estimavam CPU em `bfloat16` enquanto o gerador
|
|
34
|
+
carrega `float32`: para o Qwen2.5-0.5B a estimativa era 1,24 GB e o RSS
|
|
35
|
+
medido após o `load()` foi 2,13 GB (transformers 4.57.6) / 2,12 GB
|
|
36
|
+
(5.18.0); para o 3B, 7,71 GB contra 12,51 / 12,48 GB. Agora a estimativa
|
|
37
|
+
é 2,47 GB / 15,43 GB.
|
|
38
|
+
- A `suggestion` em CPU não propõe mais "Quantize to bfloat16" (não é
|
|
39
|
+
quantização, e o `TextGenerator` recusa `quantization="bfloat16"`).
|
|
40
|
+
- **`TextGenerator(device="cpu", quantization="int8"|"int4")` carregava na
|
|
41
|
+
GPU** quando havia CUDA: o caminho quantizado passava sempre
|
|
42
|
+
`device_map="auto"`, e o `accelerate` punha os pesos em `cuda:0`
|
|
43
|
+
enquanto `gen.device` dizia `"cpu"` — o offload que o `can_run` sugere
|
|
44
|
+
era irrealizável. Agora usa `device_map="cpu"` quando o device é CPU
|
|
45
|
+
(medido com CUDA visível, Qwen2.5-0.5B, transformers 4.57.6 +
|
|
46
|
+
bitsandbytes 0.50.2: todos os parâmetros em `cpu` em 6/6 loads, N=3 por
|
|
47
|
+
int8/int4; o código anterior pôs o int4 em `cuda:0`).
|
|
48
|
+
- O exemplo de `recommend()` em `genai-examples` lia `rec.dtype.value`,
|
|
49
|
+
que levanta `AttributeError`: o `CapacityReport` guarda o valor do enum
|
|
50
|
+
(`use_enum_values`), então `rec.dtype` já é a string.
|
|
51
|
+
|
|
10
52
|
## [0.303.0] — 2026-10-03
|
|
11
53
|
|
|
12
54
|
Auditoria da documentação contra o código entregue: 150 afirmações da doc
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: tempest-fastapi-sdk
|
|
3
|
-
Version: 0.303.
|
|
3
|
+
Version: 0.303.1
|
|
4
4
|
Summary: Shared FastAPI building blocks: base schemas, ORM model, async repository, exceptions, pagination and settings — the conventions used across Tempest projects.
|
|
5
5
|
Project-URL: Homepage, https://github.com/mauriciobenjamin700/tempest-fastapi-sdk
|
|
6
6
|
Project-URL: Repository, https://github.com/mauriciobenjamin700/tempest-fastapi-sdk
|
|
@@ -613,7 +613,9 @@ The SDK currently covers (Sep 2025+, post-v0.31.x):
|
|
|
613
613
|
in slices. **Shipped (v0.96):** hardware capacity check — `probe_hardware`
|
|
614
614
|
→ `HardwareInfo` (CPU/RAM/CUDA-VRAM/MPS/disk, degrades without
|
|
615
615
|
psutil/torch), `can_run`/`recommend` → `CapacityReport` (fits? device,
|
|
616
|
-
estimate vs available, suggestion to quantize/offload
|
|
616
|
+
estimate vs available, suggestion to quantize/offload; since v0.303.1 an unquantized load is sized at the precision
|
|
617
|
+
`TextGenerator(dtype="auto")` loads — `float32` on CPU, not `bfloat16`,
|
|
618
|
+
measured RSS in `docs/recipes/genai.md#em-cpu`), `estimate_model_bytes`/
|
|
617
619
|
`bytes_per_param`/`fetch_num_params` (Hub metadata, no weight download),
|
|
618
620
|
`ModelDtype`. Capacity fns import WITHOUT the extra. **Shipped (v0.98) —
|
|
619
621
|
`TextGenerator`**: local causal LM (`generate`/`chat`/`stream` async via
|
|
@@ -16,7 +16,7 @@ import asyncio
|
|
|
16
16
|
from tempest_fastapi_sdk.genai import TextGenerator, recommend
|
|
17
17
|
|
|
18
18
|
MODEL = "Qwen/Qwen2.5-7B-Instruct"
|
|
19
|
-
rec = recommend(model_id=MODEL) #
|
|
19
|
+
rec = recommend(model_id=MODEL) # native (bf16 GPU, fp32 CPU) -> int8 -> int4
|
|
20
20
|
|
|
21
21
|
if not rec.fits:
|
|
22
22
|
raise RuntimeError(rec.reason + " " + (rec.suggestion or ""))
|
|
@@ -24,7 +24,7 @@ if not rec.fits:
|
|
|
24
24
|
gen = TextGenerator(
|
|
25
25
|
MODEL,
|
|
26
26
|
device=rec.device,
|
|
27
|
-
quantization=rec.dtype
|
|
27
|
+
quantization=rec.dtype if rec.dtype in ("int8", "int4") else None,
|
|
28
28
|
idle_unload_seconds=300, # threshold for unload_if_idle()
|
|
29
29
|
)
|
|
30
30
|
|
|
@@ -16,7 +16,7 @@ import asyncio
|
|
|
16
16
|
from tempest_fastapi_sdk.genai import TextGenerator, recommend
|
|
17
17
|
|
|
18
18
|
MODEL = "Qwen/Qwen2.5-7B-Instruct"
|
|
19
|
-
rec = recommend(model_id=MODEL) #
|
|
19
|
+
rec = recommend(model_id=MODEL) # nativa (bf16 GPU, fp32 CPU) -> int8 -> int4
|
|
20
20
|
|
|
21
21
|
if not rec.fits:
|
|
22
22
|
raise RuntimeError(rec.reason + " " + (rec.suggestion or ""))
|
|
@@ -24,7 +24,7 @@ if not rec.fits:
|
|
|
24
24
|
gen = TextGenerator(
|
|
25
25
|
MODEL,
|
|
26
26
|
device=rec.device,
|
|
27
|
-
quantization=rec.dtype
|
|
27
|
+
quantization=rec.dtype if rec.dtype in ("int8", "int4") else None,
|
|
28
28
|
idle_unload_seconds=300, # limiar do unload_if_idle()
|
|
29
29
|
)
|
|
30
30
|
|
|
@@ -37,9 +37,9 @@ Loading a too-large model ends in an OOM minutes into the download.
|
|
|
37
37
|
`can_run` answers first:
|
|
38
38
|
|
|
39
39
|
```python
|
|
40
|
-
from tempest_fastapi_sdk.genai import can_run
|
|
40
|
+
from tempest_fastapi_sdk.genai import can_run
|
|
41
41
|
|
|
42
|
-
report = can_run(model_id="Qwen/Qwen2.5-7B-Instruct"
|
|
42
|
+
report = can_run(model_id="Qwen/Qwen2.5-7B-Instruct")
|
|
43
43
|
|
|
44
44
|
if report.fits:
|
|
45
45
|
print(f"OK on {report.device} — {report.headroom_pct:.0f}% headroom")
|
|
@@ -53,9 +53,15 @@ else:
|
|
|
53
53
|
concrete `suggestion` when it doesn't fit (quantize, offload to CPU, or
|
|
54
54
|
pick a smaller model).
|
|
55
55
|
|
|
56
|
+
Without `dtype=`, `can_run` sizes the precision `TextGenerator(dtype="auto")`
|
|
57
|
+
loads on the chosen device: `bfloat16` on CUDA/MPS, `float32` on CPU. Pass
|
|
58
|
+
`dtype=` to plan for something else — an explicit `dtype=` on the
|
|
59
|
+
generator, or `ModelDtype.INT8`/`INT4` for `quantization=`.
|
|
60
|
+
|
|
56
61
|
!!! tip "Let the SDK pick the precision"
|
|
57
|
-
`recommend(...)` tries
|
|
58
|
-
|
|
62
|
+
`recommend(...)` tries the native precision of the best available
|
|
63
|
+
device (`bfloat16` on a GPU, `float32` on CPU) → `int8` → `int4` and
|
|
64
|
+
returns the **first** config that fits:
|
|
59
65
|
|
|
60
66
|
```python
|
|
61
67
|
from tempest_fastapi_sdk.genai import recommend
|
|
@@ -64,6 +70,56 @@ pick a smaller model).
|
|
|
64
70
|
print(best.device, best.dtype, best.fits) # e.g. cuda int8 True
|
|
65
71
|
```
|
|
66
72
|
|
|
73
|
+
### On CPU
|
|
74
|
+
|
|
75
|
+
Up to 0.303.0 the planner sized every unquantized load at `bfloat16`, but
|
|
76
|
+
on CPU `TextGenerator` loads `float32` — twice the bytes. `recommend()`
|
|
77
|
+
said "fits" for a model that did not. CPU is now sized at `float32`, and
|
|
78
|
+
the rung below it is `int8` (never `bfloat16`, which is not a
|
|
79
|
+
quantization).
|
|
80
|
+
|
|
81
|
+
Measured with the GPU hidden (`CUDA_VISIBLE_DEVICES=`), i9-13900F, 62 GB
|
|
82
|
+
RAM, WSL2, torch 2.14, bitsandbytes 0.50.2, N=3 per row. "Measured" is the
|
|
83
|
+
process RSS growth from before to after `load()`, median; transformers
|
|
84
|
+
4.57.6 (the floor) / 5.18.0 (the newest on the day):
|
|
85
|
+
|
|
86
|
+
| Model | Precision | Estimate | Measured (4.57.6 / 5.18.0) |
|
|
87
|
+
| --- | --- | --- | --- |
|
|
88
|
+
| Qwen2.5-0.5B-Instruct | `float32` (was: `bfloat16`) | 2.47 GB (was: 1.24 GB) | 2.13 GB / 2.12 GB |
|
|
89
|
+
| Qwen2.5-0.5B-Instruct | `int8` | 0.62 GB | 0.89 GB / 1.29 GB |
|
|
90
|
+
| Qwen2.5-0.5B-Instruct | `int4` | 0.37 GB | 1.02 GB / 1.62 GB |
|
|
91
|
+
| Qwen2.5-3B-Instruct | `float32` (was: `bfloat16`) | 15.43 GB (was: 7.71 GB) | 12.51 GB / 12.48 GB |
|
|
92
|
+
| Qwen2.5-3B-Instruct | `int8` | 3.86 GB | 3.67 GB / 8.54 GB |
|
|
93
|
+
| Qwen2.5-3B-Instruct | `int4` | 2.31 GB | 3.25 GB / 8.16 GB |
|
|
94
|
+
|
|
95
|
+
What the table says:
|
|
96
|
+
|
|
97
|
+
- **`float32` is what CPU loads**, and the new estimate covers the RSS
|
|
98
|
+
after the load. The peak **during** the load goes past it: 3.12 GB for
|
|
99
|
+
the 0.5B and 14.71 GB / 18.66 GB for the 3B.
|
|
100
|
+
- **bitsandbytes int8/int4 load and generate on CPU** with bitsandbytes
|
|
101
|
+
0.50.2 — no error in the table's 24 quantized runs.
|
|
102
|
+
- **The quantized estimate can be optimistic.** For the 0.5B the measured
|
|
103
|
+
int4 RSS was 2.7× to 4.4× above it (embeddings are not quantized, and
|
|
104
|
+
weigh more in a small model). For the 3B on transformers 4.57.6, int8
|
|
105
|
+
came in below the estimate (3.67 against 3.86 GB) and int4 above it
|
|
106
|
+
(3.25 against 2.31 GB). On transformers 5.18.0 the quantized 3B
|
|
107
|
+
load leaves the process with 5.65 GB of **file-backed** RSS (`RssFile`,
|
|
108
|
+
against 0.36 GB on 4.57.6); the whole process's anonymous memory was
|
|
109
|
+
3.33 GB (int8) and 2.95 GB (int4).
|
|
110
|
+
- **bitsandbytes on CPU is slower than `float32`.** On the 3B, a
|
|
111
|
+
`generate()` capped at 16 tokens took ~9 s at int8/int4 against ~3 s at
|
|
112
|
+
`float32`. That is why a CPU quantization `suggestion` points at the CPU
|
|
113
|
+
path the SDK already ships:
|
|
114
|
+
|
|
115
|
+
!!! tip "On CPU, GGUF through Ollama"
|
|
116
|
+
llama.cpp (build 687e778, `-ngl 0`, context 4096) serving the Q4_K_M
|
|
117
|
+
GGUF that Ollama 0.30.11 pulls for `qwen2.5:3b` sat at 3.60 GB RSS
|
|
118
|
+
(1.61 GB anonymous + 1.99 GB file-backed) and generated 24 to 27
|
|
119
|
+
tokens/s; `qwen2.5:0.5b` sat at 0.66 GB and 107 to 134 tokens/s (N=3
|
|
120
|
+
each). Use [`OllamaGenerator`](#ollama-backend) — memory is in the same
|
|
121
|
+
range as bitsandbytes int4; the measured advantage is speed.
|
|
122
|
+
|
|
67
123
|
## Probing the hardware
|
|
68
124
|
|
|
69
125
|
```python
|
|
@@ -37,9 +37,9 @@ Carregar um modelo grande demais termina num OOM minutos depois do
|
|
|
37
37
|
download começar. `can_run` responde antes:
|
|
38
38
|
|
|
39
39
|
```python
|
|
40
|
-
from tempest_fastapi_sdk.genai import can_run
|
|
40
|
+
from tempest_fastapi_sdk.genai import can_run
|
|
41
41
|
|
|
42
|
-
report = can_run(model_id="Qwen/Qwen2.5-7B-Instruct"
|
|
42
|
+
report = can_run(model_id="Qwen/Qwen2.5-7B-Instruct")
|
|
43
43
|
|
|
44
44
|
if report.fits:
|
|
45
45
|
print(f"OK em {report.device} — {report.headroom_pct:.0f}% de folga")
|
|
@@ -53,9 +53,16 @@ O `CapacityReport` traz: `fits`, `device` (`cuda`/`mps`/`cpu`),
|
|
|
53
53
|
`suggestion` concreta quando não cabe (quantizar, offload pra CPU, ou
|
|
54
54
|
trocar de modelo).
|
|
55
55
|
|
|
56
|
+
Sem `dtype=`, o `can_run` dimensiona na precisão que o
|
|
57
|
+
`TextGenerator(dtype="auto")` carrega no device escolhido: `bfloat16` em
|
|
58
|
+
CUDA/MPS, `float32` em CPU. Passe `dtype=` para planejar outra coisa — um
|
|
59
|
+
`dtype=` explícito no gerador, ou `ModelDtype.INT8`/`INT4` para
|
|
60
|
+
`quantization=`.
|
|
61
|
+
|
|
56
62
|
!!! tip "Deixe o SDK escolher a precisão"
|
|
57
|
-
`recommend(...)` tenta
|
|
58
|
-
|
|
63
|
+
`recommend(...)` tenta a precisão nativa do melhor device disponível
|
|
64
|
+
(`bfloat16` em GPU, `float32` em CPU) → `int8` → `int4` e devolve a
|
|
65
|
+
**primeira** config que cabe:
|
|
59
66
|
|
|
60
67
|
```python
|
|
61
68
|
from tempest_fastapi_sdk.genai import recommend
|
|
@@ -64,6 +71,58 @@ trocar de modelo).
|
|
|
64
71
|
print(best.device, best.dtype, best.fits) # ex.: cuda int8 True
|
|
65
72
|
```
|
|
66
73
|
|
|
74
|
+
### Em CPU
|
|
75
|
+
|
|
76
|
+
Até a 0.303.0 o planejador dimensionava todo load sem quantização em
|
|
77
|
+
`bfloat16`, mas em CPU o `TextGenerator` carrega em `float32` — o dobro
|
|
78
|
+
de bytes. O `recommend()` dizia "cabe" para um modelo que não cabia.
|
|
79
|
+
Agora a CPU é dimensionada em `float32`, e o degrau abaixo é `int8` (nunca
|
|
80
|
+
`bfloat16`, que não é quantização).
|
|
81
|
+
|
|
82
|
+
Medido com o GPU escondido (`CUDA_VISIBLE_DEVICES=`), i9-13900F, 62 GB de
|
|
83
|
+
RAM, WSL2, torch 2.14, bitsandbytes 0.50.2, N=3 por linha. "Medido" é o
|
|
84
|
+
crescimento do RSS do processo entre antes e depois do `load()`, na
|
|
85
|
+
mediana; transformers 4.57.6 (o piso) / 5.18.0 (a mais nova no dia):
|
|
86
|
+
|
|
87
|
+
| Modelo | Precisão | Estimativa | Medido (4.57.6 / 5.18.0) |
|
|
88
|
+
| --- | --- | --- | --- |
|
|
89
|
+
| Qwen2.5-0.5B-Instruct | `float32` (antes: `bfloat16`) | 2,47 GB (antes: 1,24 GB) | 2,13 GB / 2,12 GB |
|
|
90
|
+
| Qwen2.5-0.5B-Instruct | `int8` | 0,62 GB | 0,89 GB / 1,29 GB |
|
|
91
|
+
| Qwen2.5-0.5B-Instruct | `int4` | 0,37 GB | 1,02 GB / 1,62 GB |
|
|
92
|
+
| Qwen2.5-3B-Instruct | `float32` (antes: `bfloat16`) | 15,43 GB (antes: 7,71 GB) | 12,51 GB / 12,48 GB |
|
|
93
|
+
| Qwen2.5-3B-Instruct | `int8` | 3,86 GB | 3,67 GB / 8,54 GB |
|
|
94
|
+
| Qwen2.5-3B-Instruct | `int4` | 2,31 GB | 3,25 GB / 8,16 GB |
|
|
95
|
+
|
|
96
|
+
O que a tabela diz:
|
|
97
|
+
|
|
98
|
+
- **`float32` é o que a CPU carrega**, e a estimativa nova cobre o RSS
|
|
99
|
+
depois do load. O pico **durante** o load passa dela: 3,12 GB no 0,5B
|
|
100
|
+
e 14,71 GB / 18,66 GB no 3B.
|
|
101
|
+
- **int8/int4 via bitsandbytes carregam e geram em CPU** com o
|
|
102
|
+
bitsandbytes 0.50.2 — nenhum erro nas 24 execuções quantizadas da
|
|
103
|
+
tabela.
|
|
104
|
+
- **A estimativa quantizada pode ser otimista.** No 0,5B o RSS medido do int4
|
|
105
|
+
ficou 2,7× a 4,4× acima dela (os embeddings não são quantizados, e
|
|
106
|
+
pesam mais num modelo pequeno). No 3B, no transformers 4.57.6, o int8
|
|
107
|
+
ficou abaixo da estimativa (3,67 contra 3,86 GB) e o int4 acima (3,25
|
|
108
|
+
contra 2,31 GB). No transformers 5.18.0 o load
|
|
109
|
+
quantizado do 3B deixa o processo com 5,65 GB de RSS **mapeado de
|
|
110
|
+
arquivo** (`RssFile`, contra 0,36 GB no 4.57.6); a memória anônima do
|
|
111
|
+
processo inteiro ficou em 3,33 GB (int8) e 2,95 GB (int4).
|
|
112
|
+
- **bitsandbytes em CPU é mais lento que `float32`.** No 3B, um
|
|
113
|
+
`generate()` limitado a 16 tokens levou ~9 s em int8/int4 contra ~3 s
|
|
114
|
+
em `float32`. Por isso a `suggestion` de quantizar em CPU aponta o
|
|
115
|
+
caminho de CPU que já está no SDK:
|
|
116
|
+
|
|
117
|
+
!!! tip "Em CPU, GGUF pelo Ollama"
|
|
118
|
+
O llama.cpp (build 687e778, `-ngl 0`, contexto 4096) servindo o GGUF
|
|
119
|
+
Q4_K_M que o Ollama 0.30.11 baixa para `qwen2.5:3b` ficou em 3,60 GB
|
|
120
|
+
de RSS (1,61 GB anônima + 1,99 GB de arquivo) e gerou 24 a 27
|
|
121
|
+
tokens/s; o `qwen2.5:0.5b` ficou em 0,66 GB e 107 a 134 tokens/s
|
|
122
|
+
(N=3 cada). Use o [`OllamaGenerator`](#backend-ollama) — a memória é
|
|
123
|
+
da mesma ordem do int4 do bitsandbytes; a vantagem medida é a
|
|
124
|
+
velocidade.
|
|
125
|
+
|
|
67
126
|
## Sondando o hardware
|
|
68
127
|
|
|
69
128
|
```python
|
|
@@ -74,7 +74,8 @@ One enum per task:
|
|
|
74
74
|
|
|
75
75
|
!!! tip "Do not memorize VRAM — ask"
|
|
76
76
|
`recommend()` measures the host and picks the precision that fits,
|
|
77
|
-
from bf16 down to
|
|
77
|
+
from the device's native one (bf16 on a GPU, fp32 on CPU) down to
|
|
78
|
+
int4:
|
|
78
79
|
|
|
79
80
|
```python
|
|
80
81
|
from tempest_fastapi_sdk.genai import TextModel, recommend
|
|
@@ -73,8 +73,8 @@ Um enum por tarefa:
|
|
|
73
73
|
**[Pesos de modelos »](model-weights.md#onde-os-pesos-ficam-e-por-que-a-2a-execucao-e-instantanea)**.
|
|
74
74
|
|
|
75
75
|
!!! tip "Não decore VRAM — pergunte"
|
|
76
|
-
`recommend()` mede a máquina e escolhe a precisão que cabe,
|
|
77
|
-
até int4:
|
|
76
|
+
`recommend()` mede a máquina e escolhe a precisão que cabe, da nativa
|
|
77
|
+
do device (bf16 em GPU, fp32 em CPU) até int4:
|
|
78
78
|
|
|
79
79
|
```python
|
|
80
80
|
from tempest_fastapi_sdk.genai import TextModel, recommend
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "tempest-fastapi-sdk"
|
|
3
|
-
version = "0.303.
|
|
3
|
+
version = "0.303.1"
|
|
4
4
|
description = "Shared FastAPI building blocks: base schemas, ORM model, async repository, exceptions, pagination and settings — the conventions used across Tempest projects."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.11"
|
|
@@ -1842,7 +1842,7 @@ from tempest_fastapi_sdk.websockets import (
|
|
|
1842
1842
|
make_websocket_router as make_websocket_router,
|
|
1843
1843
|
)
|
|
1844
1844
|
|
|
1845
|
-
__version__: str = "0.303.
|
|
1845
|
+
__version__: str = "0.303.1"
|
|
1846
1846
|
|
|
1847
1847
|
from tempest_fastapi_sdk.api import (
|
|
1848
1848
|
OAuthAudienceVerifier as OAuthAudienceVerifier,
|
{tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/hardware.py
RENAMED
|
@@ -37,6 +37,19 @@ _BYTES_PER_PARAM: dict[ModelDtype, float] = {
|
|
|
37
37
|
ModelDtype.INT4: 0.6,
|
|
38
38
|
}
|
|
39
39
|
|
|
40
|
+
_CPU_QUANTIZATION_NOTE: str = (
|
|
41
|
+
" bitsandbytes on CPU decodes slower than float32; a GGUF build served"
|
|
42
|
+
" through OllamaGenerator is the faster CPU path."
|
|
43
|
+
)
|
|
44
|
+
"""Appended to a CPU quantization suggestion.
|
|
45
|
+
|
|
46
|
+
Measured on Qwen2.5-3B-Instruct with the GPU hidden (torch 2.14,
|
|
47
|
+
bitsandbytes 0.50.2, transformers 4.57.6 and 5.18.0, N=3 each): a
|
|
48
|
+
``generate()`` capped at 16 new tokens took ~9 s with bitsandbytes int8 or
|
|
49
|
+
int4 against ~3 s at float32. llama.cpp on the Q4_K_M GGUF that Ollama
|
|
50
|
+
serves for the same model decoded ~24-27 tokens/s.
|
|
51
|
+
"""
|
|
52
|
+
|
|
40
53
|
# Inference needs more than the weights (activations, KV cache, CUDA
|
|
41
54
|
# context). Scale the raw weight size by this to plan with headroom.
|
|
42
55
|
_INFERENCE_OVERHEAD: float = 1.25
|
|
@@ -266,11 +279,31 @@ def _pick_device(hardware: HardwareInfo) -> str:
|
|
|
266
279
|
return "cpu"
|
|
267
280
|
|
|
268
281
|
|
|
282
|
+
def _native_dtype(device: str) -> ModelDtype:
|
|
283
|
+
"""Return the precision an unquantized model is loaded in on ``device``.
|
|
284
|
+
|
|
285
|
+
This is the single source of truth shared with
|
|
286
|
+
:func:`~tempest_fastapi_sdk.genai.auto_dtype_name`, which is what
|
|
287
|
+
``TextGenerator(dtype="auto")`` loads with, so the planner sizes the
|
|
288
|
+
weights the generator will actually hold. CPU has no fast
|
|
289
|
+
half-precision path, so it loads ``float32`` — twice the bytes of the
|
|
290
|
+
``bfloat16`` used on CUDA and MPS.
|
|
291
|
+
|
|
292
|
+
Args:
|
|
293
|
+
device (str): The concrete device (``"cuda"``, ``"mps"`` or
|
|
294
|
+
``"cpu"``).
|
|
295
|
+
|
|
296
|
+
Returns:
|
|
297
|
+
ModelDtype: ``FLOAT32`` on CPU, ``BFLOAT16`` elsewhere.
|
|
298
|
+
"""
|
|
299
|
+
return ModelDtype.FLOAT32 if device == "cpu" else ModelDtype.BFLOAT16
|
|
300
|
+
|
|
301
|
+
|
|
269
302
|
def can_run(
|
|
270
303
|
*,
|
|
271
304
|
num_params: int | None = None,
|
|
272
305
|
model_id: str | None = None,
|
|
273
|
-
dtype: ModelDtype =
|
|
306
|
+
dtype: ModelDtype | None = None,
|
|
274
307
|
device: str = "auto",
|
|
275
308
|
hardware: HardwareInfo | None = None,
|
|
276
309
|
token: str | None = None,
|
|
@@ -286,7 +319,11 @@ def can_run(
|
|
|
286
319
|
precedence over ``model_id``.
|
|
287
320
|
model_id (str | None): Hub id to look the parameter count up from
|
|
288
321
|
when ``num_params`` is not given.
|
|
289
|
-
dtype (ModelDtype): The precision to plan for.
|
|
322
|
+
dtype (ModelDtype | None): The precision to plan for. ``None`` (the
|
|
323
|
+
default) plans for the precision ``TextGenerator(dtype="auto")``
|
|
324
|
+
loads on the chosen device: ``bfloat16`` on CUDA/MPS,
|
|
325
|
+
``float32`` on CPU. Pass a value to plan for an explicit
|
|
326
|
+
``TextGenerator(dtype=...)`` or ``quantization=...``.
|
|
290
327
|
device (str): ``"auto"``, ``"cuda"``, ``"mps"`` or ``"cpu"``.
|
|
291
328
|
hardware (HardwareInfo | None): Inject a snapshot (tests, or to
|
|
292
329
|
reuse one probe); defaults to a fresh :func:`probe_hardware`.
|
|
@@ -311,28 +348,29 @@ def can_run(
|
|
|
311
348
|
)
|
|
312
349
|
|
|
313
350
|
chosen = _pick_device(hw) if device == "auto" else device
|
|
314
|
-
|
|
351
|
+
planned = dtype if dtype is not None else _native_dtype(chosen)
|
|
352
|
+
estimated = estimate_model_bytes(params, planned)
|
|
315
353
|
available = _device_capacity(hw, chosen)
|
|
316
354
|
fits = estimated <= available
|
|
317
355
|
headroom = ((available - estimated) / available * 100) if available else -100.0
|
|
318
356
|
|
|
319
357
|
if fits:
|
|
320
358
|
reason = (
|
|
321
|
-
f"~{estimated / 1e9:.1f} GB needed at {
|
|
359
|
+
f"~{estimated / 1e9:.1f} GB needed at {planned.value} fits the "
|
|
322
360
|
f"~{available / 1e9:.1f} GB free on {chosen}."
|
|
323
361
|
)
|
|
324
362
|
suggestion = None
|
|
325
363
|
else:
|
|
326
364
|
reason = (
|
|
327
|
-
f"~{estimated / 1e9:.1f} GB needed at {
|
|
365
|
+
f"~{estimated / 1e9:.1f} GB needed at {planned.value} exceeds the "
|
|
328
366
|
f"~{available / 1e9:.1f} GB free on {chosen}."
|
|
329
367
|
)
|
|
330
|
-
suggestion = _suggest(hw, params,
|
|
368
|
+
suggestion = _suggest(hw, params, planned, chosen)
|
|
331
369
|
|
|
332
370
|
return CapacityReport(
|
|
333
371
|
fits=fits,
|
|
334
372
|
device=chosen,
|
|
335
|
-
dtype=
|
|
373
|
+
dtype=planned,
|
|
336
374
|
estimated_bytes=estimated,
|
|
337
375
|
available_bytes=available,
|
|
338
376
|
headroom_pct=round(headroom, 1),
|
|
@@ -347,18 +385,37 @@ def _suggest(
|
|
|
347
385
|
dtype: ModelDtype,
|
|
348
386
|
device: str,
|
|
349
387
|
) -> str:
|
|
350
|
-
"""Return the best next step when a model doesn't fit as asked.
|
|
351
|
-
|
|
388
|
+
"""Return the best next step when a model doesn't fit as asked.
|
|
389
|
+
|
|
390
|
+
The ladder starts at the device's native precision (see
|
|
391
|
+
:func:`_native_dtype`) and only goes down, so on CPU — which loads
|
|
392
|
+
``float32`` — the first rung below is ``int8``, never ``bfloat16``:
|
|
393
|
+
``bfloat16`` is not a quantization, and ``TextGenerator`` rejects it
|
|
394
|
+
as ``quantization=``.
|
|
395
|
+
|
|
396
|
+
Args:
|
|
397
|
+
hardware (HardwareInfo): The probed hardware.
|
|
398
|
+
num_params (int): The model's parameter count.
|
|
399
|
+
dtype (ModelDtype): The precision that did not fit.
|
|
400
|
+
device (str): The device it did not fit on.
|
|
401
|
+
|
|
402
|
+
Returns:
|
|
403
|
+
str: The suggested next step.
|
|
404
|
+
"""
|
|
405
|
+
order = [_native_dtype(device), ModelDtype.INT8, ModelDtype.INT4]
|
|
352
406
|
available = _device_capacity(hardware, device)
|
|
353
407
|
for candidate in order:
|
|
354
408
|
if bytes_per_param(candidate) >= bytes_per_param(dtype):
|
|
355
409
|
continue
|
|
356
410
|
if estimate_model_bytes(num_params, candidate) <= available:
|
|
357
|
-
|
|
411
|
+
suggestion = (
|
|
358
412
|
f"Quantize to {candidate.value} (needs "
|
|
359
413
|
f"~{estimate_model_bytes(num_params, candidate) / 1e9:.1f} GB) "
|
|
360
414
|
f"to fit {device}."
|
|
361
415
|
)
|
|
416
|
+
if device == "cpu" and candidate in (ModelDtype.INT8, ModelDtype.INT4):
|
|
417
|
+
suggestion += _CPU_QUANTIZATION_NOTE
|
|
418
|
+
return suggestion
|
|
362
419
|
if (
|
|
363
420
|
device == "cuda"
|
|
364
421
|
and estimate_model_bytes(num_params, ModelDtype.INT4)
|
|
@@ -378,11 +435,15 @@ def recommend(
|
|
|
378
435
|
hardware: HardwareInfo | None = None,
|
|
379
436
|
token: str | None = None,
|
|
380
437
|
) -> CapacityReport:
|
|
381
|
-
"""Pick the best precision that fits, from
|
|
438
|
+
"""Pick the best precision that fits, from the native one down to int4.
|
|
382
439
|
|
|
383
|
-
Tries
|
|
384
|
-
|
|
385
|
-
|
|
440
|
+
Tries the precision ``TextGenerator(dtype="auto")`` loads on the
|
|
441
|
+
auto-selected device (``bfloat16`` on CUDA/MPS, ``float32`` on CPU),
|
|
442
|
+
then ``int8``, then ``int4``, and returns the first
|
|
443
|
+
:class:`CapacityReport` that fits (or the int4 report when nothing
|
|
444
|
+
fits, so the caller sees the closest option). A report whose ``dtype``
|
|
445
|
+
is ``int8``/``int4`` maps to ``TextGenerator(quantization=...)``; any
|
|
446
|
+
other ``dtype`` is what ``dtype="auto"`` already loads.
|
|
386
447
|
|
|
387
448
|
Args:
|
|
388
449
|
num_params (int | None): The model's parameter count.
|
|
@@ -394,21 +455,23 @@ def recommend(
|
|
|
394
455
|
Returns:
|
|
395
456
|
CapacityReport: The recommended configuration.
|
|
396
457
|
|
|
458
|
+
Raises:
|
|
459
|
+
ValueError: When neither ``num_params`` nor a resolvable
|
|
460
|
+
``model_id`` is available.
|
|
461
|
+
|
|
397
462
|
Notes:
|
|
398
463
|
Two fallbacks are tried in order: a smaller precision on the same
|
|
399
464
|
device first, since that keeps the model on the accelerator, and
|
|
400
465
|
only then CPU RAM when the current device is a GPU.
|
|
401
466
|
"""
|
|
402
467
|
hw = hardware or probe_hardware()
|
|
468
|
+
params = num_params
|
|
469
|
+
if params is None and model_id is not None:
|
|
470
|
+
params = fetch_num_params(model_id, token=token)
|
|
471
|
+
native = _native_dtype(_pick_device(hw))
|
|
403
472
|
report = None
|
|
404
|
-
for dtype in (
|
|
405
|
-
report = can_run(
|
|
406
|
-
num_params=num_params,
|
|
407
|
-
model_id=model_id,
|
|
408
|
-
dtype=dtype,
|
|
409
|
-
hardware=hw,
|
|
410
|
-
token=token,
|
|
411
|
-
)
|
|
473
|
+
for dtype in (native, ModelDtype.INT8, ModelDtype.INT4):
|
|
474
|
+
report = can_run(num_params=params, dtype=dtype, hardware=hw)
|
|
412
475
|
if report.fits:
|
|
413
476
|
return report
|
|
414
477
|
assert report is not None
|
{tempest_fastapi_sdk-0.303.0 → tempest_fastapi_sdk-0.303.1}/tempest_fastapi_sdk/genai/text.py
RENAMED
|
@@ -31,7 +31,7 @@ from tempest_fastapi_sdk.genai.generation_cache import (
|
|
|
31
31
|
GenerationCache,
|
|
32
32
|
cached_generate,
|
|
33
33
|
)
|
|
34
|
-
from tempest_fastapi_sdk.genai.hardware import probe_hardware
|
|
34
|
+
from tempest_fastapi_sdk.genai.hardware import _native_dtype, probe_hardware
|
|
35
35
|
from tempest_fastapi_sdk.genai.hub import ModelRef
|
|
36
36
|
from tempest_fastapi_sdk.genai.metrics import GenAIMetrics
|
|
37
37
|
from tempest_fastapi_sdk.genai.schemas import (
|
|
@@ -469,9 +469,11 @@ def auto_dtype_name(device: str) -> str:
|
|
|
469
469
|
|
|
470
470
|
Returns:
|
|
471
471
|
str: ``"bfloat16"`` on CUDA/MPS, ``"float32"`` on CPU (which has
|
|
472
|
-
no fast half-precision path).
|
|
472
|
+
no fast half-precision path). The capacity planner
|
|
473
|
+
(:func:`~tempest_fastapi_sdk.genai.can_run`) sizes an unquantized
|
|
474
|
+
load from the same rule, so the two cannot drift.
|
|
473
475
|
"""
|
|
474
|
-
return
|
|
476
|
+
return _native_dtype(device).value
|
|
475
477
|
|
|
476
478
|
|
|
477
479
|
def _require_transformers() -> tuple[Any, Any]:
|
|
@@ -985,6 +987,13 @@ class TextGenerator:
|
|
|
985
987
|
def _build(self) -> None:
|
|
986
988
|
"""Load the tokenizer and weights; called once, under the load lock.
|
|
987
989
|
|
|
990
|
+
A quantized load pins ``device_map="cpu"`` when the resolved device
|
|
991
|
+
is CPU. ``device_map="auto"`` lets ``accelerate`` place the weights
|
|
992
|
+
on any GPU it sees, so on a host with CUDA a generator built with
|
|
993
|
+
``device="cpu", quantization="int4"`` — the offload the capacity
|
|
994
|
+
planner suggests — would load onto ``cuda:0`` while ``self.device``
|
|
995
|
+
still said ``"cpu"``.
|
|
996
|
+
|
|
988
997
|
Raises:
|
|
989
998
|
ImportError: When the ``[genai]`` (or ``[genai-quant]``) extra
|
|
990
999
|
is missing.
|
|
@@ -996,7 +1005,7 @@ class TextGenerator:
|
|
|
996
1005
|
kwargs["quantization_config"] = transformers.BitsAndBytesConfig(
|
|
997
1006
|
**{f"load_in_{bits}bit": True},
|
|
998
1007
|
)
|
|
999
|
-
kwargs["device_map"] = "auto"
|
|
1008
|
+
kwargs["device_map"] = "cpu" if self.device == "cpu" else "auto"
|
|
1000
1009
|
else:
|
|
1001
1010
|
kwargs.update(precision_kwarg(getattr(torch, self.dtype.value)))
|
|
1002
1011
|
kwargs["device_map"] = self.device if self.device != "cpu" else None
|