Skip to main content

Module ops

Module ops 

Source
Expand description

Mutating verbs: create, update, and move issues between projects.

Structs§

Ballot
One agent’s ballot on one issue.
CreateOpts
Optional fields on a new issue.
RejectOpts
Optional fields on reject.
UpdateOutcome
What an update changed, plus advice about issues left dangling by it.
UpdatePred
Last-seen state or generation a write must still match.

Functions§

append_body
Append prose to an issue’s body, stamped with the date and identity. Lines that would end the issue are indented, so markdown is safe to append.
append_body_as
append_body with the recorded identity passed in.
ballots
The ballots cast on one issue, in drawer order; crate::consensus weighs them.
claim
Take an issue: move it to STARTED and stamp the claim.
claim_as
claim with an explicit identity instead of crate::config::identity.
create
Append a new TODO issue to the project’s file and return the status text.
deed
Cite, drop, or list the deeds an issue’s work produced. The tracker stores the accession only; the deed store owns the bytes. With neither add nor remove, this reads the citations in the order they were cited.
fold
Fold an inbox-convention org file into tracked issues.
is_deed_accession
Whether value has the shape of a deed accession; the store is not asked.
normalize
Rewrite project files onto the Org / ELPA / vissue property split.
note
Add a dated note to the top of an issue’s logbook. State, claim, and properties stay untouched, so an agent can record progress without owning the issue.
refile
Move one issue’s heading to another project’s file. The id is not regenerated, so cross-project blocker edges keep resolving.
refile_to
refile onto a destination the router resolved, which may be another tracker layout.
reject
Cancel src and point it at a successor in one graph edit.
resolve_project
Resolve the project to act on. An explicit name wins; otherwise walk up from the current directory for .project-ctx.toml and read [project].name. Neither available is an error, so nothing is ever guessed silently.
resolve_terminal
Pick one terminal after a sibling close. Clears :SIBLING_TERMINAL:.
update
Change state, priority, or blocker edges. Adding a blocker to an open issue moves it to BLOCKED; clearing the last blocker moves it back to TODO.
update_as
update with an explicit identity instead of crate::config::identity.
update_as_pred
update_as with a last-seen predicate.
update_pred
update with a last-seen predicate.
vote
Cast or change one agent’s vote, or read the tally when choice is None. One ballot per identity, a recast replaces it, and the read-modify-write runs under the file lock. Stored as a :VOTES: drawer on the heading.