Flow overview

A flow defines the sequence of actions that OSA performs for a shift. For example, a flow can:

  • Post the shift to the billboard.
  • Offer the shift to eligible employees.
  • Repost the shift if it remains unfilled.
  • Mark the shift as Relief Not Found if no employee accepts it.

Before OSA processes a flow step, it performs a series of checks to determine whether the shift is eligible and how it should be processed.

Check What OSA does
Routing checks Confirms that the shift is not globally on hold, has not already passed the flow, and is not actively processing in another flow.
Shift filtering Applies include and exclude rules for attributes such as date range, time of day, team, job, docket, department, project, shift labels, activities, user-defined fields, and flags.
Grouping Groups shifts based on the selected grouping option.
Step processing Processes the shift group using the selected step type.
Cleanup Removes processed and skipped shifts from the active set. Remaining shifts continue to the next step.

When multiple flows or team and job assignments target the same shifts, OSA processes the most specific assignments first:

  • Team hierarchy depth first. Assignments for deeper or more specific teams run before assignments for parent teams.
  • Child job before parent job. When assignments use the same team depth, assignments for child jobs run before assignments for parent jobs.

This order is deterministic, so the same configuration produces the same processing order each time.