Skip to main content

Workflow Step Storage

Summary​

WorkflowStep is a tenant-tagged child of one version.

Mapping​

The application assigns its GUID. Name is required and length-bounded. Approver type, step type and mode convert to required text values. Approver value is optional and length-bounded. Step order is stored as an integer.

Relationship and index​

The required version foreign key cascades from version deletion. A nonunique composite index supports version/order access. Tenant filtering applies.

Lifecycle​

Replacing draft steps clears and rebuilds step entities. Published versions reject replacement in domain code.

Limitations​

The database does not make version/order unique, so multiple steps can intentionally share an order. It does not validate approver-value semantics or mode/type combinations.

Requires Confirmation​

Stage cardinality rules and stricter storage constraints require confirmation.

Source References​

  • microservices/src/workflow-service/Domain/Workflow/WorkflowDefinition.cs
  • microservices/src/workflow-service/Infrastructure/WorkflowDbContext.cs
  • microservices/src/workflow-service/Infrastructure/Migrations/20260706165438_InitialWorkflowSchema.cs

See Also​

Keywords​

Workflow database, EF Core, Workflow schema.

Revision Information​

  • Status: Draft
  • Last reviewed: 2026-07-20
  • Next review: 2026-10-20