From 37050078c13030c419756a691fe5cb77726a3e5c Mon Sep 17 00:00:00 2001 From: Irfan Hardiyanto <52022757+devhardiyanto@users.noreply.github.com> Date: Sat, 25 Jul 2026 12:54:24 +0700 Subject: [PATCH 1/2] fix(frontend): flush config sebelum baca sites_status agar badge Sites akurat sites_status (Rust) membaca config.json dari disk, sedangkan mutasi sites (add/edit/delete/toggle) memakai scheduleSave() berdebounce 500ms. Akibatnya refreshSitesStatus() bisa membaca config lama -> badge tetap "Sinkron" walau ada perubahan, dan openApply() bisa mengira in-sync (Apply seakan no-op). Flush pending debounce via saveImmediate() sebelum baca status. Satu titik di refreshSitesStatus() menutup semua konsumen (4 handler + openApply) sekaligus. devhardiyanto --- src/views/Settings.vue | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/views/Settings.vue b/src/views/Settings.vue index f209e9e..2229702 100644 --- a/src/views/Settings.vue +++ b/src/views/Settings.vue @@ -25,6 +25,7 @@ const { config, loaded, load, + saveImmediate, setAutoStart, setRememberSession, setMinimizeToTray, @@ -105,6 +106,9 @@ const pendingDiff = ref(null) const selectedBackup = ref('') async function refreshSitesStatus(): Promise { + // Flush debounce config dulu: sites_status baca config dari disk, jadi mutasi + // (add/edit/delete/toggle) harus ter-tulis sebelum status dibaca (hindari race). + await saveImmediate() sitesStatus.value = await fetchSitesStatus() } From f1c85ae727fb1cc569ebbf1711c55fb3cbdf2d32 Mon Sep 17 00:00:00 2001 From: Irfan Hardiyanto <52022757+devhardiyanto@users.noreply.github.com> Date: Sat, 25 Jul 2026 12:54:24 +0700 Subject: [PATCH 2/2] chore(release): bump versi 1.4.1 devhardiyanto --- package.json | 2 +- src-tauri/Cargo.lock | 2 +- src-tauri/Cargo.toml | 2 +- src-tauri/tauri.conf.json | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index f697bcc..5a2b9fc 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "servel", "private": true, - "version": "1.4.0", + "version": "1.4.1", "type": "module", "scripts": { "dev": "vite", diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index 5748d9b..ce5b7b8 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -3156,7 +3156,7 @@ dependencies = [ [[package]] name = "servel" -version = "1.4.0" +version = "1.4.1" dependencies = [ "notify", "notify-debouncer-mini", diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index 25e2a9d..b97fa66 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "servel" -version = "1.4.0" +version = "1.4.1" description = "One app. All your local dev environment." authors = ["devhardiyanto "] edition = "2021" diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index d4d0f73..f0a77ff 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -1,7 +1,7 @@ { "$schema": "https://schema.tauri.app/config/2", "productName": "Servel", - "version": "1.4.0", + "version": "1.4.1", "identifier": "com.devhardiyanto.servel", "build": { "beforeDevCommand": "npm run dev",