Skip to content

Commit bc347dc

Browse files
authored
Clear Settings dirty state when an integration save succeeds (#2339)
A successful integration save can display “Saved · Connected” before the parent Settings dialog receives the form's clean state through its effect. An immediate Escape can therefore be treated as an unsaved-draft close attempt. Clear the parent dirty flag in the successful save path, alongside resetting the saved profile and feedback. This applies to Metrics, Argo CD and Cost; failed saves still preserve the dirty state. No test sleeps or timing changes. Validation: full `make build` (including frontend type-check and embedding) passed; 27 focused Settings tests passed. Full PR CI passed, including the complete Settings browser suite. The existing in-flight Apply/Escape test also passed 20 consecutive local runs against the rebuilt embedded UI. Visual-test skipped: state propagation only, no rendered layout change. Separate from deletion preview/MCP PRs #2050 and #2041; neither branch is modified.
1 parent ddbd98e commit bc347dc

1 file changed

Lines changed: 1 addition & 0 deletions

File tree

‎web/src/components/settings/LocalConnectionSettings.tsx‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -398,6 +398,7 @@ export function LocalConnectionSettings({
398398
const save = async (update: Update) => {
399399
const data = await fetchConnections(update)
400400
receive(data)
401+
onDirtyChange(false)
401402
setConfirmBack(false)
402403
setTask('main')
403404
setPending(null)

0 commit comments

Comments
 (0)