pub enum EngineChoice {
Auto,
Native,
External(String),
Foreman(String),
}Expand description
Which engine performs the coding work.
Variants§
Auto
Decide per task: complexity assessment + detected external CLIs.
Native
CAR’s own inference + tool loop.
External(String)
One session of a detected external agentic CLI (claude-code,
codex, gemini).
Foreman(String)
Foreman (#274): decompose the intent, farm subtasks to the external CLI in parallel worktrees, gate each patch + the integrated union, then land the verified union in the session worktree. Declines to single-session/native when the plan has no parallelism.
Implementations§
Trait Implementations§
Source§impl Clone for EngineChoice
impl Clone for EngineChoice
Source§impl Debug for EngineChoice
impl Debug for EngineChoice
Source§impl<'de> Deserialize<'de> for EngineChoice
impl<'de> Deserialize<'de> for EngineChoice
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for EngineChoice
Source§impl PartialEq for EngineChoice
impl PartialEq for EngineChoice
Source§impl Serialize for EngineChoice
impl Serialize for EngineChoice
impl StructuralPartialEq for EngineChoice
Auto Trait Implementations§
impl Freeze for EngineChoice
impl RefUnwindSafe for EngineChoice
impl Send for EngineChoice
impl Sync for EngineChoice
impl Unpin for EngineChoice
impl UnsafeUnpin for EngineChoice
impl UnwindSafe for EngineChoice
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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>,
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> 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> ⓘ
Converts
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> ⓘ
Converts
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