pub(crate) struct LoadedConfig {Show 26 fields
pub projects: Vec<LoadedProject>,
pub global_env: HashMap<String, String>,
pub org_browser_profiles: HashMap<String, String>,
pub org_slack: HashMap<String, String>,
pub default_index: usize,
pub accounts: Vec<LoadedAccount>,
pub models: HashMap<String, ModelSettings>,
pub handoff: HandoffSettings,
pub dictate: DictateSettings,
pub tts: TtsSettings,
pub huggingface: HuggingfaceSettings,
pub gotify: Option<GotifyConfig>,
pub systemone: Option<SystemOneConfig>,
pub vault: Option<VaultConfig>,
pub slack: Vec<SlackConfig>,
pub plugins: PluginSettings,
pub gateway_port: u16,
pub gateway_rotation: RotationNumbers,
pub server: ServerConfig,
pub client: ClientConfig,
pub browser: BrowserSettings,
pub terminal: TerminalSettings,
pub document_max_bytes: u64,
pub usage_poll_interval: Duration,
pub sessions: SessionsConfig,
pub raw_fingerprint: String,
}Fields§
§projects: Vec<LoadedProject>§global_env: HashMap<String, String>The top-level [env] layer, after the gateway keys were dropped at
load. Kept whole so the settings page can draw the layer itself
rather than re-reading one account’s merged env.
org_browser_profiles: HashMap<String, String>Each org’s resolved browser profile name, keyed by org name: what the boot’s profile resolver reads to place an org’s browsers.
org_slack: HashMap<String, String>Each org’s own [orgs.slack] binding, keyed by org name. A project
may override it; the resolved per-project binding is on the project.
default_index: usizeIndex into projects for the fallback target: the
alphabetically-first project. Read only when no project is named and
no picker selects one; a named project and the picker both override
it.
accounts: Vec<LoadedAccount>§models: HashMap<String, ModelSettings>[models."<name>"] tables, keyed by the spelling a project’s
model pins. Absent tables mean a spawn stamps no model
parameters.
handoff: HandoffSettings[handoff] section knobs, unresolved: a project’s own table layers
over these, and the defaults sit under both.
dictate: DictateSettings[dictate] section knobs. Absent section means dictation is
off and preflight skips it entirely.
tts: TtsSettings[tts] section knobs. Absent section means the speaking role is
off and nothing synthesises.
huggingface: HuggingfaceSettings[huggingface] token, or the default when the section is absent.
gotify: Option<GotifyConfig>[gotify] server connection, or None when the section is
absent (Gotify disabled).
systemone: Option<SystemOneConfig>[systemone] decision-model endpoint, or None when the
section is absent or disabled (the tools are not injected).
vault: Option<VaultConfig>[vault] account, or None when the section is absent (the family
is not injected).
slack: Vec<SlackConfig>[[slack]] workspaces. An absent or empty list leaves the
connector dormant, the way an absent [gotify] does.
plugins: PluginSettings[plugins] section knobs. Absent section means auto-update is
off.
gateway_port: u16The port the gateway’s inference listener binds. Absent
[gateway] section keeps the default.
gateway_rotation: RotationNumbersThe gateway’s rotation numbers. Absent keys keep the defaults.
server: ServerConfig[server] section knobs. Absent section means the listener’s
defaults: on, on loopback.
client: ClientConfig[client] section knobs. Absent section means every name unset,
which is the built-in rather than a pin.
browser: BrowserSettings[browser] section knobs, resolved: the encoding rate and quality,
and the idle release’s bound. Absent section keeps the defaults.
terminal: TerminalSettings[terminal] section knobs, resolved: the shell to run, the
scrollback bound and the idle clock. Absent section keeps the
defaults.
document_max_bytes: u64The ceiling on one handed document, in bytes: [documents] max_size_mib resolved, 10 MiB when the key is absent. Read by the
document read, which refuses over it.
usage_poll_interval: DurationThe background usage poller’s interval: [usage] poll_seconds
resolved, 60 seconds when the key is absent. Bounds how stale the
account-usage cache is.
sessions: SessionsConfig[sessions] section knobs, resolved. Absent section keeps the
defaults, which heal a dead durable seat.
raw_fingerprint: StringThe fingerprint of the raw file text this load read, which the settings document carries and a save compares against.
Implementations§
Source§impl LoadedConfig
impl LoadedConfig
Sourcepub(crate) fn diff(&self, next: &Self) -> ConfigReload
pub(crate) fn diff(&self, next: &Self) -> ConfigReload
The reload summary between this load and next, read from the one
class catalogue the settings page draws its chips from.
Source§impl LoadedConfig
impl LoadedConfig
pub(crate) fn default_project(&self) -> &LoadedProject
Sourcepub(crate) fn empty_for_test() -> Self
pub(crate) fn empty_for_test() -> Self
Empty LoadedConfig for the testing feature’s
Workspace::testing_stub. Production code paths that need a
project (e.g. default_project) will panic when called on
this value - tests that only need domain_handles access
never reach those paths.
Trait Implementations§
Source§impl Debug for LoadedConfig
Hand-written so a field added later cannot print through it until it
is deliberately listed. Its credential carriers - the accounts’ and
projects’ env stamps, gotify’s token, systemone’s key - are redacted
by the structs they live on.
impl Debug for LoadedConfig
Hand-written so a field added later cannot print through it until it is deliberately listed. Its credential carriers - the accounts’ and projects’ env stamps, gotify’s token, systemone’s key - are redacted by the structs they live on.
Auto Trait Implementations§
impl Freeze for LoadedConfig
impl RefUnwindSafe for LoadedConfig
impl Send for LoadedConfig
impl Sync for LoadedConfig
impl Unpin for LoadedConfig
impl UnsafeUnpin for LoadedConfig
impl UnwindSafe for LoadedConfig
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
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