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