pub struct PlanIssue {Show 20 fields
pub id: String,
pub milestone: String,
pub status: String,
pub wave: u32,
pub priority: String,
pub profile: String,
pub parallel_safe: bool,
pub title: String,
pub slug: String,
pub depends_on: Vec<String>,
pub blocked_by: Vec<String>,
pub dependents: Vec<String>,
pub scope: Vec<String>,
pub serves: Vec<String>,
pub objective: String,
pub evidence_have: u32,
pub evidence_need: u32,
pub started_at: String,
pub verified_at: String,
pub completed_at: String,
}Expand description
One issue, as its record declares it and as the graph derives it.
Fields§
§id: StringThe identity, which is also the file name.
milestone: StringThe milestone it belongs to.
status: StringThe derived status. Never stored: an issue records what happened to it and the status follows from that and from the state of its dependencies.
wave: u32The execution wave: one past the longest path to it through the dependency graph.
priority: Stringp0 … p3.
profile: StringThe execution profile the issue is worked under.
parallel_safe: boolWhether it may run beside another issue of its wave.
title: StringOne line naming the outcome.
slug: StringThe slug, when the record carries one.
depends_on: Vec<String>Every issue it declares a dependency on, as declared — including one that does not exist, which is a finding rather than a silent omission.
blocked_by: Vec<String>The dependencies that are not DONE, plus milestone:<id> when the milestone gate
holds the whole outcome back.
dependents: Vec<String>The issues that depend on this one.
scope: Vec<String>The paths it touches; two issues of one wave that share a path are serialised.
serves: Vec<String>The intent criteria it exists to make true, each <intent>#<criterion>, as declared.
Empty for maintenance work under a milestone no intent names; whether a named
criterion exists is the intent coverage’s question, not the plan’s.
objective: StringOne line: what the issue is for.
evidence_have: u32Evidence entries attached.
evidence_need: u32Evidence tokens the record requires before it may be DONE.
started_at: StringWhen execution began, when it did.
verified_at: StringWhen implementation was declared complete.
completed_at: StringWhen completion was recorded.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for PlanIssue
impl<'de> Deserialize<'de> for PlanIssue
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>,
impl Eq for PlanIssue
Source§impl JsonSchema for PlanIssue
impl JsonSchema for PlanIssue
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl Ordered for PlanIssue
An issue is shown, everywhere, in the natural order of its identity: issue-2 before
issue-10, which is the order its file names read in.
impl Ordered for PlanIssue
An issue is shown, everywhere, in the natural order of its identity: issue-2 before
issue-10, which is the order its file names read in.
impl StructuralPartialEq for PlanIssue
Auto Trait Implementations§
impl Freeze for PlanIssue
impl RefUnwindSafe for PlanIssue
impl Send for PlanIssue
impl Sync for PlanIssue
impl Unpin for PlanIssue
impl UnsafeUnpin for PlanIssue
impl UnwindSafe for PlanIssue
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
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.