pub struct TaskRecord {
pub id: TaskId,
pub goal: String,
pub blueprint_ref: Value,
pub input_ctx: Value,
pub task_input_spec: Option<Value>,
pub status: TaskRecordStatus,
pub created_at: u64,
pub updated_at: u64,
}Expand description
One persisted Task row — the work-item identity.
Fields§
§id: TaskIdTask identifier.
goal: StringHuman-facing goal / description (e.g. “resolve issue #10”).
blueprint_ref: ValueSnapshot of the Blueprint selector supplied at creation (the
POST /v1/tasks body’s BlueprintSelector). Kept as a bare
serde_json::Value so the store layer does not depend on the
selector’s Rust type — callers decode/encode at the API boundary.
input_ctx: ValueInput context supplied at task creation.
task_input_spec: Option<Value>Issue #19 ST4: Task-level canonical fields (project_root /
work_dir / task_metadata) snapshot for rekick, stored as JSON
(a serialized TaskInputSpec) — same “bare Value, no Rust-type
dependency” rationale as Self::blueprint_ref /
Self::input_ctx. None for every pre-#19 TaskRecord
(backward compat) and for callers whose request carried no
Task-level fields at all.
status: TaskRecordStatusCurrent lifecycle status.
created_at: u64Unix epoch seconds — creation time.
updated_at: u64Unix epoch seconds — last update time.
Trait Implementations§
Source§impl Clone for TaskRecord
impl Clone for TaskRecord
Source§fn clone(&self) -> TaskRecord
fn clone(&self) -> TaskRecord
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TaskRecord
impl Debug for TaskRecord
Source§impl<'de> Deserialize<'de> for TaskRecord
impl<'de> Deserialize<'de> for TaskRecord
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>,
Source§impl JsonSchema for TaskRecord
impl JsonSchema for TaskRecord
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 moreAuto Trait Implementations§
impl Freeze for TaskRecord
impl RefUnwindSafe for TaskRecord
impl Send for TaskRecord
impl Sync for TaskRecord
impl Unpin for TaskRecord
impl UnsafeUnpin for TaskRecord
impl UnwindSafe for TaskRecord
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>,
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>
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>
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