Navis Workflow Engine
The package is fluvius.navis (not fluvius.nava). Navis coordinates human workflows through declared workflows, stages, steps, roles, transitions, an event router, and a workflow manager.
from fluvius.navis import (
BEGIN_STATE,
FINISH_STATE,
Role,
Stage,
Step,
Workflow,
WorkflowManager,
transition,
)
WorkflowConnector and WorkflowDataManager persist workflow state. WorkflowDomain exposes workflow operations through the domain system, while WorkflowEventRouter and connect route events.
Workflow definitions are application code and are loaded from FLUVIUS_WORKFLOW_REPOSITORIES / FLUVIUS_WORKFLOW_RESOURCES. Configure a durable database with FLUVIUS_DB_URL and optionally select the schema with FLUVIUS_NAVIS_SCHEMA.
Use BEGIN_STATE and FINISH_STATE rather than magic terminal values, and declare transitions with the exported transition decorator.