pub struct DecisionRunnerAdapter { /* private fields */ }Expand description
Executes decision commands without moving policy into the runner.
Implementations§
Source§impl DecisionRunnerAdapter
impl DecisionRunnerAdapter
Sourcepub fn new(executors: DecisionExecutorRegistry) -> Self
pub fn new(executors: DecisionExecutorRegistry) -> Self
Creates an adapter backed by the supplied executor registry.
Sourcepub fn executors(&self) -> &DecisionExecutorRegistry
pub fn executors(&self) -> &DecisionExecutorRegistry
Returns the configured executor registry.
Sourcepub fn execution_class_for_command(
&self,
command: &DecisionLoopCommand,
) -> Result<DecisionExecutionClass, DecisionRunnerError>
pub fn execution_class_for_command( &self, command: &DecisionLoopCommand, ) -> Result<DecisionExecutionClass, DecisionRunnerError>
Resolves the execution class of the executor that would run this command, using the same registry route authority as execution. Lets a host decide which resource-accounting boundary to apply before it reserves resources.
Sourcepub async fn execute_command(
&self,
command: &DecisionLoopCommand,
knowledge: &KnowledgeBase,
) -> Result<DecisionEvidenceReceipt, DecisionRunnerError>
pub async fn execute_command( &self, command: &DecisionLoopCommand, knowledge: &KnowledgeBase, ) -> Result<DecisionEvidenceReceipt, DecisionRunnerError>
Resolves and executes one evidence-producing command.
The complete evidence batch is validated before it is atomically committed. Active requests capture their baseline immediately before executor invocation.
Sourcepub async fn execute_command_with_limits(
&self,
command: &DecisionLoopCommand,
knowledge: &KnowledgeBase,
limits: DecisionExecutionLimits,
) -> Result<DecisionEvidenceReceipt, DecisionRunnerError>
pub async fn execute_command_with_limits( &self, command: &DecisionLoopCommand, knowledge: &KnowledgeBase, limits: DecisionExecutionLimits, ) -> Result<DecisionEvidenceReceipt, DecisionRunnerError>
Resolves and executes one command under a host-owned resource allowance.
Sourcepub async fn drive_command(
&self,
decision_loop: &DecisionLoop,
command: &DecisionLoopCommand,
knowledge: &KnowledgeBase,
experience: &mut ExperienceStore,
session: &mut DecisionSession,
) -> Result<DecisionRunnerTurn, DecisionRunnerError>
pub async fn drive_command( &self, decision_loop: &DecisionLoop, command: &DecisionLoopCommand, knowledge: &KnowledgeBase, experience: &mut ExperienceStore, session: &mut DecisionSession, ) -> Result<DecisionRunnerTurn, DecisionRunnerError>
Executes a command and resumes the matching decision-loop transition.
ExecuteAction submits passive evidence, CollectActiveEvidence
submits the captured before/after snapshots, and Replan invokes the
reasoner and utility planner. Terminal commands are returned unchanged.
Adaptive, retry, active, and replan continuations fail before execution;
use Self::drive_command_with_suppressed_actions to reauthorize them.
Sourcepub async fn drive_command_with_suppressed_actions(
&self,
decision_loop: &DecisionLoop,
command: &DecisionLoopCommand,
knowledge: &KnowledgeBase,
experience: &mut ExperienceStore,
session: &mut DecisionSession,
host_suppressed_actions: &BTreeSet<String>,
) -> Result<DecisionRunnerTurn, DecisionRunnerError>
pub async fn drive_command_with_suppressed_actions( &self, decision_loop: &DecisionLoop, command: &DecisionLoopCommand, knowledge: &KnowledgeBase, experience: &mut ExperienceStore, session: &mut DecisionSession, host_suppressed_actions: &BTreeSet<String>, ) -> Result<DecisionRunnerTurn, DecisionRunnerError>
Executes and resumes a command under explicit current host policy.
Current suppressions are checked before executor work and remain in force through verification, adaptive authorization, and replanning.
Sourcepub async fn drive_command_with_limits(
&self,
decision_loop: &DecisionLoop,
command: &DecisionLoopCommand,
knowledge: &KnowledgeBase,
experience: &mut ExperienceStore,
session: &mut DecisionSession,
limits: DecisionExecutionLimits,
) -> Result<DecisionRunnerTurn, DecisionRunnerError>
pub async fn drive_command_with_limits( &self, decision_loop: &DecisionLoop, command: &DecisionLoopCommand, knowledge: &KnowledgeBase, experience: &mut ExperienceStore, session: &mut DecisionSession, limits: DecisionExecutionLimits, ) -> Result<DecisionRunnerTurn, DecisionRunnerError>
Drives one command under a host-owned execution allowance.
Sourcepub async fn drive_command_with_limits_and_suppressed_actions(
&self,
decision_loop: &DecisionLoop,
command: &DecisionLoopCommand,
knowledge: &KnowledgeBase,
experience: &mut ExperienceStore,
session: &mut DecisionSession,
limits: DecisionExecutionLimits,
host_suppressed_actions: &BTreeSet<String>,
) -> Result<DecisionRunnerTurn, DecisionRunnerError>
pub async fn drive_command_with_limits_and_suppressed_actions( &self, decision_loop: &DecisionLoop, command: &DecisionLoopCommand, knowledge: &KnowledgeBase, experience: &mut ExperienceStore, session: &mut DecisionSession, limits: DecisionExecutionLimits, host_suppressed_actions: &BTreeSet<String>, ) -> Result<DecisionRunnerTurn, DecisionRunnerError>
Drives one command under explicit host policy and execution allowance.
Current suppressions are checked before executor work and remain in force through verification, adaptive authorization, and replanning.