Skip to content

V1.83 stable ydh#9

Draft
danielaskdd wants to merge 37 commits intomainfrom
v1.83-stable-ydh
Draft

V1.83 stable ydh#9
danielaskdd wants to merge 37 commits intomainfrom
v1.83-stable-ydh

Conversation

@danielaskdd
Copy link
Copy Markdown
Owner

Dummy PR, Do not try to merge.

… env variables

- remove duplicate decrypt_value_helper calls for slack and email env vars in get_config
- values from environment_variables are already decrypted, no need to decrypt again
- add test to verify decrypt_value_helper is not called for slack/email config values
…k config test

- remove side_effect assertion from decrypt_value_helper mock to allow
  the function to be called during /get/config/callbacks request
- call decrypt_value_helper with return_original_value=True for slack and email env vars
- supports DB mode (already plaintext) and YAML mode (still encrypted) gracefully
- update test to use fake_decrypt stub and assert correct decrypt call count
…in email health check

- fetch fresh decrypted config from DB when store_model_in_db is enabled
  so TEST_EMAIL_ADDRESS is correctly resolved in DB mode
- fall back to os.getenv for YAML / env-var deployments (no-op path)
- add silent mode to handleSaveEmailSettings to suppress notifications
  when called programmatically from the test email flow
- silently persist form values before triggering email health check so
  the backend can read TEST_EMAIL_ADDRESS from DB (DB mode)
- swallow errors in silent mode to allow test flow to proceed using
  env-var / YAML config values as fallback
• Change image to custom fork
• Enable config.yaml volume mount
• Disable Prometheus monitoring
• Add permanent enterprise license
• Force premium features enabled
…ealth checks

- add _resolve_test_email_address() to fetch TEST_EMAIL_ADDRESS from DB when store_model_in_db is enabled
- add helper functions _parse_config_row_param_value() and _is_truthy_config_flag() for config parsing
- support encrypted values with fallback to environment variable
- refactor email health check to use new resolver instead of direct config access

✅ test(health): add comprehensive tests for db-backed email resolution

- test db email takes precedence when store_model_in_db is enabled
- test fallback to env var when db is disabled or config missing
- test json string parsing for environment_variables row
- add lazy import wrappers for get_secret, get_secret_bool, and decrypt_value_helper
- prevent circular dependencies during proxy initialization by deferring imports
- keep existing function signatures and behavior unchanged
…h endpoints

- inline secret retrieval functions to remove lazy imports from secret_managers.main
- implement local decryption logic with _get_proxy_signing_key and _decrypt_value helpers
- add _str_to_bool utility for boolean environment variable parsing
- remove dependency on encrypt_decrypt_utils module to break circular imports
…h endpoints

- inline secret retrieval functions to remove lazy imports from secret_managers.main
- implement local decryption logic with _get_proxy_signing_key and _decrypt_value helpers
- add _str_to_bool utility for boolean environment variable parsing
- remove dependency on encrypt_decrypt_utils module to break circular imports
…e secret resolution

- remove inline decrypt_value_helper and _decrypt_value functions from health endpoints
- import decrypt_value_helper from common_utils.encrypt_decrypt_utils module
- rename get_secret to _get_env_secret to avoid naming conflict with secret_managers.main.get_secret
- update _resolve_os_environ_variables to use centralized get_secret from secret_managers.main
- add comprehensive tests for _resolve_os_environ_variables with nested dicts and lists
…module

- move _get_salt_key logic to new signing_key_utils module
- use sys.modules lookup to avoid circular import with proxy_server
- add fallback to LITELLM_MASTER_KEY environment variable

✅ test(signing_key_utils): add unit tests for signing key resolution

- test priority: LITELLM_SALT_KEY > proxy_server.master_key > LITELLM_MASTER_KEY
- mock sys.modules to simulate loaded proxy_server module
- change image registry from docker.litellm.ai to ghcr.io/danielaskdd/litellm
- uncomment config.yaml volume mount and command for proxy configuration
- comment out prometheus service and volume for simplified local deployment

🔧 chore(auth): bypass license verification for development

- hardcode permanent enterprise license with 100-year expiration
- modify is_premium() to always return True for development mode
- remove original license validation logic with API calls
- increase max_users from 10 to 100 for dev enterprise license
- increase max_teams from 100 to 200 for dev enterprise license
- update wolfi-base image sha256 to latest version for security patches
- rename python3-dev to python-3.13-dev for explicit python version
- add dashscope.svg to proxy experimental output directory
- add dashscope.svg to dashboard public assets directory
…paration

- create docker-compose.override.yml for local development overrides
- revert main compose image to upstream docker.litellm.ai registry
- comment out config volume mounts in base compose file
- uncomment and enable prometheus service with persistent storage
- disable prometheus in override for minimal local setup
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant