Skip to main content

ConfigError

Enum ConfigError 

Source
pub enum ConfigError {
Show 22 variants Io(PathBuf, Error), Parse(PathBuf, String), EnvVarUnset(String, String), EnvVarNotUnicode(String, String), Temperature { index: usize, temperature: f32, }, ZeroConcurrency { index: usize, }, ZeroTimeout { index: usize, }, ZeroMaxTokens { index: usize, }, ZeroReviewRounds, UnknownProtocol { index: usize, value: String, }, UnusableHeaderName { index: usize, name: String, }, UnusableHeaderValue { index: usize, name: String, }, DuplicateHeaderName { index: usize, first: String, second: String, }, UnknownBackend { index: usize, value: String, }, UnknownReasoningEffort { index: usize, value: String, }, AmbiguousApiKey { index: usize, }, EmptyApiKeyCommand { index: usize, }, BackendField { index: usize, backend: &'static str, field: &'static str, }, BackendMissingField { index: usize, backend: &'static str, field: &'static str, }, NoProviders(PathBuf), NoEnabledProviders(PathBuf), SiteOnlyField { path: PathBuf, field: &'static str, },
}
Expand description

What went wrong reading or validating the configuration.

Variants§

§

Io(PathBuf, Error)

§

Parse(PathBuf, String)

§

EnvVarUnset(String, String)

§

EnvVarNotUnicode(String, String)

§

Temperature

The index is the zero-based position in the file; the message renders it one-based, and says “in file order” because the chain numbers only the enabled entries - with a disabled head the two differ, and [[llm]] #1 meaning different tables in the same file is worse than either convention alone.

Fields

§index: usize
§temperature: f32
§

ZeroConcurrency

max_concurrent = 0 builds a semaphore with no permits, so every request waits for one forever. Rejected at load rather than clamped: a silent bump to 1 would run a gate at a concurrency the user did not ask for, and the alternative - the documented “callers are expected to set a positive value” - is a hang with no message at all.

Fields

§index: usize
§

ZeroTimeout

Fields

§index: usize
§

ZeroMaxTokens

Fields

§index: usize
§

ZeroReviewRounds

§

UnknownProtocol

Rejected rather than defaulted: falling back to openai would post chat-completions bytes to a /messages endpoint, and the resulting 404 reads as “the provider is down” rather than “this line has a typo”.

Fields

§index: usize
§value: String
§

UnusableHeaderName

Fields

§index: usize
§name: String
§

UnusableHeaderValue

Names the header, never its value: the value is the half that carries a tenant or project token, and an error message is the one place it would escape into a terminal, a CI log or a bug report. The rule KeyCommandError already follows for a credential helper’s output.

Fields

§index: usize
§name: String
§

DuplicateHeaderName

Both spellings, never either value: which of the two is the credential is exactly what this error cannot know, so it quotes neither, the way UnusableHeaderValue above quotes none.

Fields

§index: usize
§first: String
§second: String
§

UnknownBackend

Fields

§index: usize
§value: String
§

UnknownReasoningEffort

Fields

§index: usize
§value: String
§

AmbiguousApiKey

Both credential fields answer the same question, so a file setting both has said two things. Rejected rather than resolved by precedence: the user who wrote the command wrote it to be run, and a silent “the literal wins” leaves them debugging a stale credential the file says nothing about.

Fields

§index: usize
§

EmptyApiKeyCommand

An argv with no first element names no program. Rejected at load because the alternative is discovering it inside the gate, at the point where there is nothing to run and nothing useful to say about why.

Fields

§index: usize
§

BackendField

Fields

§index: usize
§backend: &'static str
§field: &'static str
§

BackendMissingField

Fields

§index: usize
§backend: &'static str
§field: &'static str
§

NoProviders(PathBuf)

§

NoEnabledProviders(PathBuf)

§

SiteOnlyField

Rejected rather than ignored, which is the one behaviour that would be worse than either: serde drops an unknown key without a word, so a developer reads refuse_markers in their own config, believes the repository is protected, and every review still ships its source. It is refused here rather than honoured because drep init gitignores this file - a copy of the control would be per-developer, and a refusal a developer can delete is not one.

Fields

§path: PathBuf
§field: &'static str

Trait Implementations§

Source§

impl Debug for ConfigError

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for ConfigError

Source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Error for ConfigError

1.30.0 · Source§

fn source(&self) -> Option<&(dyn Error + 'static)>

Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§

fn description(&self) -> &str

👎Deprecated since 1.42.0:

use the Display impl or to_string()

1.0.0 · Source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

Source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type-based access to context intended for error reports. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more