fix(settings): say which runtime features the app withholds, and why - #165
Merged
Merged
Conversation
Every app session overrides four runtime settings - `mcp.discoveryMode`, `mcp.enableProjectConfig`, `tools.discoveryMode` and `astEdit.enabled`. The overrides are the right call and they stay; saying nothing about them was not. A user whose MCP servers work in the GJC CLI finds them simply absent in the app: no error, no badge, no explanation. The only mention of MCP anywhere in src/components/ was a stray comment about dropdown labels, while Settings implied configurability that does not exist. "Works in the CLI, missing in the app, no error message" is an unanswerable support question. Automation now ends with a read-only block naming each withheld feature and the reason for it. Reports, not controls: there is nothing to switch, because a session cannot switch them either - and a test asserts the block renders no control, so a later edit cannot quietly add one. Refs #161
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.
Refs #161.
The gap
Every app session runs through
applyGjcToolSettingsPolicy(), which overrides four runtime settings:Those overrides are correct as a security boundary and the inline comments justify them well. They stay. The problem is that nothing surfaced them.
A user with MCP servers configured for the GJC CLI sees them load there:
and finds nothing at all in the app — no error, no badge, no disabled state. Searching the UI for any acknowledgement turned up exactly one stray comment:
Settings implies configurability that does not exist. "Works in the CLI, missing in the app, no error message" is an unanswerable support question.
What this adds
The Automation tab now ends with a read-only block naming each withheld feature and the reason for it:
.mcp.jsonare not loaded, so tools the app never chose cannot reach a session.Reports, not controls — there is nothing to switch, because a session cannot switch them either. A test asserts the block renders no
button,inputorselect, so a later edit cannot quietly add one.ast_editbeing off is not theoretical: the 681-turn session measured for #159 hitEdit rejected: N anchors do not match the current file26 times.i18n
automation.withheld*— 8 keys across all 10 locales, inserted in place without reformatting the surrounding JSON.Verification
New tests: each feature renders with its reason; the block offers no control; and the eight wording keys have parity across all ten locales.
Scope
This closes the surfacing half of #161. The issue also asks for a
docs/note on the app-vs-CLI capability delta — left for a follow-up so this stays a UI change.