pub struct PatchSessionIn {
pub cwd: Option<String>,
pub id: Option<String>,
pub project: Option<String>,
pub published: Option<bool>,
pub status: Option<String>,
pub target: Option<String>,
pub terminal: Option<String>,
pub title: Option<String>,
}Fields§
§cwd: Option<String>Cwd is where the session is working NOW. It was write-once — captured at register and never again — which is right for a run that starts in a directory and stays there, and wrong for a linked shell, which is a place a person moves around in. The console showed the directory hanzo link happened to be run from and kept showing it after the shell had walked away, so the field answered "which work is this" with an answer that was true once. A pointer, so an unchanged path is an omitted field rather than a repeated write.
id: Option<String>ID is the session to update, from the path.
project: Option<String>Project tags the product this session built; Published is the author’s decision to let anyone read the story (provenance.go). Both are pointers so "absent" and "cleared" are different requests.
published: Option<bool>Published opens the session’s story to the public build route; false withdraws it, and withdrawing is always allowed. PUBLISHING is refused unless the session names a Project — the one set in this same request, or the one already stored — because that route is keyed on (org, project). It widens READ access to what is already there and grants nothing else.
status: Option<String>Status moves the session to running, paused, done or error. A session that has already finished refuses any change with 409 — done and error are monotonic — and moving INTO one stamps the end time. This is the surface REPORTING what happened; a control command never writes it.
target: Option<String>Target re-dispatches a session to a run-target (the #48 association). "" detaches.
terminal: Option<String>Terminal publishes (or, with "", withdraws) the URL this session’s live terminal can be watched at. A pointer so "absent" and "withdrawn" are different requests: a session that stops sharing must be able to say so.
title: Option<String>Title rewrites the human line, up to 512 characters — usually because the work turned out to be something other than what it was opened as.
Implementations§
Source§impl PatchSessionIn
impl PatchSessionIn
pub fn new() -> PatchSessionIn
Trait Implementations§
Source§impl Clone for PatchSessionIn
impl Clone for PatchSessionIn
Source§fn clone(&self) -> PatchSessionIn
fn clone(&self) -> PatchSessionIn
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more