Skip to main content

Workflows Management

A workflow implements a process model — the sequence of states an object moves through, and the rules for moving between them. Starhive's workflow capability is flexible enough to model very different processes: an order fulfillment pipeline, a quarterly security review, or a simple task board.

Terminology​

  • State (workflow state) — where an object sits at rest, like a state machine's state.
    • End state — a state flagged as "done," filterable in StarQL (see Workflow attribute type).
    • Any state — a placeholder representing every state, so you can define one transition that applies from anywhere instead of one per state.
  • Transition — the action of moving an object from one state to another.
  • Workflow — the full set of states and transitions.

Modeling a workflow​

Workflows are created at the space level, by adding a Workflow-type attribute to an object type and assigning a workflow to it — either an existing unassigned workflow, or a new one the system creates automatically.

Conditions​

A transition can have conditions — all of them must pass for the transition to be available:

ConditionWhat it checks
UserThe transition is enabled only for specific users, or users found in a User attribute (directly, or on a referenced object).
EmailSame idea, matched against an Email attribute (directly, or on a referenced object).
Boolean TrueA specified boolean attribute must be true.
Attribute ValueAn attribute's value must meet given criteria.
Attribute MandatoryA specified attribute must not be empty.
Compare Another DateA date attribute is compared to another date attribute, or an expression like now, using d/w/m/y offsets — e.g. "later than now," "earlier than or same as 1d," "later than -6m."
Always FalseNever passes — used to disable a single transition without disabling the whole workflow.

Transition screens​

A screen is a small form shown when a transition runs, to capture or confirm information before the state actually changes. Configure it from a transition's chevron menu — an optional description, and which attributes to show. Without a configured screen, the transition applies immediately.

Workflow graph​

Every workflow can be viewed as a graph of its states and transitions — hover a workflow value on an object, or open workflow configuration directly.

Using workflows on objects​

Once a type has a Workflow attribute, only the states reachable from an object's current state (with all conditions satisfied) are offered as valid transitions — unlike a normal attribute, you can't set it to an arbitrary value.

For CSV imports, the value must be a state name reachable by a valid transition from the object's current state (or its initial state, for new objects); rows that don't satisfy any valid transition are rejected and reported in the import's error file.

Permissions​

ActionWorkspace memberSpace memberSpace adminSpace owner
Create workflow✓✓✓✓
View workflow—✓✓✓
Edit workflow——✓✓
Delete workflow——✓✓