defaults_provider#

class DefaultsProvider(*, schemas_dir: Path | None = None, sections: Iterable[str] | None = None, tabs_only: bool = False, relax_required_for_defaults: bool = True, code_defaults: Dict[str, Dict[str, Any]] | None = None, builtin_dir: Path | None = None, user_dir: Path | None = None)[source]#

Bases: object

Per-section defaults with precedence:
  1. user YAML: ~/.clearmap/defaults/<section>.yml (validated statically)

  2. built-in YAML: <repo>/config/defaults/<section>.yml

  3. code fallback: provided dicts in code_defaults

ensure_user_file(section: str, out_path: Path | None = None) Path[source]#

Ensure ~/.clearmap/defaults/<section>.yml exists by copying built-in (or code fallback).

get(section: str) Dict[str, Any][source]#

Deep-copied defaults for a section, honoring precedence & static validation.

get_default_config(section: str) dict[str, Any][source]#
get_defaults_provider()[source]#
set_defaults_provider(provider)[source]#