.gitignore
.gitlint
.markdownlint.yml
.pre-commit-config.yaml
.python-version
.release-please-config.json
.release-please-manifest.json
.yamllint.yml
AGENTS.md
CHANGELOG.md
CODE_OF_CONDUCT.md
CONTRIBUTING.md
LICENSE
Makefile
README-pypi.md
README.md
SECURITY.md
cchk.toml
pyproject.toml
.github/CODEOWNERS
.github/copilot-instructions.md
.github/dependabot.yml
.github/ISSUE_TEMPLATE/bug_report.yml
.github/ISSUE_TEMPLATE/config.yml
.github/ISSUE_TEMPLATE/feature_request.yml
.github/ISSUE_TEMPLATE/release_smoke_checklist.yml
.github/PULL_REQUEST_TEMPLATE/pull_request_template.md
.github/workflows/automerge.yml
.github/workflows/check.yml
.github/workflows/commit.yml
.github/workflows/distribution.yml
.github/workflows/publish.yml
.github/workflows/release.yml
.github/workflows/salesforce-cdc-proto-watch.yml
.github/workflows/security.yml
.github/workflows/verify.yml
docs/architecture/overview.md
docs/architecture/adr/0001-architecture-principles.md
docs/architecture/adr/0002-layered-architecture.md
docs/architecture/adr/0003-dependency-policy.md
docs/architecture/adr/0004-settings-and-configuration.md
docs/architecture/adr/0005-request-layer.md
docs/architecture/adr/0006-transport-layer.md
docs/architecture/adr/0007-response-layer.md
docs/architecture/adr/0008-client-layer.md
docs/architecture/adr/0009-service-layer.md
docs/architecture/adr/0010-caching.md
docs/architecture/adr/0011-authentication.md
docs/architecture/adr/0012-retry-strategy.md
docs/architecture/adr/0013-transport-base-class.md
docs/architecture/adr/0014-logging.md
docs/architecture/adr/0015-header-middleware.md
docs/architecture/adr/0016-vcr-testsupport.md
docs/architecture/adr/0017-streaming-response.md
docs/architecture/adr/0018-raw-response-access.md
docs/architecture/adr/0019-circuit-breaker-middleware.md
docs/architecture/adr/0020-rate-limit-middleware.md
docs/architecture/adr/0021-llm-contract-boundary.md
docs/architecture/adr/0022-upstream-rate-governance.md
docs/architecture/adr/0023-httpx2-transport-backend.md
docs/architecture/adr/0024-framework-adapter-strategy.md
docs/architecture/adr/0025-django-adapter-sync-async-strategy.md
docs/architecture/adr/0026-fastapi-adapter-lifecycle-and-di.md
docs/architecture/adr/0027-public-api-compatibility-and-deprecation-policy.md
docs/architecture/adr/0028-supported-environments-and-extras-policy.md
docs/architecture/adr/0029-release-acceptance-gates-and-evidence-model.md
docs/architecture/adr/0030-grpc-protocol-boundary.md
docs/architecture/adr/0031-experimental-release-installation-contract.md
docs/architecture/adr/0032-grpc-codegen-version-refresh.md
docs/architecture/adr/0033-python-315-support-and-local-pyenv.md
docs/architecture/adr/0034-django-6-support.md
docs/architecture/adr/0035-pre-1-versioning-policy.md
docs/architecture/adr/0036-project-and-package-rebrand-to-plynt.md
docs/architecture/adr/README.md
docs/architecture/risks/ai-connectors.md
docs/changes/django-framework-adapter_django_adapter_20260713.md
docs/changes/fastapi-framework-adapter_fastapi_adapter_20260725.md
docs/changes/llm-adapters_openai_anthropic_20260705.md
docs/changes/public-release-readiness_20260802.md
docs/connectors/llm/README.md
docs/connectors/salesforce/README.md
docs/connectors/salesforce/architecture/overview.md
docs/connectors/salesforce/architecture/adr/README.md
docs/connectors/salesforce/architecture/adr/sf-0001-error-mapping.md
docs/connectors/salesforce/architecture/adr/sf-0002-sobject-api-facade.md
docs/connectors/salesforce/architecture/adr/sf-0003-query-service-design.md
docs/connectors/salesforce/architecture/adr/sf-0004-search-capability-design.md
docs/connectors/salesforce/architecture/adr/sf-0005-bulk-api-2-design.md
docs/connectors/salesforce/architecture/adr/sf-0006-jwt-bearer-auth.md
docs/connectors/salesforce/architecture/adr/sf-0007-composite-rest-primitives.md
docs/connectors/salesforce/architecture/adr/sf-0008-metadata-rest-deploy.md
docs/connectors/salesforce/architecture/adr/sf-0009-identity-access-primitives.md
docs/connectors/salesforce/architecture/adr/sf-0010-query-response-normalization.md
docs/connectors/salesforce/architecture/adr/sf-0011-ai-connector-boundary.md
docs/connectors/salesforce/architecture/adr/sf-0012-extraction-strategy.md
docs/connectors/salesforce/architecture/adr/sf-0013-salesforce-eventing-architecture.md
docs/connectors/salesforce/design/ai-models-design.md
docs/connectors/salesforce/product/roadmap.md
docs/connectors/salesforce/user/README.md
docs/connectors/salesforce/user/explanation/README.md
docs/connectors/salesforce/user/explanation/api-limits.md
docs/connectors/salesforce/user/explanation/auth-flows.md
docs/connectors/salesforce/user/how-to/README.md
docs/connectors/salesforce/user/how-to/authenticate.md
docs/connectors/salesforce/user/how-to/bulk.md
docs/connectors/salesforce/user/how-to/deploy-cdc.md
docs/connectors/salesforce/user/how-to/handle-errors.md
docs/connectors/salesforce/user/how-to/query-records.md
docs/connectors/salesforce/user/how-to/resilience.md
docs/connectors/salesforce/user/how-to/search.md
docs/connectors/salesforce/user/how-to/sobject-crud.md
docs/connectors/salesforce/user/how-to/use-agent-api.md
docs/connectors/salesforce/user/how-to/use-composite.md
docs/connectors/salesforce/user/how-to/use-models-api.md
docs/connectors/salesforce/user/reference/README.md
docs/connectors/salesforce/user/reference/errors.md
docs/connectors/salesforce/user/reference/models.md
docs/connectors/salesforce/user/reference/services.md
docs/connectors/salesforce/user/reference/settings.md
docs/connectors/salesforce/user/tutorials/01-connect-and-query.md
docs/connectors/salesforce/user/tutorials/README.md
docs/product/requirements.md
docs/product/roadmap.md
docs/product/vision.md
docs/product/ideas/flask-adapter.md
docs/product/ideas/middleware-extensions.md
docs/releases/2026-08-02-public-readiness-evidence.md
docs/releases/2026-10-13-experimental-rc-hardening-evidence.md
docs/user/README.md
docs/user/explanation/README.md
docs/user/explanation/architecture.md
docs/user/explanation/middleware-model.md
docs/user/explanation/sync-async.md
docs/user/how-to/README.md
docs/user/how-to/add-authentication.md
docs/user/how-to/configure-logging.md
docs/user/how-to/handle-errors.md
docs/user/how-to/use-async.md
docs/user/how-to/use-cache.md
docs/user/how-to/use-middleware.md
docs/user/how-to/write-middleware.md
docs/user/how-to/django/django-middleware-interoperability.md
docs/user/how-to/django/use-django-cache-backend.md
docs/user/how-to/django/use-django-transport-helper.md
docs/user/how-to/drf/drf-serializer-business-patterns.md
docs/user/how-to/drf/use-drf-plynt-service-mixin.md
docs/user/how-to/fastapi/use-fastapi-service-facade.md
docs/user/how-to/salesforce/README.md
docs/user/reference/README.md
docs/user/reference/auth-configs.md
docs/user/reference/cache-backends.md
docs/user/reference/installation.md
docs/user/reference/middleware.md
docs/user/reference/settings.md
docs/user/tutorials/01-getting-started.md
docs/user/tutorials/02-build-a-connector.md
docs/user/tutorials/03-add-middleware.md
docs/user/tutorials/04-add-caching.md
docs/user/tutorials/05-test-with-vcr.md
docs/user/tutorials/README.md
examples/django/README.md
examples/django/cache_backend.md
examples/django/middleware_profile.md
examples/django/transport_from_settings.md
examples/drf/README.md
examples/drf/drf_service_view.md
examples/drf/exception_handler_setup.md
examples/drf/serializer_orchestrator_view.md
examples/llm/README.md
examples/llm/anthropic_messages.md
examples/llm/example.env
examples/llm/openai_responses.md
examples/salesforce/README.md
examples/salesforce/client_credentials.md
examples/salesforce/example.env
examples/salesforce/shared_demo.md
examples/salesforce/username_password.md
src/plynt/__init__.py
src/plynt.egg-info/PKG-INFO
src/plynt.egg-info/SOURCES.txt
src/plynt.egg-info/dependency_links.txt
src/plynt.egg-info/requires.txt
src/plynt.egg-info/scm_file_list.json
src/plynt.egg-info/scm_version.json
src/plynt.egg-info/top_level.txt
src/plynt/adapters/__init__.py
src/plynt/adapters/django/__init__.py
src/plynt/adapters/django/cache.py
src/plynt/adapters/django/settings.py
src/plynt/adapters/django/transport.py
src/plynt/adapters/django/drf/__init__.py
src/plynt/adapters/django/drf/errors.py
src/plynt/adapters/django/drf/headers.py
src/plynt/adapters/django/drf/views.py
src/plynt/adapters/fastapi/__init__.py
src/plynt/adapters/fastapi/dependencies.py
src/plynt/adapters/fastapi/errors.py
src/plynt/adapters/fastapi/headers.py
src/plynt/adapters/fastapi/lifespan.py
src/plynt/adapters/fastapi/services.py
src/plynt/base/__init__.py
src/plynt/base/cache.py
src/plynt/base/errors.py
src/plynt/base/mapping.py
src/plynt/base/middleware.py
src/plynt/base/policies.py
src/plynt/base/request.py
src/plynt/base/response.py
src/plynt/base/settings.py
src/plynt/base/transport.py
src/plynt/cache/__init__.py
src/plynt/cache/cachetools.py
src/plynt/cache/dummy.py
src/plynt/cache/locmem.py
src/plynt/cache/redis.py
src/plynt/connectors/__init__.py
src/plynt/connectors/llm/__init__.py
src/plynt/connectors/llm/models.py
src/plynt/connectors/llm/service.py
src/plynt/connectors/llm/adapters/__init__.py
src/plynt/connectors/llm/adapters/anthropic.py
src/plynt/connectors/llm/adapters/base.py
src/plynt/connectors/llm/adapters/openai.py
src/plynt/connectors/salesforce/__init__.py
src/plynt/connectors/salesforce/agent.py
src/plynt/connectors/salesforce/ai.py
src/plynt/connectors/salesforce/apex.py
src/plynt/connectors/salesforce/client.py
src/plynt/connectors/salesforce/composite.py
src/plynt/connectors/salesforce/constants.py
src/plynt/connectors/salesforce/errors.py
src/plynt/connectors/salesforce/facade.py
src/plynt/connectors/salesforce/helpers.py
src/plynt/connectors/salesforce/metadata.py
src/plynt/connectors/salesforce/renderer.py
src/plynt/connectors/salesforce/search.py
src/plynt/connectors/salesforce/settings.py
src/plynt/connectors/salesforce/utility.py
src/plynt/connectors/salesforce/auth/__init__.py
src/plynt/connectors/salesforce/auth/bearer.py
src/plynt/connectors/salesforce/auth/credentials.py
src/plynt/connectors/salesforce/auth/mixins.py
src/plynt/connectors/salesforce/auth/password.py
src/plynt/connectors/salesforce/auth/session.py
src/plynt/connectors/salesforce/bulk/__init__.py
src/plynt/connectors/salesforce/bulk/service.py
src/plynt/connectors/salesforce/cdc/__init__.py
src/plynt/connectors/salesforce/cdc/_bitmap.py
src/plynt/connectors/salesforce/cdc/auth.py
src/plynt/connectors/salesforce/cdc/avro.py
src/plynt/connectors/salesforce/cdc/checkpoint.py
src/plynt/connectors/salesforce/cdc/errors.py
src/plynt/connectors/salesforce/cdc/models.py
src/plynt/connectors/salesforce/cdc/pubsub.py
src/plynt/connectors/salesforce/cdc/service.py
src/plynt/connectors/salesforce/cdc/_proto/README.md
src/plynt/connectors/salesforce/cdc/_proto/SOURCE.md
src/plynt/connectors/salesforce/cdc/_proto/__init__.py
src/plynt/connectors/salesforce/cdc/_proto/pubsub_api.proto
src/plynt/connectors/salesforce/cdc/_proto/pubsub_api_pb2.py
src/plynt/connectors/salesforce/cdc/_proto/pubsub_api_pb2_grpc.py
src/plynt/connectors/salesforce/identity/__init__.py
src/plynt/connectors/salesforce/identity/service.py
src/plynt/connectors/salesforce/lookup/__init__.py
src/plynt/connectors/salesforce/lookup/base.py
src/plynt/connectors/salesforce/lookup/factory.py
src/plynt/connectors/salesforce/lookup/pricebook.py
src/plynt/connectors/salesforce/lookup/profile.py
src/plynt/connectors/salesforce/lookup/queue.py
src/plynt/connectors/salesforce/lookup/record_type.py
src/plynt/connectors/salesforce/lookup/types.py
src/plynt/connectors/salesforce/lookup/user.py
src/plynt/connectors/salesforce/models/__init__.py
src/plynt/connectors/salesforce/models/schemas.py
src/plynt/connectors/salesforce/query/__init__.py
src/plynt/connectors/salesforce/query/service.py
src/plynt/connectors/salesforce/sobject/__init__.py
src/plynt/connectors/salesforce/sobject/service.py
src/plynt/grpc/__init__.py
src/plynt/grpc/client.py
src/plynt/grpc/errors.py
src/plynt/grpc/handler.py
src/plynt/grpc/interceptor.py
src/plynt/grpc/protobuf.py
src/plynt/grpc/settings.py
src/plynt/grpc/transport.py
src/plynt/http/__init__.py
src/plynt/http/auth.py
src/plynt/http/client.py
src/plynt/http/errors.py
src/plynt/http/mapping.py
src/plynt/http/policies.py
src/plynt/http/renderer.py
src/plynt/http/response.py
src/plynt/http/service.py
src/plynt/http/settings.py
src/plynt/http/transport.py
src/plynt/http/middleware/__init__.py
src/plynt/http/middleware/auth/__init__.py
src/plynt/http/middleware/auth/basic.py
src/plynt/http/middleware/auth/bearer.py
src/plynt/http/middleware/auth/oauth2.py
src/plynt/log/__init__.py
src/plynt/log/filters.py
src/plynt/log/formatter.py
src/plynt/middleware/__init__.py
src/plynt/middleware/cache.py
src/plynt/middleware/circuit_breaker.py
src/plynt/middleware/header.py
src/plynt/middleware/logging.py
src/plynt/middleware/rate_limit.py
src/plynt/middleware/retry.py
src/plynt/middleware/throttle.py
src/plynt/testsupport/__init__.py
src/plynt/testsupport/vcr/README.md
src/plynt/testsupport/vcr/__init__.py
src/plynt/testsupport/vcr/config.py
src/plynt/testsupport/vcr/matchers.py
src/plynt/testsupport/vcr/middleware.py
src/plynt/testsupport/vcr/path.py
src/plynt/testsupport/vcr/py.typed
src/plynt/testsupport/vcr/serializer.py
src/plynt/testsupport/vcr/session.py
tests/__init__.py
tests/conftest.py
tests/_mock/cassettes/connectors/salesforce/ai_smoke/salesforceaivcrsmoke/models_generate_chat__6b8ea57e.yaml
tests/_mock/cassettes/connectors/salesforce/ai_smoke/salesforceaivcrsmoke/models_generate_text__4321b893.yaml
tests/_mock/cassettes/connectors/salesforce/smoke/salesforcevcrsmoke/limits__eea7066d.yaml
tests/_mock/cassettes/connectors/salesforce/smoke/salesforcevcrsmoke/objects_catalog__b14b1071.yaml
tests/_mock/cassettes/connectors/salesforce/smoke/salesforcevcrsmoke/query_accounts__58b98669.yaml
tests/_mock/cassettes/connectors/salesforce/smoke/salesforcevcrsmoke/query_org_metadata__a9358913.yaml
tests/_mock/cassettes/connectors/salesforce/smoke/salesforcevcrsmoke/quick_search__1101ee82.yaml
tests/_mock/cassettes/connectors/salesforce/smoke/salesforcevcrsmoke/versions__679797d3.yaml
tests/adapters/__init__.py
tests/adapters/django/__init__.py
tests/adapters/django/test_cache.py
tests/adapters/django/test_django_package.py
tests/adapters/django/test_settings.py
tests/adapters/django/test_smoke.py
tests/adapters/django/test_transport.py
tests/adapters/django/drf/__init__.py
tests/adapters/django/drf/test_drf_package.py
tests/adapters/django/drf/test_errors.py
tests/adapters/django/drf/test_headers.py
tests/adapters/django/drf/test_smoke.py
tests/adapters/django/drf/test_views.py
tests/adapters/fastapi/test_errors.py
tests/adapters/fastapi/test_fastapi_package.py
tests/adapters/fastapi/test_headers.py
tests/adapters/fastapi/test_lifespan.py
tests/adapters/fastapi/test_services.py
tests/base/__init__.py
tests/base/test_base.py
tests/base/test_base_package.py
tests/base/test_errors.py
tests/base/test_mapping.py
tests/base/test_middleware.py
tests/base/test_policies.py
tests/base/test_request.py
tests/base/test_response.py
tests/base/test_retry.py
tests/base/test_settings.py
tests/base/test_transport.py
tests/cache/__init__.py
tests/cache/test_cache.py
tests/cache/test_cachetools.py
tests/cache/test_dummy.py
tests/cache/test_locmem.py
tests/cache/test_redis.py
tests/connectors/__init__.py
tests/connectors/llm/__init__.py
tests/connectors/llm/test_service.py
tests/connectors/llm/adapters/test_anthropic.py
tests/connectors/llm/adapters/test_base.py
tests/connectors/llm/adapters/test_openai.py
tests/connectors/llm/models/test_models.py
tests/connectors/salesforce/__init__.py
tests/connectors/salesforce/conftest.py
tests/connectors/salesforce/test_agent.py
tests/connectors/salesforce/test_ai.py
tests/connectors/salesforce/test_ai_smoke.py
tests/connectors/salesforce/test_apex.py
tests/connectors/salesforce/test_client.py
tests/connectors/salesforce/test_composite.py
tests/connectors/salesforce/test_constants.py
tests/connectors/salesforce/test_errors.py
tests/connectors/salesforce/test_helpers.py
tests/connectors/salesforce/test_metadata.py
tests/connectors/salesforce/test_renderer.py
tests/connectors/salesforce/test_salesforce_package.py
tests/connectors/salesforce/test_search.py
tests/connectors/salesforce/test_settings.py
tests/connectors/salesforce/test_smoke.py
tests/connectors/salesforce/test_throttle.py
tests/connectors/salesforce/test_utility.py
tests/connectors/salesforce/auth/__init__.py
tests/connectors/salesforce/auth/helpers.py
tests/connectors/salesforce/auth/test_bearer.py
tests/connectors/salesforce/auth/test_credentials.py
tests/connectors/salesforce/auth/test_password.py
tests/connectors/salesforce/auth/test_session.py
tests/connectors/salesforce/bulk/__init__.py
tests/connectors/salesforce/bulk/test_service.py
tests/connectors/salesforce/cdc/__init__.py
tests/connectors/salesforce/cdc/test_auth.py
tests/connectors/salesforce/cdc/test_avro.py
tests/connectors/salesforce/cdc/test_bitmap.py
tests/connectors/salesforce/cdc/test_checkpoint.py
tests/connectors/salesforce/cdc/test_integration_grpc.py
tests/connectors/salesforce/cdc/test_models.py
tests/connectors/salesforce/cdc/test_pubsub.py
tests/connectors/salesforce/cdc/test_service.py
tests/connectors/salesforce/identity/test_service.py
tests/connectors/salesforce/lookup/__init__.py
tests/connectors/salesforce/lookup/conftest.py
tests/connectors/salesforce/lookup/test_facade.py
tests/connectors/salesforce/lookup/test_pricebook.py
tests/connectors/salesforce/lookup/test_profile.py
tests/connectors/salesforce/lookup/test_queue.py
tests/connectors/salesforce/lookup/test_record_type.py
tests/connectors/salesforce/lookup/test_user.py
tests/connectors/salesforce/models/__init__.py
tests/connectors/salesforce/models/test_schemas.py
tests/connectors/salesforce/query/__init__.py
tests/connectors/salesforce/query/test_service.py
tests/connectors/salesforce/sobject/__init__.py
tests/connectors/salesforce/sobject/test_service.py
tests/distribution/test_installed.py
tests/grpc/test_client.py
tests/grpc/test_errors_interceptor.py
tests/grpc/test_protobuf.py
tests/grpc/test_settings.py
tests/grpc/test_transport.py
tests/http/__init__.py
tests/http/conftest.py
tests/http/test_auth.py
tests/http/test_client.py
tests/http/test_errors.py
tests/http/test_http_package.py
tests/http/test_mapping.py
tests/http/test_response.py
tests/http/test_retry.py
tests/http/test_service.py
tests/http/test_settings.py
tests/http/test_transport.py
tests/http/middleware/__init__.py
tests/http/middleware/auth/__init__.py
tests/http/middleware/auth/test_basic.py
tests/http/middleware/auth/test_bearer.py
tests/http/middleware/auth/test_oauth2.py
tests/log/__init__.py
tests/log/test_filters.py
tests/log/test_formatter.py
tests/middleware/__init__.py
tests/middleware/test_cache.py
tests/middleware/test_circuit_breaker.py
tests/middleware/test_header.py
tests/middleware/test_logging.py
tests/middleware/test_rate_limit.py
tests/middleware/test_retry.py
tests/middleware/test_throttle.py
tests/testsupport/__init__.py
tests/testsupport/vcr/__init__.py
tests/testsupport/vcr/_helpers.py
tests/testsupport/vcr/test_context.py
tests/testsupport/vcr/test_matchers.py
tests/testsupport/vcr/test_middleware.py
tests/testsupport/vcr/test_path.py
tests/testsupport/vcr/test_serializer.py
tests/testsupport/vcr/test_session.py