fix: harden repository refresh and server pull
ForgeFlow quality gate / quality (push) Canceled after 0s

This commit is contained in:
NuklearRabbit
2026-08-12 15:05:57 +02:00
parent bffad670ef
commit 38e221cbd1
21 changed files with 238 additions and 39 deletions
+8
View File
@@ -176,6 +176,7 @@ const ui = {
inputRenderTimer: null,
isMock: false,
refreshError: null,
refreshWarning: null,
autoRefreshPending: false,
paletteQuery: "",
updateStatus: null,
@@ -428,6 +429,12 @@ async function refreshRepositories(withLoader = true, silent = false) {
const selectedId = ui.selectedRepoId;
ui.repositories = await window.forgeflow.refreshRepositories();
ui.refreshError = null;
const staleRepository = ui.repositories.find(
(repository) => repository.remoteStale,
);
ui.refreshWarning = staleRepository
? `Gitea could not be reached. Showing repository data last refreshed ${formatDate(staleRepository.remoteLastRefreshedAt)} while local and server state continue to refresh.`
: null;
if (selectedId && !selectedRepository()) ui.selectedRepoId = null;
const repository = selectedRepository();
if (
@@ -459,6 +466,7 @@ async function refreshRepositories(withLoader = true, silent = false) {
selectRepository(ui.repositories[0].id, false);
} catch (error) {
ui.refreshError = error.message;
ui.refreshWarning = null;
if (!silent) showToast("Refresh failed", error.message, "error");
} finally {
if (withLoader) setLoading(false);