Unsaved DMN edits are lost when switching check editor tabs
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 55/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Área
- frontend
Línea de trabajo
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.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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.
- Lenguaje dominante
- Java
- Estrellas
- 16
- Forks
- 5
- Merge medio
- 15 h 50 min
- PR fusionados (30 d)
- 22
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de CodeForPhilly/benefit-decision-toolkit
-
backend Good for newcomer quick win
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
CodeForPhilly/benefit-decision-toolkit#562 ·
Los mantenedores suelen responder en 1 día
-
documentation quick win
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
CodeForPhilly/benefit-decision-toolkit#445 ·
Los mantenedores suelen responder en 1 día
-
Make issue templatesAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
CodeForPhilly/benefit-decision-toolkit#425 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
CodeForPhilly/benefit-decision-toolkit#564 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
CodeForPhilly/benefit-decision-toolkit#563 ·
Los mantenedores suelen responder en 1 día
Todos los issues de CodeForPhilly/benefit-decision-toolkit
Issues similares
-
False Negative: InnerTypeLastCheck does not report members declared after inner enums or annotationsAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
checkstyle/checkstyle#22027 ·
Los mantenedores suelen responder en 1 día
-
bug follow-up lane:auto
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
Sanne/incus-spawn#1497 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día
-
[CI] NettyClientTest.testServerDisconnection may fail with DisconnectExceptionPosiblemente ocupada @yangshangqing95 la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100