Problem/Motivation

A workflow instance records no actor: nothing captures who started it. A requester-facing surface ('my requests', where a user lists the processes they submitted with their status) needs to answer 'which instances did this user start?', but there is no such axis today, and every existing instance list is admin-gated or assignment-scoped.

Proposed resolution

Record a first-class initiator on the process instance: the user who started it, the equivalent of Camunda's startUserId / camunda:initiator and the WS-HumanTask task initiator (as opposed to a task's actual owner, which orchestra models as the assignee).

  • New initiator base field on orchestra_instance: a plain uid, empty for a system, API or cron start. Stored as a bare id, not a user entity reference (matching the work item assignee), so the runtime entity keeps no hard dependency on the user module.
  • Set at start via a new optional argument to start(); a subprocess inherits its parent instance's initiator; never defaulted to the current user, so a programmatic start is not mis-attributed.
  • Indexed, so 'the instances a user initiated' is a paged, index-served query rather than a table scan. No load-all finder ships: the initiator set is unbounded.

Remaining tasks

Review and commit. Follow-ups, as separate issues: populate the initiator from the webform submission owner; a requester 'my requests' surface (a Views filter for instances initiated by the current user, with status and current-step fields).

Issue fork orchestra-3611190

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

mably created an issue. See original summary.

mably’s picture

Status: Active » Needs review

  • mably committed 8c4508a4 on 1.x
    feat: #3611190 Record the process instance initiator (start-user)
    
    By:...
mably’s picture

Status: Needs review » Fixed

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.