π¦ Release v0.4.0 - #24
Merged
Merged
Conversation
β¦ and auto-approved diffs
.tool-icon/.tool-status/.tool-open-file sized themselves via plain single-class selectors, but codicon.css's own base rule (.codicon[class*='codicon-']) is an attribute selector β strictly higher specificity β and always won regardless of stylesheet load order, silently resetting font-size back to the library's 16px/1 default and leaving line-height unconstrained against the row. Scoped the sizing rules under .tool-card-header to out-specify it, pinned line-height:1 explicitly, and added overflow:hidden on the header as a hard clamp. Also dropped the leftover thinking-pulse opacity animation on .tool-status.pending β the pending status now renders via codicon-loading + codicon-modifier-spin, so the old animation was silently fighting it for the same CSS property.
codicon-modifier-spin's rotate animation applies to the whole
element box it's set on β but that same .tool-status element also
gets .auto-approved's `::after { content: " (auto)" }` text. Since a
transform rotates everything rendered in the element's box, the
"(auto)" label was spinning in a circle right along with the loading
glyph. Split the icon into its own inner .tool-status-icon span so
only the glyph carries the spin/codicon classes; .tool-status stays
a plain, non-rotating wrapper for the color state and the auto-
approved label.
β¦age payload openFile() resolved a relative path against the workspace root with no check that the result stayed inside it β "../../.ssh/id_rsa" (or any tool-call arg pointing outside the workspace) would open in the editor unguarded. Now normalizes the resolved path and rejects it if it doesn't stay under the workspace root. Also guards the "openFile" message handler against a non-string/empty path, since it comes straight from the webview with no runtime type check beyond the compile-time union.
Its base rule (.tool-card-header .tool-open-file) is already scoped, but the :hover variant wasn't β any future .tool-open-file element outside a tool card would silently inherit this hover color.
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.
PR #22 merged before these follow-up commits landed on the branch, so they never made it to master. This picks up the rest: