fix(desktop): replace review emoji with bundled icon - #81037
Open
Antikythera wants to merge 1 commit into
Open
Conversation
19 tasks
Author
|
Packaged-app runtime validation passed on Electron 40.10.2 / Linux:
This exercises the real packaged renderer rather than only the parser unit test. |
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.
What does this PR do?
Hermes Desktop now renders the
💾 Self-improvement review: …system notification with the bundledsaveCodicon instead of asking Chromium to render the literal floppy-disk emoji.On Linux/Electron, the small inline system-message typography could render
💾as a tofu box even when Noto Color Emoji was installed. The message is structured application chrome, so a bundled UI icon is more reliable and visually consistent than depending on host color-emoji fallback.The original message text is preserved; only the emoji prefix is replaced at render time. CLI and other output paths are unchanged.
Root cause
agent/background_review.pyemits a plain-text notification beginning with U+1F4BE (💾). Desktop rendered the complete string through the genericSystemMessagetext path. Chromium's Linux color-font fallback did not resolve that codepoint in this compact inline surface, producing the visible missing-glyph box.This is separate from the private-use Nerd Font fallback in #81013: U+1F4BE is an emoji, not a Nerd Font PUA character. Expanding the Nerd Font fallback cannot correctly solve it.
Implementation
SystemMessage.saveglyph alongside the unchanged notification text.Related Issue
Follow-up found while visually validating #81013. It intentionally remains separate because this is a structured-message rendering fix rather than font fallback.
Type of change
How Has This Been Tested?
npm run test:ui -- src/components/assistant-ui/thread/system-message.test.tsnpm run typechecknpm run lint -- --quiethermes desktop --build-onlyon a local integration branch containing #81013 and this commitThe regression test verifies that the structured notification is recognized, its text is retained without the emoji prefix, and unrelated system messages are ignored.
Screenshots / Logs
Before
After
Checklist
pytest tests/ -qand all tests passPlatform Information