Skip to content

feat(config): migrate runtime configuration to YAML-only#57

Merged
Intrinsical-AI merged 5 commits into
developfrom
refactor/config-to-yaml
Apr 4, 2026
Merged

feat(config): migrate runtime configuration to YAML-only#57
Intrinsical-AI merged 5 commits into
developfrom
refactor/config-to-yaml

Conversation

@Intrinsical-AI
Copy link
Copy Markdown
Owner

Summary

This PR replaces env-based runtime configuration with a single config.yaml source of truth.

Settings remains as a Pydantic validation layer, but it no longer reads from environment variables or .env files. The app now loads configuration from YAML at startup, resolves relative paths against the YAML file location, and shares the same config model across HTTP, CLI, and bootstrap flows.

What changed

  • Added config.yaml as the canonical runtime config.
  • Added config.example.yaml as the documented template.
  • Reworked Settings to validate YAML input instead of reading env vars.
  • Removed runtime env-based config reads across:
    • embedder/cache wiring
    • blocking worker/queue settings
    • metrics and lock paths
    • eval dataset config
    • OpenRouter and retrieval-related validation messages
  • Updated docs to point to config.yaml and config.example.yaml.
  • Updated tests to cover loader behavior, path resolution, and runtime wiring.

Validation

  • uv run ruff check src/local_rag_backend tests
  • uv run pytest -q -o addopts=''
  • Result: 679 passed, 4 skipped

Notes

  • This is an operational breaking change: runtime config must now live in config.yaml.
  • No env/.env back-compat is retained by design.
  • Relative paths in config are resolved relative to the YAML file, not the current working directory.

@Intrinsical-AI
Copy link
Copy Markdown
Owner Author

Friendly reminder:

BREAKING CHANGE

@Intrinsical-AI Intrinsical-AI merged commit 74a7d0b into develop Apr 4, 2026
10 checks passed
@Intrinsical-AI Intrinsical-AI deleted the refactor/config-to-yaml branch April 4, 2026 23:40
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