Replace ~80 manual os.getenv() calls in config.py with dynaconf-backed configuration, enabling TOML file-based config alongside existing env var support. Zero breaking changes — Settings dataclass interface and all consumers unchanged. Phase 1: Create settings.toml with all config keys and defaults, .secrets.toml.example template, update .gitignore, initialize Dynaconf instance with envvar_prefix=False and environment section switching. Phase 2: Wire adapter — replace os.getenv() with _dynaconf.get() in get_settings(), get_document_processor_config(), and deprecation/ dependency resolution helpers. Automatic type coercion eliminates ~30 manual int()/float()/.lower()=="true" patterns. Phase 3: Add 12 declarative validators for port ranges, positive integers, enum constraints, and float ranges. Remove redundant negative overlap check from Settings.__post_init__. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
14 lines
406 B
TOML
14 lines
406 B
TOML
# Secrets configuration for Nextcloud MCP Server.
|
|
# Copy this file to .secrets.toml and fill in your values.
|
|
# .secrets.toml is gitignored — never commit real secrets.
|
|
#
|
|
# See docs/ADR-024-dynaconf-configuration-management.md for details.
|
|
|
|
[default]
|
|
token_encryption_key = ""
|
|
nextcloud_password = ""
|
|
nextcloud_oidc_client_secret = ""
|
|
qdrant_api_key = ""
|
|
openai_api_key = ""
|
|
custom_processor_api_key = ""
|