Skip to content

FOUR-28033: Multitenat - Oops!, in the default screen interstitial.#8767

Open
eiresendez wants to merge 3 commits intodevelopfrom
task/FOUR-28033
Open

FOUR-28033: Multitenat - Oops!, in the default screen interstitial.#8767
eiresendez wants to merge 3 commits intodevelopfrom
task/FOUR-28033

Conversation

@eiresendez
Copy link
Copy Markdown
Contributor

@eiresendez eiresendez commented Apr 1, 2026

Issue & Reproduction Steps

FOUR-28033: Multitenat - Oops!, in the default screen interstitial.
Ticket: https://processmaker.atlassian.net/browse/FOUR-28033

Start Event and task interstitial selectors were auto-resolving the hidden system fallback screen, which exposed an invalid Open Screen link and made the fallback look like an editable selection.

  1. In ProcessMaker, create or open a process and add a Start Event.
  2. Open the Start Event settings and enable the interstitial option.
  3. Observe that the Screen Interstitial field is prefilled and shows an Open Screen link.
  4. Click Open Screen and the app navigates to a 404/Oops page because the fallback system interstitial is not editable through the web screen-builder route.

Solution

  • Updated the modeler interstitial selectors so enabling interstitial no longer auto-assigns the runtime fallback screen; an empty selection now correctly means runtime fallback.
  • Kept the system interstitial screen selectable in the dropdown for explicit assignment when desired.
  • Updated ScreenSelect so Open Screen is only shown for editable screens, hiding the link for system screens.
  • Updated the screens API usage so the selector can inspect category metadata and determine whether a screen is editable.

How to Test

  1. Open the modeler on a process in this branch, select a Start Event, and open its settings. Confirm the Screen Interstitial field is empty by default and no Open Screen link is shown.
  2. Open the Screen Interstitial dropdown and confirm the default system interstitial is listed as a selectable screen.
  3. Select the default system interstitial and confirm Open Screen is still hidden.
  4. Assign a normal tenant-created display screen as the interstitial and confirm the Open Screen link appears and opens that screen builder correctly.
  5. Repeat the same checks on a task interstitial.
  6. Run vendor/bin/phpunit tests/Feature/Api/ScreenTest.php.

Related Tickets & Packages

ci:deploy

@eiresendez eiresendez marked this pull request as ready for review April 8, 2026 16:32
@processmaker-sonarqube
Copy link
Copy Markdown

@Kookster310
Copy link
Copy Markdown
Contributor

QA server K8S was successfully deployed https://ci-1e2d56e65b.engk8s.processmaker.net

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.

2 participants