Architecture Overview

This document describes the runtime architecture of the Rust BPM Engine. It focuses on execution semantics, not modeling tools or BPMN specifications.


Scope

This architecture document defines:

It explicitly does not cover:


Core Abstractions

Process Definition

A static graph describing the workflow structure.

Process Instance

A running instance of a process definition.

Token

Token is the unit of execution.

A token represents execution authority at a specific node.


Execution Model

All state transitions are driven by events, not direct calls.

See: execution-model.md


Event-driven Core

This guarantees:


Concurrency Model

Parallel join is protected by uniqueness constraints.


Failure & Compensation

See: saga.md


Crash Recovery

See: recovery.md


Design Principles


This document serves as the contract between architecture and implementation.