pub struct NodeSpec {
pub id: String,
pub role: Role,
pub instruction: String,
pub depends_on: Vec<String>,
pub goals: Vec<String>,
pub tier: Tier,
pub provider: Option<String>,
pub skills: Vec<String>,
pub stage: Option<String>,
pub weight: f64,
pub isolated: bool,
}Fields§
§id: String§role: Role§instruction: StringWhat this node is for, in natural language. Tight descriptions produce tight output; vague ones produce whatever the model felt like.
depends_on: Vec<String>Node ids this node genuinely reads the output of. Only list an edge if the answer to “does this step read that step’s output?” is yes.
goals: Vec<String>Goals this node advances.
tier: Tier§provider: Option<String>Pin a provider; otherwise routing picks by tier.
skills: Vec<String>Skills this node needs. Acquired per the skill policy.
stage: Option<String>Execution guideline (section I) this node belongs to. A node with a stage is not dispatched until that phase is active. A node without one is always eligible — unstaged work is not gated by a phase it never joined.
weight: f64Relative cost weight used for critical-path calculation.
isolated: boolRun in its own git worktree. Required for parallel writers.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for NodeSpec
impl<'de> Deserialize<'de> for NodeSpec
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
Auto Trait Implementations§
impl Freeze for NodeSpec
impl RefUnwindSafe for NodeSpec
impl Send for NodeSpec
impl Sync for NodeSpec
impl Unpin for NodeSpec
impl UnsafeUnpin for NodeSpec
impl UnwindSafe for NodeSpec
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