Skip to content

Show process settings read-only for a finalised case version - #970

Open
Klaas-Ritense wants to merge 10 commits into
next-minorfrom
bugfix/506-readonly-process-properties-panel
Open

Show process settings read-only for a finalised case version#970
Klaas-Ritense wants to merge 10 commits into
next-minorfrom
bugfix/506-readonly-process-properties-panel

Conversation

@Klaas-Ritense

Copy link
Copy Markdown
Member

generiekzaakafhandelcomponent/gzac-issues#506

Bug

Opening a process of a case version that has been made final showed an almost empty side
panel: clicking a task gave you the process link and nothing else. The marker toggle showed
nothing either, and the diagram could still be changed even though nothing could be saved.

Fix

The panel now shows the same settings as an editable case version - name, implementation,
listeners, input/output mappings and the rest - all read-only. Markers show again, process
links can be opened to view how they are configured, and nothing on the page can be changed.

Assumed: a process that is read-only on a case version that is not final keeps its editable
process links, since only a final version locks everything.

@Klaas-Ritense
Klaas-Ritense requested review from a team as code owners August 27, 2026 05:06
@coderabbitai

coderabbitai Bot commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 59f65e32-1298-4ca5-98d7-d64b9d867a51

📥 Commits

Reviewing files that changed from the base of the PR and between 342db9a and 14992e7.

📒 Files selected for processing (1)
  • documentation/release-notes/13.x.x/13.44.0/README.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • documentation/release-notes/13.x.x/13.44.0/README.md

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Summary by CodeRabbit

  • Enhancements
    • Read-only views now prevent editing actions, control changes, and sequence-flow movement, including dynamically added content.
    • Process-link dialogs provide View or Close options when editing is unavailable.
    • Validation and deployment controls respect editing permissions.
  • Bug Fixes
    • Finalized case versions now display process settings correctly in read-only mode.
    • Drafts can be created from existing versions containing building blocks.
    • Document handling is faster.
  • Documentation
    • Release notes now describe read-only behavior and related fixes.

Walkthrough

The changes add read-only state management for process-link configuration. The modal and import configuration hide editing actions and lock controls through a mutation-observing directive. The process-management builder derives viewer mode from process state and edit permissions, disables write operations, and selects the active editor for overlays and validation. New BPMN properties-panel providers remove editing actions and restrict controls. English and Dutch translations and release notes are updated.

Merge Risk: 🟡 Moderate · up to 14992

Finalized case versions may still allow process settings or process links to be changed and deployed for users with edit permission, undermining the promised read-only experience. The PR is not merge-ready until this access and editability behavior is corrected or explicitly accepted.

🚥 Pre-merge checks | ✅ 2
✅ Passed checks (2 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
🛠️ Fix failing CI checks 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch bugfix/506-readonly-process-properties-panel

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4


ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 446fa597-a256-4610-90b2-bcb272425d60

📥 Commits

Reviewing files that changed from the base of the PR and between ca9d7f0 and f80fdfd.

📒 Files selected for processing (21)
  • documentation/release-notes/13.x.x/13.44.0/README.md
  • frontend/projects/valtimo/process-link/src/lib/components/import-plugin-configuration/import-plugin-configuration.component.html
  • frontend/projects/valtimo/process-link/src/lib/components/import-plugin-configuration/import-plugin-configuration.component.ts
  • frontend/projects/valtimo/process-link/src/lib/components/process-link-modal/process-link-modal.component.html
  • frontend/projects/valtimo/process-link/src/lib/components/process-link-modal/process-link-modal.component.ts
  • frontend/projects/valtimo/process-link/src/lib/directives/index.ts
  • frontend/projects/valtimo/process-link/src/lib/directives/read-only-content.directive.spec.ts
  • frontend/projects/valtimo/process-link/src/lib/directives/read-only-content.directive.ts
  • frontend/projects/valtimo/process-link/src/lib/process-link.module.ts
  • frontend/projects/valtimo/process-link/src/lib/services/process-link-state.service.ts
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/index.ts
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/read-only-properties-panel.spec.ts
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/read-only-properties-panel.ts
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/valtimo-properties-provider.ts
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/process-management-builder.component.html
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/process-management-builder.component.scss
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/process-management-builder.component.ts
  • frontend/projects/valtimo/process-management/src/lib/services/process-management-editor.service.ts
  • frontend/projects/valtimo/process-management/src/lib/utils/process-management-builder.utils.ts
  • frontend/projects/valtimo/shared/assets/core/en.json
  • frontend/projects/valtimo/shared/assets/core/nl.json

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.

…only-process-properties-panel

# Conflicts:
#	documentation/release-notes/13.x.x/13.44.0/README.md
@sofiaIvarsRitense sofiaIvarsRitense added feedback test env Create a remote test environment for this PR in the Ritense product development cluster labels Aug 27, 2026
@valtimo-platform

valtimo-platform Bot commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Will create a test environment. This comment will be updated once it is available. This usually takes a few minutes.
Closing or merging this PR will automatically delete the test environment. Pushing commits to this PR will update the test environment.
Progress:

  • Created test environment
  • Images tagged testEnv.pr970_commit.7722b0d47d_contents.d8a7661673_build.2035 (frontend) / testEnv.pr970_commit.96221b9c90_contents.7f2233a442_build.733 (backend) available
  • Started test environment
  • Test environment is running at https://pr970.product-development.test.k8s.ritense.com

Test environment metadata:

  • URL: https://pr970.product-development.test.k8s.ritense.com
  • Commit: 96221b9
  • Frontend contents: d8a7661673
  • Backend contents: 7f2233a442
  • Frontend image: ghcr.io/valtimo-platform/valtimo/gzac-frontend:testEnv.pr970_commit.7722b0d47d_contents.d8a7661673_build.2035
  • Backend image: ghcr.io/valtimo-platform/valtimo/gzac-backend:testEnv.pr970_commit.96221b9c90_contents.7f2233a442_build.733

Observability:

- Restore the original control state when read-only mode ends
- Keep both BPMN instances in sync for building block process links
- Give the stubbed movement services a no-op start
- Remove code comments
…only-process-properties-panel

# Conflicts:
#	documentation/release-notes/13.x.x/13.44.0/README.md
@sofiaIvarsRitense

Copy link
Copy Markdown
Contributor

Some inputs like the toggle button look disabled but not read-only
Screenshot 2026-08-28 at 12 40 58
Screenshot 2026-08-28 at 12 40 32

The read-only process link modal enforced its state by disabling every
non-text input, select and button, which Carbon renders greyed out and
low contrast. Controls now get the Carbon read-only modifier class of
their wrapper, keeping label and value text readable, and the Carbon
buttons that change the content are left out instead of greyed out.

A capture phase click handler keeps a control that is reached anyway
from being changed, which is what disabling used to guarantee.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/process-management-builder.component.ts (1)

1382-1382: 🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win

Keep finalised process-link settings read-only.

When isReadOnlyProcess$ is true and the user has edit permission, editingAllowed is true. Line 1382 then sets the modal to editable. A user can modify a process link for a finalised version.

Include the final-process state in this decision.

Proposed fix
-    this.processLinkStateService.setReadOnly(!this.processManagementEditorService.editingAllowed);
+    this.processLinkStateService.setReadOnly(
+      this.isReadOnlyProcess$.getValue() || !this.processManagementEditorService.editingAllowed
+    );

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: b9ed65e6-037e-4011-a488-2f26714829fd

📥 Commits

Reviewing files that changed from the base of the PR and between 698d4c3 and 342db9a.

📒 Files selected for processing (11)
  • documentation/release-notes/13.x.x/13.44.0/README.md
  • frontend/projects/valtimo/process-link/src/lib/directives/read-only-content.directive.spec.ts
  • frontend/projects/valtimo/process-link/src/lib/directives/read-only-content.directive.ts
  • frontend/projects/valtimo/process-link/src/lib/services/process-link-state.service.ts
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/read-only-properties-panel.spec.ts
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/read-only-properties-panel.ts
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/valtimo-properties-provider.ts
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/process-management-builder.component.scss
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/process-management-builder.component.ts
  • frontend/projects/valtimo/process-management/src/lib/services/process-management-editor.service.ts
  • frontend/projects/valtimo/process-management/src/lib/utils/process-management-builder.utils.ts
💤 Files with no reviewable changes (6)
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/read-only-properties-panel.ts
  • frontend/projects/valtimo/process-management/src/lib/services/process-management-editor.service.ts
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/process-management-builder.component.scss
  • frontend/projects/valtimo/process-link/src/lib/services/process-link-state.service.ts
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/read-only-properties-panel.spec.ts
  • frontend/projects/valtimo/process-management/src/lib/components/process-management-builder/panel/valtimo-properties-provider.ts

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.

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

Labels

test env Create a remote test environment for this PR in the Ritense product development cluster

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants