Expand description
Ito configuration loading and normalization.
ito-config owns the logic for reading configuration files (repo-local and
global), applying precedence rules, and exposing a single resolved view to
the rest of the workspace.
This crate is intentionally small: it does not perform domain operations. It only answers questions like “where is the Ito directory?” and “what are the effective settings for this run?”.
Modules§
- defaults
- Default config values and JSON serialization helpers. Default configuration constructors.
- ito_dir
- Resolve the Ito working directory name and path. Ito working directory discovery.
- output
- Console/UI behavior (color and interactivity) derived from CLI + env. UI-related option resolution.
- schema
- JSON schema generation for Ito configuration. JSON schema generation for Ito config.
- types
- Serde models for
config.json. Serde models for Ito configuration.
Structs§
- Cascading
Project Config - Configuration loading and schema helpers. Merged project configuration along with provenance.
- Config
Context - Configuration loading and schema helpers. Process environment inputs for configuration resolution.
- Global
Config - Configuration loading and schema helpers. Global (user-level) configuration.
- ItoContext
- Resolved context for a single invocation. Resolved configuration for a single invocation.
- Project
Config - Configuration loading and schema helpers. Repo-local configuration.
Functions§
- global_
config_ path - Configuration loading and schema helpers. Return the global configuration file path, if it can be determined.
- ito_
config_ dir - Configuration loading and schema helpers.
Return the global configuration directory (
~/.config/itoor XDG equivalent). - load_
cascading_ project_ config - Configuration loading and schema helpers. Load and merge project configuration sources in precedence order.
- load_
cascading_ project_ config_ fs - Configuration loading and schema helpers.
Like
load_cascading_project_config, but uses an injected file-system. - load_
global_ config - Configuration loading and schema helpers. Load the global config file.
- load_
global_ config_ fs - Configuration loading and schema helpers.
Like
load_global_config, but uses an injected file-system. - load_
project_ config - Configuration loading and schema helpers.
Load
ito.jsonfromproject_root. - load_
project_ config_ fs - Configuration loading and schema helpers.
Like
load_project_config, but uses an injected file-system. - load_
repo_ project_ path_ override - Configuration loading and schema helpers.
Returns a repo-local
projectPathoverride (Ito working directory name). - load_
repo_ project_ path_ override_ fs - Configuration loading and schema helpers.
Like
load_repo_project_path_override, but uses an injected file-system. - project_
config_ paths - Configuration loading and schema helpers. Return the ordered list of configuration file paths consulted for a project.
- resolve_
coordination_ branch_ settings - Configuration loading and schema helpers. Resolve coordination branch settings from merged config JSON.
Type Aliases§
- Resolved
Config - Configuration loading and schema helpers. Alias used by consumers who only care about the resolved config output.