Skip to main content

Crate vissue_core

Crate vissue_core 

Source
Expand description

Plain-text issue tracking over per-project orgmode files.

An issue is one top-level org heading in <root>/<prefix>/<project>/issues.org, where prefix defaults to Software. The file is the database: every verb parses it, and every mutation rewrites it under a lock. Reports never print; they return String, so a CLI, an MCP server, and a library caller all share one code path.

Re-exports§

pub use config::DEFAULT_PREFIX;
pub use config::Layout;
pub use config::VissueConfig;
pub use error::Error;
pub use error::Result;
pub use model::IssueHeading;
pub use model::LogEntry;
pub use model::READY_STATES;
pub use model::TODO_HEADER;
pub use model::TODO_KEYWORDS;
pub use ops::CreateOpts;
pub use ops::RejectOpts;
pub use ops::UpdatePred;
pub use router::ProjectRef;
pub use router::RouteHit;
pub use router::Router;
pub use store::IssueDoc;

Modules§

agent
Verbs shaped for a program rather than a person: structured rows, claiming, a body excerpt, and a hygiene checklist.
catalog
In-memory query facade over a parsed issue catalog.
config
Root and layout resolution plus the optional on-disk configuration.
digest
A content digest of the corpus, so a consumer can tell whether a projection it holds is still current.
error
Matchable errors so callers do not parse std::fmt::Display text.
events
Append-only change log and generation counter, so a poller notices a write without re-parsing every issues.org.
graph
In-memory dependency graph for validation and bounded multi-hop queries.
keys
Action catalog and keys.toml overlay.
mirror
A read-only projection of selected projects into a single shareable file.
model
The issue heading and its logbook: parsing, accessors, and rendering.
ops
Mutating verbs: create, update, and move issues between projects.
org
Org 9.8 syntax the tracker has to get right.
process_env
Process environment with a thread-local overlay for tests.
props
Property names as Org and ELPA already spell them.
related
Explainable, derived connections between Org issue headings.
report
Read-only verbs. Every function returns its text instead of printing, so a CLI, an MCP server, and a library caller share one implementation.
router
User-level project router: named projects can live on another checkout.
store
The on-disk store: one issues.org per project, parsed and rewritten whole.
surface
The operation set, read from the Cap’n Proto schema itself.
views
Typed issue views shared by JSON output and later control clients.
vissue_capnp
Generated from schema/vissue.capnp; the operation set is encoded in here.