dograh/api/services/configuration
nuthalapativarun 5b61ad645f
feat: stamp API key into model override at save time to survive global provider change (#362)
* fix: stamp API key into model override at save time to survive global provider change

When a workflow overrides the TTS/LLM/STT provider to match the current
global config, the override dict only stores model/voice fields, not the
API key. If the global config later switches to a different provider, the
override can no longer inherit the API key and calls fail.

Fix: enrich_overrides_with_api_keys() copies the global provider's API
key (and other secret fields) into the override dict at workflow-save
time, making the override self-contained regardless of future global
config changes.

* feat: add test coverage and masking logic

---------

Co-authored-by: Abhishek Kumar <abhishek@a6k.me>
2026-05-27 14:01:14 +05:30
..
options feat: add xai grok as realtime model 2026-05-22 18:04:59 +05:30
__init__.py Initial Commit 🚀 🚀 2025-09-09 14:37:32 +05:30
check_validity.py feat: allow overriding base URL of OpenAI models (#368) 2026-05-27 13:07:45 +05:30
defaults.py feat: knowledge base functionality for the voice agent (#120) 2026-01-17 14:37:03 +05:30
masking.py feat: stamp API key into model override at save time to survive global provider change (#362) 2026-05-27 14:01:14 +05:30
merge.py feat: stamp API key into model override at save time to survive global provider change (#362) 2026-05-27 14:01:14 +05:30
registry.py feat: allow overriding base URL of OpenAI models (#368) 2026-05-27 13:07:45 +05:30
resolve.py feat: stamp API key into model override at save time to survive global provider change (#362) 2026-05-27 14:01:14 +05:30