feat(web-terminal): move Log out into the display menu - #569
Merged
Conversation
The header carried a user chip whose popover held one control. That control now sits in the display menu beside Settings — a half-width pair under a line naming the signed-in user — and the chip is gone, leaving search and the display menu in the header. Both buttons keep the contracts they arrived with (`#logout-btn` + `data-landing-url`, `data-drawer-trigger`), so behaviour is unchanged. The footer is a flex pair rather than a two-column grid: a single-user terminal renders no identity line and no logout, and Settings fills the row alone. System Settings is relabelled Settings to fit half a card.
disallowed_tools strips channel_write and Bash from the model's toolset, but a model given the exact tool name can still emit a doomed tool_use that the SDK rejects with 'No such tool available' before it reaches the MCP server. The tool trace records that emission, so asserting the name is absent from the trace fails on a call that never executed. Assert instead that any trace entry for a stripped tool is exactly the SDK's no-such-tool rejection. A success result or a hook-level denial (the tool still registered) still fails, so the guard stays strict.
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.
The web terminal's header carried a user chip whose popover held exactly one
control. That control now lives in the display menu beside Settings — a
half-width pair under a line naming the signed-in user — and the chip is gone,
leaving search and the display menu alone in the header.
Both buttons keep the contracts they arrived with —
#logout-btn+data-landing-url(app.js'sinitLogoutButton()and the command palette's"Log out" both find it by id) and
data-drawer-trigger="settings-drawer"(settings.js's warning gate stays the sole open path) — so behaviour is
unchanged and this is a placement move.
The footer is a flex pair rather than a two-column grid: a single-user terminal
renders no identity line and no logout, and Settings fills the row alone.
"System Settings" is relabelled "Settings" to fit half a card. Log out
deliberately does not close the card, so the button's
aria-busystate staysvisible while the POST is in flight.
identity-menu.jsand its unit tests are removed; the display-menu andlogout-round-trip suites were updated to the new selectors.