Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ad-Hoc Subprocess: Support completionCondition and cancelRemainingInstances attributes #4850

Open
15 tasks
maff opened this issue Feb 25, 2025 · 2 comments
Open
15 tasks
Assignees
Labels
enhancement New feature or request ready Ready to be worked on

Comments

@maff
Copy link
Member

maff commented Feb 25, 2025

Problem you would like to solve

camunda/camunda#28220 is adding support to configure a completionCondition and a cancelRemainingInstances attribute to ad-hoc subprocesses. This should also be configurable through the properties panel in web and desktop modeler.

An example XML definition according to the BPMN spec (see page 196):

<bpmn:adHocSubProcess id="MyAdHocSubProcess" name="My Ad-Hoc Subprocess" cancelRemainingInstances="true">
    <bpmn:extensionElements>
        <zeebe:adHoc activeElementsCollection="=[&#34;A&#34;, &#34;B&#34;]"/>
    </bpmn:extensionElements>
    <!-- incoming/outgoing, tasks, ... -->
    <bpmn:completionCondition xsi:type="bpmn:tFormalExpression">=true</bpmn:completionCondition>
</bpmn:adHocSubProcess>

Proposed solution

Make the following 2 optional attributes settings configurable through the properties panel of an ad-hoc subprocess:

Attribute Type
completionCondition FEEL Expression (needs to resolve to boolean)
cancelRemainingInstances Boolean (default true)

The checklist below follows the format of the issue which initially added ad-hoc subprocess support:

  • completionCondition can be defined in properties panel
    • it is FEEL
    • it is optional
  • cancelRemainingInstances can be defined in properties panel
    • it is a boolean/switch
    • it defaults to true
    • ❓ TBD should this only be set when a completionCondition is defined?
  • both attributes are supported in 8.8 config of camunda/bpmnlint-plugin-camunda-compat
  • camunda/linting integration
    • When FEEL error is clicked, the properties panel entry is focused
    • (may be already done) Verify the errors are human-readable
  • User guidance (e.g. via tooltip) and a link to documentation is provided
  • Make sure documentation is released together with adding the 2 new attributes
  • Integrate into camunda-bpmn-js
  • Integrate into Desktop Modeler

Additional context

Needed for 8.8

@barmac
Copy link
Collaborator

barmac commented Feb 25, 2025

Thanks for opening the issue. I'd like to resolve the discussion in camunda/camunda#28220 (comment) first before we move on with this.
Please note that it may be already too late to get the modeling support for 8.7 if we don't know yet whether we want it.

@barmac barmac added needs discussion Needs further discussion ready Ready to be worked on and removed needs discussion Needs further discussion labels Feb 25, 2025
@barmac
Copy link
Collaborator

barmac commented Feb 28, 2025

@maff @gsteyn assigning you as we agreed yesterday.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request ready Ready to be worked on
Projects
None yet
Development

No branches or pull requests

3 participants