diff --git a/e2e/compute-reset-chained-links.e2e-spec.ts b/e2e/compute-reset-chained-links.e2e-spec.ts
index 17a716766fc0cb7e5c6a8286de5f2a62d119059a..44fb7022bd0adbcb7856212eaadfd73775d3dbfe 100644
--- a/e2e/compute-reset-chained-links.e2e-spec.ts
+++ b/e2e/compute-reset-chained-links.e2e-spec.ts
@@ -126,7 +126,7 @@ describe("ngHyd − compute then reset chained results", () => {
     expect(await navbar.getAllCalculatorTabs().count()).toBe(3);
 
     // 1. get top most module
-    await navbar.clickCalculatorTabForUid("YWFqMD");
+    await navbar.clickCalculatorTabForUid("YjJua2");
 
     // check that "compute" button is active
     const calcButton = calcPage.getCalculateButton();
@@ -143,7 +143,7 @@ describe("ngHyd − compute then reset chained results", () => {
     }
 
     // 2. get bottom-most module
-    await navbar.clickCalculatorTabForUid("ZHd0ej");
+    await navbar.clickCalculatorTabForUid("OGd2em");
 
     // modify any input (for ex. "Ks")
     await calcPage.getInputById("Ks").clear();
diff --git a/e2e/session-cascade-results.json b/e2e/session-cascade-results.json
index 9825f301c4561fd08fab26df548de94c6b3961c4..e0284cc662a5bb8c051caff035859a89c4b36be1 100644
--- a/e2e/session-cascade-results.json
+++ b/e2e/session-cascade-results.json
@@ -1,7 +1,7 @@
 {
     "session": [
         {
-            "uid": "YWFqMD",
+            "uid": "YjJua2",
             "props": {
                 "calcType": 11,
                 "nodeType": 0
@@ -37,7 +37,7 @@
                 {
                     "symbol": "Q",
                     "mode": "LINK",
-                    "targetNub": "MXB0en",
+                    "targetNub": "eW1hY3",
                     "targetParam": "Q"
                 },
                 {
@@ -73,7 +73,7 @@
             ]
         },
         {
-            "uid": "MXB0en",
+            "uid": "eW1hY3",
             "props": {
                 "calcType": 3,
                 "nodeType": 2
@@ -103,14 +103,14 @@
                 },
                 {
                     "symbol": "YB",
-                    "mode": "LINK",
-                    "targetNub": "ZHd0ej",
-                    "targetParam": "Yco"
+                    "mode": "SINGLE",
+                    "value": 1
                 },
                 {
                     "symbol": "Y",
-                    "mode": "SINGLE",
-                    "value": 0.8
+                    "mode": "LINK",
+                    "targetNub": "OGd2em",
+                    "targetParam": "Yco"
                 },
                 {
                     "symbol": "LargeurBerge",
@@ -120,14 +120,14 @@
             ]
         },
         {
-            "uid": "ZHd0ej",
+            "uid": "OGd2em",
             "props": {
-                "methodeResolution": 0,
-                "calcType": 4,
+                "varCalc": "Hs",
+                "calcType": 2,
                 "nodeType": 2
             },
             "meta": {
-                "title": "Remous"
+                "title": "Sec. param."
             },
             "parameters": [
                 {
@@ -135,26 +135,6 @@
                     "mode": "SINGLE",
                     "value": 0.0001
                 },
-                {
-                    "symbol": "Yamont",
-                    "mode": "SINGLE",
-                    "value": 0.15
-                },
-                {
-                    "symbol": "Yaval",
-                    "mode": "SINGLE",
-                    "value": 0.4
-                },
-                {
-                    "symbol": "Long",
-                    "mode": "SINGLE",
-                    "value": 100
-                },
-                {
-                    "symbol": "Dx",
-                    "mode": "SINGLE",
-                    "value": 5
-                },
                 {
                     "symbol": "Ks",
                     "mode": "SINGLE",
@@ -178,7 +158,7 @@
                 {
                     "symbol": "Y",
                     "mode": "SINGLE",
-                    "value": 0.5643749999999994
+                    "value": 0.8
                 },
                 {
                     "symbol": "LargeurBerge",
diff --git a/src/app/services/formulaire/formulaire.service.ts b/src/app/services/formulaire/formulaire.service.ts
index 49533c522cf8d09cceba9f2c675fb3fbe3edf66f..fe3e0bfe647b01192068444a2a8d6b39475d793c 100644
--- a/src/app/services/formulaire/formulaire.service.ts
+++ b/src/app/services/formulaire/formulaire.service.ts
@@ -617,8 +617,10 @@ export class FormulaireService extends Observable {
         for (const dn of dependingNubs) {
             if (! visited.includes(dn.uid)) {
                 const form = this.getFormulaireFromNubId(dn.uid);
-                if (form.hasResults) {
-                    form.resetResults(visited);
+                const hadResults = form.hasResults;
+                // form might not have a result, but still have another form depending on it !
+                form.resetResults(visited);
+                if (hadResults) {
                     if (notify) {
                         this.notificationsService.notify(
                             this.intlService.localizeText("INFO_SNACKBAR_RESULTS_INVALIDATED") + " " + form.calculatorName,