From 8c3a89113a83563d2d4cb0423ee0a0a63cec0f9c Mon Sep 17 00:00:00 2001 From: Sem Bauke Date: Tue, 10 Mar 2026 14:51:26 +0100 Subject: [PATCH] fix(client): avoid redundant updateFile dispatch on load when files are unchanged (#66326) --- .../Challenges/redux/execute-challenge-saga.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/client/src/templates/Challenges/redux/execute-challenge-saga.js b/client/src/templates/Challenges/redux/execute-challenge-saga.js index ef6240df277..c80f9e5f616 100644 --- a/client/src/templates/Challenges/redux/execute-challenge-saga.js +++ b/client/src/templates/Challenges/redux/execute-challenge-saga.js @@ -317,7 +317,8 @@ export function* previewChallengeSaga(action) { const logs = results[0].logs?.filter( log => !LOGS_TO_IGNORE.some(msg => log.msg === msg) ); - yield put(updateConsole(logs?.map(log => log.msg).join('\n'))); + const output = logs?.map(log => log.msg).join('\n'); + yield put((flushLogs ? initConsole : updateConsole)(output)); } } } @@ -390,10 +391,14 @@ function* previewProjectSolutionSaga({ payload }) { export function createExecuteChallengeSaga(types) { return [ takeLatest(types.executeChallenge, executeCancellableChallengeSaga), - takeLatest(types.updateFile, updatePreviewSaga), takeLatest( - [types.challengeMounted, types.resetChallenge, types.previewMounted], - previewChallengeSaga + [ + types.updateFile, + types.challengeMounted, + types.resetChallenge, + types.previewMounted + ], + updatePreviewSaga ), takeLatest(types.projectPreviewMounted, previewProjectSolutionSaga) ];