Repository navigation
fix(console): show a reader the version draft's default plugin approvers - #3625
Merged
Merged
Conversation
Finding 2447: the approver field waits for the policy capabilities read, which the Plugins tab skips for a caller who may not update the Agent, so a reader never saw the draft's default approvers. Show them as text, as the version snapshot does. Finding 2445: the guide now says Open version draft also shows without Secret operate on a bound Secret.
Contributor
|
🦞👀 Pull request received. I will update this pull request when review starts. |
The flow is at its 2500-word limit; the guide carries the reader approvers note.
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.
Problem
A member who can read an Agent but not update it never sees the version draft's default plugin approvers on the Plugins tab. The approver field stays hidden until the plugin policy capabilities read answers, and since #3608 the page no longer sends that read to a caller whose permission answer denies Agent update (the route needs Agent update). The next deployment still uses those approvers, and the same reader opening an admitted version does see them in its snapshot.
The guide also says Open version draft shows only without Configuration
update. Since #3611 it also shows when the caller lacks Secretoperateon a Secret the Configuration binds.Change
plugins.mts: when the permission answer refuses a save, the Plugins tab shows the saved default approvers as text under Default plugin approvers, the way the version snapshot does. One sharedapproverSummaryhelper now renders both. Editors and unknown permission answers keep the existing field and capabilities read.configuration-plugins-and-files.md: the Open version draft sentence names the Secretoperatecase, and the read-only plugins sentence names the default approvers.pluginsUpdateDeniedstory now has a saved default approver.Verification
All browser runs used a remote test VM, each in a private network namespace.
A reader sees the version draft's default plugin approvers(console-agent-plugin-approvers.test.mjs): a namespace member with only read grants opens the draft's Plugins tab, sees the heading, the note and the saved approver, sees no approver field, and sends no capabilities read.console-agent-detail.test.mjs, pinned 20/20 at 2 CPUs.tsc(repo and tests), ESLint and Prettier pass on the touched files.Pages/Agent detail→Plugin selections, viewer cannot update the Agent(pluginsUpdateDenied), from the prepared assets of each revision.Before (main), 1440 wide: the reader sees no default approvers.
After, 1440 wide:
After, 390 wide:
Not verified: there is no video. The change adds static text with no controls, so the screenshots show the whole result. Storybook data is simulated; the browser test covers the real API path.
Risks
Low. This is a console read-only view; no API or permission change. Approvers show as raw
channel: idtext, with no Slack name lookup, the same as the version snapshot. A reader does not get the directory lookup, which needs Secret access.