Skip to content

Conversation

@mcraeteisha
Copy link
Contributor

@mcraeteisha mcraeteisha commented Sep 25, 2025

Issue

Ticket: FOUR-24334

PM Blocks were incorrectly showing validation errors with the message "Call Activity must have a child process and a start event selected" even when they were properly configured with valid processId, startEvent, and calledElement values. The bpmnlint plugin's processmaker/call-activity-child-process validation rule was incorrectly flagging properly configured PM Blocks as invalid. The modeler was correctly loading and configuring PM Blocks, but the validation rule had a bug in how it parsed or validated the PM Block configuration.

Solution

Implemented a false positive filter in the modeler that runs after validation to remove incorrect validation errors for properly configured PM Blocks while preserving validation errors for genuinely unconfigured PM Blocks.

How to Test

  1. Login to ProcessMaker
  2. Go to Designer → Processes.
  3. Create a Process.
  4. Have a PM Block created.
  5. Add the PM Block to the Process Modeler.
  6. Select the Auto-Validate option.
  • The "Call Activity must have a child process and a start event selected" error should not appear.

Code Review Checklist

  • I have pulled this code locally and tested it on my instance, along with any associated packages.
  • This code adheres to ProcessMaker Coding Guidelines.
  • This code includes a unit test or an E2E test that tests its functionality, or is covered by an existing test.
  • This solution fixes the bug reported in the original ticket.
  • This solution does not alter the expected output of a component in a way that would break existing Processes.
  • This solution does not implement any breaking changes that would invalidate documentation or cause existing Processes to fail.
  • This solution has been tested with enterprise packages that rely on its functionality and does not introduce bugs in those packages.
  • This code does not duplicate functionality that already exists in the framework or in ProcessMaker.
  • This ticket conforms to the PRD associated with this part of ProcessMaker.

@eiresendez eiresendez self-requested a review September 25, 2025 17:02
@cypress
Copy link

cypress bot commented Sep 25, 2025

modeler    Run #1670

Run Properties:  status check passed Passed #1670  •  git commit dda6d0546a: FOUR-24334-B | Error with PM Block Element in Modeler, "Call Activity Must Have ...
Project modeler
Branch Review defect/FOUR-24334-B
Run status status check passed Passed #1670
Run duration 05m 40s
Commit git commit dda6d0546a: FOUR-24334-B | Error with PM Block Element in Modeler, "Call Activity Must Have ...
Committer Teisha McRae
View all properties for this run ↗︎

Test results
Tests that failed  Failures 0
Tests that were flaky  Flaky 0
Tests that did not run due to a developer annotating a test with .skip  Pending 83
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 280
View all changes introduced in this branch ↗︎

@processmaker-sonarqube
Copy link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants