arvo-event-handler
Version:
A complete set of orthogonal event handler and orchestration primitives for Arvo based applications, featuring declarative state machines (XState), imperative resumables for agentic workflows, contract-based routing, OpenTelemetry observability, and in-me
41 lines (40 loc) • 1.76 kB
TypeScript
import { type ArvoEvent, ViolationError } from 'arvo-core';
/**
* Enumeration of transaction violation causes for state management operations.
*/
export declare const TransactionViolationCause: {
/** Failed to read from machine memory */
readonly READ_FAILURE: "READ_MACHINE_MEMORY_FAILURE";
/** Failed to acquire lock on machine memory */
readonly LOCK_FAILURE: "LOCK_MACHINE_MEMORY_FAILURE";
/** Failed to write to machine memory */
readonly WRITE_FAILURE: "WRITE_MACHINE_MEMORY_FAILURE";
/** Lock acquisition was denied */
readonly LOCK_UNACQUIRED: "LOCK_UNACQUIRED";
/** Event subject format is invalid */
readonly INVALID_SUBJECT: "INVALID_SUBJECT";
};
export type TransactionViolationCauseType = (typeof TransactionViolationCause)[keyof typeof TransactionViolationCause];
/**
* Error representing failures in orchestrator state transaction operations.
*
* Indicates issues with lock acquisition, state persistence, or memory access
* during orchestration execution. These errors typically trigger retries.
*/
export declare class TransactionViolation extends ViolationError<'OrchestratorTransaction'> {
/** Specific cause of the transaction failure */
readonly cause: TransactionViolationCauseType;
constructor(param: {
cause: TransactionViolationCauseType;
message: string;
initiatingEvent: ArvoEvent;
});
}
/**
* Type guard checking if an error is a TransactionViolation.
*
* @param error - Error to check
* @param cause - Optional specific cause to match
* @returns True if error is TransactionViolation with optional matching cause
*/
export declare const isTransactionViolationError: (error: unknown, cause?: TransactionViolationCauseType) => boolean;