pub struct GitEventStore { /* private fields */ }Implementations§
Source§impl GitEventStore
impl GitEventStore
Sourcepub fn open(
repo_root: impl Into<PathBuf>,
worker_id: impl Into<String>,
) -> Result<Self, StateError>
pub fn open( repo_root: impl Into<PathBuf>, worker_id: impl Into<String>, ) -> Result<Self, StateError>
Open a GASP agent repo. repo_root must be inside a git work tree;
worker_id names this writer in the lease and must be unique per
worker.
pub fn with_lease_ttl(self, ttl: Duration) -> Self
pub fn events_path(&self) -> PathBuf
Sourcepub fn release_lease(&self) -> Result<(), StateError>
pub fn release_lease(&self) -> Result<(), StateError>
Release the lease if this worker holds it. A corrupt or unreadable
lease file is an error — silently leaving it in place would deadlock
every future acquire_lease.
Sourcepub fn commit_run(
&self,
run_id: &RunId,
goal: &GoalId,
outcome: &str,
extra_paths: &[&str],
) -> Result<Option<String>, StateError>
pub fn commit_run( &self, run_id: &RunId, goal: &GoalId, outcome: &str, extra_paths: &[&str], ) -> Result<Option<String>, StateError>
The run-boundary commit: stage the log plus any projection paths and
commit only those paths with the GASP trailers (content staged by
anyone else stays staged, untouched). Requires the lease. Returns the
commit sha, or Ok(None) when nothing in the requested paths changed —
unrelated dirty files in the worktree do not affect the outcome.
Trait Implementations§
Source§impl Clone for GitEventStore
impl Clone for GitEventStore
Source§fn clone(&self) -> GitEventStore
fn clone(&self) -> GitEventStore
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for GitEventStore
impl Debug for GitEventStore
Source§impl EventStore for GitEventStore
impl EventStore for GitEventStore
fn append<'life0, 'async_trait>(
&'life0 self,
events: Vec<Event>,
) -> Pin<Box<dyn Future<Output = Result<Vec<EventId>, StateError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn scan<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<Event>, StateError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn scan_after<'life0, 'async_trait>(
&'life0 self,
event_id: Option<EventId>,
) -> Pin<Box<dyn Future<Output = Result<Vec<Event>, StateError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Auto Trait Implementations§
impl !RefUnwindSafe for GitEventStore
impl !UnwindSafe for GitEventStore
impl Freeze for GitEventStore
impl Send for GitEventStore
impl Sync for GitEventStore
impl Unpin for GitEventStore
impl UnsafeUnpin for GitEventStore
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more