Skip to content

Keep custom emoji animated in reactions - #354

Merged
wesbillman merged 1 commit into
mainfrom
kennylopez-animated-reaction-emoji
Sep 28, 2026
Merged

wesbillman merged 1 commit into
mainfrom
kennylopez-animated-reaction-emoji

Conversation

@klopez4212

Copy link
Copy Markdown
Contributor

Summary

Use original custom emoji files in reaction pills and previews so animated emoji play instead of showing static JPEG thumbnails.

Validation

  • Confirmed :eyes-intensifies: animates in the live Badge Motion preview; human confirmed.
  • Focused reaction tests, TypeScript, Biome, pre-push unit tests (337), and design guards passed.

buzz-review-completed

Signed-off-by: OpenAI Codex <codex@openai.com>
@klopez4212
klopez4212 requested review from a team, comp615 and wesbillman as code owners September 28, 2026 18:19
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-28T18:23:57.363735Z 2169c49 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 2169c49414

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

const source = reaction.emoji
? session.media(reaction.emoji.url, "small")
: undefined;
const source = reaction.emoji ? session.media(reaction.emoji.url) : undefined;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Add the required DCO sign-off trailer

The reviewed commit contains no Signed-off-by trailer, so the required hosted DCO Check will reject it regardless of the code and test results. Recreate this commit with git commit --signoff using the verified effective author identity, preserve the actual authorship, and verify the DCO Check at the resulting head.

AGENTS.md reference: AGENTS.md:L151-L161

Useful? React with 👍 / 👎.

const source = reaction.emoji
? session.media(reaction.emoji.url, "small")
: undefined;
const source = reaction.emoji ? session.media(reaction.emoji.url) : undefined;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Honor reduced motion for animated reaction emoji

For a relay-hosted GIF viewed with prefers-reduced-motion: reduce, omitting "small" switches the reaction pill from the static JPEG thumbnail to an indefinitely animated original; the nearby reduced-motion CSS only disables count and preview transitions and cannot pause an <img> GIF. Preserve the static thumbnail for reduced-motion viewers while selecting the original only when motion is allowed, so this animation does not bypass the surface's documented motion behavior.

AGENTS.md reference: AGENTS.md:L39-L42

Useful? React with 👍 / 👎.

@wesbillman wesbillman left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Star Lord — automated source review via Wes’s account

No actionable findings in this two-file change.

  • Head: 2169c494148cdf0d9740f2beaf4bb55a93b15bd7
  • Base / merge-base: bebb54ec5bd9547b9905cd9d669a48936ec40ac2

The change at MessageReactions.tsx:196 removes only the small-thumbnail request. Both the reaction pill and its preview reuse ReactionGlyph, so both retain the original custom-emoji media rather than requesting a static JPEG thumbnail. The URL still goes through session.media; existing protected-media proxy/refusal policy and source-specific shortcode fallback remain intact. Native emoji, reaction identity/toggling, accessible labels, and sizing are unchanged.

The added component regression checks original-image URLs in both surfaces and rejects the "small" request. Existing transport tests cover original-versus-thumbnail routing and protected-media refusal; existing reaction tests retain refused/failed-image fallback coverage. This is a suitably minimal fix using the existing media owner, consistent with the unsized custom-emoji renderer.

Validation limits: source-only review of Git-blob-verified pinned extracts; no dirty checkout inputs, local tests, builds, installs, PR-code execution, or app launches. Test source establishes intended coverage, not a test-run result or observed animation. The PR’s live-animation/human-confirmation claims were not independently verified.

One exact-head hosted CI snapshot showed JavaScript, Browser measurements, Semgrep OSS, zizmor, and DCO successful; all six browser-journey shards and Rust/tool integration were still running; Windows native validation was skipped. No CI polling or full-green claim. Browser/native animation and runtime behavior remain unverified by this review.

Non-blocking COMMENT only; not approval or merge authorization.

@wesbillman
wesbillman merged commit 1f71ee9 into main Sep 28, 2026
14 checks passed
@wesbillman
wesbillman deleted the kennylopez-animated-reaction-emoji branch September 28, 2026 19:04
johnmatthewtennant pushed a commit that referenced this pull request Sep 29, 2026
* origin/main:
  Keep custom emoji animated in reactions (#354)
  Polish community dialogs, agent cards, and conversation controls (#342)
  fix(channels): paginate membership discovery beyond 500 channels (#326)
  Remove local project context from docs (#350)
  feat(github): render PR descriptions with inline media (#335)
  feat(dev): measure channel opens, warming cost and live setup (#315)
  fix(agents): start new agents on Create and make their status clear (#332)
  fix(macos): close the window without quitting Buzz (#349)
  fix: allow parallel desktop dev worktrees (#336)
  feat(relay): complete packaged community access and recovery (#338)
  fix(workflows): clarify controls and align compact workflow UI (#337)
  feat: add custom emoji from settings (#346)
  feat(channels): show typing status on sidebar dm rows (#305)
  fix(workflows): page batched definition reads (#325)

Signed-off-by: Sol <49aa1f65411fd096d2e2ec144f1e7aa36fdc76d1b907cfdf7be000c66f9d3b8e@buzz.block.builderlab.xyz>

# Conflicts:
#	src/bundled/agents/AgentsPage.tsx
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants