feat(FN-1627): expose global execution concurrency limit in settings

- Add global max concurrent agent limit to settings UI (Scheduling section)
- Add null-as-delete semantics for global settings persistence
- Add fetchGlobalConcurrency and updateGlobalConcurrency API integrations
- Update SettingsModal tests with comprehensive coverage for new features
- Fix lint issues in modified files
This commit is contained in:
gsxdsm
2026-04-13 19:38:26 -07:00
parent c2ddbdfb61
commit 192ea195f7
6 changed files with 152 additions and 54 deletions

View File

@@ -0,0 +1,11 @@
---
"@gsxdsm/fusion": patch
---
Fix notification settings persistence when clearing fields
Previously, clearing notification fields (ntfyTopic, ntfyDashboardHost, ntfyEvents) in the Settings modal would not persist - the old values would remain. This was because `undefined` values are dropped during JSON serialization.
Now uses null-as-delete semantics: when a user explicitly clears a notification field, the dashboard sends `null` to the server, which explicitly removes the field from settings and falls back to defaults on next read.
Fixes the round-trip: Save + reopen settings now correctly shows cleared notification fields.