Location
client_discovery/config.py — load_and_validate_config() (~line 37)
Problem
load_and_validate_config() hard-requires GEMINI_API_KEY whenever TESTING != "true":
if not gemini_api_key:
if testing:
logger.warning(...)
else:
raise ValueError("GEMINI_API_KEY is required but missing from the environment.")
This couples unrelated features to the Gemini key. _resolve_obs_credentials() and refine_with_jules() both call load_config(), so enabling OBS_CAPTURE or Jules refinement without a Gemini key will raise and break otherwise-deterministic flows.
Fix
Split config loading from feature-specific validation. Load env vars centrally; only validate the Gemini key on the agent/strategic-analysis code path (where it's actually needed), not for OBS capture or Jules.
Source
Originally raised in review of PR #21 (now docs-only): outdated thread PRRT_kwDOSzLAqc6JYBhZ. Confirmed still present on main.
/tracked-issue
Location
client_discovery/config.py—load_and_validate_config()(~line 37)Problem
load_and_validate_config()hard-requiresGEMINI_API_KEYwheneverTESTING != "true":This couples unrelated features to the Gemini key.
_resolve_obs_credentials()andrefine_with_jules()both callload_config(), so enabling OBS_CAPTURE or Jules refinement without a Gemini key will raise and break otherwise-deterministic flows.Fix
Split config loading from feature-specific validation. Load env vars centrally; only validate the Gemini key on the agent/strategic-analysis code path (where it's actually needed), not for OBS capture or Jules.
Source
Originally raised in review of PR #21 (now docs-only): outdated thread
PRRT_kwDOSzLAqc6JYBhZ. Confirmed still present onmain./tracked-issue