Fix event hooks not persisting across server syncs (#799)

* Changes from fix/event-hook-persistence

* feat: Add explicit permission escape hatch for clearing eventHooks and improve error handling in UI
This commit is contained in:
gsxdsm
2026-02-22 00:36:08 -08:00
committed by GitHub
parent 629fd24d9f
commit 1d732916f1
7 changed files with 83 additions and 19 deletions

View File

@@ -363,6 +363,15 @@ export function mergeSettings(
merged.claudeCompatibleProviders = localSettings.claudeCompatibleProviders;
}
// Event hooks - preserve from localStorage if server is empty
if (
(!serverSettings.eventHooks || serverSettings.eventHooks.length === 0) &&
localSettings.eventHooks &&
localSettings.eventHooks.length > 0
) {
merged.eventHooks = localSettings.eventHooks;
}
// Preserve new settings fields from localStorage if server has defaults
// Use nullish coalescing to accept stored falsy values (e.g. false)
if (localSettings.enableAiCommitMessages != null && merged.enableAiCommitMessages == null) {