Skip to main content

Crate libbrat_grite

Crate libbrat_grite 

Source
Expand description

Grite integration library for Brat.

This crate provides a client for interacting with the Grite CLI to manage convoys and tasks.

§Example

use libbrat_grite::{GriteClient, TaskStatus};

let client = GriteClient::new("/path/to/repo");

// Create a convoy
let convoy = client.convoy_create("Feature: Dark mode", None)?;

// Create a task in the convoy
let task = client.task_create(&convoy.convoy_id, "Implement toggle", None)?;

// Update task status
client.task_update_status(&task.task_id, TaskStatus::Running)?;

Re-exports§

pub use state_machine::State;
pub use state_machine::StateMachine;
pub use state_machine::Transition;
pub use state_machine::TransitionError;

Modules§

reconcile
Session reconciliation for crash recovery.
state_machine
State machine validation for Brat entity lifecycles.

Structs§

ContextIndexResult
Result of context indexing operation.
Convoy
A parsed convoy from a Grit issue.
FileContext
File context information.
GriteClient
Client for interacting with the Grite CLI.
GriteIssue
A Grit issue as returned by grite issue show --json.
GriteIssueSummary
Summary of a Grit issue from list command.
LockResult
Result of a lock acquisition attempt.
ProjectContextEntry
Project context key-value entry.
Session
A parsed session from a task issue comment.
Symbol
A symbol extracted from a file.
SymbolMatch
A symbol match from context query.
Task
A parsed task from a Grit issue.
TaskDependency
A dependency relationship between tasks.

Enums§

ConvoyStatus
Convoy status.
DependencyType
Type of dependency relationship between issues/tasks.
GriteError
Errors that can occur when interacting with Grite.
SessionRole
Actor role for the session.
SessionStatus
Session lifecycle status.
SessionType
Session type: polecat (isolated worktree) or crew (shared).
TaskStatus
Task status.

Functions§

generate_convoy_id
Generate a convoy ID: c-YYYYMMDD-<4hex>
generate_session_id
Generate a session ID: s-YYYYMMDD-<4hex>
generate_task_id
Generate a task ID: t-YYYYMMDD-<4hex>
is_valid_convoy_id
Check if a string is a valid convoy ID.
is_valid_session_id
Check if a string is a valid session ID.
is_valid_task_id
Check if a string is a valid task ID.
parse_convoy_id
Parse a convoy ID, returning (date_str, hex_suffix) if valid.
parse_session_id
Parse a session ID, returning (date_str, hex_suffix) if valid.
parse_task_id
Parse a task ID, returning (date_str, hex_suffix) if valid.