Render selected skills as composer pills - #422
Conversation
Preview:
|
|
Findings
TypeScript validation passes. |
|
Findings
|
|
Submitted 4 actionable inline findings. |
|
Submitted 4 actionable inline findings. |
|
Submitted 1 actionable inline finding. |
bc4298d to
2bd6550
Compare
|
Scope reset: #422 is now a focused presentation change (412 additions). The custom rich clipboard format, pasted-command catalog validation, asynchronous paste coordination, and send waiting were removed. The visual pill and its informational hover tooltip remain in scope. Earlier findings that apply only to the deleted validation and paste paths are obsolete; please review the current branch for pill rendering, tooltip details, minimal backing-text mechanics, draft restoration, submission normalization, and plain copy/cut support. |
|
Submitted 2 actionable inline findings. |
|
@FBalint Bonk workflow failed. Check the logs for details. View workflow run · To retry, trigger Bonk again. |
3e89d93 to
b81a15e
Compare
|
LGTM! |
|
Submitted 1 actionable inline finding. |
b81a15e to
376790a
Compare
|
Submitted 2 actionable inline findings. Frontend tests and type checks pass. |
|
Initial pass with gpt findings. Happy to pressure test when this is ready to roll |
376790a to
b611811
Compare
|
Rescope note on mirror geometry: the transparent native textarea remains the source of truth for glyph widths, wrapping, caret movement, selection, and scrolling. The mirror must lay out the exact same text with the same typography. Adding an icon, real padding, a resized replacement label, non-breaking backing text, or |
There was a problem hiding this comment.
Devin Review found 2 new potential issues.
2 flags not posted on this PR by your GitHub settings — view them in Devin Review. (Configure)
|
|
LGTM! |


Summary
Render a selected skill as a lightweight inline treatment while preserving the composer's existing textarea/mirror geometry. The command remains literal
/nametext at the textarea's inherited font size and wrapping behavior; the mirror adds only paint-only background, rounding, and hover treatment.The informational hover tooltip remains, including the skill description and provider/resource details.
Rescope
The original implementation replaced
/namewith opaque backing text and overlaid an icon, resized label, padding, and nowrap pill. Review exposed that this can diverge from native textarea layout for long or unusual provider-supplied names, especially in narrow composers. Once the textarea and mirror wrap differently, following text, caret placement, scrolling, and pointer hit-testing no longer align.This PR is therefore deliberately narrowed to visual treatment that does not alter text metrics or editor behavior:
/nametext in both the textarea and mirrorRemoved From Scope
Those richer editor semantics should be revisited with an editor implementation that owns text layout rather than layering presentation over a native textarea.
Testing