Repository navigation
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Settings now keeps incomplete runtime work visible after saving or applying changes. A changed
TOKEN_SPY_API_KEYorTOKEN_SPY_URLretains a manual stack restart requirement because Dashboard API and model-router capture those values at startup; recreating Token Spy alone does not update its clients. Changes belonging only to disabled services now reportstagedinstead ofnone.Fixes #7509.
Scope and overlap
The production change is six lines in
settings.py. It changes apply-plan metadata; it preserves the existing service-recreation selection, credential sources, persisted values and refusal boundary. Existing Settings UI already displays the summary and retains manual work after Apply changes.All-state searches covered settings, Token Spy key/restart, and
settings.py. This includes the still-applicable staged-status outcome of closed #3802, whose closure retired its beta target. #2826 changes process environment reads and does not address persisted Settings changes. Closed #2517/#2518 concern other service keys. Open #3818's file inventory has nosettings.pychange. The rejected #7212 persisted-key fallback is not revived.Validation
0b44fa7edf351f2a3bcad88bca6db3aeebed2ee4: new Token Spy regressions fail eight cases; the staged-status regression fails one case, with three unchanged/active controls passing.test_settings_env.py,test_agent_monitor.py,test_usage.py.settleSettingsApplyPlanJS consumer: both Token Spy connection keys remain visible as manual restart work after apply.test_settings_env.py, executed by the dashboard API workflow's fullpytest tests/job. No new workflow wiring is needed.git diff --checkpassed. Independent review: root agent independently reviewed the final combined diff; no blocking findings..Risk and release validation
This is a Settings control-plane metadata change. Host mutations and automatic service selection remain the same. Live credential rotation, installed restart/fleet verification and independent maintainer/human release approval are deferred; the authenticated save boundary and existing UI state reducer were exercised without changing the shared live QA runtime. Rollback is a normal revert and has no storage migration.
Attribution
Tang Vu and Codex collaborated: Tang Vu provided project direction, scope decisions and environment setup; Codex assisted with analysis, implementation, regression tests and review preparation. The listed commands were agent-executed. These receipts do not establish specific personal human verification or maintainer release approval.
Release Lane
release/2.6.xmainStable hotfix reason: n/a.
Changed Surface
Risk And Validation
git diff --checkrelease/2.6.xCandidate:
4cfd1614b949625698359708587e77f987bf1a23, based on main0b44fa7edf351f2a3bcad88bca6db3aeebed2ee4. The identity gate passes for its one author/committer commit. The final Python 3.11 tests used locked service dependencies and the workflow test requirements in an isolated Docker container; source matches this candidate.Operational Change Check
Notes For Reviewers
Revert has no storage migration. The change reports unfinished work accurately and does not claim that Token Spy key rotation is automatically complete. Please review the startup client contract and release gates before release.