Replace inline node statuses with a tenant-scoped status vocabulary and let requesters filter their requests by status

Promotes the workflow-authored status from per-node inline config (label plus CSS classes) to a tenant-scoped orchestra_status vocabulary, and lets requesters filter their "My requests" by status.

  • orchestra_status config entity, tenant-scoped like a workflow (empty tenant is shared, a tenant id is scoped to it), fronted by a StatusCatalogue service.
  • A CRUD UI for the vocabulary in orchestra_ui (the entity stays headless; the UI is attached via entity_type_alter).
  • The Status node feature becomes a tenant-scoped reference select (status.id).
  • The current status id is stored on the process instance and kept in sync transactionally through the guarded state-transition primitive; the provider reads the stored id rather than re-scanning tokens.
  • A per-user status filter on the My requests page, offering only the statuses present in the acting user's own requests.
  • Default statuses shipped with the webform example, and its workflow migrated to reference them.

Kernel and functional tests updated and green; phpcs, phpstan and cspell clean.

Merge request reports

Loading