You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat(profiles): skip the apply confirmation when the profile matches current routing #1683
I searched open and closed issues and did not find a request for this feature.
I reviewed this request and removed credentials, tokens, private paths, hostnames, and other sensitive data.
Problem or opportunity
Since PR #1384, every global profile apply asks for confirmation, including the case where the profile's agent routes already match the current global routing. That apply would change nothing, so the dialog is pure friction for an operator re-selecting the active profile or verifying state, and it trains users to approve the dialog without reading it, which weakens the guard on the destructive cases.
Proposed outcome
When the effective routing diff is empty (no replaced, cleared, or added agent routes, and no orchestrator change), applying should proceed without the confirmation dialog, or with a non-modal informational notice ("profile already active"), depending on what the maintainers prefer. The destructive confirmations introduced by #1349 and PR #1384 stay exactly as they are.
Alternatives considered
Keeping the confirm on no-op applies (current behavior) with the "its agent routes already match the current global routing" wording; it is safe but adds friction in the only non-destructive case.
Additional context
Identified during review of PR #1384 as a friction refinement. The dialog already computes the empty-diff case (extensions/gentle-ai.ts, populated-apply branch). Related: #1349, #1384.
Approach: stacked on open PR #1384, since the populated-apply confirmation this issue refines only exists on that branch. When the effective routing diff is empty (no replaced, cleared, or added agent routes) and the profile's orchestrator entry — when present — already equals the current settings.json selection, the global apply proceeds without the confirmation dialog and discloses the no-op with an informational notice. Any routing change, orchestrator change, or unreadable routing authority keeps the #1384 confirmation exactly as is.
Scope: extensions/gentle-ai.ts (populated-apply branch only) and tests/gentle-ai.test.ts.
Out of scope: empty/orchestrator-only profile dialogs, the confirm when the diff is non-empty, repo-pinned applies, rollback/pin logic, and the visual-profiles panel.
Implementation is committed on the feature branch; checks: focused populated pattern 11/11, profile suites 189/189, typecheck baseline clean.
Activity
barbatdev commentedon Oct 3, 2026
Taking this one.
Approach: stacked on open PR #1384, since the populated-apply confirmation this issue refines only exists on that branch. When the effective routing diff is empty (no replaced, cleared, or added agent routes) and the profile's orchestrator entry — when present — already equals the current
settings.jsonselection, the global apply proceeds without the confirmation dialog and discloses the no-op with an informational notice. Any routing change, orchestrator change, or unreadable routing authority keeps the #1384 confirmation exactly as is.Scope:
extensions/gentle-ai.ts(populated-apply branch only) andtests/gentle-ai.test.ts.Out of scope: empty/orchestrator-only profile dialogs, the confirm when the diff is non-empty, repo-pinned applies, rollback/pin logic, and the visual-profiles panel.
Implementation is committed on the feature branch; checks: focused populated pattern 11/11, profile suites 189/189, typecheck baseline clean.
fix(profiles): skip the apply confirmation when the profile matches c…