Skip to content

refactor: Consolidate config system - single source of truth in YAML

Problem

Configuration values are currently loaded from multiple sources — environment variables, CLI flags, Python defaults, and YAML files — with no clearly defined precedence or single canonical path. This leads to situations where the same setting can be specified in two places with conflicting values, and the behavior depends on which code path runs first. Debugging config issues is time-consuming because there is no single place to inspect the resolved configuration. Consolidating into one YAML-driven source of truth with explicit override rules would eliminate these conflicts and make the system predictable for both developers and users.

Context

Possible Solutions

Plan

  • Map current config pathways and precedence edge cases across products.
  • Implement unified schema/model with strict validation and helpful errors.
  • Migrate consumers to the new loader and remove duplicated parsing logic.
  • Add compatibility tests covering env, CLI, and YAML override behavior.
  • Publish migration notes and update examples to the unified config pattern.

Implementation Progress

Review Feedback

  • Review cleared