pub struct Config {
pub kanban: KanbanSection,
pub issues_dir: PathBuf,
pub editor: Option<String>,
pub agent: Option<String>,
pub state: StateConfig,
pub export: ExportConfig,
}Expand description
The project configuration file (tix.toml).
Fields§
§kanban: KanbanSectionNamed board configurations ([kanban]). Always ≥1 after load.
issues_dir: PathBufDirectory holding issue files, relative to the repo root.
editor: Option<String>Optional $EDITOR override for full-file editing.
agent: Option<String>Configured AI agent command (opencode, claude, etc.) launched with
the issue body as its specification. Mirrors the editor resolution
chain (explicit → $TIX_AGENT → $AGENT env → PATH fallback).
state: StateConfigPersisted runtime state ([state]). Tolerated on load for legacy
files, never written back to disk (issue #52).
export: ExportConfigExternal tracker targets ([export]).
Implementations§
Source§impl Config
impl Config
Sourcepub fn default_config(&self) -> &BoardConfiguration
pub fn default_config(&self) -> &BoardConfiguration
The configuration used by the CLI and other single-config surfaces:
the one named default if present, else the first declared.
Sourcepub fn configs(&self) -> impl Iterator<Item = (&str, &BoardConfiguration)>
pub fn configs(&self) -> impl Iterator<Item = (&str, &BoardConfiguration)>
Named configurations in declaration order (tab order = declaration order, D-02).
Sourcepub fn load_with_warning(path: &Path, sink: impl FnMut(&str)) -> Result<Config>
pub fn load_with_warning(path: &Path, sink: impl FnMut(&str)) -> Result<Config>
Load a tix.toml at path, emitting a warning through sink for
every cleartext token read from the file.
Parse and validation failures surface as TixError::Config with
the file’s path and (where the TOML parser reports it) line.
Sourcepub fn load(project_root: &Path) -> Result<Config>
pub fn load(project_root: &Path) -> Result<Config>
Load the config for a project root: tix.toml at the root if
present, otherwise the defaults. An absent file is not an error —
the CLI layer decides whether to nag about tix init.
Sourcepub fn project_root(cwd: &Path) -> Option<PathBuf>
pub fn project_root(cwd: &Path) -> Option<PathBuf>
Find the project root for cwd by walking upward for a tix.toml.
Returns None when no ancestor (including cwd itself) holds one.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Config
impl<'de> Deserialize<'de> for Config
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for Config
impl StructuralPartialEq for Config
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnsafeUnpin for Config
impl UnwindSafe for Config
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more