diff --git a/memory/2026-02-28-dashboard-settings-collapsible-fix.md b/memory/2026-02-28-dashboard-settings-collapsible-fix.md new file mode 100644 index 000000000..9cee3b708 --- /dev/null +++ b/memory/2026-02-28-dashboard-settings-collapsible-fix.md @@ -0,0 +1,23 @@ +# 2026-02-28 Session Notes + +## Dashboard Settings Collapsible Fix + +Fixed a critical bug in the Signet dashboard where Settings tab collapsible section headers (Agent, Embeddings, Search, Memory, Paths, Pipeline, Trust, Auth) were unclickable, preventing users from expanding/collapsing sections and managing configuration. + +### Root Cause Identified +The bug was caused by a Svelte 5 reactivity cycle in `SettingsTab.svelte`. The `$effect` was tracking a reactive `configFiles` prop while calling `st.init(configFiles)`, which mutated the store state. This created an infinite re-initialization loop that caused FormSection components to unmount/remount on every reactive update, disrupting the bits-ui Collapsible context and breaking click handlers. + +### Component Chain Analysis +The collapsible sections used this hierarchy: +- FormSection.svelte (wrapper) + - Collapsible.Root (bits-ui wrapper) + - Collapsible.Trigger (bits-ui wrapper, renders `