pub struct Task {Show 14 fields
pub id: i64,
pub project_id: i64,
pub title: String,
pub body: String,
pub priority: Priority,
pub state: TaskState,
pub agent: Option<String>,
pub question: Option<String>,
pub pr_url: Option<String>,
pub branch: Option<String>,
pub state_since: String,
pub created_at: String,
pub closed_at: Option<String>,
pub human: bool,
}Fields§
§id: i64§project_id: i64§title: String§body: String§priority: Priority§state: TaskState§agent: Option<String>§question: Option<String>§pr_url: Option<String>The canonical URL of a GitHub PR tracked on this task (DESIGN.md §11c),
or None. Names the PR’s base repo, so it survives forks where the
checkout’s origin is not that repo.
branch: Option<String>The git branch this task’s work lives on, or None. Holds the intended
name dispatch injects into the prompt, later overwritten by the branch
the agent reports — Voro never runs git, it only records what returns.
state_since: String§created_at: String§closed_at: Option<String>§human: boolMarks a task no agent can execute — hands-on work at real hardware, say
(DESIGN.md §3/§6). Dispatch, continuation, ask, and the agent override
refuse it; completion goes running → done directly. Default false
means dispatchable.
Implementations§
Source§impl Task
impl Task
Sourcepub fn next_action(&self) -> Option<NextAction>
pub fn next_action(&self) -> Option<NextAction>
The single next-action derivation (DESIGN.md §3): what the human does
next, from state × fields. None for states that ask nothing of the
human — running belongs to the running strip, parked/done/rejected
wait on nothing. stalled always means a dead agent dispatch, since
dispatch refuses human tasks. waiting is handed off to an external
party (DESIGN.md §6) and asks nothing of the operator.