Skip to main content

RatifyOps

Trait RatifyOps 

Source
pub trait RatifyOps: Send + Sync {
    // Required methods
    fn approve_entry(
        &self,
        repo: &Repository,
        ref_name: &str,
        entry_id: &str,
        approver_id: &str,
        approver_kind: &str,
        message: Option<&str>,
        agent_id: &str,
    ) -> Result<ApprovalOutcome>;
    fn reject_entry(
        &self,
        repo: &Repository,
        ref_name: &str,
        entry_id: &str,
        reviewer_id: &str,
        reviewer_kind: &str,
        reason: &str,
        agent_id: &str,
    ) -> Result<ReviewOutcome>;
    fn withdraw_entry(
        &self,
        repo: &Repository,
        ref_name: &str,
        entry_id: &str,
        author_id: &str,
        agent_id: &str,
    ) -> Result<ReviewOutcome>;
}
Expand description

The three ledger review operations. Implemented by RatifyOpsImpl in agentstatedeveloper-ratify (Team tier). Methods take an explicit repo: &Repository so the impl can be a zero-sized struct — no lifetime or clone needed when stored as Arc<dyn RatifyOps> in Engine.

Required Methods§

Source

fn approve_entry( &self, repo: &Repository, ref_name: &str, entry_id: &str, approver_id: &str, approver_kind: &str, message: Option<&str>, agent_id: &str, ) -> Result<ApprovalOutcome>

Source

fn reject_entry( &self, repo: &Repository, ref_name: &str, entry_id: &str, reviewer_id: &str, reviewer_kind: &str, reason: &str, agent_id: &str, ) -> Result<ReviewOutcome>

Source

fn withdraw_entry( &self, repo: &Repository, ref_name: &str, entry_id: &str, author_id: &str, agent_id: &str, ) -> Result<ReviewOutcome>

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§