Move shared connect orchestration into the base adapter so both backends short-circuit when already healthy and only reconnect after a failed probe.
Co-authored-by: Cursor <[email protected]>
Require buckets to exist by default on connect, extract env_bool parsing, and document local dev overrides for secure and auto-creation settings.
Co-authored-by: Cursor <[email protected]>
Provide a SCAN-based key iterator for Redis adapters so callers can enumerate large keyspaces without relying on blocking KEYS lookups.
Co-authored-by: Cursor <[email protected]>
Return None only for missing objects and re-raise other S3 and network failures so callers can distinguish not-found from real errors.
Co-authored-by: Cursor <[email protected]>
Close and release the HTTP response in a finally block per SDK guidance, and add unit tests for success and read-failure cleanup.
Co-authored-by: Cursor <[email protected]>
Add fast unit tests for lazy-import helpers and injected-client connect paths that integration tests miss, and raise the coverage floor to 100%.
Co-authored-by: Cursor <[email protected]>
Default TLS to enabled for production MinIO setups while keeping local and integration tests on plain HTTP via explicit secure=false configuration.
Co-authored-by: Cursor <[email protected]>
Introduce typed config objects, optional adapter injection, and .env loading to simplify testing while preserving env-based defaults for production usage.
Co-authored-by: Cursor <[email protected]>
Move duplicated context-manager, health-check cache, and connection guards from Redis and Minio adapters into an internal base class.
Co-authored-by: Cursor <[email protected]>
Convert is_connected to a method that verifies backend liveness via TTL-cached ping (Redis) or bucket_exists (MinIO), with cache invalidation on connect/disconnect.
Co-authored-by: Cursor <[email protected]>