pub enum DraftDecision {
Approve {
then_enqueue: bool,
next_state: TicketState,
},
NeedsContext {
questions: Vec<String>,
},
WrongPlan {
reason: String,
},
}Expand description
What a draft turn resolved to, given the PlanRequest and whether
--yes (auto-approve+enqueue) was passed. Separating the decision from the
I/O keeps the state-machine unit-testable without a backend.
Variants§
Approve
Plan ready: approve_plan (commits plan.md) then set this state.
Queued when --yes also enqueues; otherwise Review (parked).
NeedsContext
Orchestrator wants answers first: append its questions to the ticket
and set NeedsContext. Short-circuits before any approval.
WrongPlan
Planner-initiated escalation: it CAN plan but believes the plan is
likely wrong. Append the reason to the ticket and set WrongPlan.
Short-circuits before any approval; --yes never overrides it.
Trait Implementations§
Source§impl Clone for DraftDecision
impl Clone for DraftDecision
Source§fn clone(&self) -> DraftDecision
fn clone(&self) -> DraftDecision
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DraftDecision
impl Debug for DraftDecision
impl Eq for DraftDecision
Source§impl PartialEq for DraftDecision
impl PartialEq for DraftDecision
impl StructuralPartialEq for DraftDecision
Auto Trait Implementations§
impl Freeze for DraftDecision
impl RefUnwindSafe for DraftDecision
impl Send for DraftDecision
impl Sync for DraftDecision
impl Unpin for DraftDecision
impl UnsafeUnpin for DraftDecision
impl UnwindSafe for DraftDecision
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