Unsaved DMN edits are lost when switching check editor tabs
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 55/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Lĩnh vực
- frontend
Hướng nghiên cứu
Start with CustomCheckDetail, KogitoDmnEditorView, and openDmnEditor to trace the DMN editor's mount and unmount behavior. Check how currentDmnModel and eligibilityCheck().dmnModel are updated when switching tabs or leaving the editor. Done means unsaved DMN edits survive tab switches, and leaving with unsaved changes warns the user where applicable.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Problem
In the custom check editor, unsaved edits in the DMN editor are silently lost when the user switches to another tab and comes back.
Steps to reproduce
- Open a custom check and go to the DMN Definition tab.
- Edit the model. Don't click Save Changes.
- Switch to another tab, such as Testing, then back to DMN Definition.
Expected: the edits are still there, or the app warns before they are discarded.
Actual: the editor shows the last saved model and the edits are gone, with no warning.
Cause
CustomCheckDetail renders the tabs in a Switch/Match, so leaving the DMN tab unmounts KogitoDmnEditorView. When it remounts, openDmnEditor seeds the editor with the saved eligibilityCheck().dmnModel and calls onDmnModelChange with that model, which overwrites currentDmnModel (the only copy of the edits).
Leaving the check editor entirely (breadcrumbs, main navigation, closing the tab) also discards unsaved edits without a warning. The app has no useBeforeLeave or beforeunload guard.
Possible fixes
- Seed a remounted editor from
currentDmnModelwhen it differs from the saved model, so edits survive tab switches. - Or keep the editor mounted and hide it while other tabs are shown.
- Warn before leaving the page with unsaved edits (
useBeforeLeavefrom@solidjs/routerplusbeforeunload).
Related
Branch 523-clarify-check-renaming-and-streamline-the-publishing-workflow adds a warning on the Publish tab with a Save DMN edits button. That covers the Publish tab only, not the general loss on tab switches.
- Ngôn ngữ chính
- Java
- Star
- 16
- Fork
- 5
- Merge trung bình
- 14 giờ 34 phút
- Pull request đã merge (30 ngày)
- 23
Chuẩn bị môi trường
Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Không có hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của CodeForPhilly/benefit-decision-toolkit
-
frontend quick win
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
CodeForPhilly/benefit-decision-toolkit#571 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 67/100
CodeForPhilly/benefit-decision-toolkit#565 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
backend Good for newcomer quick win
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
CodeForPhilly/benefit-decision-toolkit#562 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
documentation quick win
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
CodeForPhilly/benefit-decision-toolkit#445 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Make issue templatesĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
CodeForPhilly/benefit-decision-toolkit#425 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của CodeForPhilly/benefit-decision-toolkit
Issue tương tự
-
[BUG] jackson3 JacksonJsonpMapper(ObjectMapper) fails to deserialize `_source` with "Trailing token" errorCó thể đã có người làm @junyeokk đã nhận hôm nay. Đang mởbug untriaged
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
opensearch-project/opensearch-java#2236 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 67/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
open-learning-exchange/myplanet#18392 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
linagora/twake-calendar-side-service#1218 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
[Bug] [Go] Ack returns nil when the server answers with a non-OK statusCó thể đã có người làm @leizhiyuan đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
apache/rocketmq-clients#1465 ·
Maintainer thường phản hồi trong vòng 2 ngày