Skip to main content

Module config

Module config 

Source
Expand description

Config model and TOML persistence.

Structs§

Agents
The [agents] section of the on-disk config. Presence of this section signals that repograph init has been run; absence triggers the first-run prompt the next time an agent-consuming command runs.
Config
Top-level config aggregating all registered repos, workspaces, and the user’s agent selection.
Repo
A registered local git repository. The name is the map key in Config::repos — it does not appear as a field on this struct.
RepoEdit
A set of in-place changes to apply to a registered repo via Config::edit_repo. Every field is opt-in: None (or the outer None for description) leaves the current value untouched.
Settings
The [settings] section of the on-disk config. User-tunable knobs that don’t fit naturally under [agents], [repo.*], or [workspace.*].
Workspace
A named grouping of registered repositories.

Constants§

CONFIG_FILE_NAME
On-disk file name within the config directory.
MAX_WORKSPACE_NAME_LEN
Maximum length of a workspace name (RFC 1123 label rule).
RESERVED_WORKSPACE_NAMES
Reserved workspace names. These collide with future filter ergonomics (e.g. --workspace all) and are rejected at write time.

Functions§

validate_workspace_name
Enforce the workspace naming policy: lowercase ASCII alphanumerics and hyphens, must start alphanumeric, length 1..=63, and not one of the reserved words.

Type Aliases§

WorkspaceResolution
Result of resolving a workspace’s members against the repo registry: (live, dangling). Live entries borrow the repo’s name and its Repo entry; dangling entries borrow only the orphaned name.