pub struct Config {
pub project_root: Option<PathBuf>,
pub validation_depth: u32,
pub checkpoint_ttl_hours: u32,
pub max_symbol_depth: u32,
pub formatter_timeout_secs: u32,
pub type_checker_timeout_secs: u32,
pub format_on_edit: bool,
pub validate_on_edit: Option<String>,
pub formatter: HashMap<String, String>,
pub checker: HashMap<String, String>,
}Expand description
Runtime configuration for the aft process.
Holds project-scoped settings and tuning knobs. Values are set at startup and remain immutable for the lifetime of the process.
Fields§
§project_root: Option<PathBuf>Root directory of the project being analyzed. None if not scoped.
validation_depth: u32How many levels of call-graph edges to follow during validation (default: 1).
checkpoint_ttl_hours: u32Hours before a checkpoint expires and is eligible for cleanup (default: 24).
max_symbol_depth: u32Maximum depth for recursive symbol resolution (default: 10).
formatter_timeout_secs: u32Seconds before killing a formatter subprocess (default: 10).
type_checker_timeout_secs: u32Seconds before killing a type-checker subprocess (default: 30).
format_on_edit: boolWhether to auto-format files after edits (default: true).
validate_on_edit: Option<String>Whether to auto-validate files after edits (default: false). When “syntax”, only tree-sitter parse check. When “full”, runs type checker.
formatter: HashMap<String, String>Per-language formatter overrides. Keys: “typescript”, “python”, “rust”, “go”. Values: “biome”, “prettier”, “deno”, “ruff”, “black”, “rustfmt”, “goimports”, “gofmt”, “none”.
checker: HashMap<String, String>Per-language type checker overrides. Keys: “typescript”, “python”, “rust”, “go”. Values: “tsc”, “biome”, “pyright”, “ruff”, “cargo”, “go”, “staticcheck”, “none”.
Trait Implementations§
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,
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