mirror of
https://github.com/tiennm99/DocsGPT.git
synced 2026-10-15 18:15:33 +00:00
refactor: read settings directly instead of getattr with a second default
About 85 call sites read a setting as getattr(settings, "NAME", fallback), each carrying its own copy of the default. Every one of those names is a field with a default on the model, so the fallback could never apply to the real settings object; it only masked drift. Two had drifted: - OPENAI_PROMPT_CACHE_KEY defaults to True on the model but the reader fell back to False, and two test stubs relied on that. - SharePoint's MICROSOFT_AUTHORITY fallback to https://login.microsoftonline.com/<tenant> never fired, because the attribute always exists (as None), so MSAL got authority=None. The connector now derives the tenant authority when the setting is unset, as its test always assumed. Four places read EMBEDDINGS_KEY straight from os.environ, skipping the "None"/"" normalisation the model applies; they read the setting now. Test stubs that replaced a module's settings with a SimpleNamespace list every setting the code under test reads.
This commit is contained in:
1 parent
d70644743b
commit
f882ef49a7
46 files changed
+111
-113
No files matched your search
@@ -77,11 +77,9 @@ class GraphStore:
|
||||
"""Stores and queries a per-source knowledge graph in the pgvector DB."""
|
||||
|
||||
def __init__(self, connection_string: Optional[str] = None):
|
||||
self._connection_string = connection_string or getattr(
|
||||
settings, "PGVECTOR_CONNECTION_STRING", None
|
||||
)
|
||||
self._connection_string = connection_string or settings.PGVECTOR_CONNECTION_STRING
|
||||
|
||||
if not self._connection_string and getattr(settings, "POSTGRES_URI", None):
|
||||
if not self._connection_string and settings.POSTGRES_URI:
|
||||
from docsgpt.core.db_uri import normalize_pgvector_connection_string
|
||||
|
||||
self._connection_string = normalize_pgvector_connection_string(
|
||||
|
||||
Reference in new issue
Block a user